Virtuelle Batterie#
Status: Implementiert fuer IP-Symcon 8.0. Adaptiert das Grundkonzept aus
Bat_EV_SDL_V4, ohne dessen herstellerspezifische Typnamen zu uebernehmen.
Das Modul fasst mehrere physische Batterien zu genau einer grossen virtuellen Batterie zusammen. Diese Gesamtbatterie wird in einen Eigenverbrauchs- und einen SDL-Anteil aufgeteilt. SDL hat bei der Leistungsverteilung Vorrang.
Verantwortlichkeiten#
Enelix Batterie-Modul -> EV-Proxyregister --+
+-> Virtuelle Batterie -> physische Sollwerte
VGT-Schnittstelle ----> SDLSollleistung ----+
Die virtuelle Batterie ist die einzige Instanz, die die konfigurierten physischen Sollleistungsvariablen beschreibt. Das bestehende EMS-Batteriemodul regelt den Eigenverbrauchsanteil. Die VGT-Schnittstelle regelt ausschliesslich den SDL-Anteil.
Positive Leistung bedeutet Laden, negative Leistung bedeutet Entladen.
Physische Batterien#
Die Property Batterieliste enthaelt pro Batterie:
| Feld | Bedeutung |
|---|---|
Name |
Lesbare Kennung |
Kapazitaet_kWh |
Nutzbare Kapazitaet |
MaxLaden_W |
Maximale Ladeleistung |
MaxEntladen_W |
Maximale Entladeleistung |
LadezustandVariableID |
Aktueller Ladezustand in Prozent |
IstleistungVariableID |
Gemessene Leistung in W |
SollleistungVariableID |
Bedienbare Zielvariable mit Vorzeichen |
Der Gesamtladezustand ist kapazitaetsgewichtet. Beim Laden werden Batterien mit tieferem Ladezustand zuerst verwendet, beim Entladen Batterien mit hoeherem Ladezustand.
Anschluss des bestehenden Batteriemoduls#
Eine Enelix-EMS-Instanz Batterie wird als herstellerunabhaengige, von Enelix gesteuerte Batterie eingerichtet. Ihre Messwerte und Register werden auf die Variablen der virtuellen Batterie gelegt:
| Property im EMS-Batteriemodul | Variable der virtuellen Batterie |
|---|---|
MaxLadeleistungVariableID |
EigenverbrauchMaxLaden |
MaxEntladeleistungVariableID |
EigenverbrauchMaxEntladen |
LadezustandVariableID |
EigenverbrauchLadezustand |
IstleistungVariableID |
EigenverbrauchIstleistung |
ManagementRegisterVariableID |
EVManagement |
ModusRegisterVariableID |
EVModus |
LadeleistungRegisterVariableID |
EVLadeleistung |
EntladeleistungRegisterVariableID |
EVEntladeleistung |
Die Netzleistungsvariable bleibt die reale Messung des Anlagenanschlusspunktes. Das Batteriemodul schreibt die vier Proxyregister atomar in seiner bestehenden Reihenfolge. Erst das Managementregister uebernimmt den vollstaendigen Eigenverbrauchsauftrag.
Anschluss der VGT-Schnittstelle#
| Property der VGT-Schnittstelle | Variable der virtuellen Batterie |
|---|---|
ReqActionID |
SDLSollleistung |
PowerProductionID |
SDLIstleistung |
SoCID |
SDLLadezustand |
Damit erreicht kein MQTT-Befehl direkt eine physische Batterie.
Properties#
| Property | Standard | Beschreibung |
|---|---|---|
Batterieliste |
[] |
Physische Batterien und Zielvariablen |
SDLReserveLaden |
0 W | Fuer SDL reservierte Ladeleistung |
SDLReserveEntladen |
0 W | Fuer SDL reservierte Entladeleistung |
Reservezeit |
0.5 h | Energetische Reserve je Richtung |
Aktualisierungsintervall |
2 s | Zyklische Sicherheitsaktualisierung |
MesswertMaxAlter |
30 s | Zulaessiges Alter physischer Messwerte |
VorgabeTimeout |
30 s | Gueltigkeit der EV- und SDL-Vorgaben |
EigenverbrauchStart |
50 % | Startwert des EV-Kontos |
SDLStart |
50 % | Startwert des SDL-Kontos |
LoggingEin |
false | Debug-Ausgaben |
Verhalten und Sicherheit#
- SDL wird vor dem Eigenverbrauch auf die reservierte Leistung begrenzt.
- Gleichgerichtete Eigenverbrauchsleistung erhaelt nur die verbleibende physische Leistung.
- Gegenlaeufige Auftraege werden bilanziell getrennt und physisch als Nettosollwert verteilt.
- Fehlende oder veraltete Batterien werden aus der aktuellen Aggregation entfernt und auf 0 W gesetzt.
- Bei Deaktivierung, ungueltiger Konfiguration oder ohne gueltige Batterie werden alle physischen Sollleistungsvariablen auf 0 W gesetzt.
- Eine erkannte Integrationsluecke wird gemeldet und nicht still auf eine kuerzere Dauer begrenzt.
- Physische Zielvariablen werden ausschliesslich mit
RequestActiongeschrieben.
Inbetriebnahme#
- Mess- und Sollleistungsvariablen aller physischen Batterien festlegen.
- Batterieliste konfigurieren und Messwertalter kontrollieren.
- SDL-Leistungsreserve und Reservezeit eintragen.
- Das vorhandene EMS-Batteriemodul auf die EV-Proxyregister konfigurieren.
- Die VGT-Schnittstelle auf die drei SDL-Variablen konfigurieren.
- Zuerst mit deaktivierter virtueller Batterie alle Vorzeichen pruefen.
- Danach Eigenverbrauch und SDL einzeln testen.
- Erst abschliessend gleich- und gegenlaeufige Auftraege pruefen.
Variablenreferenz#
DiagnoseAnzeigen ist eine Boolean-Property, Standard false, für zusätzliche
Diagnoseanzeigen. Die folgende Übersicht ergänzt die oben beschriebenen
EV-Proxy- und SDL-Anschlüsse. Leistungswerte verwenden W, Ladezustände Prozent.
| Ident | Typ / Zugriff | Bedeutung |
|---|---|---|
Aktiv |
Boolean / bedienbar | Virtuelle Batterie aktivieren/deaktivieren; Deaktivierung löst den dokumentierten Nullstellpfad aus. |
GesamtLadezustand |
Float / Anzeige | Kapazitätsgewichteter physischer Gesamt-SOC. |
GesamtIstleistung |
Float / Anzeige | Summe der aktuell berücksichtigten physischen Leistungen. |
GesamtMaxLaden, GesamtMaxEntladen |
Float / Anzeige | Aktuell verfügbare Gesamtleistung je Richtung. |
EigenverbrauchSollleistung |
Float / Anzeige | Aus den EV-Proxyregistern übernommener EV-Auftrag, kein zusätzlicher physischer Schreibweg. |
EigenverbrauchIstleistung, EigenverbrauchLadezustand |
Float / Anzeige | Virtuell zugeordnete EV-Leistung und EV-Energiekonto. |
EigenverbrauchMaxLaden, EigenverbrauchMaxEntladen |
Float / Anzeige | Nach SDL-Reservierung verfügbare EV-Leistungsgrenzen. |
SDLSollleistung |
Float / bedienbar | Separater SDL-Auftrag; positiv Laden, negativ Entladen. |
SDLIstleistung, SDLLadezustand |
Float / Anzeige | Virtuell zugeordnete SDL-Leistung und SDL-Energiekonto. |
SDLMaxLaden, SDLMaxEntladen |
Float / Anzeige | Verfügbare SDL-Leistung je Richtung. |
Stoerung |
Boolean / Anzeige | Sammelstörung des Moduls. |
Stoertext |
String / Anzeige | Lesbarer Fehlergrund. |
Verteilstatus |
String/JSON / Diagnose | Ergebnis der Leistungsverteilung. |
EVManagement und EVModus sind bedienbare Integer-Proxyregister;
EVLadeleistung und EVEntladeleistung bedienbare Float-Proxyregister in W.
Sie müssen als zusammengehöriger Auftrag über den dokumentierten Adapter
verwendet werden, nicht durch zusätzliche konkurrierende Skripte.
Beispiel zur Bilanz, ohne Stellbefehl: EV +3000 W und SDL -1000 W ergeben physisch netto +2000 W Ladung. Die getrennten virtuellen Konten sind dadurch nicht zwei zusätzliche physische Batterien. Bei gegenläufigen Flüssen ist die Aufteilung ein Modell, kein unabhängiger Messnachweis für beide Teilströme.