Détails seconde solution avec la Puissance libre :
Si tu as la puissance disponible pour le chauffage et autre PL, alors j’aurais utilisé cette valeur.
Tu fais son calcul dans un virtuel (PL = PS - PMHC).
J’aurais aussi créé un virtuel pour le pilotage en manuel : Manuel Radiateur On/Off (un widget binaire), Accessoire 1 On/Off, Accessoire 2 On/Off.
Pour le pilotage en Auto : Auto Radiateur On/Off (exemple vrai si T° pièce 1 <= XX), etc pour les accessoires.
Déclencheur :
- Levé du soleil (puis relance Dans 10 minutes)
- au couché du soleil (on arrête tout)
Il commence en initialisant le Tag Puissance Libre Temps Réel (PLTR) (tu va comprendre pourquoi ensuite)
tag(PLTR) = Virtuel PL
On donne une valeurs à la réserve de puissance tag(R) = 100 (W)
Tu auras une succession de SI (t’en fait un, puis tu copie colle en changeant les détails 1, 2, 3…) / Je mets des SI(R1_1 pour indiquer que c’est un SI dans le SI(R1). Évidement, il n’y a a pas cela dans ton scénario… :
Si pour le rad 1 :
Si(R1) : (tag(PLTR) >= Prad + Tag(R) && Auto Radiateur 1 == 1) OU Manuel Radiateur == 1
– Alors actions : tag(PLTR) = tag(PLTR) - Prad
------ SI(R1_2) : Rad 1 == Off ; Alors : rad 1 On ; Sinon : rien
– Sinon :
-------Si(R1_3) : Rad 1 == On ; Alors rad 1 Off ; Sinon : rien
Si pour le rad 2 :
Si(R2) : tag(PLTR) >= Prad + Tag(R) && Auto Radiateur 2 == 1 OU Manuel Radiateur == 1
– Alors actions : tag(PLTR) = tag(PLTR) - Prad
------ SI(R2_1) : Rad 2 == Off ; Alors : rad 2 On ; Sinon : rien
– Sinon :
-------Si(R2_2) : Rad 2 == On ; Alors rad 2 Off ; Sinon : rien
Si pour le rad 3, etc…
Si pour un Accessoire 1 :
Si(A1) : tag(PLTR) >= Paccessoire 1 + tag(R) OU Manuel Accessoire 1 == 1
– Alors actions : tag(PLTR) = tag(PLTR) - Prad
------ SI(A1_1) : Accessoire 1 == Off ; Alors : Accessoire 1 On ; Sinon : rien
– Sinon :
-------Si(A1_2) : Accessoire 1 == On ; Alors Accessoire 1 Off ; Sinon : rien
Si pour un Accessoire 2 :
Si(A2) : tag(PLTR) >= Paccessoire 2 + tag(R) OU Manuel Accessoire 1 == 1
– Alors actions : tag(PLTR) = tag(PLTR) - Prad
------ SI(A2_1) : Accessoire 2 == Off ; Alors : Accessoire 2 On ; Sinon : rien
– Sinon :
-------Si(A2_2) : Accessoire 2 == On ; Alors Accessoire 2 Off ; Sinon : rien
Etc…
En gros, il faut trouvé une logique ultra « répétable » pour que ça soit souple à faire évoluer.
On comprend ici, que rajouter un appareil est ultra simple. Rien a réfléchir. Copier Coller un si, puis modifier les info sans tout revoir. Idem, si tu veux piloter en manuel les radiateurs : très facile, il suffit d’avoir un virtuel Manuel Radiateur 1, qui remplace le virtuel (dans le test du premier SI) Manuel Radiateur. Pas besoin de tout refaire…
Je sais pas si c’est LA solution.
Je te laisse la faire en détail et test, mais le principe (trouver un truc répétable et facile à faire évoluer) est le bon !!
De plus, c’est un début pour tester le modèle.
Car ensuite tu vas le faire évoluer en pouvant forcé le chauffage (quand il fait froid, mais pas de soleil) etc…
Il va vivre, mais il faut déja trouvé un bon début.
Ici : Pour forcé le chauffage, tu pourras simplement faire un virtuel Radiateur 1 Forcé On/Off (piloté en manuel ou d’autre actions auto).
Puis dans ton premier SI, tu n’aura qu’a ajouter
tag(PLTR) >= Prad + Tag(R) && Manuel Radiateur == 1 && Auto Radiateur 1 == 1 OU Radiateur forcé 1 == 1
Et c’est tout !!