Avec cette neige qui tombe sans discontinu, je dois activer ma pompe d’évacuation au sous-sol.
Afin d’eviter une inondation (sans trop de conséquences) j’aimerai activer ma pompe 1x /h pendant 5mins.
Donc là je bloque.
Merci d’avance
Voici ce que j’essaie:
alias: Nouvelle automatisation
description: ''
trigger:
- platform: time
at: '23:00:00'
- platform: time
at: '00:01:00'
- platform: time
at: '02:00:00'
- platform: time
at: '03:00:00'
- platform: time
at: '04:00:00'
- platform: time
at: '05:00:00'
- platform: time
at: '06:00:00'
- platform: time
at: '07:00:00'
condition: []
action:
- type: turn_on
device_id: 6e2e6a54d609f4002b458e10434b98dc
entity_id: switch.pompe_garage
domain: switch
- delay: '00:05:00'
mode: single
Déclenchement toutes les heures sur la 5ème minute (00:05,01:05,02:05,etc)
trigger:
platform: time_pattern
minutes: 5
Ou mieux,’ pour ton cas, toutes les heures :
trigger:
platform: time_pattern
hours: '*'
Bien sûr, ça va déclencher l’automatisation toutes les heures de la journée…
Donc tu crée 2x input_datetime pour définir l’heure de début et de fin du cycle de vidange :
input_datetime:
evacuation_debut:
name: Horaire de démarrage de l'évacuation
has_date: false
has_time: true
evacuation_fin:
name: Horaire de fin de l'évacuation
has_date: false
has_time: true
Tu les configure ensuite sur ton tableau de bord.
Puis tu ajoutes dans ton automatisation la condition horaire d’exécution des actions (ici l’allumage de la pompe)
condition:
condition: time
after: input_datetime.evacuation_debut
before: input_datetime.evacuation_fin
Si tu veux pour le délai tu peux créer un nombre input_number.pompe_temps_evacuation et l’utiliser pour pouvoir ajuster le temps de marche directement depuis ton tableau de bord. il te faut alors remplacer :
- delay:
minutes: 5
par
- delay: "{{ states('input_number.pompe_temps_evacuation') | multiply(60) | int }}"
Bonjour je rechercherai une config dans le même style si vous pouvez corriger ce que j’ai fait.
Le ventilateur doit fonctionner toute les 15 mm puis stop 15mm et reprends
Merci
Cordialement
Pour anticiper le cas les cas liés à l’arrêt/démarrage de HA, pour éviter que la pompe tourne pendant 65 minutes, il faudrait aussi traiter le cas du démarrage de HA et arrêter la pompe par exemple au moment du démarrage.
Dans ce cas là - au pire - un pompage en cours serait abbrégé à moins que la durée prévue mais comme c’est programmé toutes les heures ce n’est pas grave je suppose.
Bonjour le_top merci de ta réponse moi c’est toute les 15 mm et je suis null j’ai fait 1001 test et celui la fonctionne mais des fois il plante je voudrais bien récupéré le code de Clemalex mais je ne sais pas comment le faire fonctionner chez moi. D’ou ma demande si le miens fait directe dans automatisation de HA est bon ou pas.
Coedialement
Jamais dire qu’on est nul - on peut toujours s’améliorer et dire plutôt : je vais apprendre ça, je peux le faire - c’est de la PNL. De la programmation que tout le monde peut faire .
Avant de rentrer dans le détail d’un sujet qu’on maîtrise moins, identifier les étapes:
Triggers:
Un entity_id ou un device_id sufift, il ne faut pas plus je pense, mais les deux sont ajoutés par l’interface utilisateur tant que cela correspond, c’est ok.
‹ changed_states ›: Cela s’active aussi quand on éteint. comme c’est périodique pourquoi pas, mais l’implémentation change.
Donc peut-être plutôt « turned_on » que « changed ».
condition: []
On pourrait exiger que l’état soit actif après la détection d’un trigger et gérer ainsi le redémarrage de HA (car si l’automatisme évalue la condition après un démarrage, et la condition exige que le ventilateur soit actif, l’execution s’arrête si c’est éteint et sinon, les actions vont être exécutés).
Compte tenu du changement à opérer sur l’étape précédente, il faut maintenant allumer 15 minutes après.
Cet allumage devrait faire redémarrer l’automatisation car c’est un événement qui le fait démarrer.
mode: restart
Pas si anodin!
Un restart veut dire que si l’automatisation est déjà en cours alors qu’un événement arrive, on arrête et on recommence.
Maintenant comment on arrête cette automatisation en éteignant la commande du ventilateur? Dans l’état c’est pas possible car:
L’automatisation démarre seulement quand on allume ou quand HA démarre.
Si on fait démarrer l’automatisation aussi quand on éteint, on va l’allumer à nouveau tout de suite après l’avoir arrêté par l’automatisme, donc cela ne va pas.
Là, je réfléchis, je vérifie la documentation. Il y a « wait_for_trigger », ce qui permet d’attendre un événement ou un délai. On pourrait attendre que le ventilateur s’éteint ou que 15 minutes expirent, puis vérifier après cette étape s’il est éteint ou pas et s’il est éteint, ne plus rien faire, sinon éteindre - attendre 15 minutes - et rallumer.
Mais je préfère une autre piste - on peut attendre qu’un état soit présent pendant une durée et utiliser cela comme trigger initial pour l’automatisme.
trigger:
- platform: state
entity_id: light.LIGHT
to: "on"
for: 900
Cela déclenche quand light.LIGHT est « on » depuis 15 minutes.
Si on démarre l’automatisation avec cela, on doit:
Eteindre dès le démarrage (car c’est allumé depuis 15 min);
Attendre 15 minutes;
Allumer (ce qui est la fin de l’automatisme, mais qui le redémarre si le ventilateur reste à nouveau allumé pendant 15 minutes, ce qui entraine donc une répétition).
Avec cette nouvelle approche:
Quand on allume le ventilateur et c’est allumé depuis 15 min, l’automatisme entre en jeu et éteint le ventilateur pour le rallumer 15 minutes plus tard;
Quand on laisse le ventilateur allumé pendant moins de 15 min, l’automatisseme ne démarre pas → pas de répétition (donc la ventilation est arrêté);
Si l’automatisme est en cours et on rallume le ventilateur:
L’allumage ne fera rien dans l’immédiat;
Le délai va expirer avant la fin des 15 minutes, la commande de rallumage sera sans effet;
Au bout de 15 minutes d’allumage, le ventilateur sera éteint pour être rallumé 15 minutes après.
Le cas de redémarrage de HA doit être étudié - pas sûr que HA déclenche un événement si le ventilateur est allumé 15 minutes après le démarrage:
Si oui, tout va bien car l’automatisme va l’éteindre au bout de 15 minutes,
Si non, il faut ajuster.
Mettre une condition que HA doit être démarré depuis 15 min.
Au bout de 15 minutes, l’automatisme « démarre » et en mettant comme condition que le ventilateur doit être actif, la répétition ne commencera que si c’est le cas.
Il y a toutefois un cas particulier: si on allume le ventilateur dans les 15 min qui suivent un démarrage de HA, le ventilateur sera éteint après moins de 15 min d’allumage, mais la répétition sera enclenché de toute façon).
Je te laisses cela comme exercice pour commencer… Je préfères apprendre qqn à pêcher que pêcher à sa place.
Merci de ton poste je vais le lire re lire et apprendre sans problème j’apprends vite mais il faut m’expliqué
longtemps lol sérieux tu ma donner de belle explication je regarde ce soir et je te tiens au courant.
milles mercis
Cordialement
Ca ma l’air pas mal. Tu peux ajouter un petit trigger sur Home Assistant/start ce qui rendra la condition utile (dans l’état elle ne l’est pas car à l’issue du trigger indiqué, elle l’est).
Pour tester, il vaut mieux réduire les délais bien sûr.
@filtre Ce n’est pas une erreur, mais normal si la « lampe » n’était pas allumée au moment du démarrage.
Donc: le démarrage déclenche l’automatisme - c’est normal car c’est l’un des « triggers ».
Puis la condition exige que la lampe soit on pour continuer. Comme elle ne l’est probablement pas, l’automatisme s’arrête là.
Par contre, l’objectif est surtout d’agir quand « la lampe » est activée. Dans ce cas là, l’automatisme est à nouveau déclenché au reboot, mais comme la lampe est « on », la condition se valide et le délai démarre pour s’engager dans la répétition on/off.
Cela permet donc d’éviter que « la lampe » ne cycle pas quand elle était activée au reboot.
Bonjour Le_top
Merci pour ta réponse si j’ai bien compris je crée une automatisation pour allumé la lampe si je reboot HA
et de la sa déclenche l’automatisme?
Merci
Cordialement