Files
2026-09-27 12:28:32 +00:00

116 lines
4.8 KiB
Markdown

# 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
```text
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 `RequestAction`
geschrieben.
## Inbetriebnahme
1. Mess- und Sollleistungsvariablen aller physischen Batterien festlegen.
2. Batterieliste konfigurieren und Messwertalter kontrollieren.
3. SDL-Leistungsreserve und Reservezeit eintragen.
4. Das vorhandene EMS-Batteriemodul auf die EV-Proxyregister konfigurieren.
5. Die VGT-Schnittstelle auf die drei SDL-Variablen konfigurieren.
6. Zuerst mit deaktivierter virtueller Batterie alle Vorzeichen pruefen.
7. Danach Eigenverbrauch und SDL einzeln testen.
8. Erst abschliessend gleich- und gegenlaeufige Auftraege pruefen.