NEWS
Kaco Blueplanet NX3 10.0 Wechselrichter auslesen (JSON)
-
@jörg-5 sagte: Vermutlich war das Abfrageinterval zu schnell.
Ich vermute eher, dass die Instanz nach Neustart noch in der Initialisierungsphase war als die Meldung kam.
Meldet die CCU den Empfang nicht zurück? Dann müssten die Werte schwarz werden.Zeige bitte die OBJEKTDATEN von "hm-rega.0.35000" in Code tags! (Expertenmodus und dann Bleistift rechts)
-
@jörg-5 sagte in Kaco Blueplanet NX3 10.0 Wechselrichter auslesen (JSON):
Wenn ich auf "Zahl" umstelle, dann werden die Werte nicht mehr gefüllt und bleiben leer. Warum auch immer.
Siehe hier:bitte den log dazu zeigen!
dIE sysVar muss Zahl sein, oder due Zahl muss als String übergeben werden.
ob du in der CCU sinnvol mit Strings rechnen kannst, weiß ich nicht mehr -
@homoran said in Kaco Blueplanet NX3 10.0 Wechselrichter auslesen (JSON):
@jörg-5 sagte in Kaco Blueplanet NX3 10.0 Wechselrichter auslesen (JSON):
Wenn ich auf "Zahl" umstelle, dann werden die Werte nicht mehr gefüllt und bleiben leer. Warum auch immer.
Siehe hier:bitte den log dazu zeigen!
dIE sysVar muss Zahl sein, oder due Zahl muss als String übergeben werden.
ob du in der CCU sinnvol mit Strings rechnen kannst, weiß ich nicht mehrHi again!
So, ich hab der Sache seine Zeit gelassen und mit 15 Sekunden (Was auch vollkommen ausreicht) funktioniert es jetzt komplett korrekt ohne Fehler! Da nun aber keine Sonne mehr ist, ist der Wechselrichter aus und ich kann Dir leider nichts mehr an Daten liefern. Ich werde das morgen noch mal beobachten. Soll ich dann noch mal die von Dir gewünschten Daten hier posten?
Viele Grüße
Jörg -
@paul53 said in Kaco Blueplanet NX3 10.0 Wechselrichter auslesen (JSON):
@jörg-5 sagte: Vermutlich war das Abfrageinterval zu schnell.
Ich vermute eher, dass die Instanz nach Neustart noch in der Initialisierungsphase war als die Meldung kam.
Meldet die CCU den Empfang nicht zurück? Dann müssten die Werte schwarz werden.Zeige bitte die OBJEKTDATEN von "hm-rega.0.35000" in Code tags! (Expertenmodus und dann Bleistift rechts)
{ "_id": "hm-rega.0.35000", "type": "state", "common": { "name": "PV Erzeugung - BP NX3", "type": "number", "read": true, "write": true, "role": "state", "desc": "Erzeugung ", "min": 0, "max": 65000, "unit": "W" }, "native": { "Name": "PV Erzeugung - BP NX3", "TypeName": "VARDP", "DPInfo": "Erzeugung ", "ValueMin": 0, "ValueMax": 65000, "ValueUnit": "W", "ValueType": 4, "ValueSubType": 0, "ValueList": "" }, "from": "system.adapter.hm-rega.0", "user": "system.user.admin", "ts": 1707574316899, "acl": { "object": 1636, "state": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" } }
{ "_id": "hm-rega.0.35001", "type": "state", "common": { "name": "PV Erzeugung BP NX3 - Total", "type": "number", "read": true, "write": true, "role": "state", "desc": "Tageserzeugung", "min": 0, "max": 65000, "unit": "kWh" }, "native": { "Name": "PV Erzeugung BP NX3 - Total", "TypeName": "VARDP", "DPInfo": "Tageserzeugung", "ValueMin": 0, "ValueMax": 65000, "ValueUnit": "kWh", "ValueType": 4, "ValueSubType": 0, "ValueList": "" }, "from": "system.adapter.hm-rega.0", "user": "system.user.admin", "ts": 1707574316905, "acl": { "object": 1636, "state": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" } }
Aber wie gesagt, jetzt funktionierte es zum Schluss ja, auch ohne Warnungen, mit 15 Sekunden Abfragezeit.
-
@jörg-5 sagte: jetzt funktionierte es zum Schluss ja, auch ohne Warnungen
So sehen die Objektdaten korrekt aus - bis auf die Namen.
- 35000: "PV Leistung - BP NX3"
- 35001: "PV Erzeugung BP NX3 - Tag"
-
@paul53 sagte in Kaco Blueplanet NX3 10.0 Wechselrichter auslesen (JSON):
Meldet die CCU den Empfang nicht zurück? Dann müssten die Werte schwarz werden.
@Jörg-5 wie sieht es damit aus?
dauert ggf. 30 Sekunden.
Vielleicht klemmt es deswegen. dann müsstest du das Rega polling Intervall runtersetzen -
Moin @homoran
Habs jetzt ja schon ein paar Wochen laufen und es klappt hervorragend...
Bis die Sonne weg ist und der Wechselrichter aus geht.Sag mal wie kann ich das Script erweitern, das es nur Werte schreibt, wenn die IP erreichbar ist?
Ich bekomme die Log mit folgenden Fehler über Nacht zu geschwemmtjavascript.0 2024-03-29 20:01:33.060 error Request error: Error: connect EHOSTUNREACH 192.168.10.214:8484 javascript.0 2024-03-29 20:01:18.083 error Request error: Error: connect EHOSTUNREACH 192.168.10.214:8484 javascript.0 2024-03-29 20:01:03.075 error Request error: Error: connect EHOSTUNREACH 192.168.10.214:8484 javascript.0 2024-03-29 20:00:48.067 error Request error: Error: connect EHOSTUNREACH 192.168.10.214:8484 javascript.0 2024-03-29 20:00:33.059 error Request error: Error: connect EHOSTUNREACH 192.168.10.214:8484 javascript.0 2024-03-29 20:00:18.084 error Request error: Error: connect EHOSTUNREACH 192.168.10.214:8484 javascript.0 2024-03-29 20:00:03.079 error Request error: Error: connect EHOSTUNREACH 192.168.10.214:8484 javascript.0 2024-03-29 19:59:48.068 error Request error: Error: connect EHOSTUNREACH 192.168.10.214:8484 javascript.0 2024-03-29 19:59:33.059 error Request error: Error: connect EHOSTUNREACH 192.168.10.214:8484 javascript.0 2024-03-29 19:59:18.083 error Request error: Error: connect EHOSTUNREACH 192.168.10.214:8484
Ist ja logisch, der Wechselrichter arbeitet dann nicht mehr, da er nur bei Energie vom Dach funktioniert. Kommt nix, weil Nacht ist, ist er aus. Wie könnte man das machen?
Hatte an ein IF ELSE gedacht, aber das wüsste ich nicht umzusetzen, da es ja bereits eine ähnliche Funktion im Script gibt.
Evtl könnte man bei ERROR das Script stoppen bzw. die Abfrage überspringen. Nachteil dabei ist, man merkt nicht wenn der Wechselrichter mal eine neue IP bekommt oder ähnliches. -
Seit einem Update haut er mir diesen Fehler raus:
javascript.0 2024-05-28 19:01:00.029 error at processTimers (node:internal/timers:512:7) javascript.0 2024-05-28 19:01:00.029 error at listOnTimeout (node:internal/timers:569:17) javascript.0 2024-05-28 19:01:00.028 error at Timeout._onTimeout (/opt/iobroker/node_modules/node-schedule/lib/Invocation.js:228:7) javascript.0 2024-05-28 19:01:00.028 error at /opt/iobroker/node_modules/node-schedule/lib/Invocation.js:268:28 javascript.0 2024-05-28 19:01:00.028 error at Job.invoke (/opt/iobroker/node_modules/node-schedule/lib/Job.js:171:15) javascript.0 2024-05-28 19:01:00.028 error at Job.job (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1769:34) javascript.0 2024-05-28 19:01:00.027 error at Object.<anonymous> (script.js.PV.Erzeugung_JavaScript:4:5) javascript.0 2024-05-28 19:01:00.026 error Error in callback: ReferenceError: Request is not defined
Im Script steht folgendes:
schedule('*/60 * * * * *', function() { Request('http://192.168.10.214:8484/getdevdata.cgi?device=2&sn=10.0NX312036540', function(error, response, result) { if(!error && result) { const obj = JSON.parse(result); setState('hm-rega.0.35000', obj.pac); // AC Leistung in W setState('hm-rega.0.35001', obj.etd / 10); // Energie Tag in kWh } }); });
Der Wechselrichter und die Daten dort, haben sich nicht verändert. Quelle und Ziel sind gleich geblieben.
Die javascript.0 ist in v8.3.1 dort gab es glaube ich vor ein paar Tagen ein Update.Hat einer von euch eine Idee wie das Problem gelöst werden kann?
Viele Grüße
Jörg
-
@jörg-5 sagte: Im Script steht folgendes:
Mit Request (mit großem R) kann es noch nie funktioniert haben.
Ergänze am Skriptanfangconst Request = require('request');
... oder stelle auf httpGet() um, wozu es etliche Beiträge im Forum gibt.
-
@jörg-5 sagte in Kaco Blueplanet NX3 10.0 Wechselrichter auslesen (JSON):
Hat einer von euch eine Idee wie das Problem gelöst werden kann?
Auf httpGet migrieren: https://github.com/ioBroker/ioBroker.javascript/blob/master/docs/en/upgrade-guide.md
schedule('*/60 * * * * *', () => { httpGet('http://192.168.10.214:8484/getdevdata.cgi?device=2&sn=10.0NX312036540', (error, response) => { if (!error) { const obj = JSON.parse(response.data); setState('hm-rega.0.35000', obj.pac); // AC Leistung in W setState('hm-rega.0.35001', obj.etd / 10); // Energie Tag in kWh } }); });
-
@haus-automatisierung Vielen Dank für die schnelle Hilfe.
Ich hatte das bei Blocky auch chon gesehen, als ich schauen wollte wie ich das mit Blocky notfalls machen könnte.
Dein Link ist da auch sehr gut. Vielen Dank!!!Viele Grüße
Jörg