NEWS
Modbus: Adapter (Samsung) einbinden
-
@minkhx sagte in Modbus: Adapter (Samsung) einbinden:
Aber genau diese explizite Deklaration entfällt auf der Codesys-Seite, da es ja beliebige Var sind. Keine fest "programmierten" Parameter eine Ladesäule.
eben!
Ich gehe davon aus, dass du die Register selber definieren musst.@minkhx sagte in Modbus: Adapter (Samsung) einbinden:
Was sagt den der Fehler der Log aus, die ich gepostet habe.
leider nicht in code-tags
@homoran sagte in Modbus: Adapter (Samsung) einbinden:
aus dem Screenshot tue ich mich schwer zu zitieren
-
@homoran
Das lässt sich ändern;)
2025-05-30 22:07:00.520 - debug: modbus.0 (60830) sending tcp data
2025-05-30 22:07:00.631 - warn: modbus.0 (60830) FC1 request outside coils boundaries: from 2, len 8. Expected max address 82025-05-30 22:07:00.632 - debug: modbus.0 (60830) sending tcp data
2025-05-30 22:07:00.743 - warn: modbus.0 (60830) FC2 request outside discrete inputs boundaries: from 1, len 8. Expected max address 8 -
@minkhx sagte in Modbus: Adapter (Samsung) einbinden:
was RTU-typisches. Da gibt es IDs, weil seriell!
Blödsinn!
Das istvein tcp cluent mit über 25 IDs von denen ich hier gerade 8 nutze!Außerdem
@homoran sagte in Modbus: Adapter (Samsung) einbinden:
Aber selbst wenn nur eine ID an der IP Hängt muss die angegeben werden.
also was soll diese fruchtlose Diskussion?
-
@minkhx sagte in Modbus: Adapter (Samsung) einbinden:
FC1 request outside coils boundaries
die Werte passen nicht zu coils!
wieso nutzt du coils?@minkhx sagte in Modbus: Adapter (Samsung) einbinden:
outside discrete inputs boundaries
dito mit diskreten Eingängen!
Noch was!
zum testen immer nur ein Register nehmen.
Es braucht nur ein einziger Fehler vorzuliegen, dann läuft gar nichts mehr. -
@homoran said in Modbus: Adapter (Samsung) einbinden:
die Werte passen nicht zu coils!
coils und discretes haben ihre Berechtigung.
Und natürlich habe ich es bereits auf eines von beiden reduziert. -
@minkhx sagte in Modbus: Adapter (Samsung) einbinden:
coils und discretes haben ihre Berechtigung.
Natürlich!
wenn sie vom Gerät gefordert werden.deswegen die Nachfrage watum du sie verwendest.
@minkhx sagte in Modbus: Adapter (Samsung) einbinden:
Und natürlich habe ich es bereits auf eines von beiden reduziert.
ist schon 1 zuviel!
-
@homoran said in Modbus: Adapter (Samsung) einbinden:
Das istvein tcp cluent mit über 25 IDs von denen ich hier gerade 8 nutze!
AußerdemAber ganz sicher ist es so!
Ein TCP-Stack unterscheidet sich grundlegend von einer seriellen Kommunikation.
Wenn Du, wie Du sagst, TCP/RTU-Bridge benutzt ist das genau der Grund dafür, warum IDs verwendet werden.
Schau Dir mal das OSI-Modell an. -
@homoran said in Modbus: Adapter (Samsung) einbinden:
ist schon 1 zuviel!
Und wie soll ich dann auf Fehlersuche gehen, wenn nichts ausgetauscht wird? Dann kann ich den Adapter doch löschen lol.
-
@minkhx sagte in Modbus: Adapter (Samsung) einbinden:
Wenn Du, wie Du sagst, TCP/RTU-Bridge benutzt ist das genau der Grund dafür, warum IDs verwendet werden.
das habe ich nicht gesagt!
@minkhx sagte in Modbus: Adapter (Samsung) einbinden:
Und wie soll ich dann auf Fehlersuche gehen,
indem du nur mit einem Register anfängst
Dann die vom Gerät geforderten Parameter einstellst...und testest.
Wenn du die Parameter richtig verwendet hast undxes trotzdem nich klappt, sollte es anhand der Meldungen herauszufinden sein wo es noch klemmt.
-
@homoran
Deine Aussage:
"im Gegenteil!
da geht es um einen TCP2RTU Konverter."Hmmm, da war ich wohl auf dem Holzweg
Nun ja, ein Register wird nicht benötigt. Es geht um boolsche Werte.
Nur weil es in Deiner Konfi keine gibt, heißt das ja nicht, das grundsätzlich nur Register verarbeitet werden dürfen. Denn dann wäre ja die Eingabemaske des Modbus-Adapters etwas irreführend.Das Auswerten von zwei Fehlermeldungen hat bisher leider nichts gebracht.
-
@minkhx sagte in Modbus: Adapter (Samsung) einbinden:
Das Auswerten von zwei Fehlermeldungen hat bisher leider nichts gebracht.
weil du es nicht veränderst.
woher hast du denn den Wert5
?
und woher die ID 5?
du kannst doch ein Paket nicht irgendwohin schicken und hoffen es kommt da an wo du es gerne hättest!Warum coils und discrete inpits frage ich schon nicht mehr
Auch wenn ich genügend input Register verwende die nur bool'sche Aufgaben erfüllen
Außerdem sind meine Modbus Instanzen alle Master und holen sich/ senden an die Clients
-
Natürlich habe ich Veränderungen vorgenommen. Ich sitz doch hier nicht, nur um zu chatten:)
Mach nen besseren Vorschlag als die 5. Mehr als die screenshots der Einstellungen habe ich nicht.
Das Verwenden von Registern für Bool ist ineffizient.
Ja und weil du eine Parallel/Seriell-Wandler betreibst, der nur in dieser Konfiguration funktioniert, brauchst Du auc den ioB-Master.
Ich aber nicht. ioB spielt nur eine untergeordnete Rolle im System. Die Einstellmöglichkeiten des Adapters wurden wahrgenommen und eine Slave-Konfiguration erstellt.
Wozu sollten diese sonst gut sein? -
@minkhx sagte in Modbus: Adapter (Samsung) einbinden:
Das Verwenden von Registern für Bool ist ineffizient.
das bestreite ich ja gar nicht.
Man muss aber das verwenden was das Gerät verlangt.@minkhx sagte in Modbus: Adapter (Samsung) einbinden:
weil du eine Parallel/Seriell-Wandler betreibst,
tue ich doch gar nicht!
ich habe nur rein RTU und rein TCP Instanzen.
in beiden habe ich mehrere IDs.Das muss für dich natürlich nicht gelten, aber auch bei meinem TCP Client mit nur einer ID muss da trotzdem die 200 im Adapter eingetragen sein, die der Client besitzt.
@minkhx sagte in Modbus: Adapter (Samsung) einbinden:
Wozu sollten diese sonst gut sein?
um den Voraussetzungen der "Gegenstelle" zu entsprechen!
so wird hier im Forum bereits ein Slave u.a. verwendet um einem anderen Master ein Fake-Smartmeter vorzugaukeln.
Da ruft der Master dann die Daten ab.Ein Slave, der aktiv steuert ist mir bisher nicht untergekommen, was aber nichts bedeutet.
-
@minkhx : wenn es mit HA out of the Box funktioniert, dann zeige mal die Yaml mit der entsprechenden konfig.
-
@wendy2702 Und was soll das bringen? Das wird mir bei der Lösung des Problems nicht helfen und wäre sowas von off-topic;)
Ich habe gerade auf ioB gewechselt, weil HA überwiegend Müll ist:)
Ich kann Dir aber dennoch versichern, das es direkt funktioniert hat.
Und das in beide Richtungen. Ich konnte einen Zustand senden und diesem mit einem anderen Zustand "freigeben", so dass dann eine Aktion ausgelöst wurde. -
@minkhx sagte in Modbus: Adapter (Samsung) einbinden:
was soll das bringen?
ist doch klar!
@minkhx sagte in Modbus: Adapter (Samsung) einbinden:
Ich kann Dir aber dennoch versichern, das es direkt funktioniert hat.
und genau deswegen wäre das yaml ja so interessant.
Da würde man dan sehen können, was dort konfiguriert ist. -
@homoran sagte in Modbus: Adapter (Samsung) einbinden:
@minkhx sagte in Modbus: Adapter (Samsung) einbinden:
was soll das bringen?
ist doch klar!
@minkhx sagte in Modbus: Adapter (Samsung) einbinden:
Ich kann Dir aber dennoch versichern, das es direkt funktioniert hat.
und genau deswegen wäre das yaml ja so interessant.
Da würde man dan sehen können, was dort konfiguriert ist.Übrigens:
im codesys scheint es ja
einen Modbus client zu geben.
ist in dem Reiter etwas zu konfigurieren? -
Da du noch nicht mal eine funktionierende Anbindung via MODBUS hast (Siehe paralles Topic https://forum.iobroker.net/topic/81215/modbus-verbindung-zu-codesys-runtime-herstellen
) schlage ich vor du versuchts zuerst mal den MODBUS an sich zum Laufen zu bringen. DANN kann man schaun dass du Daten von einem anderen Adapter bekommst. (Persönlich vermute ich mal, dass das nur via Script gehen wird).
ERGO:
- leg mal unter 0_userdata_0 einen beliebigen State an
- configurier den modbus Adapter so dass Änderungen dieses States an dein Gerät gesendet werden
- ändere den 0_user_data_0.xyz State beliebig via admin und schau ob deion Gerät das empfängt. Vergiss dabei nicht ACK=FALSE zu setzen/lassen.
Erst wenn das geht macht es m.E. Sinn da über Samsung zu reden....
@Homoran
Da Pparallele Topic (fast) nie Sinn machen rege ich an die beiden Topics zusammen zu legen. -
-
@wendy2702 Und wo kann diese YAML im ioB-Modbusadapter eingelesen werden bzw. der Konfiguration zugrunde gelegt werden?