'Inteligenty' dom ze sterownikiem PLC

 Language:
Szukanie zaawansowane  

Aktualności:

Powrót do strony głównej: www.edom-plc.pl

Autor Wątek: Problem z ModBus TCP  (Przeczytany 3363 razy)

Damian

  • Newbie
  • *
  • Wiadomości: 3
    • Zobacz profil
Problem z ModBus TCP
« dnia: Września 19, 2018, 09:38:56 pm »

Na początku chciałbym przywitać wszystkich domorosłych i zawodowych automatyków :)

Zainspirowany stroną autora edom-plc postanowiłem przy okazji budowy domu uwzględnić automatykę budynkową. Moja instalacja na chwilę obecną opiera się o wago 750-880, 5x DI 750-1405, 9x DO 750-1504 + masa pierdół oparta o raspberry pi.

Chciałem już rozpocząć pisanie aplikacji do wizualizacji i sterowania domem i napotkałem problem z którym nie mogę sobie poradzić. Aplikację piszę w RubyOnRails pod kątem obsługi na desktopie/tablecie/komórce. Do komunikacji z PLC chciałem wykorzystać ModBus TCP lub http (READPI/WRITEPI). O ile odczytanie stanu poszczególnych portów na modułach DI/DO nie było problem to zmiana stanu na jakimkolwiek module DO już tak...
Nie mogę zmienić stanu na żadnym porcie DO ani przez ModBus TCP ani przez WRITEPI. W przypadku zmiany stanu przez modbusa kompletnie nic się nie dzieje. W przypadku WRITEPI dostaję odpowiedź "Address is not allowed or fieldbus is not active" (komenda http://ADRES_IP/WRITEPI?ADR1=QX0.4&VALUE1=0&FORMAT1=%d)
READPI (http://ADRES_IP/READPI?ADR=QX0.4&FORMAT=%d) dla tego adresu działa i zwraca poprawną wartość "1".

Mało tego... po zalogowaniu się CodeSys'em na PLC, mogę zmieniać stan adresów przez "Konfigurację sterownika" i tam zmiana stanów działa...

Sam kod programu PLC jest właściwie pusty, mam tam tylko testowe kawałki kodu do zabawy.

Napisałem już w tej sprawie do serwisu WAGO z prośbą o pomoc ale jeszcze się nie odezwali...
Może ktoś z Was spotkał się z takim problemem ? Skończyły mi się już pomysły :( 2-e doby męczę ten temat i już padam na p****.
Zapisane

admin

  • Administrator
  • Sr. Member
  • *****
  • Wiadomości: 313
    • Zobacz profil
Odp: Problem z ModBus TCP
« Odpowiedź #1 dnia: Września 19, 2018, 10:09:39 pm »

Cześć,

Tak na szybko przed snem z komórki: spróbuj pisać do zmiennych typu Bool podłączonych do wyjść, a nie do wyjść (qx) bezpośrednio.

Out1 := test;

Gdzie var
test AT MB0 : BOOL;

I potem writepi... Adr1 = MB0..
 
Zapisane

Damian

  • Newbie
  • *
  • Wiadomości: 3
    • Zobacz profil
Odp: Problem z ModBus TCP
« Odpowiedź #2 dnia: Września 19, 2018, 10:19:08 pm »

Jutro sprawdzę bo przez wgranie nowego programu do PLC wyłączyłem prąd na budowie i utraciłem połączenie :)
Kolejna rzecz do poprawki :>

PS. dziękuję za szybką odpowiedź. Dam znać...
Zapisane

Damian

  • Newbie
  • *
  • Wiadomości: 3
    • Zobacz profil
Odp: Problem z ModBus TCP
« Odpowiedź #3 dnia: Września 20, 2018, 08:41:05 am »

Dziękuję, działa !

Teraz najlepsze... można zacząć programować :>
« Ostatnia zmiana: Września 20, 2018, 08:47:00 am wysłana przez Damian »
Zapisane