Witamy, Gość. Zaloguj się lub zarejestruj.
Czy dotarł do Ciebie email aktywacyjny?
Aktualności:
Forum Sterowniki PLC Inteligentny dom > Systemy zarządzania >

Wizualizacja ioBroker + RPI 3 B+

Strony: 1 [2] 3 4
Drukuj
Autor Wątek: Wizualizacja ioBroker + RPI 3 B+  (Przeczytany 4668 razy)
jahu
Sr. Member
****
Wiadomości: 138


Wizualizacja ioBroker + RPI 3 B+
#15 : Czerwiec 05, 2018, 11:54:03 am »

najważniejsze - link do adaptera: https://github.com/tmikulski/iobroker.imperihome

bartek
Full Member
***
Wiadomości: 23


Wizualizacja ioBroker + RPI 3 B+
#16 : Czerwiec 05, 2018, 14:52:22 pm »

Okeej, mam kolejne pytanie, myślę że tym razem mi się uda coś pójść do przodu z tematem.

Otóż, skonfigurowałem adapter modbus w ten sposób (modbus TCP):



Połączył mi się z bramką. Logi:



I teraz, mając tablicę modbus (plik na końcu wpisu) chciałbym jakoś pobierać sobie informacje o stanie pracy w tym przypadku systemu klimatyzacji. Trochę nie wiem jak to teraz zrobić. Domyślam się, że raczej tutaj:

Tylko nie wiem co wpisac w które pole. Możecie mi w tym pomóc?

Tablica modbus: https://1drv.ms/b/s!Ag7xsece7xevnm9MjSqvPqDdLbrU

A najbardziej mi zależy na odczytywaniu temperatur z jednostek wewnętrznych ze strony 5.

jahu
Sr. Member
****
Wiadomości: 138


Wizualizacja ioBroker + RPI 3 B+
#17 : Czerwiec 05, 2018, 16:16:10 pm »

spróbuj tych danych i daj znać co Ci wyrzuci


jahu
Sr. Member
****
Wiadomości: 138


Wizualizacja ioBroker + RPI 3 B+
#18 : Czerwiec 05, 2018, 16:23:29 pm »

wkradł się błąd, w Type wybierz Float Big en...

gojac
Jr. Member
**
Wiadomości: 13


Wizualizacja ioBroker + RPI 3 B+
#19 : Czerwiec 05, 2018, 18:09:59 pm »

Pierwsza sugestia była dobra. Nigdzie nie wynika, że dane są float. Rejestry są raczej 16 bitowe a float wymaga 32. Z przeliczenia zakresu wynika, że dokładność jest co 0,5 stopnia. Moim zdaniem
Unsigned 16 bit (Big Endian) Length = 1, Factor = 0.5, Offset = 20.

gojac
Jr. Member
**
Wiadomości: 13


Wizualizacja ioBroker + RPI 3 B+
#20 : Czerwiec 05, 2018, 19:17:40 pm »

Oczywiście Offset = -20.

bartek
Full Member
***
Wiadomości: 23


Wizualizacja ioBroker + RPI 3 B+
#21 : Czerwiec 07, 2018, 11:52:35 am »

Dzięki!
Generalnie z takimi ustawieniami udało mi się "coś" odczytać:


Wygląda na to, że jest OK:


Ale po jakiejś chwili wywala mi błędy:



I generalnie po chwili połączy się znowu z bramką (slavem) i przez pare minut działa, później znowu błędy i tak w kółko. Macie pomysł co jest nie tak?

Ps. Możecie mi wytłumaczyć co oznaczają pola:
length
Factor
Offset (i po co się go wpisuje) ?

jahu
Sr. Member
****
Wiadomości: 138


Wizualizacja ioBroker + RPI 3 B+
#22 : Czerwiec 07, 2018, 12:36:13 pm »

w logach widać "App timeout" podobnie jak w tym wątku:
https://forum.iobroker.net/viewtopic.php?t=3896&start=120#p93986

zaktualizuj wersję Node i przeinstaluj adapter modbusa jeszcze raz.

bartek
Full Member
***
Wiadomości: 23


Wizualizacja ioBroker + RPI 3 B+
#23 : Czerwiec 07, 2018, 13:23:46 pm »

No to dziwna sprawa bo dzisiaj "zrobiłem" wszystko od nowa.

Spróbowałem teraz zrobić aktualizacje, ale wygląda na to, że jest OK:

jahu
Sr. Member
****
Wiadomości: 138


Wizualizacja ioBroker + RPI 3 B+
#24 : Czerwiec 08, 2018, 06:08:56 am »

wieczorem zobaczę u siebie czy mam coś w logach od modbusa

gojac
Jr. Member
**
Wiadomości: 13


Wizualizacja ioBroker + RPI 3 B+
#25 : Czerwiec 08, 2018, 07:48:29 am »

Błędy, które są w logach świadczą o źle dobranych parametrach czasowych modbusa. Korzystając z konwertera ModbusTCP na ModbusRTU musisz dobrać odpowiednie parametry i wykorzystać maksymalnie możliwości (szybkość połaczenia) po stronie komunikacji szeregowej (RS485), gdyż jest ona zdecydowanie wolniejsza niż komunikacja po TCP. Więc pierwsze miejsce gdzie musisz zajrzeć to konfiguracja konwertera. Drugie miejsce to konfiguracja adaptera w IObrokerze. W zakładce General masz dwa parametry istotne Poll delay oraz Read timeout. Na początek spróbuj zwiększyć Read timeout,
Co do pytania:
1. W zależności od użytej funkcji Modbus można odczytać jednym zapytaniem więcej niż jeden rejestr. W konfiguracji adaptera nie wnikamy jaka funkcja jest użyta, ale jeżeli wskażemy,że od adresu 30001 ma odczytać length=4 to modbus odczyta rejestry 30001, 30002, 30003 i 30004 i zwróci je w postaci tablicy;
2. W twoim przypadku pod adresem 30005 zwracane są wartości 0-240, które odpowiadają wartości temperatury -20 - 100. Wynika z tego, że dla odczytanego 0 masz temperaturę -20 stąd offset = -20, ale gdyby tak zostawić to przy odczytaniu 240 wynikałoby, że temperatura wynosi 220 a to raczej nieprawda. Dlatego zakres 0-240 trzeba przełożyć na zakres -20-100. Jeżeli zwracane wartości pomnożymy przez 0,5(Factor) to otrzymamy zakres 0-120. Jeżeli teraz przesuniemy go o -20(Offset) to otrzymamy zakres -20 - 100, czyli to co powinniśmy zgodnie z dokumentacją otrzymać i będziemy dostawać wartości co 0,5 stopnia. Wysyłanie wartości całkowitych w modbusie zużywa mniej transmisji niż floatów, dlatego po stronie slave'a modbusowego stosuje się często takie myki. Ważne, żeby dokumentacja zawierała odpowiednią informację tak jak w twoim wypadku "0~240 indicating -20~100".

bartek
Full Member
***
Wiadomości: 23


Wizualizacja ioBroker + RPI 3 B+
#26 : Czerwiec 08, 2018, 09:34:10 am »

WOW! Dziękuję za odpowiedź! Ten MODBUS już jest co raz jaśniejszy dla mnie Na prawdę, wielkie dzięki!!!

Tak wygląda u mnie konfiguracja w ioBrokerze:


A tylko tyle mogę zmienić w konfiguracji bramki:


Wiem o co Ci chodzi w parametrach komunikacji, ale niestety nie widzę powiązania pomiędzy jednymi parametrami a drugimi. W bramce nie bardzo mam co zmieniać...
Zmieniłem teraz Read Timeout na 10000 (oryginalnie 5000), ale to nie pomogło. Pomyślałem, że może to być spowodowane połączeniem przez WiFi do routera. I wygląda na to że to jest to bo od samego rana śmiga ładnie!

Jeszcze raz bardzo Wam dziękuję @jahu i @gojac za pomoc!
PS. Pewnie za chwilę napiszę z nowym problemem 


gojac
Jr. Member
**
Wiadomości: 13


Wizualizacja ioBroker + RPI 3 B+
#27 : Czerwiec 08, 2018, 09:54:49 am »

AC serial baudrate 4800 to strasznie wolno. Sprawdź po stronie rekuperatora jakie są możliwości konfiguracji prędkości połączenia RS485 (baudrate) . Wybierz rozsądną wartość ustaw na rekuperatorze i taką samą na gatewayu, to właśnie ten parametr AC serial baudrate. To powinno pomoc przy timeoutach.

mguc
Full Member
***
Wiadomości: 36


Wizualizacja ioBroker + RPI 3 B+
#28 : Czerwiec 18, 2018, 19:33:51 pm »

Niby wszystko ładnie i wygodnie.. ale w jaki sposób cokolwiek zmienić w sterowniku ?
Mam połączenie, widzę wartości w sterowniku S7, ale nijak nie potrafię ich zmienić z poziomu iobrokera. A manuale nijak nie pomagają.. zresztą - dla tworzącego aplikacje są bardzo cienkie...

jahu
Sr. Member
****
Wiadomości: 138


Wizualizacja ioBroker + RPI 3 B+
#29 : Czerwiec 18, 2018, 19:59:30 pm »

Jutro mogę zobaczyć w pracy jak działa z S7. A dokumentacja jest dość obszerna http://www.iobroker.net/docu/?page_id=2575&lang=en i z tego co widzę jest tam przykład z zapisywaniem do plc.

Strony: 1 [2] 3 4
Drukuj
Skocz do: