Victron: Unterschied zwischen den Versionen

Aus FHEMWiki
Zeile 4: Zeile 4:
==Einbindung fhem via MQTT2_Client==
==Einbindung fhem via MQTT2_Client==


===== Aufbau der Topics von Victron =====
Jede Installation ''Venus'' gibt sich eine InstallID, die initial aus der Hardwareadresse abgeleitet wird. Über diese ID wird die Installation auf dem [https:///vrm.victronenergy.com Victron VRM Portal] erkannt. In den Beispielen unten taucht sie als <InstallID> auf. Die einzelnen Geräte einer Installation erhalten Nummern, die eine Unterscheidung auch mehrerer Wechselrichter (etwa im 3-Phasenbetrieb) oder mehrerer Solarlader ermöglichen.
Unten werden folgende Elemente aus der ReadingList verwendet:
N/<InstallID>/system/0/Batteries:.* { json2nameValue($EVENT, 'Batteries_', $JSONMAP) }
N/<InstallID>/solarcharger/290/Yield/Power:.* { json2nameValue($EVENT, 'PVPower_', $JSONMAP) }
N/<InstallID>/grid/30/Ac/Power:.* { json2nameValue($EVENT, 'GridPower_', $JSONMAP) }
N/<InstallID>/vebus/288/Ac/Out/P:.* { json2nameValue($EVENT, 'P_', $JSONMAP) }
N/<InstallID>/system/0/SystemState/State:.* { json2nameValue($EVENT, 'State_', $JSONMAP) }
N/<InstallID>/vebus/288/Mode:.* { json2nameValue($EVENT, 'Mode_', $JSONMAP) }
===== Visualisierung =====
stateFormat kann so aussehen:
stateFormat kann so aussehen:
  SSOC Batteries_value_1_soc,  
  SSOC Batteries_value_1_soc,  

Version vom 23. Januar 2023, 14:29 Uhr

Übersicht

Die Familie der Solarlade und -speichergeräte von Victron verwenden verschiedene Bussysteme, um untereinander zu kommunizieren. Sehr angenehmn ist, daß die zentrale Steuerung namens Venus (Victron ENergy Unix System :-) frei verfügbar ist, und gern auf einem RaspberryPi läuft. Integriert ist gleich ein MQTT Server (mit und ohne SSL), der die Meßwerte der angeschlossenen Geräte - und das sind viele - per MQTT anbietet.

Einbindung fhem via MQTT2_Client

Aufbau der Topics von Victron

Jede Installation Venus gibt sich eine InstallID, die initial aus der Hardwareadresse abgeleitet wird. Über diese ID wird die Installation auf dem Victron VRM Portal erkannt. In den Beispielen unten taucht sie als <InstallID> auf. Die einzelnen Geräte einer Installation erhalten Nummern, die eine Unterscheidung auch mehrerer Wechselrichter (etwa im 3-Phasenbetrieb) oder mehrerer Solarlader ermöglichen.

Unten werden folgende Elemente aus der ReadingList verwendet:

N/<InstallID>/system/0/Batteries:.* { json2nameValue($EVENT, 'Batteries_', $JSONMAP) }
N/<InstallID>/solarcharger/290/Yield/Power:.* { json2nameValue($EVENT, 'PVPower_', $JSONMAP) }
N/<InstallID>/grid/30/Ac/Power:.* { json2nameValue($EVENT, 'GridPower_', $JSONMAP) }
N/<InstallID>/vebus/288/Ac/Out/P:.* { json2nameValue($EVENT, 'P_', $JSONMAP) }
N/<InstallID>/system/0/SystemState/State:.* { json2nameValue($EVENT, 'State_', $JSONMAP) }
N/<InstallID>/vebus/288/Mode:.* { json2nameValue($EVENT, 'Mode_', $JSONMAP) }
Visualisierung

stateFormat kann so aussehen:

SSOC Batteries_value_1_soc, 
SOC: Batteries_value_1_soc % (MinimumSocLimit_value), 
Bat: Batteries_value_1_power W,
PV: PVPower_value W,
ACin: GridPower_value W, 
ACout2: P_value W,
State: State_value,
Mode: Mode_value

SSOC wird später für das devStateIcon genutzt.

Das devStateIcon bietet einen ersten Blick auf den Ladestand:

SSOC\s[2|3|4].+:measure_battery_25
SSOC\s[5|6].+:measure_battery_50
SSOC\s[7|8].+:measure_battery_75
SSOC\s[9].+:measure_battery_100

Derzeit existiert noch kein Template, aber das kann sich ja ändern.

Topics zum Schreiben

Einige Enstellungen sind schreibbar. Die entsprechenden Topics beginnen mit einem W. Eine setList kann beispielsweise so aussehen und erlaubt dann An- und Abschalten, Inverter- und Charger Mode Mode: Betriebszustand CurrentLimit: max. Strom aus/in das Netz MinimumSocLimit: Entladegranze im ESS (Speicher-)Betrieb, solange das Netz anliegt

off W/<InstallID>/vebus/288/Mode {"value":4}
on W/<InstallID>/vebus/288/Mode {"value":3}
inv W/<InstallID>/vebus/288/Mode {"value":2}
chg W/<InstallID>/vebus/288/Mode {"value":1}
Mode W/<InstallID>/vebus/288/Mode {"value":$EVTPART1}
GridCurrentLimit W/<InstallID>/vebus/288/Ac/In/1/CurrentLimit {"value":$EVTPART1}
MinSOC W/<InstallID>/settings/0/Settings/CGwacs/BatteryLife/MinimumSocLimit {"value":$EVTPART1}