All checks were successful
Build & Deploy docs / build-deploy (push) Successful in 3m52s
Relu contre le moteur (main 61db6cf) : en temps réel la protection ne bride que les bornes, les autres charges sont délestées au cycle suivant ; cycle chaque minute ; repli à 90 s de silence du compteur, états sûrs. Ordre réel : mesure et marge de soutirage, échéances VE, réserve batterie, passe éco (demandes ponctuelles puis obligations étalées) avant la cascade confort ; recrédit, plancher, verrous et indisponibilité appliqués charge par charge ; une commande par charge. Retiré : « si l'installateur l'a autorisé » (aucune autorisation dédiée). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Ry3vBrJT1tHdxAaXdCWi6L
113 lines
6.6 KiB
Markdown
113 lines
6.6 KiB
Markdown
# Wie die Engine entscheidet
|
|
|
|
<span class="badge community">COMMUNITY</span>
|
|
|
|
Die Energie-Engine der Box steuert Ihre Verbraucher selbstständig: Wallboxen,
|
|
Warmwasserbereiter, SG-Ready-Wärmepumpe, Relais. Sie ist frei (GPL-3.0) und entscheidet in
|
|
der **Community**-Version. Diese Seite beschreibt ihre Logik für Installateure und
|
|
Integratoren; die folgenden Seiten erläutern die einzelnen Funktionen.
|
|
|
|
## Zwei Schleifen, zwei Prioritäten
|
|
|
|
Die Engine trennt Sicherheit und Verteilung. Es sind zwei getrennte Schleifen, mit
|
|
unterschiedlichem Takt und unterschiedlicher Priorität.
|
|
|
|
- **Der Überlastschutz, bei jeder Messung.** Sobald sich die gemessene Bilanz ändert,
|
|
liest die Engine den Strom jeder Phase am Netzanschlusszähler. Überschreitet eine Phase
|
|
die eingestellte Grenze, senkt sie **sofort** den Ladestrom der Wallboxen und gibt ihn
|
|
wieder frei, sobald genug Reserve da ist. Die übrigen Verbraucher (Warmwasserbereiter,
|
|
Wärmepumpe, Relais) werden zu Beginn des nächsten Zyklus abgeworfen
|
|
([Lastabwurf](delestage.md)). Dieser Schutz hat Vorrang vor jeder
|
|
Verteilungsentscheidung.
|
|
- **Der Verteilungszyklus, jede Minute.** Er verteilt die verfügbare Leistung auf die
|
|
Verbraucher, auf Basis der Minutenmessung der elektrischen Bilanz, und läuft sofort
|
|
erneut, wenn Sie eine Einstellung ändern. Nur hier greift eine Strategie ein: die
|
|
eingebauten Regeln oder, falls angeschlossen, ein [Optimierer](../optimiseur/index.md).
|
|
|
|
**Schweigt der Netzanschlusszähler** (mehr als 90 s ohne Messwert), setzt die Engine die
|
|
Verteilung aus und bringt die Verbraucher in eine sichere Stellung: regelbare Verbraucher
|
|
auf 0 W, Relais offen, Wärmepumpe im Normalbetrieb, bereits ladende Wallboxen auf
|
|
Mindeststrom, kein neuer Verbraucher wird gestartet. Der Überlastschutz bleibt aktiv. Die
|
|
Verteilung setzt im Zyklus nach der Rückkehr des Zählers wieder ein.
|
|
|
|
## Die Regeln, in ihrer Reihenfolge
|
|
|
|
In jedem Zyklus durchläuft die Engine dieselben Schritte, in derselben Reihenfolge.
|
|
|
|
1. **Messen.** Ausgangspunkt ist der Messwert des Netzanschlusszählers (Einspeisung und
|
|
Bezug). Daraus leitet die Engine auch den **Bezugsspielraum** ab: was die Anlage noch
|
|
aus dem Netz beziehen kann, ohne die Phasengrenze zu überschreiten. Kein Netzbezug,
|
|
gleich aus welchem Grund, geht darüber hinaus.
|
|
2. **Ladefristen bedienen.** Ein Fahrzeug, das bis zu einer bestimmten Uhrzeit geladen
|
|
sein muss, wird aus dem Netz bedient, außerhalb der Überschussverteilung.
|
|
3. **Die Batterie schützen.** Liegt ein Hausspeicher unter seiner Reserveschwelle, geht der
|
|
Überschuss zuerst an ihn: Die gesteuerten Verbraucher erhalten nichts davon. Oberhalb
|
|
der Schwelle zählt, was er aufnimmt, als verfügbarer Überschuss. Seine Entladung wird
|
|
nie als Überschuss gezählt.
|
|
4. **Zugesicherte Bedarfe („Eco“-Durchlauf).** Zuerst die **einmaligen Anforderungen** aus
|
|
der App („jetzt heizen“): Der Verbraucher erhält seine volle Leistung, unabhängig von
|
|
seinem Rang. Danach die **täglichen Pflichten**, etwa eine Mindestenergie für den
|
|
Warmwasserbereiter bis zu einer bestimmten Uhrzeit: Die Engine kauft das Fehlende aus
|
|
dem Netz, gleichmäßig bis zur Frist verteilt, und schaltet auf volle Leistung, wenn nur
|
|
noch die gerade nötige Zeit bleibt. Diese Bezüge bleiben im Bezugsspielraum.
|
|
5. **Den Überschuss kaskadiert verteilen („Komfort“-Durchlauf).** Die Verbraucher werden
|
|
in der von Ihnen festgelegten **Priorität** bedient (1 = zuerst). Jeder erhält, was vom
|
|
Budget übrig ist, innerhalb seiner Grenzen, und das Budget wird entsprechend
|
|
verringert. Es gibt **ein einziges** Budget: Ohne es sähen drei Manager jeweils „2 kW
|
|
Überschuss“ und zögen zusammen 6. Der Reihe nach, für jeden Verbraucher:
|
|
- was er bereits aufnimmt, wird ihm gutgeschrieben: Ein laufender Verbraucher wird
|
|
nicht gegen sich selbst gerechnet;
|
|
- unterhalb seiner Mindestleistung bleibt er aus, statt halb zu laufen, und das Budget
|
|
geht an den nächsten. Eine Wallbox kann dennoch mit einem kleinen Zuschuss aus dem
|
|
Netz starten, innerhalb der eingestellten Toleranz;
|
|
- ein **gesperrter** Verbraucher (Mindestlauf- oder Mindeststillstandszeit, Wartezeit
|
|
zwischen zwei Änderungen) behält seine aktuelle Leistung;
|
|
- ein **nicht verfügbarer** Verbraucher behält seine aktuelle Leistung, ohne neuen
|
|
Sollwert; sein Verbrauch wird weiter gezählt.
|
|
6. **Ein Befehl pro Verbraucher.** Zugesicherter Bedarf und Überschussanteil desselben
|
|
Verbrauchers werden zusammengeführt: Jeder Verbraucher erhält einen einzigen Sollwert,
|
|
mit seinem Grund.
|
|
|
|
### Die Grenzen jedes Verbrauchers
|
|
|
|
Jeder Verbraucher hat vom Installateur eingetragene Grenzen, die **jede** Entscheidung
|
|
einhält, gleich welche Strategie:
|
|
|
|
- eine **Unter-** und eine **Obergrenze** der Leistung. Bei einer Wallbox sind sie als
|
|
Strom angegeben (mal Anzahl der Phasen), und die Obergrenze wird zusätzlich durch die
|
|
Phasengrenze beschränkt;
|
|
- **Sperren gegen Takten**: Mindestlauf- und Mindeststillstandszeit, Wartezeit zwischen
|
|
zwei Änderungen. Eine Wallbox hat eigene (Wartezeit zwischen Ein und Aus, Wartezeit
|
|
zwischen zwei Stromänderungen);
|
|
- bei einer SG-Ready-Wärmepumpe: der Zustand wird nach der geschätzten Leistung jedes
|
|
Zustands gewählt, mit Hysterese und Mindesthaltedauer. Der Sperrzustand wird nie durch
|
|
den Überschuss ausgelöst.
|
|
|
|
## Der Grund jeder Entscheidung
|
|
|
|
Die Engine trifft keine Entscheidung, ohne ihren Grund zu nennen. Jede Entscheidung trägt
|
|
einen nicht leeren **Grund** (`decisionReason`): einen stabilen Code mit Parametern, den
|
|
die App in Ihrer Sprache anzeigt — „Überschuss reicht nicht“, „unter der
|
|
Mindestleistung“, „Ladefrist“… Die Liste der Codes ist mit dem
|
|
[Optimierer-Protokoll](../optimiseur/protocole.md#reponse) veröffentlicht.
|
|
|
|
## Die Messung, nie das Ergebnis der Steuerung
|
|
|
|
Der Überschuss wird aus der **Rohmessung** des Netzanschlusszählers berechnet, so wie sie
|
|
gemessen wird. Nie aus einer nach der Steuerung neu berechneten Bilanz: Die Engine würde
|
|
sich selbst lesen und schwingen.
|
|
|
|
## Ohne Internet
|
|
|
|
All das läuft auf der Box. Ohne Internet steuert die Engine, wendet die Sicherheit an und
|
|
antwortet der App in Ihrem lokalen Netz. Nur die [PV-Prognose](prevision-pv.md) setzt
|
|
aus. In der Community-Version fließen weder die Prognose noch der
|
|
[eingegebene Tarif](../tarifs.md) in die Entscheidungen der Regeln ein: Beide werden
|
|
angezeigt und gespeichert, aber nie zum Entscheiden verwendet.
|
|
|
|
## Und ein Optimierer?
|
|
|
|
Ein Optimierer kann anhand der Prognosen einen Plan über mehrere Stunden vorschlagen. Er
|
|
ersetzt den Verteilungsschritt, **nie** den Überlastschutz oder die Grenzen. Siehe
|
|
Abschnitt [Optimierer](../optimiseur/index.md).
|