Prose traduite pour Présentation, Protocole, Contrat, Écrire un optimiseur et la page du moteur ; ancres de titres identiques dans les trois langues. Les blocs générés sont identiques d'une langue à l'autre. Les exemples gardent un motif en français, comme l'exige le contrat. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
70 lines
3.3 KiB
Markdown
70 lines
3.3 KiB
Markdown
# Optimierer
|
|
|
|
<span class="badge testing">IN ARBEIT</span>
|
|
|
|
Das Protokoll zwischen Engine und Optimierer ist veröffentlicht (Version 1.1). Die
|
|
Anbindung eines Optimierers wird auf unserer Testanlage erprobt; die Box braucht keinen,
|
|
um zu funktionieren.
|
|
|
|
## Wozu ein Optimierer dient
|
|
|
|
Die [Regeln der Engine](../fonctionnalites/moteur.md) entscheiden über die Gegenwart: den
|
|
Überschuss dieser Minute, verteilt nach Ihren Prioritäten. Ein Optimierer schaut weiter
|
|
voraus. Aus den Prognosen, die ihm die Engine übergibt — PV-Erzeugung, Grundverbrauch,
|
|
eingegebener Tarif —, schlägt er einen **Plan in Zeitfenstern** über mehrere Stunden vor:
|
|
den Warmwasserbereiter in die erwartete Erzeugungsspitze legen, Reserve für das Laden am
|
|
Abend lassen usw.
|
|
|
|
## Der Optimierer berät, die Engine entscheidet
|
|
|
|
- Die Engine führt nur das **aktuelle Zeitfenster** des Plans aus. Der Rest wird als
|
|
Prognose angezeigt und im nächsten Zyklus neu angefragt.
|
|
- Jeder Sollwert wird durch die Grenzen des Verbrauchers (Unter-, Obergrenze, Sperren
|
|
gegen Takten) und durch die **Sicherheitsschleife** in Echtzeit **gedeckelt**; diese
|
|
bleibt bei der Engine und hat Vorrang vor allem. Ein Optimierer kann keine Sperre
|
|
umgehen.
|
|
- Jede Aktion muss ihren **Grund** tragen. Eine Aktion ohne Grund wird verworfen.
|
|
- Ein fehlerhafter Plan, oder einer, der einen unbekannten Verbraucher anspricht, wird
|
|
vollständig abgelehnt.
|
|
|
|
Ein fehlerhafter Optimierer kann also schlimmstenfalls eine schlechte Verteilung
|
|
vorschlagen — begrenzt durch die Engine.
|
|
|
|
## Die Box funktioniert ohne Optimierer
|
|
|
|
Optimierer fehlt, schweigt, enthält sich, Plan abgelaufen oder abgelehnt: Die Engine kehrt
|
|
für den Zyklus zu ihren **Regeln** (`rules`) zurück, ohne Unterbrechung der Steuerung. Die
|
|
App zeigt jederzeit, welche Strategie steuert. Die Community-Version funktioniert
|
|
vollständig so.
|
|
|
|
## Seine Daten kommen nur von der Engine
|
|
|
|
- Die Engine verbindet sich mit dem Optimierer, nie umgekehrt: Die Box öffnet keinen Port.
|
|
- Der Optimierer läuft auf der Box (lokaler Socket) oder auf einem Rechner in Ihrem lokalen
|
|
Netz (TCP). Im lokalen Netz wird ein gemeinsames Geheimnis (Token) empfohlen.
|
|
- Er erhält **nur** den Kontext, den die Engine sendet, Prognosen inbegriffen: Er ruft
|
|
weder einen Wetterdienst noch einen Tarifanbieter auf und öffnet keine Verbindung nach
|
|
außen.
|
|
- Was er lernt, bleibt vor Ort.
|
|
|
|
## Wer einen Optimierer schreiben kann
|
|
|
|
Jeder. Das Protokoll ist offen und durch einen [maschinenlesbaren Vertrag](contrat.md)
|
|
unter GPL-3.0 beschrieben. Ein freier **Referenz-Optimierer** und eine
|
|
**Konformitäts-Testsuite** erlauben es, einen eigenen zu schreiben und gegen die echte
|
|
Engine zu prüfen — siehe [Einen Optimierer schreiben](ecrire.md).
|
|
|
|
## Der ETM-Optimierer
|
|
|
|
ETM-Schurig bietet einen eigenen, proprietären Optimierer an, enthalten in der Pro-Edition.
|
|
Er wird über dasselbe Protokoll angebunden, mit denselben Grenzen: Er berät, die Engine
|
|
entscheidet. Beim Handshake meldet er sich als `etm-optimizer`; der Referenz-Optimierer
|
|
meldet sich als `powersync-optimizer`.
|
|
|
|
## In diesem Abschnitt
|
|
|
|
- [Protokoll](protocole.md) — Transport, Handshake, Kontext, Plan, Rückfall,
|
|
Prüfregeln.
|
|
- [Vertrag](contrat.md) — die OpenRPC-Datei, die für die Form der Nachrichten maßgeblich ist.
|
|
- [Einen Optimierer schreiben](ecrire.md) — Referenz-Optimierer und Konformitäts-Testsuite.
|