Victron: Unterschied zwischen den Versionen

Aus FHEMWiki
Zeile 39: Zeile 39:
* CurrentLimit: max. Strom aus/in das Netz
* CurrentLimit: max. Strom aus/in das Netz
* MinimumSocLimit: Entladegranze im ESS (Speicher-)Betrieb, solange das Netz anliegt
* MinimumSocLimit: Entladegranze im ESS (Speicher-)Betrieb, solange das Netz anliegt
* Relay[0|1]: Schalte interne Relais
Eine einfache Setlist:
Eine einfache Setlist:


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


== Visualisierung ==
== Visualisierung ==

Version vom 24. Januar 2023, 19:46 Uhr

Übersicht

Die Familie der Solarlade und -speichergeräte von Victron verwenden verschiedene Bussysteme, um untereinander zu kommunizieren. Sehr angenehm 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.

Victron ist generell gut dokumentiert: https://www.victronenergy.com/support-and-downloads/technical-information

Einbindung in fhem als MQTT2_DEVICE

Über MQTT2_CLIENT wird zunächst die Verbindung zum Broker auf dem Victron Venus Gerät angelegt. (Hier ist die IP noch anzupasssen.)

defmod venus MQTT2_CLIENT 10.1.x.x:1883
attr venus autocreate complex
attr venus clientOrder MQTT_GENERIC_BRIDGE MQTT2_DEVICE
attr venus room MQTT2_DEVICE
attr venus verbose 4

Das Wechselrichter wird dann als MQTT2_DEVICE angelegt:

defmod MQTT2_mp2 MQTT2_DEVICE venus
attr MQTT2_mp2 IODev venus
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.

Nach Verbindung erscheint eine umfangreiche readingList, aus der hier nur einige Elemente verwendet werden.

  • system - Konfiguration des Gesamtsystems bzw. konsolidierte Werte
  • solarcharger - MPPT-DC-Lader, Anschluß VE-Direct (seriell, baut auf RS-485) , Wartung per Bluetooth und App
  • grid - Stromzähler , Anschluß über RS-485 / wahlweise Ethernet
  • vebus - Wechselrichter, Anschluß über Cat5, serielles Protokoll
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) }
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
  • Relay[0|1]: Schalte interne Relais

Eine einfache Setlist:

off W/<vrm_ID>/vebus/288/Mode {"value":4}
on W/<vrm_ID>/vebus/288/Mode {"value":3}
inv W/<vrm_ID>/vebus/288/Mode {"value":2}
chg W/<vrm_ID>/vebus/288/Mode {"value":1}
Mode W/<vrm_ID>/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}
Relay0 W/vrm_ID/system/0/Relay/0/State:.* {"value":$EVTPART1}
Relay1 W/vrm_ID/system/0/Relay/1/State:.* {"value":$EVTPART1}

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.

Externe Links