NEWS
Stiebel-ISG - Modbus
-
Ich habe nen ISGplus und die "v12.2.1" drauf
-
@markusl said in Stiebel-ISG - Modbus:
Hallo zusammen,
ersteinmal danke für die vielen Infos!
Ich habe einen WPM4 mit einer sehr alten Wärmepumpe (WPL23E) und versuche es mit dem aktuellen Modbusadapter (5.0.11) die Daten zu holen. Als Vorlage habe ich die Dateien für WPs und Version 3 genommen und es kommen auch Daten rein und der Adapter bleibt grün.Ich habe aber leider noch ein Problem mit den Scripten. Die Änderung der DPs für Katalogwerte scheint nicht zu klappen. Ich bekomme immer für jeden DP den Fehler
Object modbus.1.holdingRegisters.41501_Betriebsart is invalid: obj.common.states has an invalid type! Expected "object", received "string"
In dem Datenpunkt steht zB eine 3 drinnen, sie wird nicht ersetzt. Der Modbusadapter ist der 2.Instanz, läuft also auch unter 1, wie im ursprünglichen Script.
Wisst Ihr wie ich das korrigieren kann?
Danke!
MarkusHallo,
ich bringe das Thema noch einmal hoch. Kann mir bitte jemand sagen welchen type der DP bei ihm hat? Ich finde es seltsam, dass die Definition im Modbus sich unterscheidet. Oder kann das an Versionsinkompatibilitäten liegen?
Danke und VG
Markus -
Nach dem Update auf JS Controller 5 erhalte ich im Log die nachfolgenden Fehler und der Adapter bleibt rot:
stiebel-isg.0 2023-06-13 09:39:35.438 error Parameter "options" needs to be a real object but type "object" has been passed stiebel-isg.0 2023-06-13 09:39:35.438 error Error: Parameter "options" needs to be a real object but type "object" has been passed at Validator.assertObject (/opt/iobroker/node_modules/@iobroker/js-controller-adapter/build/lib/adapter/validator.js:215:19) at AdapterClass.setObjectNotExists (/opt/iobroker/node_modules/@iobroker/js-controller-adapter/build/lib/adapter/adapter.js:3388:35) at main (/opt/iobroker/node_modules/iobroker.stiebel-isg/main.js:703:10) at Immediate.<anonymous> (/opt/iobroker/node_modules/iobroker.stiebel-isg/main.js:63:6) at process.processImmediate (node:internal/timers:478:21) stiebel-isg.0 2023-06-13 09:39:35.436 error uncaught exception: Parameter "options" needs to be a real object but type "object" has been passed stiebel-isg.0 2023-06-13 09:37:48.624 error Parameter "options" needs to be a real object but type "object" has been passed stiebel-isg.0 2023-06-13 09:37:48.624 error Error: Parameter "options" needs to be a real object but type "object" has been passed at Validator.assertObject (/opt/iobroker/node_modules/@iobroker/js-controller-adapter/build/lib/adapter/validator.js:215:19) at AdapterClass.setObjectNotExists (/opt/iobroker/node_modules/@iobroker/js-controller-adapter/build/lib/adapter/adapter.js:3388:35) at main (/opt/iobroker/node_modules/iobroker.stiebel-isg/main.js:703:10) at Immediate.<anonymous> (/opt/iobroker/node_modules/iobroker.stiebel-isg/main.js:63:6) at process.processImmediate (node:internal/timers:478:21) stiebel-isg.0 2023-06-13 09:37:48.622 error uncaught exception: Parameter "options" needs to be a real object but type "object" has been passed stiebel-isg.0 2023-06-13 09:37:17.185 error Parameter "options" needs to be a real object but type "object" has been passed stiebel-isg.0 2023-06-13 09:37:17.185 error Error: Parameter "options" needs to be a real object but type "object" has been passed at Validator.assertObject (/opt/iobroker/node_modules/@iobroker/js-controller-adapter/build/lib/adapter/validator.js:215:19) at AdapterClass.setObjectNotExists (/opt/iobroker/node_modules/@iobroker/js-controller-adapter/build/lib/adapter/adapter.js:3388:35) at main (/opt/iobroker/node_modules/iobroker.stiebel-isg/main.js:703:10) at Immediate.<anonymous> (/opt/iobroker/node_modules/iobroker.stiebel-isg/main.js:63:6) at process.processImmediate (node:internal/timers:478:21) stiebel-isg.0 2023-06-13 09:37:17.183 error uncaught exception: Parameter "options" needs to be a real object but type "object" has been passed stiebel-isg.0 2023-06-13 09:36:58.404 error Parameter "options" needs to be a real object but type "object" has been passed stiebel-isg.0 2023-06-13 09:36:58.404 error Error: Parameter "options" needs to be a real object but type "object" has been passed at Validator.assertObject (/opt/iobroker/node_modules/@iobroker/js-controller-adapter/build/lib/adapter/validator.js:215:19) at AdapterClass.setObjectNotExists (/opt/iobroker/node_modules/@iobroker/js-controller-adapter/build/lib/adapter/adapter.js:3388:35) at main (/opt/iobroker/node_modules/iobroker.stiebel-isg/main.js:703:10) at Immediate.<anonymous> (/opt/iobroker/node_modules/iobroker.stiebel-isg/main.js:63:6) at process.processImmediate (node:internal/timers:478:21) stiebel-isg.0 2023-06-13 09:36:58.402 error uncaught exception: Parameter "options" needs to be a real object but type "object" has been passed
-
@frana120500
Bitte mal über Github updaten. Sollte wieder laufen. -
@unltdnetworx Schnell wie die Feuerwehr
Adapter läuft wieder. Vielen Dank dafür
-
@kreuzundkwer @unltdnetworx Hallo, ich habe das gleiche Problem. Alle Holdingregister sind 0 bei einer LWZ 303 SOL. Gibt es dafür eine Lösung?
-
@fraat
Was zeigt denn die Weboberfläche für die jeweiligen Werte? -
Ist das bei eurem isg (bei mir isg Web) auch so, wenn das Gerät stromlos war, dass es nach dem Hochfahren sg ready aktiviert und die forcierten Werte aus dem Energiemanagement ansteuert? Ist halt blöd, wenn sich unnötig der Heizstab einschaltet, wenn z. B. kein PV Überschuss vorhanden ist.
-
@android51
Das kann ich leider nicht beantworten, da bei mir das ISG nie stromlos ist. -
Ist bei mir auch nicht der Regelfall. Habe nur die Tage was an meiner Elektroinstallation ergänzt und musste die Sicherung rausnehmen. Da war das isg kurzzeitig stromlos. Als ich die Sicherung wieder eingeschaltet habe, fuhr das isg hoch und die Warmwasserbereitung wurde aktiviert, weil das System die forcierten Werte erreichen wollte. Habe es glücklicherweise sofort erkannt. Wenn aber mal, aus welchen Gründen auch immer, der Netzbetreiber einen Stromausfall verursacht oder durch höhere Gewalt und ich nicht zu Hause bin, würde man es nicht mitbekommen. Nicht dramatisch, aber auch nicht schön.
-
Ich habe ein Problem mit der Kombination aus ISG mit EMI Modul und Modbus.
Prinzipiell sollte ja seit 2-3 Jahren Modbus auch weiterhin funktionieren, wenn das EMI Modul installiert ist.Vor etwa einem Monat habe ich das EMI Modul bekommen. Modbus funktioniert zwar noch, aber ich kann nur noch ca. 10 Werte abrufen.
Speziell ist es zudem bei 32501 Beitriebsstatus. Hier werden ganz andere Zahlen übermittelt als vorher. Im Heizbetrieb steht hier nun z. B. eine 81 und im Warmwasserbetrieb eine 97. Werte dieser Art tauchen in der Modbus-Doku nicht auf ...
Bei den anderen Werte kommt entweder nichts an, oder der Modbus-Adapter startet erst gar nicht. Vor der Installation des EMI Moduls hat alles wunderbar geklappt.Gibt es hier andere Nutzer die diese Kombination ebenfalls betreiben? Wie sieht das bei euch aus? Bekommt ihr nach wie vor alle Werte, die auch vor der Installation des EMI Moduls kamen?
Auf dem ISG läuft bei mir Version 12.1.2., gibt es da mittlerweile eine neuere Version? Hatte bei der Bestellung des EMI Moduls eigentlich auch darum gebeten, Updates einzuspielen, falls welche verfügbar wären.
-
@litithio Die neuste ist "v12.2.3"
könnte sein das durch das Modul, Modbus register dazu gekommen sind und nun "verschoben" ausgelesen werden.....
Ich wüsste jetzt keine art sich zu helfen... ausser ausprobieren (vielleicht die abfrage auch verkleiner/verlangsamen um das ISG nicht zu überlasten) oder Stiebel mal zu fragen ob sich da was geändert hat.....
-
Mein ISG-Web wurde vor kurzem aktualisiert. Bin jetzt auf Version 12.2.3. Habe festgestellt, das mir inzwischen auch die Inverter Aufnahmeleistung angezeigt wird. Weiß jemand zufällig, ob es dafür auch eine Modbus Adresse gibt?
-
Hallo zusammen,
da wir kürzlich eine PV-Anlage bekommen haben, kann ich die Abgerufene Leistung der Heizung nicht mehr direkt am Stromzähler abgreifen, da zum einen die beiden Zähler für Wärme- und Hausstrom hintereinander hängen und zum anderen der Stromzähler ja nichts zählt, wenn die Heizung über den Strom der PV-Anlage läuft. Ich habe zwar die Daten der Erzeugung, die Daten vom anderen Stromzähler usw. und könnte mir die Leistung der Heizung berechnen. Aber bevor ich das umsetze wollte die Daten direkt aus der Heizung abfragen. Über das ISG und den ISG-Adapter wird mit der Tages-Verbrauch von Warmwasser und Heizung ja angezeigt. Hierüber wollte ich dann die aktuelle Leistung als Delta der beiden letzten Werte errechnen. Im ISG-Adapter werden die Werte mit drei Dezimalstellen angezeigt, womit man ja gut arbeiten kann.
Ziehe ich mir die Daten über den Modbus, werden mir nur ganze kWh angezeigt. Damit kann ich ja dann relativ wenig mit anfangen, wenn ich einen Tagesverlauf darstellen will.
Ist das eine Einstellungssache oder gibt der Modbus die Daten einfach nur als ganze kWh weiter?Vielen Dank schonmal.
-
@saarlanduhu ich habe keine direkte Lösung für das Modbus-Problem, bei mir sind das auch nur ganze kWh.
Aber wenn du eine PV-Anlage hast, hast du dann auch das EMI-Modul? Wenn ja, dann lässt sich der aktuelle Verbrauch per https://github.com/unltdnetworx/ioBroker.stiebel-isg von der EMI-Status-Seite auslesen. -
Hallo zusammen,
Ich versuche gerade meine LWZ504 mittels ISG Plus und NEUESTER Software über Modbus anzusteuern.
Mit geht es um den SG Ready Eingang den ich ansteuern will.
Dies soll dann später automatisiert den Status von Tibber an die Schnittstelle übergeben und die Anlage forcieren.Angelegt habe ich zum Test die Holding Register wie folgt :
Steuere ich nun im Baum die Eingänge mit 1/0 kann ich alle 4 Betriebszustände steuern bzw. Sehe ich dann als Betriebszustand.
Steuere ich das ganze aber dann via Skript (dies ist nur ein Testskript) , sehe ich zwar auch den sich ändernden Wert im Baum, jedoch ändert sich der Betriebszustand nicht.
Was mache ich im Skript falsch bzw. Wie muss das Holding Register angelegt werden ?
Ich danke euch
-
@chriswitt
Hallo Chris,
ich persönlich würde statt "aktualisiere" die Funktion "setze" (heißt die so?) verwenden, aber das ist nicht das Problem.Du brauchst für deine Funktion einen Trigger. Den einfach um deinen Block herumsetzen. Z.B. "Wenn geändert Wert von Auto 11..."
-
Habe es auch mit diesem versucht :
Trigger ist klar, brauche ich dann später. Aktuell ändere ich im Skript halt manuell die Werte und speichere neu ab.
Es ändert sich ja auch der Wert im Baum, nur „überträgt“ es irgendwie nicht auf das ISG . Also vermute ich irgendwo einen Fehler im Modbus- Adapter ?
-
@chriswitt
Ich meinte "steuere Ready1 auf 0". So klappt es jeden Falls bei mir.Edit:
"Steuere" heißt die Fuktion die ich meinte, nicht "Setze". -
@unltdnetworx hey super. Scheint zu funktionieren.
Da ich an den Basics offenbar schon scheitere wird es ein Spaß das ganze mit Tibber zu steuern....
Forcieren uns. max werte anzusteuern ist ja kein Problem, aber sicherzustellen, dass Heizung trotzdem x stunden läuft und WW da ist, das wird spannend...