NEWS
modbus Verbindungsabbrüche - KACO Blueplanet NX3 & SDM630
-
Hallo in die Runde,
Ich bräuchte einmal Untersützung beim Thema modbus, da das ganze in meinem Setup derzeit nicht wirklich stabil läuft.
Folgendes Setup ist vorhanden:
- KACO Blueplanet 15.0 MX3 M2
- EAStron SDM630Modbus v3
- WaveShare RS465->Ethernet Converter
Verkabelung ist:
WR -> SDM630 -> WaveShareAlle Geräte sind über ein CAT 7 Kabel miteinander verbunden, die Enden sind jeweils mit einem 120 Ohm Widerstand abgeschlossen. Grundsätzlich funktioniert die Kommunikation auch und Ich kann aus beiden Geräten über den Modbus-Adapter Daten auslesen. Für jedes Gerät habe Ich aktuell eine eigene Instanz erstellt.
Das Problem ist, sobald beide Geräte gleichzeitig aktiv sind habe Ich Kommunikationsfehler / Verbindungsabbrüche im Modbus-Adapter. Nachts, wenn der WR aus ist, habe Ich keine Verbindungsabbrüche mehr auf der Instanz für den SDM630, das läuft komplett Fehlerfrei durch. Schaltet sich der WR wieder zu beginnen die Fehler von neuem. Zum Test hatte Ich auch schon den SDM630 abgeklemmt, so dann nur noch der Waveshare und der KACO an der Busleitung hingen und siehe da, auch hier keine Verbindungsabbrüche mehr.
Gerne kann Ich logs oder weitere Informationen liefern, das Logging im Modbus Adapter hatte Ich schon einmal auf Silly gestellt aber nichts sachdienliches erkennen können. Manchmal kommen anscheinend ungültige Daten und manchmal kommt es zu einem Timeout. Klingt für mich irgendwie nach Störungen auf der Leitung.
Hat irgendjemand eine Idee wie man das Thema noch weiter angehen könnte? Das mit den Abbrüchen und ab und an fehlerhaften / fehlenden Daten ist den Auswertungen nicht sonderlich zuträglich. Da es jeweils einzeln funktioniert kann es ja eigentlich nicht an den Kommunikationseinstellungen liegen.
Danke schon mal für sachdienliche Hinweise
-
@fefaul sagte in modbus Verbindungsabbrüche - KACO Blueplanet NX3 & SDM630:
Für jedes Gerät habe Ich aktuell eine eigene Instanz erstellt.
auf den gleichen Bus?
auf das gleiche serielle Gerät?
das geht nicht.Haben die Geräte wenigstens unterschiedliche IDs?
-
@fefaul said in modbus Verbindungsabbrüche - KACO Blueplanet NX3 & SDM630:
EAStron SDM630Modbus v3
Das ganze funktioniert nur mit einer Instanz des Modbus-Adapters.
Dort musst du in den Allgemeinen Einstellungen Mehrere Geräte-IDs aktivieren.
Dein Kaco hat die Modbus (RS485) ID 1. Den Zähler musst du auf eine andere ID umstellen.
Wenn die anderen Kommunikationsparameter (Baudrate, Parität, Stopbits) übereinstimmen, dann kann es funktionieren. Betonung auf kann.
Wenn nicht, dann brauchst du für es Gerät einen eigenen WaveShare. -
Danke für die Hinweise, vielleicht habe Ich das Konzept von RS485 noch nicht verstanden. Dachte es ist ein Bus aber anscheinend ist es mehr eine Serielle Schnittstelle.
Ich schaue mir das nochmal genauer an. Danke,
-
@fefaul sagte in modbus Verbindungsabbrüche - KACO Blueplanet NX3 & SDM630:
Dachte es ist ein Bus
ist es!
@fefaul sagte in modbus Verbindungsabbrüche - KACO Blueplanet NX3 & SDM630:
anscheinend ist es mehr eine Serielle Schnittstelle.
nein, der Konverter hängt an einer seriellen (USB) Schnittstelle und kann daher nur von einer Instanz verwendet werden.
-
@homoran said in modbus Verbindungsabbrüche - KACO Blueplanet NX3 & SDM630:
nein, der Konverter hängt an einer seriellen (USB) Schnittstelle und kann daher nur von einer Instanz verwendet werden.
Verstehe, den zweiten Konverter hänge ich dann einfach mit in den Bus oder verbinde ich einmal den SDM630 mit einen Konverter und einmal den WR mit dem anderen?
Alle Geräte haben natürlich unterschiedliche ID's.
-
@fefaul wenn du einen Bus mit zwei Geräten unterschiedlicher ID hast, warum willst du unbedingt zwei Instanzen haben?
Du kannst doch alles in einer Instanz abarbeiten.
hier hab ich einmal modbus RTU mit 6 Geräten und einmal Modbus TCP mit 8 Geräten
-
@homoran Ich brauch nicht unbedingt 2 Instanzen, hatte das nur gemacht weil die Settings verschiedenen waren und es nicht geklappt hat. (Und Ich keine Ahnung habe..)
Habe das gerade einmal alles in einer Instanz gemacht. Ergebnisse gibt es aber erst Morgen, die Sonne scheint gerade nicht
Aber an den Instanzen kann es eigentlich nicht liegen. Hatte auch schon jeweils eine der Instanzen deaktiviert und die Fehler gab es trotzdem. Als ob da auf der Leitung irgendwas stört.
-
@fefaul sagte in modbus Verbindungsabbrüche - KACO Blueplanet NX3 & SDM630:
Als ob da auf der Leitung irgendwas stört.
wäre auch möglich, aber was meinst du mit
@fefaul sagte in modbus Verbindungsabbrüche - KACO Blueplanet NX3 & SDM630:
weil die Settings verschiedenen waren
Alle Geräte eines Buss3s müssen schon die selben Settings haben.
und das
scheinst du ja beachtet zu haben. -
@homoran
Ja, die sind auf jeden Fall auf daisy-chained und nicht im Stern, die gleichen Einstellungen haben Sie auch. Ich hatte für den SDM630 "use aliases" aktiviert, aber anscheinend funktioniert das für den Kaco nicht. Ich habe das gerade mal rausgenommen.Aktueller Stand, den SDM630 kann ich aktuell auslesen. Die Register für den WR nicht, da der gerade aus ist.
Ich erhalte jetzt im Log folgende Fehler, unterdrücken lässt sich das nicht oder? Das kommt daher, dass er den WR gerade nicht erreichen kann. Ist halt nur nervig im Log.
modbus.0
2024-03-20 21:50:38.662 warn Poll error count: 1 code: {"err":"timeout","timeout":6000}
modbus.0
2024-03-20 21:50:38.662 error Client in error state.
modbus.0
2024-03-20 21:50:38.662 error Request timed out.
modbus.0
2024-03-20 21:50:38.661 warn Error: undefinedDANKE schonmal für die tolle Unterstützung hier. Hoffe das es dann Morgen funktioniert.
-
@fefaul sagte in modbus Verbindungsabbrüche - KACO Blueplanet NX3 & SDM630:
Ich habe das gerade mal rausgenommen.
dann sollten die Register jetzt so aussehen
und nicht mehr so
@fefaul sagte in modbus Verbindungsabbrüche - KACO Blueplanet NX3 & SDM630:
Das kommt daher, dass er den WR gerade nicht erreichen kann. Ist halt nur nervig im Log.
ist ja noch brauchbar.
mir war ein SDM72 im Bus ausgefallen, da lief der ganze Bus nicht mehr@fefaul sagte in modbus Verbindungsabbrüche - KACO Blueplanet NX3 & SDM630:
unterdrücken lässt sich das nicht oder?
sag mir wenn du weisst wie
-
@homoran said in modbus Verbindungsabbrüche - KACO Blueplanet NX3 & SDM630:
@fefaul sagte in modbus Verbindungsabbrüche - KACO Blueplanet NX3 & SDM630:
Ich habe das gerade mal rausgenommen.
dann sollten die Register jetzt so aussehen
Korrekt.
Er liest die Werte jetzt über die einen Instanz aus. Leider sind die Fehler und Verbindungsabbrüche wieder da Ich hab auch irgendwie keine Idee mehr woran das liegen kann. Wie gesagt, sobald nur eines der beiden Geräte am Bus hängt ist alles bestens
Vielleicht besorg Ich mir einfach einen zweiten Konverter und schaue ob es dann zuverlässig funktioniert. Ist zwar nicht optimal aber naja.
-
@fefaul sagte in modbus Verbindungsabbrüche - KACO Blueplanet NX3 & SDM630:
Vielleicht besorg Ich mir einfach einen zweiten Konverter und schaue ob es dann zuverlässig funktioniert.
dann mach aber zwei Busse draus.
@fefaul sagte in modbus Verbindungsabbrüche - KACO Blueplanet NX3 & SDM630:
Ist zwar nicht optimal aber naja.
musste ich für die Wärmepumpe auch machen.
wie sieht eigentlich "der Fehler" im log aus?
-
@homoran said in modbus Verbindungsabbrüche - KACO Blueplanet NX3 & SDM630:
@fefaul sagte in modbus Verbindungsabbrüche - KACO Blueplanet NX3 & SDM630:
Vielleicht besorg Ich mir einfach einen zweiten Konverter und schaue ob es dann zuverlässig funktioniert.
dann mach aber zwei Busse draus.
Ja definitiv, das war der Plan.
@fefaul sagte in modbus Verbindungsabbrüche - KACO Blueplanet NX3 & SDM630:
Ist zwar nicht optimal aber naja.
musste ich für die Wärmepumpe auch machen.
wie sieht eigentlich "der Fehler" im log aus?
2024-03-21 08:16:43.815 - error: modbus.0 (53124) Can not set value: The value of "offset" is out of range. It must be >= 0 and <= 8. Received 12 2024-03-21 08:16:44.030 - error: modbus.0 (53124) Can not set value: The value of "offset" is out of range. It must be >= 0 and <= 0. Received 4 2024-03-21 08:16:44.030 - error: modbus.0 (53124) Can not set value: The value of "offset" is out of range. It must be >= 0 and <= 0. Received 8 2024-03-21 08:16:44.031 - error: modbus.0 (53124) Can not set value: The value of "offset" is out of range. It must be >= 0 and <= 0. Received 12 2024-03-21 08:16:44.073 - warn: modbus.0 (53124) Poll error count: 1 code: "ReadHoldingRegisters: Invalid FC 4" 2024-03-21 08:16:44.155 - error: modbus.0 (53124) Can not set value: The value of "offset" is out of range. It must be >= 0 and <= 12. Received 20 2024-03-21 08:16:44.155 - error: modbus.0 (53124) Can not set value: The value of "offset" is out of range. It must be >= 0 and <= 12. Received 24 2024-03-21 08:16:44.155 - error: modbus.0 (53124) Can not set value: The value of "offset" is out of range. It must be >= 0 and <= 12. Received 28 2024-03-21 08:16:44.156 - error: modbus.0 (53124) Can not set value: The value of "offset" is out of range. It must be >= 0 and <= 12. Received 32 2024-03-21 08:16:44.156 - error: modbus.0 (53124) Can not set value: The value of "offset" is out of range. It must be >= 0 and <= 12. Received 36 2024-03-21 08:16:44.156 - error: modbus.0 (53124) Can not set value: The value of "offset" is out of range. It must be >= 0 and <= 12. Received 40 2024-03-21 08:16:44.156 - error: modbus.0 (53124) Can not set value: The value of "offset" is out of range. It must be >= 0 and <= 12. Received 48 2024-03-21 08:16:44.156 - error: modbus.0 (53124) Can not set value: The value of "offset" is out of range. It must be >= 0 and <= 12. Received 52 2024-03-21 08:16:44.156 - error: modbus.0 (53124) Can not set value: The value of "offset" is out of range. It must be >= 0 and <= 12. Received 68 2024-03-21 08:16:44.156 - error: modbus.0 (53124) Can not set value: The value of "offset" is out of range. It must be >= 0 and <= 12. Received 72 2024-03-21 08:16:44.156 - error: modbus.0 (53124) Can not set value: The value of "offset" is out of range. It must be >= 0 and <= 12. Received 76 2024-03-21 08:16:44.443 - warn: modbus.0 (53124) Poll error count: 1 code: "ReadInputRegisters: Invalid FC 3" 2024-03-21 08:16:44.494 - warn: modbus.0 (53124) Poll error count: 2 code: "ReadHoldingRegisters: Invalid FC 4" 2024-03-21 08:16:48.313 - warn: modbus.0 (53124) Poll error count: 3 code: "App Timeout" 2024-03-21 08:17:43.565 - warn: modbus.0 (53124) Error in handler for 4: RangeError [ERR_OUT_OF_RANGE]: The value of "offset" is out of range. It must be >= 0 and <= 3. Received 4 2024-03-21 08:17:43.813 - error: modbus.0 (53124) Can not set value: The value of "offset" is out of range. It must be >= 0 and <= 8. Received 12 2024-03-21 08:17:43.864 - error: modbus.0 (53124) Can not set value: The value of "offset" is out of range. It must be >= 0 and <= 8. Received 12 2024-03-21 08:17:44.055 - error: modbus.0 (53124) Can not set value: The value of "offset" is out of range. It must be >= 0 and <= 12. Received 20 2024-03-21 08:17:44.055 - error: modbus.0 (53124) Can not set value: The value of "offset" is out of range. It must be >= 0 and <= 12. Received 24 2024-03-21 08:17:44.055 - error: modbus.0 (53124) Can not set value: The value of "offset" is out of range. It must be >= 0 and <= 12. Received 28 2024-03-21 08:17:44.055 - error: modbus.0 (53124) Can not set value: The value of "offset" is out of range. It must be >= 0 and <= 12. Received 32 2024-03-21 08:17:44.055 - error: modbus.0 (53124) Can not set value: The value of "offset" is out of range. It must be >= 0 and <= 12. Received 36 2024-03-21 08:17:44.055 - error: modbus.0 (53124) Can not set value: The value of "offset" is out of range. It must be >= 0 and <= 12. Received 40 2024-03-21 08:17:44.056 - error: modbus.0 (53124) Can not set value: The value of "offset" is out of range. It must be >= 0 and <= 12. Received 48 2024-03-21 08:17:44.056 - error: modbus.0 (53124) Can not set value: The value of "offset" is out of range. It must be >= 0 and <= 12. Received 52 2024-03-21 08:17:44.056 - error: modbus.0 (53124) Can not set value: The value of "offset" is out of range. It must be >= 0 and <= 12. Received 68 2024-03-21 08:17:44.056 - error: modbus.0 (53124) Can not set value: The value of "offset" is out of range. It must be >= 0 and <= 12. Received 72 2024-03-21 08:17:44.056 - error: modbus.0 (53124) Can not set value: The value of "offset" is out of range. It must be >= 0 and <= 12. Received 76 2024-03-21 08:17:45.087 - error: modbus.0 (53124) Can not set value: The value of "offset" is out of range. It must be >= 0 and <= 8. Received 12 2024-03-21 08:17:45.554 - warn: modbus.0 (53124) Poll error count: 1 code: "ReadHoldingRegisters: Invalid FC 4" 2024-03-21 08:17:45.684 - warn: modbus.0 (53124) Poll error count: 1 code: "ReadHoldingRegisters: Invalid FC 4" 2024-03-21 08:17:48.354 - warn: modbus.0 (53124) Poll error count: 2 code: "App Timeout" 2024-03-21 08:17:53.565 - warn: modbus.0 (53124) Error in handler for 4: RangeError [ERR_OUT_OF_RANGE]: The value of "offset" is out of range. It must be >= 0 and <= 3. Received 4 2024-03-21 08:17:56.894 - warn: modbus.0 (53124) Poll error count: 1 code: "App Timeout" 2024-03-21 08:18:29.763 - warn: modbus.0 (53124) Error: undefined 2024-03-21 08:18:29.763 - error: modbus.0 (53124) Request timed out. 2024-03-21 08:18:29.763 - error: modbus.0 (53124) Client in error state. 2024-03-21 08:18:29.763 - warn: modbus.0 (53124) Poll error count: 1 code: {"err":"timeout","timeout":6000} 2024-03-21 08:18:30.092 - warn: modbus.0 (53124) Poll error count: 2 code: "App Timeout" 2024-03-21 08:18:30.153 - warn: modbus.0 (53124) Poll error count: 3 code: "App Timeout" 2024-03-21 08:18:32.933 - warn: modbus.0 (53124) Poll error count: 1 code: "App Timeout" 2024-03-21 08:30:00.024 - info: host.iobroker instance system.adapter.ical.0 started with pid 53154 2024-03-21 08:30:00.727 - info: ical.0 (53154) starting. Version 1.13.3 in /opt/iobroker/node_modules/iobroker.ical, node: v18.19.1, js-controller: 5.0.19 2024-03-21 08:30:01.180 - info: ical.0 (53154) processing URL: muell2024 https://www.awsas.de/pickups/ics.php?namen=Stadt%20L%FCtzen%20-%20Starsiedel&locationid=a11f25f2-eaa7-4b88-bf59-2257b9137797&jahre=2024&fractions=40001,40002,40003,40004 2024-03-21 08:30:01.245 - info: trashschedule.0 (13339) Setting "actionNeeded" flag for type.restabfalltonne.actionNeeded to true (???) 2024-03-21 08:30:01.257 - warn: trashschedule.0 (13339) no events matches type "Wertstofftonne" with match "Gelbe Tonne" 2024-03-21 08:30:06.212 - info: ical.0 (53154) Terminated (NO_ERROR): Without reason 2024-03-21 08:30:06.724 - info: host.iobroker instance system.adapter.ical.0 terminated with code 0 (NO_ERROR)
-
@fefaul Was machst du da?
@fefaul sagte in modbus Verbindungsabbrüche - KACO Blueplanet NX3 & SDM630:
Can not set value
willst du Werte schreiben?
@fefaul sagte in modbus Verbindungsabbrüche - KACO Blueplanet NX3 & SDM630:
The value of "offset" is out of range
was für einen Offset hast du wo konfiguriert?
-
@homoran
Ich möchte keine Werte schreiben und einen Offset habe ich auch nicht wissentlich konfiguriert.Anbei mal die Konfig der modbus instanz. Vielleicht erkennst du ja einen Fehler.
-
@fefaul du hast tcp? nicht rtu?
das hab ich wohl übersehen.
Da kann ich dir bei dem Konverter nicht helfen. -
Hallo zusammen,
Ich möchte noch mitteilen, dass das Problem jetzt behoben ist.
Ich hab einen neuen Konverter bestellt (selbes Modell / Herstellt) und jetzt funktioniert alles bestens! Anscheinend hatte der Konverter oder die Software (jetzt ist eine andere FW installiert) einen Fehler. An der Verkabelung habe Ich nichts geändert, immer noch alle Geräte an einem Kabel und 1 Koverter.
Hier der Vollständigkeit halber noch die Einstellungen der Instanz:
Vom Konverter (Waveshare RS485->ETH)
Die Einstellungen für die Register lade Ich im Github hoch, falls Sie jemand benötigt: https://github.com/ioBroker/modbus-templates
Danke an @Homoran für die Hilfestellungen!