Pokeys Modbus-IPS Verbindungsproblem

Guten Abend,

ich bräuchte mal Hilfe. Ich habe schon länger einen Pokey und immer mal wieder mit dem gespielt/getestet auch über mehrer tage mal temperaturen gemessen usw.

Jetzt hab ich mir so tolle Platinen von Helmut bestückt und wollte den Pokey wieder in IPS einbinden.
Client Socket, Splitter Instanz, Modbus Instanz erstellt, alles gut.

Mein Problem: Der Client Socket bleibt nicht verbunden, er wechselt immer von Verbunden zu "Schnittstelle ist als Fehlerhaft markiert. … " Das kenne ich nur, wenn man nichts vom Pokey abfragt, ist aber ja nicht der Fall.
Wenn man die Zeitpunkte abpasst, wo der Socket verbunden ist, kann man auch z.B. einen Ausgang auf dem Pokey umschalten.

Habe testweise auch noch mal meinen alten Pokey mit Schraubklemmen angeschlossen, der früher auf jedenfall funktioniert hat, der hat das Problem jetzt auch.

Woran könnte das liegen ? hat jemand einen Tipp ?

Grüße

Julian

1.png

guck mal hier, hat mir seinerzeit auch geholfen:

LG Tom

Danke für den Tip, das wars aber leider nicht. Ein anderes Modbus-Gerät ist glaube ich der Übeltäter, wenn ich das deaktiviere, läuft der Pokey. Das ganze ist Reproduzierbar, ich kümmere mich aber jetzt erstmal um mein Pokey-Projekt, der andere Adapter bleibt erstmal aus jetzt.

Gruß

Julian

Heimgeist hatte in diesem Tread etwas für mich verwirrendes geschrieben, ein Tread davor Marcus, ich zitiere beides

So, Uwe hat den Fehler gefunden. Ich hatte den Client Socket benutzt der über den Weg ModBus-Gerät -> Modbus-TCP -> Client Socket angelegt wurde. Offensichtlich speichert IPS dann noch eine ID, die so nicht gebraucht wird.

Nachdem Uwe den Client Socket neu angelegt hatte, war der Fehler verschwunden. Wenn man also Uwe’s Script benutzt, den Client Socket immer direkt als neue Instanz anlegen, ModBus-Instanzen werden dann nicht verwendet!

Ich habe das nochmal bei mir nachgestellt. Das Problem war nicht der „Client Socket“ sondern die Splitter Instanz „Modbus RTU/TCP“ (siehe Anhang)
Wenn diese im Modus „Modbus TCP“ an den vom Script verwendeten Client Socket gebunden ist, kommt das beschriebene Problem.

Meine Vermutung: Die TransactionIDs der eingehenden Nachrichten „kollidieren“ mit dem internen TransactionID Zähler der „Modbus RTU/TCP“ Instanz.
Da diese Instanz die Modbus Anfrage nicht selber gesendet hat, kann sie natürlich keinen Bezug AnfrageID = AntwortID herstellen und sendet zu Recht einen Fehler.

Als Versender sollte von IPS dann aber besser „ModBus RTU/TCP“ statt „Client Socket“ im Log verwendet werden!

Das muß bei Jan auch so gewesen sein, ev. ein Michael eine genaue Anleitung was mit den AnfragIDs schief laufen könnte.
Gruß Helmut