Elektroda.pl
Elektroda.pl
X
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

Sterownik Tech AG Lux (Defro) - Protokół komunikacyjny

squizzy 15 Nov 2013 09:28 107163 335
Buderus
  • #1
    squizzy
    Level 2  
    Witam

    Od dłuższego czasu bezskutecznie poszukuję protokołu komunikacyjnego dla tytułowego sterownika. Jest mi on potrzebny w celach sterowania kotłem za pośrednictwem własnego systemu sterowania/zarządzania domem. Producent posiada swoje rozwiązanie w postacji modułu o nazwie ST-500, który to komunikuje się ze sterownikiem kotła po RSie. Mi bardzo zależny na pełnej integracji z własnym systemem.

    z góry dzięki,
    squizzy
  • Buderus
  • #2
    fieras
    Level 12  
    Witam
    Czy znalazłeś może odpowiedz? Tez w niedługim czasie będę planował się do niego podłączyć.
    Pozdrawiam
    Marcin
  • #3
    Gabikon
    Level 2  
    Witam,

    Ja troszke w innym temacie ale moze bedziecie wiedzieli jak mi pomoc. Mam piec defro komfort duo 25kw ze sterownikiem AG LUX. Problem polega na tym iz za każdym razem jak nie mam prądu w domu nie moge rozpalic pieca i musze wzywac serwis... Panowie oczywiscie twierdza ze to groszek wentylacja itd. Natomiast ja juz mialem 3razy taka sytuacje ze w momecie gdy nie było prądu. Rozpala sie dobrze a pozniej nie podpala groszku ponizej.

    Czy moga sie resetowac jakies ustawienia w sterowniku które maja wpływ na taka sytuacje??
  • Buderus
  • #4
    fieras
    Level 12  
    Odpowiedz z firmy Tech - protokół to zmodyfikowany rs232. Nie ma konwertera, pytanie o dokumentację bez odzewu...
  • #5
    randsmok
    Level 11  
    Witam,
    podbijam temat. Czy ktoś rozpracował komunikację ze sterownikami Tech? Mam ST-480 + ST-505 i jest tragedia. Po pierwsze firma umożliwia dostęp jedynie przez ich własną stronę (zdalnie.techsterowniki.pl), po drugie dostęp jest jedynie do nastaw temperatur i trybu pracy pomp. Do końca wytrzymałości nerwowej doprowadziły mnie (jak się dowiedziałem dopiero po wysłaniu maila do firmy TECH) tzw prace konserwacyjne. Objawiło się to brakiem strony pod podanym adresem, nawet żadnej informacji nie zamieścili. A człowiek szuka u siebie, może to wina routera, może moduł padł... Czeski film.
    Reasumując, chciałbym albo wymienić moduł ethernetowy ST-505 na np. malinkę (tu musiałbym poznać pełny protokół komunikacji rs ze sterownikiem st-480) albo w gorszym przypadku uzyskać dostęp do modułu ST-505 bezpośrednio. Nie podejrzewam, by producent chciał zdradzić swoje "tajemnice", więc może ktoś już przerabiał ten temat by nie wymyślać koła jeszcze raz?
    Pozdrawiam.
  • #6
    fieras
    Level 12  
    Witam
    Ja jak znajdę chwilę czasu zrobię koło jeszcze raz. Sterownikowi brakuje funkcji, tryb ręczny niedopracowany a wielki tech nie udostepni protokołu jak by to na księżyc latało..Szkoda czasu.
    Pzdr
    Marcin
  • #7
    MeMeK_me
    Level 11  
    Podejrzałem trochę komunikację pod oscyloskopem i wychodzi na to, że jest to TTL ("1" ma około 5.7 V) i szybkość transmisji to 9600 bps. Prawdopodobnie to standardowy UART.
  • #8
    insane2t
    Level 12  
    Odpowiedź z Techu jest nic nie warta. O ile producent sterownika miał głowę na karku, to nie zastosował gołego UART ani RS232, tylko różnicowe RS485 lub 422 - trzeba zobaczyć czy we wtyczce jest zasilanie, czy cztery linie danych - to zawęzi poszukiwania. Odgadnięcie strony sprzętowej jest banalne przy tym co będzie dalej.

    Odgadnąć budowę pojedynczego słowa można choćby średniozaawansowanym cyfrowym oscyloskopem. Prawdopodobnie będzie to standard, czyli 8 lub 9 bitów. Mikrokontrolery, z których korzystają producenci mają wbudowane gotowe i rozbudowane interfejsy szeregowe i nie sądze, żeby producent sterownika trudził się i pisał specjalny kod, by uzyskać słowo inne niż przyjęta norma, by utrudniać komuś życie i przy okazji sobie.

    Dalej pozostaje zabawa z analizotorem transmisji albo z komputerem i ręcznym pisaniem softu do nasłuchu. Najtrudniejsze to odgadnąć jak zbudowana jest ramka komunikacyjna oraz gdzie umieszczona i jak liczona jest suma kontrolna. Tutaj prawdopodobnie 99% polegnie.
  • #9
    MeMeK_me
    Level 11  
    U mnie wygląda to tak: są 4 przewody, z czego 2 są sygnałowe i 2 zasilające - z pośredniego zasilacza do zasilenia regulatora pokojowego.

    [sterownik pieca] <RJ12----------RJ12> [zasilacz] <RJ12----------4wire> [regulator pokojowy]
    gdzie 4wire - 4 przewody podpięte do kostki w regulatorze pokojowym.

    Te 2 przewody komunikacyjne na pewno nie są różnicowe, więc muszą być Tx, Rx. Czekam na części i zmontuję LLC. Wtedy podłączę to do RPi i będzie można zająć się protokołem transmisji.

    https://www.dropbox.com/s/t9coviuk414pcpx/Zrzut%20ekranu%202015-12-16%2011.30.16.png?dl=0 (podziałka: 200us)
  • #10
    mcart666
    Level 2  
    Możesz napisać coś więcej o tym planowanym LLC? Ciekawi mnie czy przypadkiem nie okaże się, że zadziała standardowe rozwiązanie z RS232 po TTL, jak np. dla WRT54G. Zresztą jeżeli masz RPi, to prawdopodobnie serial port też działa w nim tak samo.
  • #11
    rohdamn
    Level 12  
    Ja natomiast mogę podpowiedzieć ze swojej strony, że podglądnąłem na routerze pakiety jakie lecą do http://zdalnie.techsterowniki.pl/ z mojego ST-505 (w trybie ST-500) połączonego z Defro AG LUX (bez PID) za pomocą przewodu RS. Co 10 sekund wysyłany jest pakiet z aktualizacją danych kotła. POST aktualizuje dane na stronie Tech-a w celu jak sądzę prezentacji wykresów oraz nastaw pieca.

    Wysyłany JSON ma postać:
    POST / HTTP/1.0
    Host: zdalnie.techsterowniki.pl
    User-Agent: Tech-Ethernet/1.0
    Content-Type: application/x-www-form-urlencoded
    Content-Length: 241
    Cache-Control: no-cache
    ether=2&st=st500&login=xxx&psw=xxx&data=903p0%5F0,790p0%5F20525,
    791p0%5F19240,503p0%5F0,501p0%5F590,502p0%5F58,742p0%5F0,
    654p0%5F45,761p0%5F64536,500p0%5F0,581p0%5F0,664p0%5F4374,
    665p0%5F3,543p0%5F7,887p0%5F3


    A tutaj mam wartości z parametru data:

















    IDWARTOŚĆOPIS
    90300-Brak
    1-Sterownik główny jest odłączony
    79020525minMax CO
    79119240minMax CWU 19240=0x4B28=0x4B[do 75st]0x28[od 40st]
    5030
    501590zmierzona temperatura CO (59.0 st C)
    50258zadana temperatura CO (58 st C)
    7420zmierzona temperatura CWU
    65445zadana temperatura CWU (45 st C)
    76164536zmierzona temperatura zewnętrzna
    64536= -100 st.C
    5000stan trybu pracy
    5810Tryb pracy:
    0-Grzanie domu
    1-Priorytet bojlera
    2-Pompy równoległe
    3-Tryb letni
    6644374ustawiona godzina sterownika 4374=0x1116=0x11[godz.17]0x16[min.22]
    6653dzień tygodnia
    0-6=niedziela-sobota
    5437typ sterownika
    8873


    W odpowiedzi dostaje:
    HTTP/1.1 200 OK
    Date: Mon, 18 Jan 2016 16:47:55 GMT
    Server: Apache/2.2.22 (Debian)
    X-Powered-By: PHP/5.4.45-0+deb7u2
    Vary: Accept-Encoding
    Content-Length: 17
    Connection: close
    Content-Type: text/html
    srv=TECH&st=ok

    Jeżeli na stronie www zmienisz nastawy CO na 58 st C dostaje w odpowiedzi:
    srv=TECH&st=ok&data=502p0_58
    Analogicznie dla pozostałych parametrów: &data=502p0_60,654p0_47,581p0_1

    Z analizy witryny internetowej wyszły dodatkowe opisy parametrów:
    548 Procent otwarcia zaworu
    652 Temperatura zaworu
    668 Typ zaworu: 1-CO 0-podłogowy
    759 Ustawienie zaworu
    760 Funkcja zaworu: 1-załączony 0-wyłączony
    826 Adres zaworu

    505 Status regulatora pokojowego: 0-,1-
    785 Temp. pokojowa
    1030 Zadana temp. pokojowa korekta
    1028 Zadana temp. pokojowa min-max
    1029 Zadana temp. pokojowa użytkownika
    786 Zadana temp. pokojowa
    1030a Zmiana temp. zadanej pokoj
    1029a Temp. zadana pokoj
    785 Temp. pokojowa zmierzona

    903 Status sterownika głównego: 0-Brak,1-Sterownik główny jest odłączony
    899 Status modułu internetowego: 0-Brak,1-Moduł internetowy jest odłączony
    873 Poziom paliwa
    873b Poziom paliwa [kg]
    873a Poziom paliwa [%]
    874 Godziny paliwa
    559 Temp. spalin zmierzona
    880 Temp. podajnika zmierzona
    531 Obroty wentylatora [%]
    512 Praca wentylatora: 0-stop,1-praca
    547 Praca pompa podłogowa: 0-stop,1-praca
    546 Praca pompa cyrkulacyjna: 0-stop,1-praca
    515 Praca pompa CWU: 0-stop,1-praca
    513 Praca pompa CO: 0-stop,1-praca
    827 minMax zaworu: 25354=10-99, 14090=10-55
    791 minMax CWU
    790 minMax CO: 23085=45-90
    665 Dzień tygodnia: 0-6 niedziela-sobota
    664 Godzina: 3079=12:12
    761 Temp. zewnętrzna
    581 Tryb pomp: 0-3 Grzanie domu,Priorytet bojlera,Pompy równolegle,Tryb letni
    510 Praca ręczna: 0-nie,1-tak
    511 Praca podajnika: 0-nie pracuje,1-pracuje
    515 Praca pompy CWU: 0-nie,1-tak
    513 Praca pompy CO: 0-nie,1-tak
    654 Temp. zadana CWU
    764 Zmiana temp. zadanej CO
    502 Temp. zadana CO
    742 Temp. zmierzona CWU
    1029 Zmiana temp. pokojowej
    806 Praca pompy dodatkowej
    808 Typ pompy dodatkowej: 1-podłogowa,4-cyrkulacyjna
    898 Zmiana ustawienia zaworu
    759 Zawór ustawienie zadane
    817 Pompa zaworu: 1-Załączona,0-Wyłączona
    548 Zawór otwarcie [%]
    668 Typ zaworu: 1-CO,2-Podłogowy
    760 Funkcja zaworu: 1-Załączony,0-Wyłączony
    652 Temp. zaworu [°C]
    826 Adres zaworu

    501 Temp. zmierzona CO
    543 Typ sterownika
    835 Rodzaj tryby letniego: 0-z dogrzewaniem
    509 Wersja: 8207=2.0.15
    769 RC: 4-
    500 Stan sterownika
    549 Cancel Alarm
    648 Standby
    802 Jest Paliwo
    521 Rozpalanie
    522 Wygaszanie


    Jeżeli chodzi o przewód łączący sterownik z modułem to jest to 4 żyłowy RS z wyprowadzeniami jak poniżej:

    Code: text
    Log in, to see the code



    y-yellow
    g-green
    w-white
    b-brown
    .-null

    w-ground
    b-RailSync 7V Tx
    g-ground
    y-RailSync 7V Rx
  • #12
    Czybyszew
    Level 20  
    Witam.
    Czy udało się komuś z kolegów rozgryźć jak wygląda ramka
    po tym całym RS-ie. ?
    Mam podobny problem a mianowicie kocioł z podajnikiem ze sterownikiem ST-480 TECH. Chciałbym go podpiąć do sieci domowej aby sterować pracą kotła zdalnie.
    Nie mam niestety modułu ST-500 więc nie mam jak podglądać transmisji.

    Pozdrawiam
  • #13
    rayden
    Level 14  
    Witam ja mam sterownik K1 ale myślę ze protokół jest podobny... ( a pewnie identyczny)
    Niestety również nie posiadam modułu ethernetowego.
    Nie wiem co można mieć najtańszego co by zaczęło gadać z tym sterownikiem wtedy można by próbować dopiero śledzić.
    Moim zdaniem skoro producent już tak bardzo chce zarobić (chociaż sam piec tani nie jest) to powinien sprzedawać moduł translacji z otwartym protokołem...
    Poza tym skoro moduł działa delikatnie mówiąc tak sobie i jest się skazanym na stronkę producenta.
    Dodatkowo jak alarm mamy np. Satel, piec Defro, klimatyzacje jeszcze innej firmy to mamy kłopot by to zintegrować w jeden spójny system
  • #14
    kacfrojd
    Level 2  
    Ładnie, już prawie kupiłem sterownik St-505, kabel do kotłowni puszczony ale bez możliwości zmian głębszych niż nastawy temperatur i tryb pracy kotła , to przerost formy nad treścią. 500zł i do tego konserwacja strony :/

    Mam Galmet z St-480, dokupując st-280 miałem nadzieję, że będę mógł wszystkim sterować a tu lipa. Nie dokupię kolejnego gadżetu, po to tylko żeby stał.

    Jak coś wymyślicie ciekawego (malina pewnie by dała radę) to się pochwalcie.

    Może to sprawa wersji oprogramowania ?

    Pozdrawiam
  • #15
    squizzy
    Level 2  
    Podobnie jak kolega Czybyszew nie posiadam modułu ethernetowego, bo moim zamiarem jest podpięcie się ściśle do swojego systemu sterowania po RS.

    A formalizując, czy ktoś może posiada odczyty z podsłuchu linii RS między sterownikiem a modułem ethernetowym?

    Jeśli posiadasz taki zrzut transmisji z podziałem na kierunek wysyłania, to podziel się. Spróbuję to rozszyfrować

    dzięki
  • #16
    rohdamn
    Level 12  
    Quote:
    czy ktoś może posiada odczyty z podsłuchu linii RS między sterownikiem a modułem ethernetowym?


    Jeżeli podpowiesz szczegółowo jak to zrobić mogę się pobawić i przesłać taki zrzut transmisji.
  • #17
    rohdamn
    Level 12  
    MeMeK_me wrote:
    Podejrzałem trochę komunikację pod oscyloskopem i wychodzi na to, że jest to TTL ("1" ma około 5.7 V) i szybkość transmisji to 9600 bps. Prawdopodobnie to standardowy UART.




    Może to ułatwi rozpoznanie standardu?

    Układy jakie są zamontowane w ST-505 to:

    24512WP 85118 (M24512) I2C Serial EEPROM
    ARM7 STM32F105 RCT6 GH22L 93 CHN GH 523
    Winbond 25054F VSIG 1526
    53A7T1 LM1117
    ENC28J60 1524AVW
    V3F P517L
    HTC TJ2205H 239

    Przewód RS jest 4-żyłowy.
  • #18
    rohdamn
    Level 12  
    Udało mi się odczytać analizatorem stanów logicznych transmisję pomiędzy sterownikiem TECH DEFRO AG-LUX a modułem ST505. Może komuś uda się odczytać z tego ramkę?

    Procedura i parametry podczas badania na YT: https://m.youtube.com/watch?v=J71LdTJ_0F4
    Wygląd przebiegu: logic_analyser.jpg
    Parametry odczytu: logic_analyser_2.jpg

    Plik danych: data_01.txt
    Plik danych podzielony: data_02.txt
  • #19
    rayden
    Level 14  
    rohdamn wrote:
    MeMeK_me wrote:
    Podejrzałem trochę komunikację pod oscyloskopem i wychodzi na to, że jest to TTL ("1" ma około 5.7 V) i szybkość transmisji to 9600 bps. Prawdopodobnie to standardowy UART.




    Może to ułatwi rozpoznanie standardu?

    Układy jakie są zamontowane w ST-505 to:

    24512WP 85118 (M24512) I2C Serial EEPROM
    ARM7 STM32F105 RCT6 GH22L 93 CHN GH 523, czyli uC Cortex-M3 dość wypśny ale bez kontolera ethernetowego, autorzy stwierdzili pewnie ze ten dodatkowy modul wychodzi taniej, lub mieliproblem z wbudowanym

    Winbond 25054F VSIG 1526 - 4-mbit serial flash => 512KB

    53A7T1 LM1117 - z tego co pamietam regulator napięcia

    ENC28J60 1524AVW - kontroler ethernetowy via SPI

    V3F P517L

    HTC TJ2205H 239 - podwojny power swich

    Przewód RS jest 4-żyłowy.
  • #20
    olejopalacz2
    Level 23  
    A oni nie chodzą z komunikacją po OP? W ktorymś mailu mi pisali ze korzystają z tego protokołu
  • #21
    Czybyszew
    Level 20  
    rohdamn wrote:
    Udało mi się odczytać analizatorem stanów logicznych transmisję pomiędzy sterownikiem TECH DEFRO AG-LUX a modułem ST505.


    Kolego przydało by się posłuchać ramki na samym ST505 przy odłączonym sterowniku żeby zobaczyć jakie zapytanie wysyła moduł. Pewnie wysyła jakieś zgłoszenie obecności/zapytanie żeby sterownik pieca zaczął odpowiadać.
    Pewnie przy braku odpowiedzi od sterownika moduł ST505 będzie permanentnie wysyłał to samo i zobaczymy jak ta ramka wygląda.
    Tak samo z drugiej strony tyko tu pewnie będzie trzeba rozpocząć nasłuch i w pewnym momencie odłączyć moduł ST505 i zobaczymy co wysyła sterownik.
    Jak narazie ciężko jest oddzielić które bajty są od sterownika a które od moduły komunikacji.
  • #22
    rohdamn
    Level 12  
    Sytuacja wygląda następująco (wybaczcie nietechniczny język gdyż jestem laikiem):

    - słucham komunikacji wychodzącej ze sterownika DEFRO-AG LUX
    - sterownik w ramce wysyła 8-bitów na bajt, po każdej ramce jest dłuższa przerwa i kolejna ramka
    - ramki wysyłane są cyklicznie i niezależnie od podłączonego modułu ethernet ST-505, wyglądają zawsze tak samo: zaczynają je bajty 0x02 0x26 a kończy dwu-bajtowa suma kontrolna po bajtach 0x02 0x18
    - na długość ramki z danymi wpływa ustawienie w sterowniku czy jest podłączony regulator pokojowy zwykły czy TECH
    - jeżeli ustawiony jest reg. TECH po standardowej ramce danych wysyłana jest dodatkowa - dłuższa
    - ramka składa się w kolejności z dwu bajtowego ID funkcji i dwu bajtowej wartość

    Przedstawiam zapis dwu bajtowy z podziałem na ramki:

    Włączenie sterowania:
    0226	0000	0225	0000	0218	4F5D
    0226	0000	0225	0000	0218	4F5D
    0226	0000	0225	0000	0218	4F5D
    0226	0000	0225	0000	0218	4F5D
    0226	FFF4	0225	0000	0218	00C1
    

    następnie ustawienie trybu StandBy na 0 (1610 wartość 0):
    0226	FFF4	1610	0000	0218	0E9F
    

    ...i cyklicznie ramki danych bieżących
    0226	FFF4	16F9	0000	169E	502D	169F	4B28	157F	0000	157D	0000	157E	003C	166E	0000	1616	002F	1681	FC18	157C	0000	15CD	0000	1620	0001	1621	0000	01F6	0000	02FC	0000	028E	0000	01F9	0000	0298	0000	0299	0000	15A7	0007	16FF	0003	0218	FA05
    
    0226	FFF4	16F9	0000	169E	502D	169F	4B28	157F	0000	157D	0000	157E	003C	166E	0000	1616	002F	1681	FC18	157C	0000	15CD	0000	1620	0001	1621	0000	01F6	0000	02FC	0000	028E	0000	01F9	0000	0298	0000	0299	0000	15A7	0007	16FF	0003	0218	FA05
    

    przy przechodzeniu w tryb StandBy (1610 wartość 1)
    0226	0000	0225	0000	0218	4F5D
    0226	0000	0225	0000	0218	4F5D
    0226	0000	0225	0000	0218	4F5D
    0226	0000	0225	0000	0218	4F5D
    0226	FFF4	0225	0000	0218	00C1
    0226	FFF4	1610	0001	0218	1F16
    


    zapis ramki podstawowej:
    param.|wart. |opis
    -----------------------------------
    0226	FFF4	RAMKA: początek
    16F9	0000	
    169E	502D	minMax CO: 23085[502D]=45-80=[2D-50]
    169F	4B28	minMax CWU: 19240[4B28]=40-70=[28-4B]
    157F	0000	 
    157D	0000	Temp. zmierzona CO [0 stopni - sterownik odłączony] [0253 = 59,5 stopnia]
    157E	003C	Temp. zadana CO 3C=60 stopni
    166E	0000	Temp. zmierzona CWU [03DE = 99,0 stopnia]
    1616	002F	Temp. zadana CWU  2F=47 stopni
    1681	FC18	Temp. zewnętrzna [brak czujnika -100 stopni]
    157C	0000	Stan sterownika [000E - czujnik CO uszkodzony, 000A - czujnik podajnika uszkodzony]
    15CD	0000	Tryb pomp: 0-Grzanie domu,1-Priorytet bojlera,2-Pompy równolegle,3-Tryb letni 
    1620	0001	Godzina 00:01 [140A = 20:10]
    1621	0000	Dzień tygodnia-niedziela: 0-6 niedziela-sobota
    01F6	0000	Temp. zadana CO 
    02FC	0000	Zmiana temp. zadanej CO 
    028E	0000	Temp. zadana CWU 
    01F9	0000	Status regulatora pokojowego
    0298	0000	
    0299	0000	
    15A7	0007	Typ sterownika 
    16FF	0003	
    0218	FA05	RAMKA: koniec [FA05 suma kontrolna]
    


    ramka TECH:
    0226	FFFA
    16EF	0001
    16C2	0000
    167F	0000
    16C3	0000
    1614	0000
    1624	0000
    15AC	0000
    0367	0000
    02F7	0000
    169E	502D
    169F	4B28
    157F	0001
    157D	01E0
    157E	0037
    166E	00BE
    1616	0030
    1681	FC18
    157C	0000
    15CD	0000
    1620	1612
    1621	0003
    01F6	0000
    02FC	0000
    028E	0000
    01F9	0000
    0298	0000
    0299	0000
    0218	E1BC 
    


    Parametry jakie udało mi się do tej pory namierzyć:
    01F6	Temp. zadana CO 
    01F9	Status regulatora pokojowego: 0-,1- 
    0218	RAMKA: koniec [suma kontrolna]
    0225	Cancel Alarm 
    0226	RAMKA: początek
    028E	Temp. zadana CWU 
    0298	
    0299	
    02F7	Ustawienie zaworu 
    02FC	Zmiana temp. zadanej CO 
    0367	
    157C	Stan sterownika 
    157D	Temp. zmierzona CO 
    157E	Temp. zadana CO 
    157F	 
    15A7	Typ sterownika 
    15AC	Procent otwarcia zaworu 
    15CD	Tryb pomp: 0-3 Grzanie domu,Priorytet bojlera,Pompy równolegle,Tryb letni 
    1610	Standby (Tryb Czuwania)
    1614	Temperatura zaworu 
    1616	Temp. zadana CWU 
    1620	Godzina
    1621	Dzień tygodnia: 0-6 niedziela-sobota
    1624	Typ zaworu: 1-CO 0-podłogowy 
    166E	Temp. zmierzona CWU 
    167F	Ustawienie zaworu 
    1681	Temp. zewnętrzna 
    169E	minMax CO: 23085[5A2D]=45-90=[2D-5A]
    169F	minMax CWU 
    16C2	Adres zaworu 
    16C3	minMax zaworu: 25354=10-99, 14090=10-55 
    16EF	
    16F9	
    16FF	
    


    To na razie tyle. Aktualnie podłączam sterownik pod Arduino i pracuje nad oczytaniem transmisji. Być może uda się podpiąć go pod RaspberryPi i wyświetlić parametry na www.

    Może ktoś wyliczy sumę kontrolną dla ramek? Sposób jej obliczania. Ni jak nie mogę sobie z tym dać rady.
  • #23
    Czybyszew
    Level 20  
    Kolego rohdamn jak postępy prac ?
    Udało Ci się skomunikować ?

    Przy okazji mam pytanie czy zna ktoś z was kod do
    ekranu serwisowego ( nie menu serwisowego) ST-480
    bo jest inny niż serwisowy kod 5162.
  • #24
    jacekskowron
    Level 1  
    Witam,

    Chciałem tylko napisać, że też jestem też zainteresowany tematem. Chciałbym podpiąć piec pod pod własny system w domu oparty na openhab, arduino i raspberrypi.
  • #25
    BartekElektro1
    Level 9  
    Witam,
    Temat również mnie interesuje. Dlatego również wielkie dzięki wszystkim którzy zabierają tu głos! Szkoda że Tech się nie wypowie podając otwarcie standard komunikacji...
    Chciałbym jednak opowiedzieć o sterowniku ST-37 RS, który również ma złączkę RJ12 i powinien współpracować z ST-500, termostatami pokojowymi itd.
    Udało mi się zidentyfikować póki co że choć złączka RJ12 ma 6 pinów, to 2 pary są zwarte przez co efektywnie ze sterownika wychodzą 4 sygnały. Pinout jednak nie odpowiada temu podanemu powyżej!

    1 2 3 4 5 6 - piny
    x G T G y y - sygnały

    G - masa
    T - Tx modułu
    x, y - aktualnie nie wiem co to jest, ale domyślam się że jeden będzie Rx modułu a drugi zasilanie

    Odnośnie Tx udało mi się w tym sterowniku dojść, że jest to zwykły RS232 async o odwróconej polaryzacji. Napięcie bez obciążenia w szpilkach nadawania jest na poziomie 15.2V, natomiast po zapięciu prostego inwertera na tranzystorze pnp i 2 opornikach (33k od stron bazy i tej linii) spadło do 14V4. Po odwróceniu i skonvertowaniu do 3V3 lub 5V jak kto woli, bez problemu czyta go zwykły uart.
    Masa to masa, wspólna z czujnikami i halotronem, więc dosyć prosto dojść omomierzem. Ciekawie jednak zaczyna być z pozostałymi 2 liniami

    x ma jakieś 8,2V w spoczynku, spada do 5V8 po obciązeniu 10kOhm - podejrzewam że tu jest Rx modułu (bo też 1 przewód)
    y ma dosyć duże tętnienie (820mV f=100Hz) w spoczynku jakieś 15V, obciążone 10k spada do 14,8 - wygląda zatem na zasilanie, do tego średnio odfiltrowane.

    No i teraz pytanie (poza tym jak wyliczyć sumę kontrolną) jakie parametry analogowe powinien mieć sygnał na linii Rx modułu - bo o ile Tx modułu jest idle przy 0v, to tu jest 8v w spoczynku.
    Czy powinien być podnoszony do 15v, czy przywierany do 0 ? Ma ktoś możliwość zrzucić kawałek komunikacji na obu liniach na sterowniku połączonym z czymkolwiek?

    Ze swojej strony załączam kilka screenów, może komuś się przyda. Pierwszy to sygnał Tx oryginalny i po odwróceniu i skonwertowaniu do 3V3. Drugi to wszystkie 3 linie przy coupling DC. Tętnienia widać dopiero na większym timebase.

    Sterownik Tech AG Lux (Defro) - Protokół komunikacyjnySterownik Tech AG Lux (Defro) - Protokół komunikacyjny
  • #26
    kebrzyk
    Level 11  
    Panowie,
    Jak to w końcu jest z tym RS? Czy to jest zwykły RS czy UART? W moim sterowniku przy piecu są dwa gniazda RJ12, czy każde z nich ma ten sam pinout? Mój sterownik to ST-730zPID. Posiadacie wiedzę jak tam są wyprowadzone sygnały Rx, Tx i GND ? Chciałbym sterownik pieca zintegrować ze sterownikiem PLC, który steruje domem.
  • #27
    kebrzyk
    Level 11  
    Po wymianie informacji z rohdamn podsumowanie jest następujące:
    1. Parametry komunikacji RS232 ze sterownikiem pieca:
    9600 Bit/s, 8 bitów, 1.5 stops bit, no parity bit, inverted

    2. Czy moduł ST-500 był podłączony do sterownika pieca w trakcie podsłuchiwania transmisji?
    Bez podłączonego modułu piec wysyła ramkę standardową (post #22)
    Z podłączonym modułem ramka się wydłuża i idzie w dwóch częściach (post #22)

    U mnie był problem z komunikacją ponieważ jest inny pinout niż u kolegi rohdamn. W sterowniku ST-730zPID sygnały Tx i masa są dokładnie jak u kolegi BartekElektro1 czyli:
    2 - masa, 3 - Tx sterownika pieca. Na razie nie zajmuję się zadawaniem wartości do sterownika. Spróbuję najpierw zdekodować pozostałe parametry, których rohdamn nie opisał.
    Jestem w trakcie rozgryzania sumy kontrolnej. Raczej nie jest to CRC16 bo sprawdzałem kalkulatorem online.
    U mnie sterownik wysyła 4 ramki jedna po drugiej, następnie jest dłuższa przerwa i ponownie 4 ramki.
    Wyglądają one następująco:
    NrParametru Wartość HEX
    0226 FFF4
    169E 502D
    169F 3C28
    157C 0002
    157D 01FE
    157E 0034
    166E 01C2
    1616 002C
    1681 F830
    15CD 0002
    1620 0310
    1621 0000
    1589 0001
    158B 0000
    16B6 0000
    16B0 0005
    16AE 0000
    15AB 0000
    1587 0000
    1588 0001
    159B 0033
    01F6 0000
    028E 0000
    0298 0000
    0299 0000
    0245 0000
    0218 1C0B

    0226 FFF4
    16F9 0001
    16C2 FFF1
    167F 001A
    16C3 320A
    1614 F830
    1624 0002
    15AC 0000
    1680 0000
    170A 0000
    0371 0000
    02F7 0000
    16F9 0000
    15A7 0016
    16FF 0005
    16F8 01AE
    15B7 032A
    1684 0000
    0218 9D07

    0226 FFF4
    16F9 0002
    16C2 0000
    16F9 0000
    16F9 0003
    16C2 0000
    16F9 0000
    0218 3858

    0226 FFF4
    0218 A1DE

    Nie wiem co mówi ostatnia ramka, ale najłatwiej na jej podstawie próbować dekodować sumę kontrolną.
  • #28
    kebrzyk
    Level 11  
    Na chwilę obecną udało mi się zdekodować następujące wartości:

    Ramka 1:
    
    param. | opis
    169E maxMin CO
    169F maxMin CWU
    157C stan regulatora PID: 2-praca, 82 - nadzór, 31-rozpalanie
    157D temperatura aktualna CO
    157E temperatura zadana CO
    166E temperatura aktualna CWU
    1616 temperatura zadana CWU
    1681 ?
    15CD tryb pracy pomp
    1620 godzina
    1621 dzień tygodnia
    1589 pompa CO: 0-stop, 1-praca
    158B pompa CWU: 0-stop, 1-praca
    16B6 ?
    16B0 ?
    16AE pompa dodatkowa: 0-stop, 1-praca
    15AB pompa podłogowa: 0-stop, 1-praca
    1587 podajnik: 0-stop, 1-praca
    1588 wentylator nadmuch: 0-stop, 1-praca
    159B wysterowanie wentylatora nadmuchu
    01F6 ?
    028E ?
    0298 ?
    0299 ?
    0245 ?
    0218 koniec ramki
    


    Ramka 2:
    
    param. | opis
    0226 start 
    16F9 ?
    16C2 Adres zaworu? Nie wiem bo nie posiadam 
    167F Ustawienie zaworu ?
    16C3 temperatura maxMin zaworu ?
    1614 temperatura zaworu?
    1624 typ zaworu?
    15AC wysterowanie otwarcia zaworu?
    1680 ?
    170A ?
    0371 ?
    02F7 ustawienie zaworu ?
    16F9 ?
    15A7 typ sterownika ?
    16FF ?
    16F8 temperatura czujnika podajnika
    15B7 temperatura spalin
    1684 ?
    0218
    1588 wentylator nadmuchu: 0-stop, 1-praca
    159B wysterowanie/ bieg wentylatora nadmuchu
    01F6
    028E
    0298
    0299
    0245
    0218 koniec ramki
    


    Pozostała jeszcze jedna ramka, której nie ruszyłem. Zastanawia mnie gdzie się znajdują alarmy.
  • #29
    rohdamn
    Level 12  
    Do powyższego kolegi kebrzyk.

    1. Alarmy znajdują się w 157C (Stan regulatora/Tryb pracy) a zmierzone u mnie wartości i komunikaty to:
    000E 14 Czujnik CO uszkodzony
    000A 10 Czujnik podajnika uszkodzony
    0009 9 Temperatura nie rośnie

    2. Dodałem Twoje opisy do http://dzien.net/tech/index.php
    Tam można sprawdzać ramki ze znanymi opisami jak niżej. Proponuję rozbudować go wspólnie.

    0226RAMKA: początek
    FFF4(65524)do-> moduł ethernet
    169EminMax CO502D(20525)45-80 stopni C
    169FminMax CWU3C28(15400)40-60 stopni C
    157CStan regulatora PID0002(2)praca
    157DZmierzona temperatura CO01FE(510)51
    157EUstawiona temperatura CO0034(52)52
    166EZmierzona temperatura CWU01C2(450)45
    1616Ustawiona temperatura CWU002C(44)44
    1681Zmierzona temperatura zewnętrznaF830(63536)
    15CDTryb pracy pomp0002(2)2
    1620Ustawiona godzina0310(784)3:16
    1621Ustawiony dzień tygodnia0000(0)Niedziela
    1589Pompa CO0001(1)praca
    158BPompa CWU0000(0)stop
    16B60000(0)
    16B00005(5)
    16AEPompa dodatkowa0000(0)stop
    15ABPompa podłogowa0000(0)stop
    1587Podajnik0000(0)stop
    1588Wentylator nadmuchu0001(1)praca
    159BBieg wentylatora nadmuchu0033(51)51%
    01F6Ustawiona temperatura CO0000(0)0
    028EUstawiona temperatura CWU0000(0)0
    0298Godzina? minuty od włączenia kotła?0000(0)0:0
    0299Dzień tygodnia0000(0)Niedziela
    0245Tryb pomp0000(0)Grzanie domu
    0218RAMKA: koniec [suma kontrolna]1C0B(7179)CRC: #1C0B



    0226RAMKA: początek
    FFF4(65524)do-> moduł ethernet
    16F90001(1)
    16C2Adres zaworuFFF1(65521)65521
    167FZawór ustawienie wprowadzone001A(26)
    16C3minMax zaworu320A(12810)10-50 stopni C
    1614Temperatura zaworuF830(63536)
    1624Typ zaworu0002(2)
    15ACProcent otwarcia zaworu0000(0)0%
    16800000(0)
    170A0000(0)
    03710000(0)
    02F7Zawór ustawienie wprowadzone0000(0)
    16F90000(0)
    15A7Typ sterownika0016(22)22
    16FF0005(5)5
    16F8Temperatura podajnika01AE(430)43
    15B7Temperatura spalin032A(810)81
    16840000(0)
    0218RAMKA: koniec [suma kontrolna]9D07(40199)CRC: #9D07



    0226RAMKA: początek
    FFF4(65524)do-> moduł ethernet
    16F90002(2)
    16C2Adres zaworu0000(0)0
    16F90000(0)
    16F90003(3)
    16C2Adres zaworu0000(0)0
    16F90000(0)
    0218RAMKA: koniec [suma kontrolna]3858(14424)CRC: #3858


    *aź 3 wartości 16F9 w jednej ramce

    0226RAMKA: początek
    FFF4(65524)do-> moduł ethernet
    0218RAMKA: koniec [suma kontrolna]A1DE(41438)CRC: #A1DE
  • #30
    kebrzyk
    Level 11  
    rohdamn wygląda to już całkiem nieźle. Za chwilę idę podglądać 3 ramkę i spróbuję jeszcze namierzyć nieopisane pola w pierwszych dwóch. Zastanawia mnie ciągle, że u Ciebie komunikacja idzie na 1.5 bita stopu a u mnie na 1. Szczerze mówiąc nawet nie mam możliwości ani na konwerterze RS-232/USB ani na PLC opcji ustawienia transmisji 8n1.5.