Seite 1 von 3

PV via MQTT

Verfasst: So Jan 22, 2023 6:21 pm
von Alex_Polestar
Hallo zusammen,

da ich die PV Werte von 3 Anlagen per modbus auslese habe ich die Werte mit Hilfe Node-Red aggregiert und möchte sie via
openWB/set/pv/1/W
openWB/set/pv/1/WhCounter
der openWB bereit stellen.
Im iobroker habe ich die beiden Topics erzeugt und aus Node-Red mit den Daten versorgt:
iobroker.png
Leider werden die Werte trotz Einstelung
PV1.png
PV1.png (11.68 KiB) 955 mal betrachtet
nicht von der openWB erkannt:
Status.png
Die openWB wurde mehrfach gestartet, auch vom Strom getrennt doch bekommt sie nichts von den Werten mit.
Meine Version ist 1.9.288, soeben auch auf 1.9.290 gepusht alles ohne Erfolg.
Wo habe ich die Tomaten auf den Augen? :?

LG
Alex

Re: PV via MQTT

Verfasst: So Jan 22, 2023 7:34 pm
von Gero
Bei nodeRED muss man immer aufpassen, dass die Summe der drei Phasen auch zeitlich passt. Einfach nur drei Messages abwarten bringt nicht immer das gewünschte Ergebnis, wenn eine Phase alle 10s kommt und die anderen beiden alle 12 oder 16s.

Ich empfehle die Statistics-Node aus dem combine-Paket.

Re: PV via MQTT

Verfasst: So Jan 22, 2023 7:44 pm
von Alex_Polestar
Danke Gero für die schnelle Antwort!

Bei dem ersten Satz nehme an meinst Du wie die Werte korrekt zu summieren sind. Werde darauf achten. Ich wäre allerdings bereits zufrieden wenn die openWB schon mal irgendwas von meinen Werten lesen könnte, aktuell ist nichts da, sogar wenn ich bloß von einer der 3 PVs die Werte auslesen und per MQTT am die openWB übergeben möchte. Zuletzt habe ich versucht, die Werte vom EVU in die PV Berechnung zu nehmen da es nun dunkel ist.
Könntest mir noch Genaueres sagen wie ich die Statistics Nodes nutzen kann bzw. wie das combine-Paket dazu gelinkt werden kann?

LG
Alex

Re: PV via MQTT

Verfasst: So Jan 22, 2023 7:53 pm
von Gero
Bei Palette verwalten kann man Pakete nachinstallieren. Da kann man dann einen Namen eintippen und auf Installieren klicken. Die Statisics-Node summiert auf das Topic.

Zum Experimentieren, wie das mit dem MQTT-set geht, nehme ich immer ein paar Inject-Nodes, die unterschiedliche Werte in die nächste Node schreiben. Je nachdem, welche Du anklickst, sollte sich dann auch der Wert in der openWB ändern.

Im zweiten Schritt würde ich mich um die Summierung kümmern. Aber auch da erst mal per Debug-Node, bis das so passt, wie es soll.

Re: PV via MQTT

Verfasst: Sa Jan 28, 2023 11:58 am
von rallef63
Hallo,

habe das gleiche Problem. Habe als PV Modul ein Shelly 3EM und schreibe die Gesamtleistung in das set topic openWB/set/evu/W per skript bei jeder Änderung. Im Iobroker wird das auch aktualisiert im Objektbaum unter set, aber es kommt nichts an der OpenWB an unter EVU.

Re: PV via MQTT

Verfasst: Sa Jan 28, 2023 12:03 pm
von rallef63
sh anhang

Re: PV via MQTT

Verfasst: Sa Jan 28, 2023 12:04 pm
von rallef63
iobroker

Re: PV via MQTT

Verfasst: Sa Jan 28, 2023 1:08 pm
von rallef63
Wie kann ich im MQTT Explorer die Instanz 1 anstelle 0 auswählen, da ich 2 MQTT Instanzen laufen habe

Re: PV via MQTT

Verfasst: Sa Jan 28, 2023 1:22 pm
von rallef63
Nach einen Neustart des MQTT-Adapters im IOBroker bekomme ich in der openWB unter Debug folgenden Fehler:

ValueError: invalid literal for int() with base 10: b'null'
if (int(msg.payload) >= 0 and int(msg.payload) <= 2):
File "/var/www/html/openWB/runs/mqttsub.py", line 1472, in on_message
on_message(self, self._userdata, message)
File "/usr/local/lib/python3.5/dist-packages/paho/mqtt/client.py", line 3570, in _handle_on_message
self._handle_on_message(message)
File "/usr/local/lib/python3.5/dist-packages/paho/mqtt/client.py", line 3327, in _handle_publish
return self._handle_publish()
File "/usr/local/lib/python3.5/dist-packages/paho/mqtt/client.py", line 3033, in _packet_handle
rc = self._packet_handle()
File "/usr/local/lib/python3.5/dist-packages/paho/mqtt/client.py", line 2439, in _packet_read
rc = self._packet_read()
File "/usr/local/lib/python3.5/dist-packages/paho/mqtt/client.py", line 1556, in loop_read
rc = self.loop_read()
File "/usr/local/lib/python3.5/dist-packages/paho/mqtt/client.py", line 1164, in _loop
rc = self._loop(timeout)
File "/usr/local/lib/python3.5/dist-packages/paho/mqtt/client.py", line 1756, in loop_forever
client.loop_forever()
File "/var/www/html/openWB/runs/mqttsub.py", line 1714, in <module>

Re: PV via MQTT

Verfasst: Sa Jan 28, 2023 1:23 pm
von rallef63
und mein skript:

// Gesamtwirkleistung an OpenWB
on({id: [].concat(['shelly.0.SHEM-3#E89F6D848AE9#1.Total.InstantPower']), change: "ne"}, async function (obj) {
var value = obj.state.val;
var oldValue = obj.oldState.val;
setState("mqtt.1.openWB.set.evu.W"/*Leistung EVU*/, getState("shelly.0.SHEM-3#E89F6D848AE9#1.Total.InstantPower").val, true);
});