Bonjour à tous,
Je souhaiterai vous solliciter pour avoir votre aide sur le fonctionnement d’une automatisation, et en plus me permettrait de comprendre la logique à avoir, l’arborescence…
J’ai vu sur le forum qu’il en existe déjà des « tout faits », des blueprints également…
Avant de m’attaquer à quelque chose d’aussi pousser, je souhaiterai déjà me faire quelque chose de simple en partant sur un principe de calcul de temps de fonctionnement simple, juste basé sur la température de l’eau.
J’ai une entité temp_pool_veille qui enregistre la valeur maximale de la température de la veille
A 8h30
Si température inférieur à 13°
Fonctionnement pompe sur 1h
A 8H30
si température compris entre 13 et 18°
Fonctionnement pompe sur température/2 -2h
A 8H30
si température compris entre 18 et 28°
Fonctionnement pompe sur température/2
A 8h30
si température supérieur à 28°
Fonctionnement pompe sur température/2 + 2h
A 8h30
si température supérieur à 32°
Fonctionnement pompe température/2 + 4h
Pour le moment je n’en pas rendu à ce niveau de fonctionnement mais c’est là où je souhaiterai arriver. A comprend pour moi avec les if elsif then endif… Merci pour votre aide.
alias: piscine-TEMP-dev
description: ""
trigger:
- platform: time
at: "08:30:00"
condition: []
action:
- if:
- condition: numeric_state
entity_id: input_number.temp_pool_veille
below: 13
then:
- action: telegram_bot.send_message
data:
message: >
Temperature actuelle : {{states('sensor.temperature_piscine')}}°C
Temperature max piscine :
{{states('input_number.temp_pool_veille')}}
Durée filtration : Durée minimum de 60 minutes
- type: turn_on
device_id: da2f811fc0a6935fb815c299030b1f5a
entity_id: 31c1d2b69050010120a365385c15eff3
domain: switch
enabled: true
- delay:
hours: 1
minutes: 0
seconds: 0
milliseconds: 0
- type: turn_off
device_id: da2f811fc0a6935fb815c299030b1f5a
entity_id: 31c1d2b69050010120a365385c15eff3
domain: switch
else:
- if:
- condition: numeric_state
entity_id: input_number.temp_pool_veille
below: 20
then:
- action: telegram_bot.send_message
data:
message: >
Temperature actuelle :
{{states('sensor.temperature_piscine')}}°C
Temperature max piscine :
{{states('input_number.temp_pool_veille')}}
Durée filtration : {{states('input_number.temp_pool_veille') |
int /2 }}
Durée filtration (min) :
{{states('input_number.temp_pool_veille') |int*60/2 - 60}}
Durée filtration en minutes :
{{states('input_number.duree_pompe') | int- 60}}
- type: turn_on
device_id: da2f811fc0a6935fb815c299030b1f5a
entity_id: 31c1d2b69050010120a365385c15eff3
domain: switch
enabled: true
- delay:
minutes: "{{ states('input_number.duree_pompe') | int }}"
- type: turn_off
device_id: da2f811fc0a6935fb815c299030b1f5a
entity_id: 31c1d2b69050010120a365385c15eff3
domain: switch
- if:
- condition: numeric_state
entity_id: input_number.temp_pool_veille
above: 20.5
then:
- action: telegram_bot.send_message
data:
message: >
Temperature actuelle : {{states('sensor.temperature_piscine')}}°C
Temperature max piscine :
{{states('input_number.temp_pool_veille')}}
Durée filtration : {{states('input_number.temp_pool_veille') | int
/2 }}
Durée filtration (min) : {{states('input_number.temp_pool_veille')
|int*60/2 - 60}}
Durée filtration en minutes : {{states('input_number.duree_pompe') |
int- 60}}
- type: turn_on
device_id: da2f811fc0a6935fb815c299030b1f5a
entity_id: 31c1d2b69050010120a365385c15eff3
domain: switch
enabled: true
- delay:
minutes: "{{ states('input_number.duree_pompe') | int }}"
- type: turn_off
device_id: da2f811fc0a6935fb815c299030b1f5a
entity_id: 31c1d2b69050010120a365385c15eff3
domain: switch
mode: single