Hello,
Petite update pour une installation qui roule toujours avec très peu de modification.
A ce jour, avec plus de 3 kWc installés, j’arrive assez rapidement à avoir mon ballon d’eau chaude full.
J’ai donc mis en place un scénario de délestage pour filtrer l’eau de la piscine plus que prévu.
De base la filtration tourne sur la production en pivot. En hiver, environ 1H30 coupé avant et après midi.
J’ai donc mis en place un premier scénario (programmé @5min) qui détecte qu’il y a de la production disponible quand le ballon est full. Il me permet de détecter les cas de de délestage possible dès que le ballon est full (> 60°C). L’astuce est de détecter la production suffisante pour couvrir le talon de la maison, la pompe ou l’usage que l’on veut effacer.
Pour ma part :
-
la consommation est proche de 0, la piscine ne tourne pas et j’ai plus de 1700W de production (1200W pour la pompe, 500W max pour effacer la maison), je regarde si le niveau d’eau est suffisant pour démarrer et j’active le délestage sur la piscine.
-
la consommation est proche de 0, la piscine tourne et j’ai plus de XW de production (1200W pour la pompe, 500W pour la maison, Y pour l’équipement que je veux effacer, une charge de voiture élec), j’active le délestage de l’équipement (clim, etc).
Le délestage n’est qu’un binaire ON/OFF avec un ON qui revient à OFF au bout de 10min pour éviter les accoups (nuage, équipement etc). Donc dans le principe le scénario qui lui tourne toutes les 5 min, va soit remettre un ON, soit laisser retomber à OFF par la commande.
Je pensais à mettre un délestage OFF en cas de grosse conso, mais je ne pense pas que ce soit une bonne idée. Les clims sont des inverters, elles démarrent au pire « fort » (1800/3000w) mais se calment vite (<1500/<1000W).
Ce qui donne en panel :

Avec un interrupteur pour la filtration (voir dans le fil pour comment) et celui du délestage.

Le délestage ON ne fait rien (je préfère l’activer par le scénario plus haut).
Le délestage OFF fait une filtration ON.
Côté filtration de la piscine, j’ai modifié le scénario ON/OFF de filtration.
Pour le ON, un peu lourd mais pas compliqué :
- si je ne suis pas en délestage :
#[Energie][Délestage sur production][Délestage Piscine]# == 0
si je ne suis pas sur une période de boost manuel (filtration à la demande)
!(#[Piscine][Sonde Iopool EcO][Statut Boost - 1H]# == 1 OU #[Piscine][Sonde Iopool EcO][Statut Boost - 4H]# == 1 OU #[Piscine][Sonde Iopool EcO][Statut Boost - 8H]# == 1 OU #[Piscine][Sonde Iopool EcO][Statut Boost - 24H]# == 1)
j’utilise strlen pour savoir si j’ai une filtration pivot sur si le second temps est prévu (donc pas égal à 0) et je regarde si l’heure est celle du démarrage de la première période :
strlen(variable(period2_stop)) == 0 ET strlen(variable(period2_start)) == 0 AND #time# == str_replace(":","",variable(period1_start))
sinon on est sur le second démarrage :
#time# == str_replace(":","",variable(period2_start))
A cela je regarde les modes de l’Eco :
#[Piscine][Sonde Iopool EcO][Mode de la sonde]# == "WINTER" OR #[Piscine][Sonde Iopool EcO][Mode de la sonde]# == "ACTIVE_WINTER"
#[Piscine][Sonde Iopool EcO][Mode de la sonde]# == "STANDARD"
#[Piscine][Sonde Iopool EcO][Mode de la sonde]# != "STANDARD" ET #[Piscine][Sonde Iopool EcO][Mode de la sonde]# != "WINTER" ET #[Piscine][Sonde Iopool EcO][Mode de la sonde]# != "ACTIVE_WINTER"
A chaque fois, je remplis la variable message_TTS et j’envoie un telegram (si personne dans la maison).
Et je fais parler le TTS de la maison.
En fonction des conditions, j’indique si c’est une filtration de délestage, de saison, d’hivernage etc.
Pour le OFF, je calcule la durée de filtration en tête de scénario :
round(durationbetween(#[Capteurs et Actionneurs][Shelly Pompe Piscine][Statut]#,1,today 00:00,now),1)
Je regarde si on vient de finir un délestage ou non :
#[Piscine][Piscine (Panel)][Délestage]# == 0 AND lastChangeStateDuration(#[Piscine][Piscine (Panel)][Délestage]#,0) > 30
Je stocke dans des variables le temps min de filtration hiver, saison et en fonction des modes de filtration, je regarde :
variable(filtration_today) > variable(filtration_min)
- si j’ai filtré ce qu’il fallait :
(variable(filtration_today) <= (variable(filtration_max)+5)) ET (variable(filtration_today) >= (variable(filtration_max)-5))
le dernier cas de ces SI est donc forcément un surplus de filtration.
Je gère aussi si la piscine s’est arrêtée à cause d’un manque d’eau :
#[Piscine][Piscine (Panel)][Niveau]# == 1
Voili, voilou.