Previsioni Meteo Intelligenti con Home Assistant

Sapere se pioverà oggi è fondamentale per organizzare la giornata. Questo articolo spiega come usare i dati meteo di Dark Sky in Home Assistant per prevedere la pioggia e automatizzare azioni in base alle previsioni.

L’API di Dark Sky permette di ottenere le condizioni meteo attuali e future. È possibile specificare il numero di giorni e ore da includere nelle previsioni, insieme ai parametri meteo specifici da monitorare, come la probabilità e l’intensità delle precipitazioni. Ciò consente un controllo granulare sui dati ricevuti.

sensor:
  - platform: darksky
    api_key: YOUR_API_KEY
    forecast:
      - 0
      - 1
    hourly_forecast:
      - 0 
      - 1
    monitored_conditions:
      - precip_intensity
      - precip_type
      - precip_probability

Poiché Dark Sky non fornisce dati storici, viene utilizzato un input booleano per tracciare se ha piovuto il giorno precedente. Questo booleano verrà impostato da un’automazione e resettato ogni mattina.

input_boolean:
  rained_yesterday:
    name: Pioggia ieri
    icon: mdi:weather-pouring

Un’automazione si attiva ogni ora e 15 minuti per controllare l’intensità attuale delle precipitazioni. Se l’intensità supera una soglia predefinita (ad esempio, 0,5 mm/h, che indica pioggia moderata), il booleano “rained_yesterday” viene impostato su true.

- alias: rain_meter
  trigger:

    # Esegui ogni 1h 15 minuti.
    platform: time_pattern
    hours: "/1"
    minutes: "15"
  conditions:

    # Nessuna azione necessaria se già attivo
    - condition: state
      entity_id: input_boolean.rain_meter
      state: 'off'

    # ... altre condizioni per validare la pioggia ...
  action:

    # Ha piovuto oggi. Attiva.
    service: input_boolean.turn_on
    entity_id: input_boolean.rain_meter

Un’altra automazione, programmata per le 5:30, controlla le previsioni per il giorno corrente. Se l’intensità delle precipitazioni prevista è superiore alla soglia, indicando probabilità di pioggia, non viene intrapresa alcuna azione. Si presume che se è prevista pioggia per oggi, il booleano “rained_yesterday” rimanga rilevante.

- alias: Irrigazione
  name: Attiva l'irrigazione se non piove.
  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.turn_on_sprinklers_if_no_rain
    data_template:
     rain_yesterday: "{{ is_state('input_boolean.rain_meter', 'on') }}"

Infine, uno script gestisce la logica dell’irrigazione. Innanzitutto, reimposta il booleano “rained_yesterday”. Se questo booleano era false (che indica che ieri non ha piovuto) e le previsioni di oggi non prevedono pioggia, lo script attiva l’irrigazione.

script:
  turn_on_sprinklers_if_no_rain:
    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 

Questo sistema fornisce una soluzione robusta per rispondere alla domanda “Pioverà oggi?” e automatizzare attività come il controllo dell’irrigazione in base alla risposta. L’utilizzo dell’intensità delle precipitazioni prevista aiuta ad anticipare la pioggia ed evitare annaffiature inutili.

Leave A Comment

Name*
Message*