Elektroda.pl
Elektroda.pl
X
SterControl
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Satel ETHM-1 - integracja z własnym sterownikiem

dziobsan 12 Maj 2016 06:03 22194 113
  • #91 12 Maj 2016 06:03
    Duch__
    Poziom 31  

    Pod linuksa nie, ale pod Bascoma już mam opracowane :D Zacytuje sam siebie z tego tematu

    Duch__ napisał:
    Dorzucam screen by pobudzić apetyt odczytu pamięci zdarzeń :D Narazie tylko 10 ostatnich logów, ale można nieograniczoną ilość. Na screenie z terminala od lewej:

    Komórka pamięci, Dzień i miesiąc, Godzina, Opis eventu , numer wejścia / kod zdarzenia , Monitorowanie do Stacji 1 i Stacji 2, Klasa zdarzenia

    Satel ETHM-1 - integracja z własnym sterownikiem

  • SterControl
  • #92 23 Maj 2016 21:38
    Simryc
    Poziom 10  

    Witam,

    męcząc temat znalazłem coś takiego:

    1. skrypt php do obslugi komend: 1A-Clock and basic system status, 7E-Integra type and version, 8C-last event: FFFFFF-Event information, 00-List of violated zones
    https://github.com/JanSimek/phpintegra

    2. skrypt w python do odczytu podstawowych danych
    https://github.com/mkorz/IntegraPy

    3. skrypt w C# do obslugi podstawywych danych
    https://github.com/mkorz/Integra

    4. OpenHub obsługujący Satela:
    https://github.com/openhab/openhab/wiki/Satel-Alarm-Binding

    ale i tak mi jeszcze brakuje do osiagnięcia swojego celu...

    Pozdrawiam

  • SterControl
  • #93 23 Maj 2016 22:17
    xury
    Poziom 39  

    Dzięki kolego Simryc za znalezienie zwłaszcza tego kodu Jana Simka. Mój przy nim wygląda jakby był pisany patykiem po piasku.
    Mi teraz już wystarczy do tego czego chcę.

  • #95 05 Wrz 2016 17:17
    fhpsj
    Poziom 11  

    Witam. Miałem zadać pytanie jak się ma integracja przez ETHM z komunikacją np z GuardX czy Integra Control ale odpowiedź znalazłem przeglądając posty. Już wiem że wymiana danych czego się obawiałem jest niemożliwa jeżeli ktoś połączenie Ethernet używa z innej aplikacji. W moim wypadku takie rozwiązanie całkowicie odpada. Jednak nasuwa się inne pytanie. Jak to wygląda w przypadku integracji przez port RS232? Obecnie czekam na dostawę pierwszego modułu / konwertera Ultima-automatyka z RS232 Satela na RS485 Modbus RTU. Jeżeli komunikacja przez RS będzie zależna od innej komunikacji to klapa. Wymiana danych ma odbywać się w "locie" czyli konwerter zmieni tylko format danych i prześle do Satela i odwrotnie. Jeżeli ktoś spotkał się z takim rozwiązaniem (integracja przez port RS i jednoczesne korzystanie z innych aplikacji przez Ethernet - RS dedykowany tylko do integracji) to proszę o odpowiedź i góry dziekuję

  • #96 05 Wrz 2016 18:58
    dariusz.bembenek
    Specjalista - Alarmy Stacjonarne

    Moduł INT-RS. Udostępnia ten sam protokół integracyjny co ETHM-1 (Plus). Można korzystać równolegle z ethernet jak i po RS.

  • #97 07 Wrz 2016 08:35
    fhpsj
    Poziom 11  

    Dziękuję za szybką odpowiedź. Tu nasuwa się pytanie co z opóźnieniami. Przykładowo jeżeli przez ETHM-1 zalogowany jest użytkownik np z programu GuardX i jednocześnie z programu DloadX to wyraźnie widać spowolnienie działania obu programów a w zasadzie komunikacji obu z Satelem. Czy tak samo to wygląda jeżeli jednocześnie przez RS232 będzie komunikacja z PLC a przez ETHM-1 z GuardX? Co w przypadku jeżeli do tego zestawu dojdzie jeszcze DloadX? Czekam obecnie na moduł Ultima z serii jak się nie mylę CM-182-XX. Moduł ma wymieniać dane w locie. W przypadku opóźnień obawiam się, że może coś pójść nie tak. Od strony PLC komunikacja po RS485 Modbus RTU a od strony Satela po RS232. Producent kończy testy tego konwertera u siebie i podobno działa. Firma specjalizuje sie w konwerterach i inne produkty działaja rewelacyjne. Jednak obawiam sie że w teście nowego konwertera nie uwzględniono jednoczesnej komunikacji z oprogramowaniem Satela. Satel produkuje doskonałe centrale ale komunikacja z Guardem czy Dloadem nie jest ich mocną stroną

  • #98 08 Lut 2017 06:58
    Duch__
    Poziom 31  

    Czy moduł Ethm-1 bez plusa w wersji 1.07 ma jakieś problemy z wysyłaniem pełnej ramki dla komendy 7F? U mnie wysyla zamiast komendy i 5 bajtòw tylko komendę i jeden bajt danych.

  • #99 08 Lut 2017 08:49
    szczukot
    Poziom 13  

    Nie powinno być takich problemów. Miałem ETHM1 bez plusa i dostawałem te 5 czy 6 bajtów.
    1) wgraj najnowszy firmware do ethm1. Nie patrz na wersje tylko na datę. Bo z jednym numerem wersji może być kilka fw wypuszczonych
    2) może kolejny bajt to jest "zero" i przestajesz odczytywać dalsze bajty, stwierdzając, że to koniec łancucha itp (nie wiem w czym to piszesz)

    Fantom

  • #100 08 Lut 2017 15:07
    fhpsj
    Poziom 11  

    Witam. Gdyby ktoś był zainteresowany integracją Satela ze sterownikiem PLC to na polskim rynku pojawił się konwerter Satel RS232 <-> RS485 Modbus RTU. Konwertowanie protokołów odbywa się w locie czyli jest pytanie jest odpowiedź. Sam zakupiłem kilka sztuk które zostały wyprodukowane na moją prośbę i obecnie są ogólno dostępne. Konwerter działa rewelacyjnie i można wykorzystać go praktycznie z każdym sterownikiem PLC bo większość obsługuje Modbus RTU na RS485. Pozwala on "zapytać" Integre praktycznie o wszystko oraz tu gdzie jest to możliwe zapisać dane w Integrze. Z tego co wiem jest w przygotowaniu wersja Modbus TCP. Zresztą firma oferuje kilka ciekawych rozwiązań. Przykładowo HUB dla RS485 Modbus RTU umożliwiający tworzenie sieci w kształcie gwiazdy czy konwerter RS485 Modbus RTU SLAVE <-> SLAVE umożliwiający połączenie dwóch sieci Modbus RTU w których występują urządzenia Master. Nie podaję nazwy bo nie wiem czy jest to zgodne z regulaminem. Konwertery z serii CM-180-....., CM-181-......., CM-182-...... Na ten moment praktycznie jak dla mnie problem integracji Satela Integry z PLC został rozwiązany. Bardzo dobrze takie rozwiązanie sprawdza się w automatyce budynków. Do niedawna wykorzystywałem wyjścia w centrali i wejścia w PLC ale to ograniczało możliwości systemu.

  • #101 08 Lut 2017 15:12
    szczukot
    Poziom 13  

    A jak ktoś jest zainteresowany bardziej DIY, to już od dłuższego czasu działa integracja z domoticzem i to raczej stabilnie.
    W razie pytań i życzeń można pisać na stronie domoticza.

    pzodrawiam
    Fantom

  • #102 08 Lut 2017 15:55
    fhpsj
    Poziom 11  

    Skoro pojawiają się nazwy to też podam. Firma, która zainteresowała się wprowadzeniem do oferty konwertera to polski producent z Gdyni Ultima Automatyka. Dodam tylko że Panowie z Ultimy są bardzo pomocni i zależy im na bardzo dobrych relacjach z klientem. Co do stabilności to moduły w moich instalacjach pracują od jak się nie mylę lipca 2016 i pracują stabilnie. Na ten moment zero problemów a "zasysam" sporo informacji z Satela. Zaletą jest uniwersalność. Można podłączyć jak wspomniałem praktycznie do każdego PLC i w czasie rzeczywistym zapisywać i odczytywać parametry. Od strony PLC są to standardowe komendy Modbus. W magistrali Modbus urządzenie pracuje jako SLAVE. W moim wypadku jest jednym z wielu urządzeń pracujących na jednej magistrali. Konwertuje wszystkie funkcje dostępne na module RS232 Satela. Kolejne poszerzenie wykorzystania danych z Satela w moim projekcie ma polegać na wymianie danych o użytkownikach i brelokach zbliżeniowych. Do PLC planuję podłączyć domofon IP z wyjściem RS485 Modbus RTU oraz wbudowanym czytnikiem w/w breloków. Tu planuję jedno z dwóch rozwiązań. Pierwsze to kopiowanie przez PLC bazy użytkowników z Integry do domofonu a drugie odczyt kodu breloka w trybie rzeczywistym czyli w momencie z czytania kodu przez domofon oraz porównania go w PLC z lista kodów z centrali. PLC ma nadzorować kontrolę dostępu

  • #103 08 Lut 2017 18:15
    Duch__
    Poziom 31  

    szczukot napisał:
    Nie powinno być takich problemów. Miałem ETHM1 bez plusa i dostawałem te 5 czy 6 bajtów.
    1) wgraj najnowszy firmware do ethm1. Nie patrz na wersje tylko na datę. Bo z jednym numerem wersji może być kilka fw wypuszczonych
    2) może kolejny bajt to jest "zero" i przestajesz odczytywać dalsze bajty, stwierdzając, że to koniec łancucha itp (nie wiem w czym to piszesz)

    Fantom


    Po aktualizacji firmware centrali do 1.16 problem ustąpił. Miałem wersję 1.13.

  • #104 14 Maj 2017 22:45
    xroot99
    Poziom 10  

    Witam
    Czy ktoś z szanownych forumowiczów próbował integracji z PLC Siemensa s7 1200? Pytam bo buduję dom i mam zamiar wymieniać dane między integrą a S7 1200. Wymiana danych między integra a PC opanowana, natomiast z plc coś nie idzie :( Używam bloczków TSEN_C i TRCV_C ale za groma nie mogę się dogadać. Czy ktoś mógłby mi udzielić konkretnych wskazówek dotyczących komunikacji lub naprowadzić mnie na właściwy trop?

    Spoko, nie było tematu dogadali się :))
    pzdr.

  • #105 21 Gru 2017 00:04
    halo6
    Poziom 5  

    Cześć,

    Postanowiłem zająć się tematem integracja Satela z obecnym systemem automatyki domowej.

    Ponieważ jestem kompletnym amatorem w programowaniu działam metodą prób i błędów i napotkałem pierwszy problem.

    Połączenie TCP zestawione: SYN i SYN ACK jest.

    Natomiast przy próbie wysłania request-a do Satela przez ETHM-1 dotyczącego uzbrojenia partycji 1, centrala nie robi nic...

    Wysyłam : FE FE 80 12 34 FF FF FF FF FF FF 00 00 00 01 9D A7 FE 0D

    I dostaje odpowiedź niby poprawną : FE FE EF 00 4E AA FE 0D, tylko że nic na Satelu się nie dzieje, nie odlicza do wyjścia i nie "pika".

    Gdzie jest problem??

  • #106 21 Gru 2017 08:34
    montersi.pl

    Poziom 15  

    Problem jest w wysyłanej ramce, ponieważ nie dotyczy ona tutaj strefy 1.
    Wysyłana ramka: FE FE 80 12 34 FF FF FF FF FF FF 00 00 00 01 9D A7 FE 0D

    FE FE | komenda | hasło | strefa | CRC | FE 0D
    U Ciebie strefa pierwsza powinno być: 01 00 00 00 a nie tak jak teraz: 00 00 00 01.
    Oczywiście należy jeszcze zmienić sumę kontrolą.

    Ramka do załączenia strefy 1 w trybie 0, z hasłem 1234 to:
    FE FE 80 12 34 FF FF FF FF FF FF 01 00 00 00 9D 9E FE 0D

  • #107 21 Gru 2017 09:39
    halo6
    Poziom 5  

    montersi.pl napisał:
    Problem jest w wysyłanej ramce, ponieważ nie dotyczy ona tutaj strefy 1.
    Wysyłana ramka: FE FE 80 12 34 FF FF FF FF FF FF 00 00 00 01 9D A7 FE 0D

    FE FE | komenda | hasło | strefa | CRC | FE 0D
    U Ciebie strefa pierwsza powinno być: 01 00 00 00 a nie tak jak teraz: 00 00 00 01.
    Oczywiście należy jeszcze zmienić sumę kontrolą.

    Ramka do załączenia strefy 1 w trybie 0, z hasłem 1234 to:
    FE FE 80 12 34 FF FF FF FF FF FF 01 00 00 00 9D 9E FE 0D



    O dzięki, działa.

    Czy znajdę gdzieś informację jak opisywać strefy na tych 4 bajtach?

    Zawsze wydawawało mi się, że ważność bitów jest od prawej do lewej....Stąd taka wybór.

  • Pomocny post
    #108 21 Gru 2017 10:05
    montersi.pl

    Poziom 15  

    Tutaj najmłodszy bajt jest z lewej strony. W dokumentacji protokołu jest to zobrazowane na przykładzie załączenia strefy właśnie. Ogólnie, wygląda to tak:


    0000 0000 | 0000 0000 | 0000 0000 | 0000 0000
    czyli 4 bajty, gdzie każdy bajt to 8 bitów, czyli 8 stref (w dokumentacji jest to tłumaczone jako partycja, ale chodzi o strefę).

    Przykład, strefa 1 i 3:
    0000 0101 | 0000 0000 | 0000 0000 | 0000 0000 , czyli w HEX: 05 00 00 00

    Przykład, strefa 9 i 16:
    0000 0000 | 1000 0001 | 0000 0000 | 0000 0000 , czyli w HEX: 00 81 00 00

    Przykład, strefa 10 i 25, 26, 27:
    0000 0000 | 0000 0010 | 0000 0000 | 0000 0111 , czyli w HEX: 00 02 00 07

  • #109 21 Gru 2017 20:01
    halo6
    Poziom 5  

    montersi.pl napisał:
    Tutaj najmłodszy bajt jest z lewej strony. W dokumentacji protokołu jest to zobrazowane na przykładzie załączenia strefy właśnie. Ogólnie, wygląda to tak:


    0000 0000 | 0000 0000 | 0000 0000 | 0000 0000
    czyli 4 bajty, gdzie każdy bajt to 8 bitów, czyli 8 stref (w dokumentacji jest to tłumaczone jako partycja, ale chodzi o strefę).

    Przykład, strefa 1 i 3:
    0000 0101 | 0000 0000 | 0000 0000 | 0000 0000 , czyli w HEX: 05 00 00 00

    Przykład, strefa 9 i 16:
    0000 0000 | 1000 0001 | 0000 0000 | 0000 0000 , czyli w HEX: 00 81 00 00

    Przykład, strefa 10 i 25, 26, 27:
    0000 0000 | 0000 0010 | 0000 0000 | 0000 0111 , czyli w HEX: 00 02 00 07



    Podziękował

  • #110 07 Sty 2018 15:59
    halo6
    Poziom 5  

    Witam,

    Kontynuuję temat integracji Satel. Narazie wszystko idzie OK, aż tu napotkałem problem, który sam sobie stworzyłem :)

    Chciałbym móc sterować wyjściem przy pomocy TCP oraz komendy 0x88 oraz 0x89.

    Moje pytania

    1. Czy to jest "robialne"? Nie chciałbym wyzwalać wyjścia niczym innym.
    2. Cz komendy 0x88 oraz 0x89 są poprawne?
    3. Czy muszę jakoś ustawić na satelu konkretny typ wyjścia, którym chcę sterować? Jeśli tak, to jaki? Przełączniku MONO i BI nie chcą tak współpracować.

    Podziękował.

  • #111 07 Sty 2018 16:38
    montersi.pl

    Poziom 15  

    Ad.1. Tak. Taka funkcjonalność jest możliwa.
    Ad.2. Tak, komendy są poprawne. W ramce podajemy tylko te bity (wyjścia), które chcemy załączyć (0x88) lub wyłączyć (0x89).
    Tzn. przykładowo ramka właściwa:
    88 | 01 01 00 00 | 00 00 00 00 | 00 00 00 00 | 00 00 00 00 - dotyczy załączenia tylko wyjść 1 i 9. Pozostałe wyjścia nie zmienią swojego stanu.
    Analogicznie dla komendy 0x89.

    Ad.3.
    Tak, sterowanie wyjściami może dotyczyć wyjść typu: Przełącznik MONO, przełącznik BI, roleta góra, roleta dół.
    Jeżeli w tym momencie nie chce działać, to albo ramka jest zła (suma kontrolna, zapis kolejności bajtów), albo wyjście źle przygotowane. Trzeba pamiętać o tym, że wyjście (mono, bi) musi mieć zaznaczoną przynajmniej jedną strefę.

    Jak teraz wygląda ramka (pełna, razem z CRC) i jak wygląda dokładnie konfiguracja wyjścia?

  • #112 25 Cze 2018 19:27
    bruner71
    Poziom 10  

    Witam kolegów. Proszę o wskazanie kierunku. Napisałem program w Delphi i odczytuję stany stref, wejść i wyjść. Wpadło mi do głowy, że dobrze by było wiedzieć kto zazbroił lub rozbroił strefę. Jak to zrobić? Za co się zaczepić?

  • #113 26 Cze 2018 08:15
    szczukot
    Poziom 13  

    Sprawdź czy w logach centrali takie dane nie idą.

  • #114 26 Cze 2018 08:25
    bruner71
    Poziom 10  

    Chyba zabrałem się od złej strony. Nauczyłem się odczytywać stany a teraz dochodzę do wniosku że może trzeba było zacząć od dziennika zdarzeń i zmian stanów centrali.
    Właśnie analizuję kolegi program do odczytu stanów Integry 128 pod kontem komendy 8c i chyba na razie na tym się skupię.