Files
Enelix/Manager
2026-05-12 10:09:26 +02:00
..
2026-05-12 10:09:26 +02:00
2026-05-12 10:09:26 +02:00
2026-05-12 10:09:26 +02:00
2026-05-12 10:09:26 +02:00

Enelix Manager

Dieses Modul steuert in festgelegten Intervallen die Leistungsverteilung auf Verbraucher-Instanzen, wählt zwischen Solarladen und Peak-Shaving und verteilt die Leistung in definierten Schritten an die Verbraucher.


Inhaltsverzeichnis

  1. Funktionsumfang
  2. Voraussetzungen
  3. Installation
  4. Instanz anlegen & Konfiguration
  5. Statusvariablen
  6. WebFront / Bedienung
  7. Mapping auf Code-Komponenten
  8. Zukünftige Erweiterungen

1. Funktionsumfang

  • Zyklische Steuerung: In konfigurierbaren Intervallen (Interval) wird die Energieverteilung über den Timer Timer_DistributeEnergy ausgelöst.
  • Betriebsmodus: Automatische oder statische Umschaltung zwischen Solarladen (Is_Peak_Shaving = false) und Peak-Shaving (Is_Peak_Shaving = true), abhängig vom Netzbezug und den parametrierten Schwellwerten.
  • Priorisierung: Sortierung der Verbraucher nach PV_Prio (Solarmodus) oder Sperre_Prio (Peak-Shaving). Bei gleicher Priorität entscheidet die Bezogene_Energie.
  • Energieverteilung: Die verbleibende Leistung wird basierend auf den PowerSteps der Verbraucher abgearbeitet und zugeteilt.
  • Externe Steuerung (Hauptmanager): Integration in übergeordnete Managementsysteme (z.B. V-ZEV, LEG) über die Variablen DatenHoch und DatenZuruck, Funktion ist in der aktuellen Version erst beschränkt verfügbar.

2. Voraussetzungen

  • IP-Symcon ≥ 8.0
  • Modul-URL: https://git.belevo.ch/dh/enelix.git
  • Zuweisung der Verbraucher-Instanzen in der Verbraucher_Liste

3. Installation

  1. In IP-Symcon Module Control öffnen
  2. Hinzufügen → Git-Repository
  3. URL eintragen: https://git.belevo.ch/dh/enelix.git
  4. Modul installieren

4. Instanz anlegen & Konfiguration

4.1 Instanz anlegen

  • Rechtsklick InstanzenInstanz hinzufügen
  • Filter: Belevo
  • Auswahl: Manager

4.2 Properties

Name Typ Beschreibung
Peakleistung Integer Sollwert-Vorgabe für Peak-Shaving (Watt)
Ueberschussleistung Integer Sollwert-Vorgabe für Solarladen (Watt)
Netzbezug Integer Objekt-ID der Variable mit dem aktuellen Netzbezug
Verbraucher_Liste String JSON-Liste aller zu steuernden Verbraucher-Instanzen
UmschaltpunktStatisch Boolean Aktiviert statische Umschaltpunkte (Ignoriert dynamische Mittelwertberechnung)
Umschalt_Solarladen Integer Schwellwert für den Wechsel in den Solarladen-Modus (bei statischer Umschaltung)
Umschalt_Peakshaving Integer Schwellwert für den Wechsel in den Peak-Shaving-Modus (bei statischer Umschaltung)
HauptmanagerAktiv Boolean Aktiviert die externe Steuerung durch einen übergeordneten Manager
ManagerID Integer Eindeutige ID für die externe Manager-Kommunikation
DatenHoch Integer Objekt-ID der Variable zum Senden von JSON-Daten an den Hauptmanager
DatenZuruck Integer Objekt-ID der Variable zum Empfangen von JSON-Daten vom Hauptmanager
Interval Integer Berechnungsintervall für den Timer und die neuverteilung der Leistungsdaten in Sekunden

5. Statusvariablen

Ident Typ Beschreibung
Is_Peak_Shaving Boolean Modusanzeige (false = Solarladen, true = Peak-Shaving)

6. WebFront / Bedienung

Dem Managermodul müssen bei Erstinbetriebnahme eine Variable mit dem zu regelnden Netzbezug sowie die zu Steuernden Verbraucher konfiguriert werden. Anschliessend läuft das Modul autononom gemäss 1 Funktionsumfang. Einzig wird im WebFront der aktuelle Modus über die Statusvariable Is_Peak_Shaving visualisiert.


7. Mapping auf Code-Komponenten

Komponente Funktion im Code (module.php)
Timer-Registrierung ApplyChanges() setzt das Intervall für Timer_DistributeEnergy.
Zyklischer Aufruf Timer löst RequestAction() mit dem Ident DistributeEnergy aus.
Mode-Entscheidlogik Dynamisch: Abgleich von $Netzbezug mit Mittelwert aus Peak und Überschuss.
Statisch: Schwellwertprüfung über Properties Umschalt_Solarladen / Umschalt_Peakshaving.
Leistungszuteilung Funktion DistributeEnergy() berechnet die Schritte und steuert Verbraucher via IPS_RequestAction(..., "SetAktuelle_Leistung", ...).
Externe Kommunikation Funktion DistributeEnergy_Extern() liest/schreibt Arrays über die festgelegten Variablen-IDs.

8. Zukünftige Erweiterungen

  • Automatische Registrierung neuer Verbraucher (ohne manuelles Eintragen, Eingetragen auf Verbruacherseite)