Belevo EMS Manager
Dieses Modul ist das Herzstück des Belevo Energiemanagement-Systems. Es steuert in festgelegten Intervallen die Leistungsverteilung auf Ihre Verbraucher-Instanzen, trifft den Solarlade- vs. Peak-Shaving-Entscheid und verteilt entsprechend die Leistungen an die Verbraucher.
Inhaltsverzeichnis
- Funktionsumfang
- Voraussetzungen
- Installation
- Instanz anlegen & Konfiguration
- Statusvariablen & Profile
- WebFront / Bedienung
- Mapping auf Code-Komponenten
- Zukünftige Erweiterungen
1. Funktionsumfang
- Zyklische Steuerung
In konfigurierbaren Intervallen (Interval) wird die MethodeDistributeEnergy()ausgelöst. - Mode-Entscheid
Basierend auf der aktuellen Netz-Sollleistung (Sollleistung_Max) und der PV-Überschuss-Grenze (Ueberschussleistung) wählt der Manager automatisch zwischen- Solarlade-Mode (
Is_Peak_Shaving = false) - Peak-Shaving-Mode (
Is_Peak_Shaving = true)
- Solarlade-Mode (
- Leistungskonten
Jeder Verbraucher meldet über seine Instanzvariablen (Power,Bezogene_Energie,PowerSteps,PV_Prio/Sperre_Prio) seinen Bedarf bzw. Reduktions- oder Einspeise-Potential. - Priorisierung & Fairness
- Sortierung der Verbraucher nach Priorität (
PV_Prioim Solarmode,Sperre_Prioim Shaving-Mode) - Bei Gleichpriorität abwechselnde Zuteilung nach bisher bezogener Energie (
Bezogene_Energie)
- Sortierung der Verbraucher nach Priorität (
- Differenz-Verteilung
Die verbleibende Soll–Ist-Differenz D wird in Stufen (je Verbraucher ausPowerSteps) abgearbeitet, bis D ≃ 0. - Externe Kommunikation
Über die PropertiesDatenHochundDatenZuruck(Variable-IDs) können mehrere Manager zu einem Übergeordneten Hauptmanager zusammengefasst werden (V-ZEV, LEG).
2. Voraussetzungen
- IP-Symcon ≥ 8.0
- Modul-URL:
https://git.belevo.ch/dh/Symcon_Belevo_Energiemanagement_testing.git
yaml Kopieren Bearbeiten
- Einmalige manuelle Anmeldung aller Verbraucher in
Verbraucher_Liste
3. Installation
- In IP-Symcon Module Control öffnen
- Hinzufügen → Git-Repository
- URL eingeben (oben) und Installieren
- IP-Symcon neu starten
4. Instanz anlegen & Konfiguration
4.1 Instanz anlegen
- Rechtsklick Instanzen → Instanz hinzufügen
- Filter: Belevo
- Auswahl: Manager
4.2 Properties
| Name | Typ | Beschreibung |
|---|---|---|
| Peakleistung | NumberSpinner | Sollwert-Vorgabe für Peak-Shaving (Watt) |
| Ueberschussleistung | NumberSpinner | Sollwert-Vorgabe für Solarladen (Watt) |
| Netzbezug | SelectVariable | Variable mit dem aktuellen Netz-Ist-Wert (Watt) |
| HauptmanagerAktiv | CheckBox | Schaltet die Ünergeordnete Manager-Logik global ein/aus |
| ManagerID | NumberSpinner | Eindeutige ID für externe Manager‐Kommunikation |
| DatenHoch | SelectVariable | Variable, in die Manager-Statistiken oder Statusdaten geschrieben werden |
| DatenZuruck | SelectVariable | Variable, aus der Verbraucherdaten importiert werden |
| Interval | NumberSpinner | Intervall für Neuberechnung der Werte (Sekunden) |
| Verbraucher_Liste | List | Auswahl aller Verbraucher-Instanzen, die gesteuert werden sollen |
5. Statusvariablen & Profile
| Ident | Typ | Profil | Beschreibung |
|---|---|---|---|
| Is_Peak_Shaving | Boolean | — | Modusanzeige (false = Solarladen, true = Peak-Shaving) |
| LetzteBerechnung | DateTime | — | Zeitpunkt der letzten Zyklus-Ausführung |
| Aktuelle_Differenz | Float | Zuletzt berechnete Soll–Ist-Differenz |
6. WebFront / Bedienung
Im WebFront können Sie
- den aktuellen Modus (
Is_Peak_Shaving) beobachten
7. Mapping auf Code-Komponenten
| Komponente | Modul-Datei | Funktion |
|---|---|---|
| Timer-Registrierung | Manager/module.php |
ApplyChanges() → SetTimerInterval('Interval', …) |
| Zyklischer Aufruf | Manager/module.php |
ManageTimer() ruft DistributeEnergy() auf |
| Mode-Entscheidlogik | Manager/module.php |
Berechnung: |
$isPeak = $ist > (($peak + $solar) / 2);
$this->SetValue('Is_Peak_Shaving', $isPeak);
``` |
| **Datenzugriff** | `Manager/module.php` | `$this->ReadPropertyInteger('Peakleistung')` usw. |
| **Verbraucher-Schleife** | `Manager/module.php` | `$this->ReadPropertyArray('Verbraucher_Liste')` |
| **Leistungszuteilung** | `Manager/module.php` | `DistributeEnergy()` → Round-Robin über `PowerSteps` |
| **Externe Schnittstelle** | `Manager/module.php` | Verwendung von `DatenHoch` / `DatenZuruck` Variablen-IDs |
---
## 8. Zukünftige Erweiterungen
- **Automatische Registrierung** neuer Verbraucher (ohne manuelles Eintragen)
---