Victron DIY-Guide Teil 6 – PV-Inverter in Venus OS integrieren

IM EINSATZ?

Dann schau dir UNSEREN LOXKURS an und profitiere von unserem Wissen!

Heute zeige ich euch vier Wege, um einen PV-Inverter in Venus OS zu integrieren. Da das System so super flexibel ist, kann man so gut wie alle Devices nutzbar machen, egal ob Venus OS “von Haus aus” mit dem Inverter sprechen kann oder nicht.

Das geht sogar soweit, dass man Hilfe von NodeRED und MQTT, welche auf dem Grundsystem verfügbar sind, jeden x-beliebigen Messwert zuspielen kann. Wie das geht, erfahrt ihr im nachfolgenden Video.

YouTube

Mit dem Laden des Videos akzeptieren Sie die Datenschutzerklärung von YouTube.
Mehr erfahren

Video laden

YouTube-Direktlink

Links aus dem Video

3:44
Victron Energy – Integrating with SolarEdge (externer Link)

4:36
Github / henne49 / dbus-opendtu (externer Link)

7:22
Github / mr-manuel / venus-os_dbus-mqtt-pv

10:37
ssh root@192.168.3.177

10:39 (BEFEHL HAT EIN UPDATE ERHALTEN)
wget -P /tmp https://github.com/mr-manuel/venus-os_dbus-mqtt-pv/archive/refs/heads/master.zip

10:45 (BEFEHL HAT EIN UPDATE ERHALTEN)
unzip /tmp/master.zip -d /tmp/

10:48 (BEFEHL HAT EIN UPDATE ERHALTEN)
mv /tmp/venus-os_dbus-mqtt-pv-master/dbus-mqtt-pv /data/etc/

10:50
cp /data/etc/dbus-mqtt-pv/config.sample.ini /data/etc/dbus-mqtt-pv/config.ini

10:56
nano /data/etc/dbus-mqtt-pv/config.ini

12:19
bash /data/etc/dbus-mqtt-pv/install.sh

12:43
NodeRED Flows Venus OS PV Inverter (1039 Downloads )

15:25
Github / mr-manuel / venus-os_dbus-mqtt-battery

6 Kommentare
  1. moin Jörg,
    auch wenn das Video schon etwas älter ist, das Thema der PV-Inverter Integration in Venus OS wird sicher noch länger Interessant bleiben!
    ich finde den Weg über MQTT am besten, da hier im Grunde alle Datenschleudern zusammenlaufen und ich mir nur die passenden rauspicken muss.
    Nun hab ich das plugin und den Flow installiert und stehe vor folgendem Problem oder sehe den Wald vor lauter Bäumen nicht…ich habe meinen Solax Inverter über WLAN mit Hilfe eines RS485 Moduls angebunden, dieses schickt mit idealerweise alle benötigten Werte schon in mein Venus MQTT, (Tasmota macht es möglich;-)),
    Das Intervall lag ursprünglich bei 10-300 Sekunden, was für Regelzwecke etwas lahm ist.Nun konnte ich auch hier über den Konsolenbefehl “Powerdelta xxx” die Schlagzahl brauchbar erhöhen.
    In einem MQTT Explorer sehe ich, wie im Venus MQTT unter “tele” die Daten brav und zügig einlaufen sobald sich eine regelrelevante Änderung ergibt, doch nun stehe ich auf dem Schlauch, wie kriege ich die Daten in mein NodeRed bzw. als emuliertes PV Gerät in die GUI meiner GX Geräte? Es liegt ja schon alles im JSON Format im mqtt und ich vermute über eine entsprechende Node kann ich das extrahieren und dem Plugin zuführen, da bin ich allerdings nicht Sattelfest genug um etwaige funktionen zu basteln, bestenfalls verändern…was hat es mit dem Topic auf sich?
    beste Grüße

  2. Ergänzung:
    ich kriege die Daten vom PV Inverter in Node Red über eine mqtt in Node zu fassen, diese gibt das auch als payload/json string aus, ich lasse da als Platzhalter erstmal eine debug node mitlaufen, blöd nur, daß man diese Daten nicht auf eine victroninstanz weitergeben kann und seinen eigenen PV Inverter bastelt..Das Plugin von mrmanuel kapituliert hier, da es vermutlich eine andere Reihenfolge erwartet…das Topic ist nur bedingt anpassbar…

  3. hallo Jörg,

    zuerst, eine tolle Anleitung! Ich bin fast am ziel aber eben nu fast, ich binde einen go-e controller als PV ein, weil über dieses Messgerät alle Inverter zusammenlaufen. Ich nutze daten einer HTTTP API des Controlers und wandle diese in NODE RED um das SIE deinen DATEN Ähneln, allerdings bin ich damit bislang nicht erfolgreich hier scheint noch ein hacken verborgen.

    nachfolgen die function in meinem node, eventuell entdeckst du auf anhieb woran es liegen könnte:

    // Node-RED Funktion zur Erstellung der Phasen L1, L2, L3 aus Objekten 3, 4 und 5
    var message = {

    // Zuordnung der P-Werte aus den Objekten zu den entsprechenden Phasen
    pv:{
    power: Number(msg.payload.isv[3].p) + Number(msg.payload.isv[4].p) + Number(msg.payload.isv[5].p),
    L1: {
    power: msg.payload.isv[3].p,
    },
    L2: {
    power: msg.payload.isv[4].p,
    },
    L3: {
    power: msg.payload.isv[5].p,
    },
    },
    };
    //msg.topic = enphase/envoy-s/meters;
    // Setzen des Ausgabe-msg mit den Phasen
    node.status({fill: “blue”, shape: “ring”, text: “Power: ” + ((Number(msg.payload.isv[3].p) + Number(msg.payload.isv[4].p) + Number(msg.payload.isv[5].p)).toFixed(2)).toString() + ” [W]”});

    return {payload: message};

    danke vorab Gruss Torsten

    1. Noch ne Frage ich habe ein Cerbo GX und habe dort jetzt die plugins installiert darunter node red und das PV plugin. Was ich noch vermisse ist der MQTT Broker. Kann ich den ebenfalls auf dem Cerbo installiereon oder ist er bereits installiert?
      Danke vorab für deine Hilfe

  4. Hallo Jörg,

    habe die Teile 4 und 6 des Victron DIY-Guide mehrere Male geschaut, bekomme es aber nicht zum laufen. Klingt jetzt dumm, da ich nicht wirklich fit in dem Thema bin, aber welchen Wert erwarten die beiden Erweiterungen von Mr Manuel ?

    Die beiden Werte kommen über Modbus von einem Solarlog und werden in MQTT Explorer so angezeigt:

    enphase
    envoy-s
    meters = [2910,0]
    pv = [1501,0]

    in putty bringt er mit tail folgende Fehlermeldungen:

    2024-10-06 14:36:42.437471500 ERROR:root:Received JSON MQTT message does not include a grid object. Expected at least: {“grid”: {“power”: 0.0}”}

    2024-10-06 14:37:15.499736500 ERROR:root:Received JSON MQTT message does not include a pv object. Expected at least: {“pv”: {“power”: 0.0}”}

    Nun weiß ich leider nichtmal, wie ich Chat GPT fragen soll zwecks eines Quellcodes für die function Node. Kannst du mir hier weiterhelfen ?

    Gruß Christian

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Das könnte dir auch gefallen