5.8 KiB
V4: begrenzter Regeltest (Entwicklungskandidat, NICHT in Betrieb)
Stand 2026-10-02. Diese Erweiterung ist weder Produktionsfreigabe noch ein
Installations-/Startauftrag. Bestehende Schattenplaene und ihre shadow_seen
Bestaetigungen bleiben unveraendert. Ein Vorschauwert allein darf niemals
als Stellfreigabe interpretiert werden.
Freigabekette
- Serverseitige separate Allowlist
NETPLAN_V4_CONTROL_TRIAL_PLANTS(standardmaessig leer). Interner authentifizierterplanner/trial/arm-Aufruf mit expliziter Bestaetigung, neuer Sitzung, gepruefter Plan-ID/Revision, Batteriezuordnung, Zeitfenster, Leistungsgrenzen und dokumentierter Geraete-Watchdog-Abnahme. Die bestehenden oeffentlichen Portal-/Geraeterouten proxien diesen Aufruf NICHT. NetzfahrplanV4RegeltestErlaubtlokal im Manager UND im Batteriemodul (jeweils Standard false). AlteNetzfahrplanAktiv-Freigabe muss false bleiben.- Zusaetzlicher bewusster lokaler Start einer bestimmten Sitzung. Ein Reload, Netzwiederkehr oder gespeicherter Haken startet keine Sitzung automatisch.
- Der Manager prueft den empfangenen Schattenplan und die getrennte
controlled_trial_authoritygemeinsam. Sie sind gebunden an Anlage, Batterie, beide Instanz-IDs, Revision, manuelle Modellfamilie und stabilen Planungskontext. - Die Batterie nimmt nur einen separaten
controlled_trial_commandmit eigener Sequenz und kurzer Gueltigkeit an. Normale Managerbefehle erneuern diese Gueltigkeit nicht.shadow_seenbleibt eine Empfangs-, keine Ausfuehrungsmeldung.
Die Serverantwort bleibt eine Schattenplan-Antwort (liveEnabled:false). Eine
getrennte Testfreigabe ist unter controlledTrial und
controlledTrialAuthorized sichtbar. Der Schattenmodus allein ist bei kuenftig
bewusst gestartetem Test deshalb kein Nachweis fuer 'keine Batteriebewegung'.
Die Controller-Diagnosen benennen eine angenommene Sollvorgabe, nicht bereits
physisch gemessene Umsetzung oder Ersparnis.
Bewusst begrenzter Pilotumfang
- Genau eine eindeutig zugeordnete Batterie je Test; Familie manuell festgelegt.
- 30 bis 1800 Sekunden Sitzung, maximal 5000 W Laden und 5000 W Entladen.
- Server-, Manager- und Batteriegrenze koennen strenger sein; nie grosszuegig ersetzen oder still auf 39 kW hochsetzen.
- Gesamtsollleistung, NICHT Zusatzleistung zur bereits fliessenden Batterieleistung.
- Andere Verbraucher bleiben im alten Verteiler. Ihre erwartete Leistungsaenderung wird einmal bei der Batteriekorrektur beruecksichtigt.
- Batterie wird nur einem Stellwertpfad zugeteilt, nicht gleichzeitig dem alten und neuen Verteiler. Ist der Test ungueltig, stoppt er und es wird eine NEUE normale Verteilung angefordert; kein alter gespeicherter Sollwert wird restauriert.
- Physische Grenzverletzung, die innerhalb der Pilotleistung nicht behebbar ist, beendet den Test zugunsten der bestehenden lokalen Regelung.
Ausfall- und Zeitverhalten
- Serverfreigabe maximal 90 Sekunden, lokal regelmaessig frisch abgerufen. Serverseitiger Widerruf wirkt nicht magisch sofort: Cachefrist beachten.
- Einzelner Batteriebefehl maximal 10 Sekunden; Batterie kontrolliert im laufenden Kernel mit 1-Sekunden-Timer zusaetzlich zu Messwert-Callbacks.
- Manager liefert kurze Befehle im Test mit zusaetzlichem 2-Sekunden-Takt.
- Monotone Laufzeit und Kalenderzeit werden getrennt geprueft. Eine rueckwaerts springende Systemuhr darf eine Sitzung nicht verlaengern.
- Abbruch widerruft die Sitzung VOR dem Nullstellversuch. Schreibfehler werden als
stop_failed/nicht bestaetigter Stopp sichtbar, nicht als sicherer Zustand. - Reserve, Hysterese, aktuelle Lade-/Entladeleistung, SOC und Verfuegbarkeit werden auch im Batteriemodul erneut geprueft. Sicherheitsreduktionen werden nicht durch die Umschaltsperre verzoegert; Richtungswechsel laufen ueber null.
- Laufzeitsitzungen liegen nur im Buffer, nicht als automatische Wiederanlauf-Freigabe. Ein persistenter Marker sorgt bei Wiederinitialisierung fuer einen erneuten Nullstellversuch, falls ein Testwert zuvor ausgegeben worden sein koennte.
WICHTIGE GRENZE: PHP-Timer und Software-Nullstellversuche funktionieren nur bei
laufendem Kernel und erreichbarem Wechselrichter. Sie sind KEIN physischer
Not-Aus und kein Beweis fuer Abschaltung bei Serverabsturz, Stromausfall oder
unterbrochener Stellwertverbindung. Dafuer ist ein separat nachgewiesener
Befehlsausfall-/Watchdogmechanismus am Geraet bzw. Gateway erforderlich.
Das Feld NetzfahrplanV4GeraeteWatchdogNachweis ist eine Referenz auf die gepruefte
Dokumentation/Abnahme, keine automatische Hardwarepruefung und kein Defaultwert.
Noch offene Freigabepunkte (nicht mit Platzhaltern umgehen)
- Der laufende Lihrenmoos-Prognosestrom ist noch
house_total. Fuer Testfreigabe mussbase_loadmit nachgewiesener Quelle/SDL-Abgrenzung undaccountingEvidenceIdaus dem geprueften Adapter vorliegen. Ein Labelwechsel oder ein erfundener Nachweis reicht nicht; Quelle und Messbilanz pruefen. - Geraete-/Gateway-Watchdog bei ausbleibenden Stellbefehlen nachweisen.
- Vollstaendiges Manager-/Batterie-Callbackverhalten im IP-Symcon-Kernel pruefen. Die isolierten Tests verwenden echte neue Traits, aber simulierte IPS-Aufrufe, Messwerte, Zeit und Register. Reale Modbus-/VGT-Stellreaktion steht aus.
- Zielcontainerpruefung des neuesten Serverstands und Feldabnahme.
- Keine durchgehende unbeaufsichtigte Produktion, kein automatischer Mehranlagenstart. Modellvergleich, Trainingsanbindung, Mehranlagenabnahme und Betriebs-Release bleiben weitere Aufgaben.
Quelltests
php tests/V4ControlTrial/checks.php nur im separaten CLI-Testprozess ausfuehren,
niemals im laufenden Symcon-Skripteditor. Die Datei verweigert einen realen
Symcon-Kernel. Eine PHPUnit-Huelle bindet sie an die normale Testsuite an.
Der Server-Test verwendet ausschliesslich synthetische Daten/Temporaerdatenbanken. Keine Testfunktion liest Zugangsdaten oder schreibt eine reale Stellvariable.