Prévoir la pluie avec Home Assistant et Dark Sky

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.

Leave A Comment

Name*
Message*