Files
Enelix-EMS/docs/module/Manager
dh 0a3ece3a81
Tests / test (push) Canceled after 0s
Enelix-2-Manager implementieren
Installierbares IP-Symcon-Manager-Modul mit testbarer Verteilungslogik, Verbraucher-Timeouts, Sollwertversand und aktualisierter Dokumentation.
2026-09-15 16:23:45 +00:00
..
2026-09-15 16:23:45 +00:00

Manager

Status: Implementiert. Führt Hauptmanager und Peakshaving zusammen.

Der Manager liest die Netzleistung, verwaltet ausschliesslich die ausgewählten Verbraucher und verteilt Leistung im PV- oder Peak-Betrieb. Die Prioritäten kommen aus den Verbrauchermeldungen.

Variablen

Ohne Logging sind nur Aktiv, Betriebsart und Netzleistung sichtbar.

Ident Typ / Zugriff Beschreibung
Aktiv Boolean / bedienbar Regelung ein/aus; Start false.
Betriebsart String / Anzeige Inaktiv, PV oder Peak.
Netzleistung Float / Anzeige Aktuelle Netzleistung in W; positiv Bezug, negativ Einspeisung.
NetzleistungGueltig Boolean / Logging Messquelle vorhanden und aktuell.
WirksameLastspitzengrenze Float / Logging Aktuelle feste oder monatliche Grenze in W.
Verteilbudget Float / Logging Aktuell verfügbares Budget in W.
VerbraucherAnzahl Integer / Logging Anzahl zugeordneter Verbraucher.
VerbraucherVerfuegbar Integer / Logging Anzahl aktuell verfügbarer Verbraucher.
Verbraucherstatus String/JSON / Logging Letzte vollständige Meldungen.
Prognosestatus String / Logging NichtVerwendet, Verbunden oder Fehler.
SDLStatus String / Logging Status des SDL/VGT-Anschlusses.
Lizenzstatus String / Logging Status der Lizenzprüfung.
Stoerueberwachungsstatus String / Logging Status der externen Störüberwachung.
Sammelstoerung Boolean / Logging Eigene und weitergeleitete Störungen.
Stoertext String / Logging Lesbare Sammelmeldung.

Properties

Ident Typ Standard / Beschreibung
Rolle Auswahl Alleine; alternativ Hauptmanager oder Untermanager.
NetzleistungVariableID Integer 0*; gültige Messquelle vor Regelstart.
Netzleistungsfaktor Float 1; auf W und die vereinbarte Vorzeichenrichtung normieren.
MesswertMaxAlter Integer 30 s; auf echte Messaktualisierung bezogen.
VerbraucherZuordnung String/JSON []; Instanz-ID und Aktiv je Verbraucher. Einzige gespeicherte Zuordnung.
AutomatischeSuche Boolean true; findet Kandidaten, aktiviert sie aber nicht automatisch.
SuchbereichID Integer 0; optionaler Suchbereich.
Regelintervall Integer 2 s; zusätzlich auf relevante Änderungen reagieren.
Vorgabeintervall Integer 10 s; laufende Vorgaben erneuern.
VerbraucherTimeout Integer 30 s; ausgebliebene Meldung erkennen.
Lastspitzenmodus Auswahl Aus; alternativ Konstant oder Monatlich.
Lastspitzengrenze Float Feste Grenze in W für Modus Konstant.
Monatsgrenzen String/JSON Zwölf Monatswerte in W.
MonatsgrenzenVisuBedienbar Boolean false; Monatstabelle in der Visualisierung bedienen.
SollwertSolarladen Float 0 W; gewünschte Netzleistung im Solarladebetrieb.
UmschaltschwelleUeberschuss Float Feste W-Schwelle für PV-Betrieb.
UmschaltschwelleLastspitze Float Feste W-Schwelle für Peak-Betrieb.
Umschaltdifferenz Float 0 %; Mindestdifferenz der berechneten Sollleistungen vor Umschaltung.
PrognoseAnschluss String/JSON Optionaler Forecast-Anschluss.
SDLAnschluss String/JSON Optionaler SDL/VGT-Anschluss.
LizenzAnschluss String/JSON Optionaler Lizenzanschluss.
StoermeldeAnschluss String/JSON Optionaler Anschluss zur Störüberwachung.
LoggingEin Boolean false; Protokollierung und zusätzliche Variablen anzeigen.

Es gibt keine Sollwertquellenauswahl und keine zweite Prioritätseinstellung im Manager. Im Modus Aus bleibt Solarladen aktiv, nur die Peak-Begrenzung entfällt.

Verteilalgorithmus

Der Manager bildet das Verteilbudget aus der aktuellen Netzleistung, dem Ziel der aktiven Betriebsart und der aktuellen Leistung aller frisch gemeldeten Verbraucher. Eine gültige Istleistung wird bevorzugt; fehlt sie, bleibt der im Zustand bestätigte Sollwert konservativ reserviert.

Nicht verfügbare, nicht änderbare oder aktuell angebotlose Verbraucher behalten ihre Leistung und erhalten keine neue Vorgabe. Die übrigen Verbraucher werden nach der gemeldeten PV- beziehungsweise Peak-Priorität und danach stabil nach Instanz-ID sortiert. Von ihrem jeweils kleinsten erlaubten Leistungswert aus wird das Budget in dieser Reihenfolge aufgefüllt. Einzelwerte und ganzzahlige Bereiche werden direkt verarbeitet; Lücken werden nie durch unzulässige Werte geschlossen. Eine verbleibende Abweichung wird im Verbraucherstatus dokumentiert.

Die Betriebsart wechselt unterhalb der Überschussschwelle zu PV und oberhalb der Lastspitzenschwelle zu Peak. Zwischen den Schwellen bleibt sie erhalten. Umschaltdifferenz verhindert zusätzlich einen Wechsel, wenn sich die beiden berechneten Korrekturen nicht ausreichend unterscheiden.

Laufzeit und Fehlerverhalten

  • Netzleistungsänderungen und der Regel-Timer lösen die Berechnung aus.
  • Identische Sollwerte werden nur beim Vorgabeintervall erneut gesendet.
  • Verbraucherpakete werden zentral geprüft und nur von aktiv zugeordneten Absendern angenommen.
  • Veraltete oder noch fehlende Verbrauchermeldungen werden nicht verteilt und als Sammelstörung ausgewiesen.
  • Bei fehlender oder veralteter Netzleistung bleibt die Regelung Inaktiv und sendet keine neuen Vorgaben.
  • Die oberen Anschlüsse bleiben optional. Solange kein konkreter Adapter implementiert ist, meldet ein aktivierter Anschluss den Status Fehler, ohne die lokale EMS-Regelung zu blockieren.

Schnittstellen

  • Empfängt genau VerbraucherdatenEmpfangen(array $daten).
  • Sendet an jeden Verbraucher nur Kopf und Sollleistung_W.
  • Obere Anschlüsse: siehe Obere Anschlüsse.

Offene Punkte

  • Monatliche Batteriereserve aus dem alten Peakshaving-Modul übernehmen?
  • Anbieterformate für Prognose, Lizenzierung und Störüberwachung festlegen.
  • Verhalten und Messabgrenzung bei Untermanagern im Anlagentest bestätigen.