Plugin Piscine : le blueprint pour HA (gestion de la filtration)

Bonjour à tous,

Aidant quelques personnes sur Jeedom à passer sur HA, j’ai « recréé » le plugin Piscine en blueprint.

Il ne s’agit pas vraiment d’une copie parfaite mais ça s’en rapproche pas mal et permet donc de faire fonctionner la pompe/filtration de la piscine selon un temps calculé en fonction de la température de l’eau.

Plusieurs modes sont proposés :

  • Mode Courbe : Calcul de la durée de filtration selon une courbe en fonction de la température de la piscine
  • Mode Hivernage : Fait marcher la pompe 3h par jour si la température de l’eau est inférieure ou égale 10°C, 24h si la température est en dessous de la température hors gel et le mode hors gel est activé. Au dessus de 10°C, le temps de filtration est égal à la température de l’eau divisée par 3
  • Mode Automatique : Combine le mode Courbe et le mode Hivernage afin de ne pas avoir à changer de mode au cours de l’année. Le mode hivernage s’active dès que l’eau passe en dessous de la température configurée
  • Mode Forcé : Force le fonctionnement de la pompe
  • Mode Inactif : Coupe la pompe et la gestion de la filtration

Il est possible de configurer une heure pivot pour le mode auto/courbe, une heure pivot pour l’hivernage et un temps de pause autour de cette heure.

2 blueprints sont proposés ici :

  • Une version dite simple où tout est à configurer dans le blueprint
  • Une version avancée où tous les paramètres peuvent être ajoutés sur votre dashboard

Pour installer ce blueprint, la 1ère chose à faire est de créer les entités qui vont permettre de stocker les données du calcul (+ un bouton pour relancer le calcul). Pour ce faire, 2 solutions : copier/coller le Yaml ci-dessous dans votre fichier configuration.yaml ou utiliser l’interface (Paramètres > Appareils et services > Entrées) en créant les mêmes entrées avec les mêmes paramètres (voir contenu du Yaml). Si vous copier/coller le Yaml, pensez à redémarrer HA avant de passer au blueprint !


Le blueprint en mode simple :

Configuration pour les entités pour le stockage et la configuration
input_datetime:
  heure_debut_filtration_1_piscine:
    name: "Heure début 1ère période de filtration"
    has_time: true
    icon: mdi:clock-start
  heure_fin_filtration_1_piscine:
    name: "Heure fin 1ère période de filtration"
    has_time: true
    icon: mdi:clock-end
  heure_debut_filtration_2_piscine:
    name: "Heure début 2ième période de filtration"
    has_time: true
    icon: mdi:clock-start
  heure_fin_filtration_2_piscine:
    name: "Heure fin 2ième période de filtration"
    has_time: true
    icon: mdi:clock-end

input_number:
  duree_filtration_piscine:
    name: "Durée de filtration de la piscine"
    min: 0
    max: 1440
    step: 1
    unit_of_measurement: "min"
    icon: mdi:timer-outline

input_button:
  recalcul_temps_filtration_piscine:
    name: "Recalcul du temps de filtration"
    icon: mdi:gesture-tap-button

Disponible également ici : Entités pour la gestion de la filtration de la piscine · GitHub

Enfin, importer le blueprint depuis cette URL : Blueprint de gestion de la filtration de la piscine · GitHub
ou cliquer ici :
Open your Home Assistant instance and show the blueprint import dialog with a specific blueprint pre-filled.

Ensuite configurer le blueprint (la plupart des paramètres ont une configuration par défaut) :

  • Ajouter l’entité du capteur de température de la piscine,
  • Ajouter l’entité de contrôle de la pompe,
  • Ajouter l’entité du bouton de reset du calcul,
  • Choisir le mode de filtration/calcul (Automatique par défaut),
  • Configurer un coefficient d’ajustement pour le mode courbe (100% par défaut),
  • Choisir l’heure pivot (midi par défaut),
  • Configurer la durée de la pause (0 minute par défaut),
  • Configurer l’heure pivot du mode hivernage (5h par défaut),
  • Configurer la durée de la pause en hiver (0 minute par défaut),
  • Configurer le mode hors gel et la température associée (Activé sous 1°C par défaut)
  • Configurer en mode Automatique la température sous laquelle le mode hivernage se déclenche,
  • Enfin, ajouter les entités permettant de stocker les données du calcul

La toute 1ère fois et à chaque modification des paramètres du blueprint, il faut cliquer sur le bouton pour lancer le calcul initial. Ensuite, le calcul se fait seul tous les jours à l’heure de fin de la 2nd période de filtration.


Le même blueprint en mode avancé :

Avec cette version, le mode de filtration, le coefficient de filtration et les durées de pause (auto et hivernage) sont configurés à partir d’entrées (input_*) permettant de les avoir sur un dashboard et de les modifier sans avoir à modifier et ré-enregistrer le blueprint !
Les heures de pivot sont à configurer à partir de capteurs de type timestamp permettant par exemple d’utiliser les heures de levé et couché du soleil (de l’intégration soleil) ou l’heure du pic de production de votre installation solaire (de l’intégration forecast.solar) !

Configuration pour les entités pour le stockage et la configuration
input_datetime:
  heure_debut_filtration_1_piscine:
    name: "Heure début 1ère période de filtration"
    has_time: true
    icon: mdi:clock-start
  heure_fin_filtration_1_piscine:
    name: "Heure fin 1ère période de filtration"
    has_time: true
    icon: mdi:clock-end
  heure_debut_filtration_2_piscine:
    name: "Heure début 2ième période de filtration"
    has_time: true
    icon: mdi:clock-start
  heure_fin_filtration_2_piscine:
    name: "Heure fin 2ième période de filtration"
    has_time: true
    icon: mdi:clock-end

input_number:
  duree_filtration_piscine:
    name: "Durée de filtration de la piscine"
    min: 0
    max: 1440
    step: 1
    unit_of_measurement: "min"
    icon: mdi:timer-outline

  duree_coupure_filtration_piscine:
    name: "Durée de coupure de la filtration"
    min: 0
    max: 240
    step: 2
    unit_of_measurement: "min"
    icon: mdi:timelapse
  duree_coupure_filtration_hivernage_piscine:
    name: "Durée de coupure de la filtration en hivernage"
    min: 0
    max: 240
    step: 2
    unit_of_measurement: "min"
    icon: mdi:timelapse
  coefficient_filtration_piscine:
    name: "Coefficient d'ajustement du temps de filtration"
    min: 30
    max: 170
    step: 5
    unit_of_measurement: "%"
    icon: mdi:timelapse

input_button:
  recalcul_temps_filtration_piscine:
    name: "Recalcul du temps de filtration"
    icon: mdi:gesture-tap-button

input_select:
  mode_filtration_piscine:
    name: "Mode de filtration de la piscine"
    icon: mdi:format-list-checks
    options:
      - "Courbe"
      - "Hivernage"
      - "Automatique"
      - "Forcé"
      - "Inactif"

Disponible également ici : Entités pour la gestion de la filtration de la piscine (avancé) · GitHub

Configuration pour avoir les heures de pivot configurables depuis le dashboard

Pour ceux qui souhaiteraient également avoir les heures de pivot paramétrables depuis votre dashboard, il faut procéder ainsi :

  • Créer 2 input_datetime à afficher sur votre dashboard :
input_datetime:
  heure_pivot_filtration_piscine:
    name: "Heure pivot filtration"
    has_time: true
  heure_pivot_filtration_hivernage_piscine:
    name: "Heure pivot filtration hivernage"
    has_time: true
  • Ensuite créer 2 template sensor :
template:
  - sensor:
      name: "Heure pivot filtration sensor"
      unique_id: heure_pivot_filtration
      device_class: timestamp
      state: "{{ today_at(states('input_datetime.heure_pivot_filtration_piscine')) }}"
  - sensor:
      name: "Heure pivot filtration hivernage sensor"
      unique_id: heure_pivot_filtration_hivernage
      device_class: timestamp
      state: "{{ today_at(states('input_datetime.heure_pivot_filtration_hivernage_piscine')) }}"

et ensuite configurer le blueprint pour utiliser les 2 entités créés.

Le blueprint avancé est disponible ici : Gestion filtration piscine (avancé) · GitHub
ou cliquer ici pour l’importer :
Open your Home Assistant instance and show the blueprint import dialog with a specific blueprint pre-filled.

Bonne filtration à tous

15 « J'aime »

Testé et approuvé ! Super boulot !

1 « J'aime »

Salut,

Petit erreur de typo sur ton blueprint : remplace pédiode par période

1 « J'aime »

@Makai ,

Serait-il possible d’avoir le Coéfficient d'ajustement du temps de filtration accessible sur le dashboard d’HA ? (actuellement, il faut aller dans parametres/blueprint/ … ) et j’utilise bcp cette fonctionnalité avec mon extension (veillisante) du temps de filtration.

De plus, si on veut changer cette valeur dans le blueprint existant, on doit re-mettre, a nouveau tout les sensors, …

Et pour l’heure pivot, est-ce possible d’utiliser une variable ( je pense a sun.sun.next_noon )

Bien vu ! J’ai corrigé les 2 fichiers, merci

Pour la 1ere demande c’est tout à fait possible, je l’avais fait au départ et j’ai changé d’avis en cours de route. Je peux le rajouter.

Pour la seconde demande je vais regarder

1 « J'aime »

Bonjour, merci pour ton travail.
J’ai une prise connectée pour gérer l’allumage ou l’extinction de ma pompe.
Elle est connectée via mon pont hue. J’ai bien une entité qui remonte dans HA mais je ne peux pas l’ajouter dans le blueprint à l’emplacement qui contrôle la pompe, y a t’il une restriction?

Bonjour,

Oui il y a une restriction, il faut une entité de type switch (switch.xxx). De quel type est votre entité ?

ah ok, le mien est de type light.

Ok bizarre. Pouvez-vous réimporter le blueprint et tester à nouveau ?

Ca fonctionne, merci beaucoup.

1 « J'aime »

J’ai corrigé un souci suite au changement pour que le domaine lightsoit accepté, vous devriez ré-importer le blueprint à nouveau

Je viens d’ajouter le même blueprint en mode avancé, voir dans le 1er post.
Avec cette version les durées de pause et le coefficient d’ajustement sont configurables à partir d’entités que vous pouvez avoir sur votre dashboard. Les heures de pivot peuvent désormais utiliser les entités de type timestamp comme celles des heures de couché et levé du soleil.

Merci, j’ai integré le nouveau mode et il semble bien fonctionner.

Par contre, par rapport a mon besoin (j’ai un filtre en tissu qu’il faut que je nettoie fréquemment avec le moteur arrêter), je suis souvent obliger d’arrêter la pompe (puis après 5-10 minutes) de la redémarrer.

Il semble qu’il y a cette possiblité ( Mode de filtration de la piscine : Courbe/Forcé/Inactif/...

Est-il possible de changer ce mode via une télécommande connecter (ou un bouton sur le dashboard ou api ou … )

Bonne soirée

Il vous faut mettre l’entité qui gère votre pompe sur votre Dashboard et allumer/couper la pompe avec.
Ce blueprint n’a pas vocation à être changé tout le temps mais plutôt une fois par saison (et encore avec le mode automatique)

Merci, pas de souci pour faire comme ça ( l’extension que j’utilise en ce moment pool-pump) vérifiais et changer l’état de l’Entité de contrôle de la pompe , … donc je pouvais pas faire comme ça ( d’où ma question) …

Mais comme ton système est plus simple, il y a plus ce genre de problème, …

Hello,

Attention je ne l’ai pas encore testé donc je vais peut être dire des connn…

Arf pourtant y a plein de cas où l’on voudrait passer de auto à on (dans pool_pump), ou courbe/forcé dans ton blueprint.
Par exemple j’active le mode forcé lorsque mon surplus de production solaire le permet. Du coup comme la pompe tourne ça allume la prise de mon réchauffeur, comme la prise du réchauffeur est allumé j’active le routage solaire de ce dernier.
Quand je repasse en positif, je remet sur auto.

Ces changements de mode sont gérées par l’input select de pool pump.
Le tout géré par node red car c’est une vrai usine a gaz.

Et a l’inverse forcé l’arrêt pour maintenance par exemple.

Du coup si j’ai bien compris dans ton blue print on ne peut pas forcé à on/auto(courbe)/off c’est bien ça?

Bonjour, merci pour ce partage.
Des questions me chagrinent :

  • Faut-il garder les même noms des entités ? (il me semble que l’on peut mettre les entités avec son propre nommage dans le blueprint)
  • Les entités de fin de cycles sont-elles calculées par l’automatisme en fonction de la durée
    ou faut-il les indiquer dans le dashboard ? (température de l’eau + abacus + coef + heures de départ)
    D’avance merci pour vos réponses.

Bonjour,

Oui vous pouvez changer les noms des entités tant que tout est bien configuré dans le blueprint.

Les débuts et fin de cycle sont calculées par le blueprint. Il ne faut pas les modifier et donc ne les afficher (si besoin) que pour info

Bonjour, merci pour votre aide et votre travail.
Mais quand je clique sur le bouton Recalcul des temps de filtration, le champ durée de filtration change dans mon dashboard, mais pas les champs Départs et Fins de cycle 1 ou 2.
Est-ce normal que les horaires ne se mettent pas à jour dans le dashboard ?
D’avance merci.