Victron: Unterschied zwischen den Versionen

Aus FHEMWiki
(fix: falscher Abschnitt)
Zeile 28: Zeile 28:
  N/<InstallID>/vebus/288/Mode:.* { json2nameValue($EVENT, 'Mode_', $JSONMAP) }
  N/<InstallID>/vebus/288/Mode:.* { json2nameValue($EVENT, 'Mode_', $JSONMAP) }


===== Visualisierung =====
===== Topics zum Schreiben =====
stateFormat kann so aussehen:
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
Eine einfache Setlist:
 
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}
 
== Visualisierung ==
'''stateFormat''' kann so aussehen:
  SSOC Batteries_value_1_soc,  
  SSOC Batteries_value_1_soc,  
  SOC: Batteries_value_1_soc % (MinimumSocLimit_value),  
  SOC: Batteries_value_1_soc % (MinimumSocLimit_value),  
Zeile 40: Zeile 57:
SSOC wird später für das devStateIcon genutzt.
SSOC wird später für das devStateIcon genutzt.


Das devStateIcon bietet einen ersten Blick auf den Ladestand:
Das '''devStateIcon''' bietet einen ersten Blick auf den Ladestand:
  SSOC\s[2|3|4].+:measure_battery_25
  SSOC\s[2|3|4].+:measure_battery_25
  SSOC\s[5|6].+:measure_battery_50
  SSOC\s[5|6].+:measure_battery_50
Zeile 47: Zeile 64:


Derzeit existiert noch kein Template, aber das kann sich ja ändern.
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}

Version vom 23. Januar 2023, 13:53 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.

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

Einbindung fhem als MQTT2_DEVICE

Über MQTT2_CLIENT wird 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
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

Eine einfache Setlist:

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}

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.