NEWS
Sensostar Modbus auslesen
-
Danke an Alle die mich unterstützen.
Mein Probem ist, dass die im iobrocker angezeiten Werte alle "null" sind:
Die Instanz ist aber grün:
Die Abfrageanzahlg steht auf "1".
@peterfido
Die Wartezeiten im Adaper sind:
Wie sind deine Verzögerungswerte?
-
@stephan-a was sagt das debug-log beim Starten der Instanz?
-
@stephan-a sagte in Sensostar Modbus auslesen:
der Engelmann modbus Adapter.
was ist das genau?
Welche Konfiguration erwartet der? -
@stephan-a Lass dir doch nicht alles aus der Nase ziehen!
Gib doch mal zusammenhängend alle notwendigen Informationen:Du hast also ein Gerät (Wärmezähler??) das über Modbus auslesbar sein soll??
Daran hängt ein Adapter??
Daran hängt ein Waveshare RTU2ETH??
daran hängt dein ioBroker Server??Oder andersrum
Dein iobroker Server baut die Verbindung zum Waveshare auf.und dann???
steht die weitere Kommunikation?ist in dem Waveshare die serielle Seite aktiv??
korrekt konfiguriert??? -
@homoran - gut, ich mache keine neuen Thread auf und bleibe hier.
HIer die Ausgangslage:
@homoran sagte in Sensostar Modbus auslesen:
Du hast also ein Gerät (Wärmezähler??) das über Modbus auslesbar sein soll??
Ja, ich habe 2 Sensostar U und 2 modbus Adapter.
@homoran sagte in Sensostar Modbus auslesen:
Daran hängt ein Adapter??
Daran hängt ein Waveshare ETH2RS485??
daran hängt dein ioBroker Server??Ich habe einen 2 Kanal Waveshare to ETH Adapter.
4 laufende modbus Instanzen sind auf dem 1 Kanal. Die laufen ohne Probleme.
Am 2. Kanal Waveshare ist ein Engelmann modbus Adapter angeschlossen. Der zweite Zähler ist noch ohne Adapter.
Über modbus Instanzen kommen die Werte vom Waveschare in den iobocker.@homoran sagte in Sensostar Modbus auslesen:
und dann???
steht die weitere Kommunikation?
ist in dem Waveshare die serielle Seite aktiv??
korrekt konfiguriert???Die Instanzen im iobroker laufen und sind alle grün.
HIer die Einstellungen im Waveshare:
Der Engelmannmodbus hat:
Kommunikationsparameter 9600 bps, 8N1 Datenformat (8 Datenbits, Non-Parity, 1 Stoppbit)Bei vir-com sind Daten:
Der 2. Kanal die RXD steht auf "1". Also werden keine Daten empfangen.
Der Adapter ist in den Grundeinstellunen, nur die Anzahl der abzurufenden Register sind auf 1 gesetzt:
Eine Änderung der Verbindungsparameter von TCP auf TCP OVER RTU hat keine Veränderung gebracht.
Der Registerwert im iobrocker ist "null", er ist kurz grün und geht dann auf rot.HIer noch die vir-com Einstellungen:
Das Problem sind die Werte vom Engelmannzähler Modbusmodul, dass scheinbar keine Daten liefert.
Was ich nicht abfragen kann, ist die Modbusadresse vom Modul. Hier habe ich die ID 1 eingetragen und auch 2 versucht, ohne Äderung der angezeigten Werte.So das ist der aktuelle Stand.
-
@stephan-a sagte in Sensostar Modbus auslesen:
Daran hängt ein Adapter??
die Frage
@homoran sagte in Sensostar Modbus auslesen:
@stephan-a sagte in Sensostar Modbus auslesen:
der Engelmann modbus Adapter.
was ist das genau?
Welche Konfiguration erwartet der?wurde imner noch nicht beantwortet.
Was ist das und welche Funktion an welcher Stelle der gesamten Kette sitzt der?
-
@homoran sagte in Sensostar Modbus auslesen:
@homoran sagte in Sensostar Modbus auslesen:
der Engelmann modbus Adapter.
was ist das genau?
Welche Konfiguration erwartet der?wurde imner noch nicht beantwortet.
Was ist das und welche Funktion an welcher Stelle der gesamten Kette sitzt der?Das ist das Engelmannmodbusadaptermodul "Modbus-Modul RTU":
https://www.zaehlershop.com/epages/61607473.sf/de_DE/?ObjectID=362300935Hier nochmal die Kofiguration vom Engelmannmodbusadaptermodul:
Kommunikationsparameter: 9600 bps, 8N1 Datenformat (8 Datenbits, Non-Parity, 1 Stoppbit)So ist die Kette aufgebaut:
Engelmannzähler Sensostar mit eingebautem Modbusadaptermodul - Datenkabel A/B zum Waveshare to ETH Adapter - per LAN-Kabel zum pi mit laufendem iobrocker mit den Instanzen. -
@stephan-a sagte in Sensostar Modbus auslesen:
Engelmannzähler Sensostar mit eingebautem Modbusadaptermodul - Datenkabel A/B zum Waveshare to ETH Adapter
@homoran sagte in Sensostar Modbus auslesen:
steht die weitere Kommunikation?
ich sehe keine Informationen!
wie gesagt nutze ich keine usätzlichen Komplikationen wie den RTU2ETH, aber in vergleichbaren Fällen gab es Informationen zu der Kommunikation auf der seriellen Seite.
in etwa: gesendete und emfangene PaketeWie du schreibst ist die Modbus-instanz auf grün.
Also müsste das Problem auf der seriellen Seite liegen.Arum kommen dazu trotz mehrfacher Nachfrage keine Informationen?
-
@stephan-a Die Modbus RTU Verbindungen, die ich so nutze, haben als Parität EVEN.
-
@homoran sagte in Sensostar Modbus auslesen:
@stephan-a was sagt das debug-log beim Starten der Instanz?
hab ich bisher nicht gesehen!
@stephan-a sagte in Sensostar Modbus auslesen:
Der Registerwert im iobrocker ist "null"
du hast ja auch kein Polling aktiviert!
fang doch erstmal mit einem
@konni sagte in Sensostar Modbus auslesen:
Grundsätzlich kann ich mit dem Modbuscanner 35 Register auf einmal auslesen, aber nur von 30001 bis 30031
an.
Ich glaube sowieso nicht, dass es bei einem Zähler viel zu steuern gibt. -
@peterfido sagte in Sensostar Modbus auslesen:
@stephan-a Die Modbux RTU Verbindungen, die ich so nutze, haben als Parität EVEN.
Mit EVEN bricht die TCP Verbindung ab. Habe es wieder zurück gestellt. Danke
-
@homoran sagte in Sensostar Modbus auslesen:
@homoran sagte in Sensostar Modbus auslesen:
@stephan-a was sagt das debug-log beim Starten der Instanz?
hab ich bisher nicht gesehen!
modbus.5 2025-08-15 16:28:16.271 info Connected to slave 192.168.10.172 modbus.5 2025-08-15 16:28:15.753 info starting. Version 6.3.2 in /opt/iobroker/node_modules/iobroker.modbus, node: v20.19.4, js-controller: 7.0.6 modbus.5 2025-08-15 16:28:08.792 info terminating modbus.5 2025-08-15 16:28:08.515 info Terminated (ADAPTER_REQUESTED_TERMINATION): Without reason modbus.5 2025-08-15 16:28:08.511 info terminating modbus.5 2025-08-15 16:28:08.286 info Got terminate signal TERMINATE_YOURSELF
MOD-EDIT: Code in code-tags gesetzt!
@homoran sagte in Sensostar Modbus auslesen:
du hast ja auch kein Polling aktiviert!
Ok. Was und Wo?
-
@stephan-a
Das ist kein debug-log!siehe https://forum.iobroker.net/topic/51555/hinweise-für-gute-forenbeiträge/1
@stephan-a sagte in Sensostar Modbus auslesen:
Was und Wo?
erübrigt sich wahrscheinlich, wenn
@homoran sagte in Sensostar Modbus auslesen:
fang doch erstmal mit einem
@konni sagte in Sensostar Modbus auslesen:Grundsätzlich kann ich mit dem Modbuscanner 35 Register auf einmal auslesen, aber nur von 30001 bis 30031
an.
Ich glaube sowieso nicht, dass es bei einem Zähler viel zu steuern gibt. -
@stephan-a sagte in Sensostar Modbus auslesen:
Mit EVEN bricht die TCP Verbindung ab
ääähh???
wo hast du das verändert?
even gehört zu den seriellen Parametern.
Das hat nichts mit TCP zu tun!Was stand denn in diesem Fall im debug-log?
das könnte uns möglicherweise weiterhelfen -
@homoran
Mit even hat die Instanz beim ersten Start ca. 4 mal so lange benötigt um auf grün zu gehen.Ich habe die ursprünglichen 9600 bps, 8N1 Datenformat (8 Datenbits, Non-Parity, 1 Stoppbit wieder eingestellt.
Polling ist jetzt aktiviert.Hier der Log vom Neustart der Instanz - erst auf grün dann auf:
modbus.5 2025-08-15 21:50:28.045 info Disconnected from slave 192.168.10.172 modbus.5 2025-08-15 21:50:28.044 debug Closing client on purpose. modbus.5 2025-08-15 21:50:27.050 debug Cleaning up request fifo. modbus.5 2025-08-15 21:50:27.049 debug Clearing timeout of the current request. modbus.5 2025-08-15 21:50:27.048 debug Socket closed with error modbus.5 2025-08-15 21:50:27.046 warn [DevID_1] Poll error count: 1 code: {"err":"timeout","timeout":5000} modbus.5 2025-08-15 21:50:27.044 error Client in error state. modbus.5 2025-08-15 21:50:27.043 error Request timed out. modbus.5 2025-08-15 21:50:27.043 warn Error: undefined modbus.5 2025-08-15 21:50:22.035 debug [DevID_1/holdingRegs] Poll address 40001 - 2 registers modbus.5 2025-08-15 21:50:22.034 debug Initialization of scale factors done! modbus.5 2025-08-15 21:50:22.031 debug [DevID_1] Poll start --------------------- modbus.5 2025-08-15 21:50:22.029 info Connected to slave 192.168.10.172 modbus.5 2025-08-15 21:50:21.745 debug Add holdingRegisters.40001_Energie: {"_id":"holdingRegisters.40001_Energie","type":"state","common":{"name":"","role":"level","type":"number","read":true,"write":true,"def":0,"unit":""},"native":{"regType":"holdingRegs","address":40001,"deviceId":1,"type":"int32be","len":2,"offset":0,"factor":1,"poll":true}} modbus.5 2025-08-15 21:50:21.744 debug Initialize Objects for holdingRegs: [{"_address":"40001","name":"Energie","description":"","unit":"","type":"int32be","len":2,"factor":1,"offset":0,"formula":"","role":"level","room":"","poll":true,"wp":"","cw":"","isScale":"","address":40001,"deviceId":1,"id":"holdingRegisters.40001_Energie"}] modbus.5 2025-08-15 21:50:21.743 debug Initialize Objects for inputRegs: [] modbus.5 2025-08-15 21:50:21.741 debug Initialize Objects for coils: [] modbus.5 2025-08-15 21:50:21.740 debug Initialize Objects for disInputs: [] modbus.5 2025-08-15 21:50:21.504 info starting. Version 6.3.2 in /opt/iobroker/node_modules/iobroker.modbus, node: v20.19.4, js-controller: 7.0.6 modbus.5 2025-08-15 21:50:21.118 debug Plugin sentry Initialize Plugin (enabled=true) modbus.5 2025-08-15 21:50:14.761 info terminating modbus.5 2025-08-15 21:50:14.386 info Terminated (ADAPTER_REQUESTED_TERMINATION): Without reason modbus.5 2025-08-15 21:50:14.385 debug Plugin sentry destroyed modbus.5 2025-08-15 21:50:14.383 info terminating modbus.5 2025-08-15 21:50:14.255 debug Closing client on purpose. modbus.5 2025-08-15 21:50:14.247 info Got terminate signal TERMINATE_YOURSELF
Hier noch das Register laut Engelmann:
Die Anzahl der abzufragenden Register ist:
-
@stephan-a sagte in Sensostar Modbus auslesen:
warn Error: undefined
irgendwo klemmt es mit der Kommunikation des Endgeräts
an das Register kommt der ioBroker nicht ran@stephan-a sagte in Sensostar Modbus auslesen:
Hier noch das Register laut Engelmann:
und warum machst du nicht was ich schreibe??
zum dritten Mal:
@homoran sagte in Sensostar Modbus auslesen:
fang doch erstmal mit einem
@konni sagte in Sensostar Modbus auslesen:Grundsätzlich kann ich mit dem Modbuscanner 35 Register auf einmal auslesen, aber nur von 30001 bis 30031
an.
Ich glaube sowieso nicht, dass es bei einem Zähler viel zu steuern gibt. -
Ich habe das Holding Register 40001 gelöscht und das Input Register 30001 eingetragen.
Hier der Log mit Register 30001.modbus.5 2025-08-16 06:39:30.072 info Disconnected from slave 192.168.10.172 modbus.5 2025-08-16 06:39:30.071 debug Closing client on purpose. modbus.5 2025-08-16 06:39:29.076 debug Cleaning up request fifo. modbus.5 2025-08-16 06:39:29.075 debug Clearing timeout of the current request. modbus.5 2025-08-16 06:39:29.074 debug Socket closed with error modbus.5 2025-08-16 06:39:29.073 warn [DevID_1] Poll error count: 2 code: {"err":"timeout","timeout":5000} modbus.5 2025-08-16 06:39:29.072 error Client in error state. modbus.5 2025-08-16 06:39:29.071 error Request timed out. modbus.5 2025-08-16 06:39:29.071 warn Error: undefined modbus.5 2025-08-16 06:39:24.069 debug [DevID_1/inputRegs] Poll address 30001 - 2 registers modbus.5 2025-08-16 06:39:24.068 debug [DevID_1] Poll start --------------------- modbus.5 2025-08-16 06:39:24.067 info Connected to slave 192.168.10.172 modbus.5 2025-08-16 06:38:24.061 info Disconnected from slave 192.168.10.172 modbus.5 2025-08-16 06:38:24.060 debug Closing client on purpose. modbus.5 2025-08-16 06:38:23.068 debug Cleaning up request fifo. modbus.5 2025-08-16 06:38:23.067 debug Clearing timeout of the current request. modbus.5 2025-08-16 06:38:23.066 debug Socket closed with error modbus.5 2025-08-16 06:38:23.061 warn [DevID_1] Poll error count: 1 code: {"err":"timeout","timeout":5000} modbus.5 2025-08-16 06:38:23.059 error Client in error state. modbus.5 2025-08-16 06:38:23.059 error Request timed out. modbus.5 2025-08-16 06:38:23.058 warn Error: undefined modbus.5 2025-08-16 06:38:18.052 debug [DevID_1/inputRegs] Poll address 30001 - 2 registers modbus.5 2025-08-16 06:38:18.051 debug Initialization of scale factors done! modbus.5 2025-08-16 06:38:18.047 debug [DevID_1] Poll start --------------------- modbus.5 2025-08-16 06:38:18.045 info Connected to slave 192.168.10.172 modbus.5 2025-08-16 06:38:16.111 debug Remove old object modbus.5.holdingRegisters.40001_Energie modbus.5 2025-08-16 06:38:16.055 debug Initialize Objects for holdingRegs: [] modbus.5 2025-08-16 06:38:16.054 debug Add inputRegisters.30001_Energie: {"_id":"inputRegisters.30001_Energie","type":"state","common":{"name":"","role":"level","type":"number","read":true,"write":false,"def":0,"unit":""},"native":{"regType":"inputRegs","address":30001,"deviceId":1,"type":"int32be","len":2,"offset":0,"factor":1}} modbus.5 2025-08-16 06:38:16.052 debug Initialize Objects for inputRegs: [{"_address":"30001","name":"Energie","description":"","unit":"","type":"int32be","len":2,"factor":1,"offset":0,"formula":"","role":"level","room":"","cw":"","isScale":"","address":30001,"deviceId":1,"id":"inputRegisters.30001_Energie"}] modbus.5 2025-08-16 06:38:16.050 debug Initialize Objects for coils: [] modbus.5 2025-08-16 06:38:16.049 debug Initialize Objects for disInputs: [] modbus.5 2025-08-16 06:38:14.892 info starting. Version 6.3.2 in /opt/iobroker/node_modules/iobroker.modbus, node: v20.19.4, js-controller: 7.0.6 modbus.5 2025-08-16 06:38:11.713 debug Plugin sentry Initialize Plugin (enabled=true) modbus.5 2025-08-16 06:37:54.455 info terminating modbus.5 2025-08-16 06:37:54.234 info Terminated (ADAPTER_REQUESTED_TERMINATION): Without reason modbus.5 2025-08-16 06:37:54.233 debug Plugin sentry destroyed modbus.5 2025-08-16 06:37:54.232 info terminating modbus.5 2025-08-16 06:37:53.947 debug Closing client on purpose. modbus.5 2025-08-16 06:37:53.942 info Got terminate signal TERMINATE_YOURSELF
@homoran sagte in Sensostar Modbus auslesen:
@homoran sagte in Sensostar Modbus auslesen:
Ich glaube sowieso nicht, dass es bei einem Zähler viel zu steuern gibt.
Steuern will ich den Zähler auch nicht, sondern nur auslesen.
-
@stephan-a sagte in Sensostar Modbus auslesen:
@peterfido sagte in Sensostar Modbus auslesen:
@stephan-a Die Modbux RTU Verbindungen, die ich so nutze, haben als Parität EVEN.
Mit EVEN bricht die TCP Verbindung ab. Habe es wieder zurück gestellt. Danke
Was ist denn das für eine Destination IP?
-
Beide IP's kamen automatisch. Hier habe ich nichts selbst eingetragen.
-
@peterfido sagte in Sensostar Modbus auslesen:
Was ist denn das für eine Destination IP?
das könnte die IP sein unter der der Waveshare erreichbar ist.EDIT: blödsinn, das ist dev ID
@Stephan-a
Dein Problem liegt sehr wahrscheinlich in der seriellen Strecke!
nicht im ioBroker <->Waveshare per EthernetWas ist da nicht established?
und vorauf beziehen sich die RX und TX mit 0
da klemmt die Kommunikationwelche IPs kamen automatisch??
und wer ist ...1.3?die 180.154.125.252 gehört zu china telecom