# Enelix Diese Modulbibliothek implementiert das Energiemanagementsystem der Belevo AG (Enelix) in IP-Symcon. Es verteilt elektrische Leistung auf mehrere Verbraucher (z. B. Elektroauto-Ladestationen, Boiler, Speicher) dynamisch nach Priorität und Fairness. Unterstützt werden: - **Einzel­haus-Anschlüsse** - **ZEV/V-ZEV-Verbundsysteme** - **Lasten­management-Gemeinschaften (LEG)** --- ## Besonderheiten & Vorteile - **Vollständige Skalierbarkeit** von Einfamilienhaus über ZEV/V-ZEV bis LEG - **Standardisierte Schnittstelle** für Manager ↔ Verbraucher (kein ständiges Nachkonfigurieren) - **Fairness** bei gleicher Priorität durch Round-Robin-Verteilung der Leistungsschritte - **Bidirektionaler Betrieb** (z. B. Batteriespeicher, bidirektionale Ladestationen) - **Dynamische Tarif­gestaltung** über Prioritätsklassen - **Automatisches Peak-Shaving** ohne teure Netzspitzen - **Einfaches Hinzufügen/Entfernen** von Verbrauchern (aktuell manuell, später automatisch möglich) --- ## Voraussetzungen - IP-Symcon **≥ 8.0** - Zugriff auf das Git-Repository --- ## 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 5. Ein Managermodul sowie die gewünschen Verbrauchermodule erstellen und konfigurieren. --- ## 1 Funktionsweise ### 1.1 Mode-Entscheid - In jedem Zyklus liest der Manager den **aktuellen Ist-Netzanschlusswert** (Summe aller `Aktuelle_Leistung`). - Er berechnet den **Schwellwert** als Threshold = (Sollleistung_Max + Ueberschussleistung) / 2 markdown Kopieren Bearbeiten - Ist der Ist-Wert **> Threshold**, setzt er **Peak-Shaving** (`Is_Peak_Shaving = true`), sonst **Solarladen** (`false`). - Diese Boolean teilt er allen Verbrauchern mit, damit sie ihre `PowerSteps`-Arrays entsprechend vorbereiten. ### 1.2 Soll–Ist-Berechnung - Differenz **D** = `Sollleistung_Max` − Ist-Wert - **D > 0**: Bedarf → Solarlade-Zuteilung - **D < 0**: Überschuss → Peak-Shaving-Reduktion ### 1.3 Leistungszuweisung - Für jeden Verbraucher wählt der Manager die **höchste** Stufe aus `PowerSteps`, die die verbleibende Differenz \|D\| **nicht überschreitet**. - Er durchläuft die Verbraucher nacheinander (Round-Robin), bis \|D\| annähernd erschöpft ist. **Beispiel** - Verbraucher A: `[0,1000,2000]` Prio 1 5 kWh aktuell 2000 W - Verbraucher B: `[0,500,1500,2500]` Prio 2 0 kWh aktuell 500 W - Verbraucher C: `[0,500,1500,4000]` Prio 2 10 kWh aktuell 0 W - Verbraucher D: `[0,500,1200,2500]` Prio 2 15 kWh aktuell 0 W - Verbraucher E: `[0,200,1500]` Prio 3 15 kWh aktuell 0 W --- #### Sortierte Stufen-Arrays **Prio 1** [A0], [A1000], [A2000] **Prio 2** [B0], [C0], [D0], [B500], [C500], [D500], [D1200], [B1500], [C1500], [B2500], [D2500], [C4000] **Prio 3** [E0], [E200], [E1500] --- #### Verteilungsschritte 1. **Delta berechnen** - Netzbezug = –5000 W - Sollwert = 0 W → Differenz D = 5000 W 2. **Bereits verteilte Leistungen aufsummieren** - A = 2000 W - B = 500 W → GesamtVerteilbareLeistung = 5000 + 2000 + 500 = **7500 W** 3. **Prio 1** 7500 − 0 W (A0) = 7500 7500 − 1000 W (A1000) = 6500 (6500 + 1000 W vorher) − 2000 W (A2000) = 5500 → A erhält **2000 W** → Rest: 5500 W 4. **Prio 2** 5500 − 0 W (B0) = 5500 5500 − 0 W (C0) = 5500 5500 − 0 W (D0) = 5500 5500 − 500 W (B500) = 5000 5000 − 500 W (C500) = 4500 4500 − 500 W (D500) = 4000 (4000 + 500 W vorher) − 1200 W (D1200) = 3300 (3300 + 500 W vorher) − 1500 W (B1500) = 2300 (2300 + 500 W vorher) − 1500 W (C1500) = 1300 (1300 + 1500 W vorher) − 2500 W (B2500) = 300 (300 + 1500 W vorher) − 2500 W (C2500) → negativ → nicht möglich → B erhält **2500 W**, C **1500 W**, D **1200 W** → Rest: 300 W 5. **Prio 3** 300 − 0 W (E0) = 300 300 − 200 W (E200) = 100 → E erhält **200 W** → Verteilung beendet (Rest 100 W ungenutzt) --- Durch dieses Verfahren – Auf­addierung der bereits verteilten Leistungen, Sortierung nach Priorität und Fairness sowie sukzessive Abarbeitung der Stufen-Arrays – wird die **Gesamtleistung optimal und gerecht** auf alle Verbraucher verteilt. ## Für das oben beschriebene Verteilverfahren ist ein Patentanmeldeverfahren für den Europäischen Raum im Gange (25207583.3 - 1002) ## Anmelder/Patentinhaber ist die Belevo AG