Connaître la météo et savoir s’il va pleuvoir aujourd’hui est crucial. Cet article explique comment utiliser les données de Dark Sky dans Home Assistant pour déterminer s’il pleuvra et automatiser des actions.
L’API de Dark Sky permet de récupérer les conditions météorologiques actuelles et futures. Vous pouvez spécifier le nombre de jours et d’heures à inclure dans les prévisions, ainsi que les paramètres météorologiques à suivre, comme la probabilité et l’intensité des précipitations.
sensor:
- platform: darksky
api_key: YOUR_API_KEY
forecast:
- 0
- 1
hourly_forecast:
- 0
- 1
monitored_conditions:
- precip_intensity
- precip_type
- precip_probability
Dark Sky ne fournissant pas de données historiques, une entrée booléenne suit s’il a plu la veille. Ce booléen sera défini par une automatisation et réinitialisé chaque matin.
input_boolean:
rained_yesterday:
name: Pluie hier
icon: mdi:weather-pouring
Une automatisation se déclenche toutes les heures et 15 minutes pour vérifier l’intensité actuelle des précipitations. Si l’intensité dépasse un seuil prédéfini (ex: 0,5 mm/h, pluie modérée), le booléen « rained_yesterday » est défini sur vrai.
- alias: mesure_pluie
trigger:
# Exécution toutes les 1h 15 minutes.
platform: time_pattern
hours: "/1"
minutes: "15"
conditions:
# Inutile d'agir si déjà activé
- condition: state
entity_id: input_boolean.rain_meter
state: 'off'
# ... autres conditions pour valider la pluie ...
action:
# Il a plu aujourd'hui. Activation.
service: input_boolean.turn_on
entity_id: input_boolean.rain_meter
Une autre automatisation, prévue à 5h30, vérifie les prévisions du jour. Si l’intensité des précipitations prévue est supérieure au seuil, aucune action n’est entreprise. On suppose que si la pluie est prévue, le booléen « rained_yesterday » reste pertinent.
- alias: Arrosage automatique
name: Activer l'arrosage s'il ne pleut pas.
trigger:
platform: time
at: "05:30:00"
condition:
platform: template
value_template: "{{ states('sensor.dark_sky_precip_intensity_1d') | float > 0.5 }}"
action:
service: script.activer_arrosage_si_pas_pluie
data_template:
rain_yesterday: "{{ is_state('input_boolean.rain_meter', 'on') }}"
Enfin, un script gère la logique d’arrosage. Il réinitialise d’abord le booléen « rained_yesterday ». S’il était faux (pas de pluie hier) et qu’aucune pluie n’est prévue aujourd’hui, le script active l’arrosage.
script:
activer_arrosage_si_pas_pluie:
sequence:
- service: input_boolean.turn_off
entity_id: input_boolean.rain_meter
- condition: template
value_template: "{{ not rain_yesterday}}"
- service: sprinkler.turn_on
entity_id: sprinklers.money_maker
Ce système répond à la question « Va-t-il pleuvoir aujourd’hui ? » et automatise des tâches comme l’arrosage en fonction de la réponse. L’intensité des précipitations prévue permet d’anticiper la pluie.