community italiana di domotica personale
 
Aggiungere un indicatore di qualità dell’aria AQICN a Home Assistant

Aggiungere un indicatore di qualità dell’aria AQICN a Home Assistant

Scopi della guida:
  • Aggiungere alla configurazione della propria domotica su Home Assistant uno o più sensori di grado di inquinamento atmosferico a partire dai dati rilevati dalle centraline presenti sul territorio
  • Livello di difficoltà: basso
  • Categoria d’integrazione: Cloud Polling
Concetti affrontati:
  • Configurazione software
Componenti software utilizzate:
Prerequisiti:
Dispositivi fisici utilizzati:
GUIDA INDICATA A UTENTI CON ISTALLAZIONE:
Ambienti Home Assistant HassOS-Supervised-Core
NOTE E DISCLAIMER
  • qualsiasi eventuale modifica agli impianti domestici dev'essere progettata e realizzata SOLO da personale qualificato;
  • qualsiasi modifica non prevista attuata in proprio è a propria responsabilità personale nonché a proprio rischio e pericolo (i contenuti della presenta pagina hanno infatti puro scopo didattico) e fa decadere garanzia, omologazioni e certificazioni di qualità; dei dispositivi interessati;
  • tutte le tecniche descritte si intendono applicate a software e firmware aggiornati alle ultime versioni disponibili;
  • gli articoli di inDomus sono totalmente indipendenti e non sponsorizzati. Se mai questo cambiasse, verrà segnalato chiaramente sulle pagine oggetto di sponsorizzazione;
  • questa pagina è materialmente scritta e manutenuta da più individui: non ci si aspetti né si pretenda un supporto personale. In caso di difficoltà, chiedere supporto alla community sul nostro forum o sulla nostra chat;
  • se hai bisogno di orientarti, c'è la mappa.
Revisione guida: 1.1

Abstract

Spesso – specialmente nella stagione invernale, ma non solo – si sente parlare di grado di inquinamento delle nostre città, esprimendo tale grado attraverso una serie di indicatori cruciali, quali la concentrazione di particelle PM 2.5-10, anidride carbonica e solforosa, e molti altri.

Questi indicatori, debitamente valutati, convergono verso un unico indicatore detto “Indice di qualità dell’aria” che esprime (tramite un valore da confrontare a degli intervalli prefissati) la qualità dell’aria.

Per misurare questi parametri esistono centraline apposite: ne vediamo, disseminate per il territorio, moltissime. Tali centraline – gestite da enti privati, pubblici, accademici – collezionano questi dati e, in alcuni casi, li pubblicano direttamente su Internet.

Centralina di rilevazione della qualità dell'aria
Una tipica centralina di rilevazione della qualità dell’aria

Home Assistant, tra i tanti suo componenti, ne mette a disposizione uno che permette di raccogliere questi dati presenti su internet (presso il sito http://aqicn.org) per esporli, come sensori numerici, all’interno della nostra domotica personale.

Gli scopi del collezionare queste informazioni possono essere molteplici: semplice curiosità, ma anche il dotarsi di automazioni volte, per esempio, ad attivare purificatori d’aria domotici all’interno di casa, chiudere le finestre automaticamente (se meccanizzae e inserite in domotica) al superamento di una certa soglia, inviare notifiche/allarmi ecc.

Informazioni iniziali

Prima di avventurarsi in questa integrazione, è bene verificare – innanzitutto – che sul sito AQICN siano presenti i dati della propria zona, il più possibile raccolti vicini alla posizione geografica del proprio ambiente domotico.

Recarsi quindi presso il sito http://aqicn.org e, tramite la ricerca interna, verificare che presso la propria zona siano presenti una o più centraline. Per questa guida prenderemo come riferimento la città di Roma; nel suo caso, la “scheda” presso AQICN sarà analoga a quella che segue:

AQICN Roma

La mappa riporta un gran numero di centraline (sei). Il dato di dettaglio visualizzato sulla colonna di destra è quello della centralina di Via Arenula, come si nota leggendo in alto a sinistra (“Arenula, Roma, Lazo AQI”).

I valori di riferimento dell’indice della qualità dell’aria sono i seguenti:

Indice AQI Stato DEscrizione
0 – 50 Buona La qualità dell’aria è considerata soddisfacente, l’inquinamento è limitato e senza particolari rischi.
51 – 100 Moderata La qualità dell’aria è accettabile; comunque per alcuni inquinanti potrebbero esserci problemi di salute per un limitato numero di persone particolarmente sensibili all’inquinamento.
101 – 150 Insalubre per alcuni Membri di ampi gruppi di soggetti sensibili agli inquinanti potrebbero soffrire problemi di salute. La massa non dovrebbe essere coinvolta.
151 – 200 Insalubre Chiunque comincia a percepire gli effetti sulla propria salute a causa della concentrazione degli inquinanti.Membri di ampi gruppi di soggetti sensibili subiscono danni ancora maggiori.
201 – 300 Molto insalubre Chiunque subisce, in misure variabili, danni alla propria salute.
301+ PERICOLOSA Allerta: chiunque subisce danni seri alla propria salute.

Token API

Per accedere alle informazioni di AQICN è necessario dotarsi di un proprio Token API, il quale può essere facilmente ottenuto accedendo a questa form e compilando i dati. Verrà inviata una mail di verifica nella quale si troverà il link (“Confirm you email address“) che fornirà diretto accesso al proprio Token, il quale apparirà come una stringa di caratteri come nell’esempio che segue:

You token is:

ff4496cd11a907cbd145e6cfc4f4d942e6a19b94

Configurazione di base

Per aggiungere alla configurazione di Home Assistant un nuovo sensore di tipo “waqi” (il nome della piattaforma che useremo), a configurazione è la seguente:

  - platform: waqi
    token: ff4496cd11a907cbd145e6cfc4f4d942e6a19b94
    locations:
      - Arenula, Roma, Lazio

Le variabili disponibili per la personalizzazione della configurazione sono le seguenti:

token (stringa|obbligatoria) La chiave Token ottenuta tramite AQICN
locations (lista|obbligatoria) La lista di centraline da monitorare. Ad ogni centralina/località corrisponderà un determinato sensore ad hoc. Il nome da specificare è quello identificato nella sezione “Informazioni iniziale” della presente guida.
Nell’esempio è stato utilizzata la centralina de “Arenula, Roma, Lazio”.
stations (lista|opzionale) La lista di sottostazioni eventualmente presenti presso le varie “locations“.

Una definizione siffatta origina un’entità (di tipo sensore) così modellata:

WAQI Home Assistant - esempio sensore

Come si nota facilmente, il sensore (chamato “sensor.waqi_arenula_roma_lazio_italy“) contiene nel proprio “stato” l’indice di qualità dell’aria (in questo caso “50”).
Parallelamente, il sensore contiene tutta una serie di attributi che potranno in seguito esser utilizzati come meglio si crede: quantità di PM 2,5-10, anidride carbonica e svariati altri (la lista può variare in base alla centralina in uso).

Personalizzazione dei sensori

Come spiegato, l’indice fornito da AQICN è numerico un numero che poco aiuta nel capire lo stato qualitativo dell’aria.

Per ovviare a questo problema creeremo un sensore sfruttando la piattaforma “Template Sensor” di Home Assistant il quale fornisca una descrizione verbale in luogo dell’indice, mappando di fatto i valori numerici come segue:

Intervallo valori Corrispondenza
0-50 Buona
51-100 Moderata
101-150 Insalubre per alcuni
151-200 Insalubre
201-300 Molto insalubre
>300 PERICOLOSA

La configurazione da aggiungere è la seguente:

sensor:
  - platform: template   
    sensors:
      aqicn:
        friendly_name: "Qualità dell'aria di Roma" #campo customizzabile
        value_template: >-
          {% if states('sensor.waqi_arenula_roma_lazio_italy') | int(default=0) <= 50 %}
          Buona
          {% elif states('sensor.waqi_arenula_roma_lazio_italy') | int(default=0) <= 100 %}
          Moderata
          {% elif states('sensor.waqi_arenula_roma_lazio_italy') | int(default=0) <= 150 %}
          Insalubre per alcuni
          {% elif states('sensor.waqi_arenula_roma_lazio_italy') | int(default=0) <= 200 %}
          Insalubre
          {% elif states('sensor.waqi_arenula_roma_lazio_italy') | int(default=0) <= 300 %} Molto insalubre {% elif states('sensor.waqi_arenula_roma_lazio_italy') | int(default=0) >= 300 %}
          PERICOLOSA
          {% endif %}%}

Tale configurazione genera un’entità di tipo sensore chiamata (in questo caso) “sensor.aqici“, la quale, presso il frontend, appare così (l’esempio è coerente col resto della guida):

WAQI Home Assistant - esempio sensore custom

⚠️ Se di Home Assistant ne sai poco ma sei interessato a capirne di più, ti suggeriamo di partire da qui.

Questa pagina è redatta, manutenuta e aggiornata dallo staff di inDomus, un gruppo di persone molto diverse tra loro che trovi, per domande e supporto, sul forum e sulla chat del sito. Alcuni link sono taggati in qualità di affiliati Amazon e riceviamo un compenso dagli acquisti idonei, utile al sostenimento del sito, ma le nostre recensioni sono tutte indipendenti e non sponsorizzate. Se ti sei perso, a tua disposizione c'è la mappa.