95 lines
4.6 KiB
Markdown
95 lines
4.6 KiB
Markdown
# Belevo EMS Hauptmanager
|
||
|
||
Das **Belevo EMS Hauptmanager**-Modul fasst mehrere untergeordnete **Belevo EMS Manager**-Instanzen zusammen und verteilt die globale verfügbare Leistung direkt auf die einzelnen Verbraucher-Instanzen – nicht nur auf die Manager. Jeder Unter-Manager meldet seine Verbraucher-Daten als JSON, der Hauptmanager berechnet die finalen Zuweisungen und liefert für jeden Unter-Manager ein JSON mit den fertigen Verbraucher-Leistungen zurück.
|
||
|
||
---
|
||
|
||
## Inhaltsverzeichnis
|
||
|
||
1. [Beschreibung](#beschreibung)
|
||
2. [Voraussetzungen](#voraussetzungen)
|
||
3. [Installation](#installation)
|
||
4. [Instanz anlegen & Konfiguration](#instanz-anlegen--konfiguration)
|
||
5. [Statusvariablen](#statusvariablen)
|
||
6. [Funktionsweise](#funktionsweise)
|
||
1. [Mode-Entscheid](#1-mode-entscheid)
|
||
2. [Datenaggregation](#2-datenaggregation)
|
||
3. [Globale Soll-Ist-Differenz](#3-globale-soll-ist-differenz)
|
||
4. [Verbraucher-Priorisierung](#4-verbraucher-priorisierung)
|
||
5. [Leistungszuweisung](#5-leistungszuweisung)
|
||
6. [Rückgabe an Unter-Manager](#6-rückgabe-an-unter-manager)
|
||
7. [Beispiel-Workflow](#beispiel-workflow)
|
||
8. [Mapping auf Code-Komponenten](#mapping-auf-code-komponenten)
|
||
9. [Zukünftige Erweiterungen](#zukünftige-erweiterungen)
|
||
10. [Support](#support)
|
||
|
||
---
|
||
|
||
## Beschreibung
|
||
|
||
Der Hauptmanager koordiniert beliebig viele Unter-Manager (z. B. Hausanschluss, ZEV-Cluster, LEG-Center). Jeder Unter-Manager sammelt in seinem Zyklus die Daten aller angeschlossenen Verbraucher (JSON-Array mit Feldern wie `deviceID`, `priority`, `requestedLevels`, `currentDrawn`, `receivedTotal` usw.) und stellt dieses JSON in seiner `DatenZurueck`-Variable bereit. Der Hauptmanager
|
||
|
||
1. liest alle `DatenZurueck` JSONs der Unter-Manager ein,
|
||
2. entscheidet global über Solarlade- oder Peak-Shaving-Mode,
|
||
3. berechnet eine einzige **globale** Soll–Ist-Differenz,
|
||
4. führt Priorisierung und Fair-Round-Robin über **alle** Verbraucher durch,
|
||
5. verteilt die verfügbare Leistung in Stufen (je Verbraucher aus `PowerSteps`),
|
||
6. erzeugt für jeden Unter-Manager ein JSON mit den finalen `assignedLevel`-Werten pro `deviceID`,
|
||
7. schreibt diese JSONs in die jeweilige `DatenHoch`-Variable.
|
||
|
||
Die Unter-Manager übernehmen das JSON und senden die fertigen `assignedLevel`-Werte an ihre lokalen Verbraucher-Instanzen.
|
||
|
||
---
|
||
|
||
## Voraussetzungen
|
||
|
||
- IP-Symcon **≥ 8.0**
|
||
- Bereits installierte **Belevo EMS Manager**-Instanzen
|
||
- Zugriff auf Git-Repository:
|
||
https://git.belevo.ch/dh/Symcon_Belevo_Energiemanagement_testing.git
|
||
|
||
yaml
|
||
Kopieren
|
||
Bearbeiten
|
||
|
||
---
|
||
|
||
## Installation
|
||
|
||
1. In IP-Symcon **Module Control** öffnen
|
||
2. **Hinzufügen → Git-Repository**
|
||
3. URL eintragen (s. o.)
|
||
4. Modul **„Belevo EMS Hauptmanager“** installieren
|
||
5. IP-Symcon neu starten
|
||
|
||
---
|
||
|
||
## Instanz anlegen & Konfiguration
|
||
|
||
1. Rechtsklick auf **Instanzen** → **Instanz hinzufügen**
|
||
2. Filter: **Belevo**
|
||
3. **„Belevo EMS Hauptmanager“** auswählen und Instanz erstellen
|
||
|
||
### Properties
|
||
|
||
| Name | Typ | Beschreibung |
|
||
|------------------------|----------------|------------------------------------------------------------------------------|
|
||
| **HauptmanagerAktiv** | Boolean | Schaltet globale Verteilungslogik ein/aus |
|
||
| **Interval** | Integer (s) | Zyklusintervall für Verteilung und Mode-Entscheid |
|
||
| **Sollleistung_Max** | Float (W) | Max. Gesamtleistung, die verteilt werden darf |
|
||
| **Ueberschussleistung**| Float (W) | Untergrenze für Solarlade-Mode (z. B. 0 W) |
|
||
| **Manager_Liste** | InstanceList | Liste aller untergeordneten Belevo EMS Manager-Instanzen |
|
||
| **DatenZurueck** | SelectVariable | Variable-ID (Integer) in jeder Unter-Manager-Instanz, aus der JSON gelesen wird |
|
||
| **DatenHoch** | SelectVariable | Variable-ID in jeder Unter-Manager-Instanz, in die JSON geschrieben wird |
|
||
|
||
---
|
||
|
||
## Statusvariablen
|
||
|
||
| Ident | Typ | Profil | Beschreibung |
|
||
|--------------------------|-----------|--------------|-----------------------------------------------------|
|
||
| **LetzteBerechnung** | DateTime | — | Zeitstempel der letzten Verteilung |
|
||
| **Globale_Differenz** | Float | ~Watt~~W~ | Zuletzt berechnete Soll–Ist-Differenz global (W) |
|
||
| **Anzahl_Manager** | Integer | — | Anzahl aktuell verbundener Unter-Manager |
|
||
|
||
--- |