[3c-docs] défauts minOn/minOff par type + séparation budget/verrou (protection compresseur)
Décision Patrick : délestage strict au budget, MAIS minOn/minOff (protection compresseur, anti court-cycling) bornent le palier via l'adaptateur, pas le budget. Paramètres par charge (config installateur, jamais hardcodé) + défauts indicatifs par type (résistif / thermodynamique-PAC / SG-Ready). Note seam de temps unifié. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
5d67dc943d
commit
3a8eb5da86
31
AGENTS.md
31
AGENTS.md
@ -289,6 +289,37 @@ publique propre, l'héritage pourrait être remplacé par composition.
|
||||
|
||||
---
|
||||
|
||||
### Verrous minOn/minOff — protection compresseur (décision Patrick)
|
||||
|
||||
Le délestage du waterfall est **strict au niveau budget** (surplus net signé : en import,
|
||||
budget négatif → palier 0). Mais une charge à compresseur (PAC, ballon thermodynamique)
|
||||
ou un VE ont un **temps de fonctionnement minimum incompressible** : ce n'est pas du
|
||||
confort, c'est de la **protection matérielle** (le court-cycling détruit le compresseur).
|
||||
|
||||
**Séparation des responsabilités** :
|
||||
- Le **scheduler** décide le palier idéal selon le budget (peut vouloir « palier 0 »).
|
||||
- L'**adaptateur** borne ce choix via `minStage`/`maxStage` (fenêtre `lockWindow()` évaluée
|
||||
au temps de cycle) : une charge verrouillée ON garde son palier ; l'import transitoire
|
||||
est **borné par minOn**, pas illimité. Le scheduler clampe et décrémente le budget au
|
||||
palier réel (puissance engagée non-coupable) → budget correct pour les charges suivantes.
|
||||
- `minOnS`/`minOffS` sont des **paramètres par charge** (constructeur `EcsRelayAdapter`,
|
||||
config installateur) — **jamais codés en dur**.
|
||||
|
||||
**Défauts indicatifs par type** (à affiner à la mise en service) :
|
||||
|
||||
| Type de charge | minOn | minOff | Raison |
|
||||
|----------------|-------|--------|--------|
|
||||
| Ballon résistif (ECS simple) | ~60 s | ~60 s | anti-rebond relais seul |
|
||||
| Ballon thermodynamique / PAC | ~300–600 s | ~300 s | **protection compresseur** (anti court-cycling) |
|
||||
| SG-Ready PAC (3e) | `minStateHoldS` ~900 s | — | maintien d'état imposé constructeur |
|
||||
|
||||
**Seam de temps** : `minStage`/`maxStage` (décision) ET le verrou de `applyAction`
|
||||
(exécution) partagent le **même `now = ctx.timestamp`** via `lockWindow()` — source unique,
|
||||
divergence impossible par construction, injectable en simulation. Voir `iloadadapter.h`
|
||||
(contrat « temps = paramètre, jamais l'horloge »).
|
||||
|
||||
---
|
||||
|
||||
## MODÈLE DE SÉCURITÉ (décision Patrick — immuable)
|
||||
|
||||
Cinq couches indépendantes. Chacune est conçue pour qu'une défaillance des couches
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user