Rendere domotica la profumazione degli ambienti tramite diffusore e Home Assistant

7 minuti di lettura
SCOPI DEL PROGETTO:
  • Rendere domotico un dispenser di deodorante per ambienti
  • Livello di difficoltà: basso
  • Costo: variabile
CONCETTI AFFRONTATI:
  • Configurazione software
COMPONENTI SOFTWARE UTILIZZATE:
DISPOSITIVI FISICI UTILIZZATI:
  • Il computer su cui è in esecuzione Home Assistant
  • Un diffusore di aromi o profumo azionabile via telecomando (nel progetto usiamo questo a mo’ d’esempio)
  • Un Broadlink RM4 Mini (o Broadlink equivalente con emettitore infrarosso)
  • Uno smart speaker Amazon Echo o analoghi (facoltativo)
PROGETTO MAGGIORMENTE INDICATO PER:

Tutti gli ambienti

Note e disclaimer
  • qualsiasi eventuale modifica agli impianti domestici dev'essere progettata ed realizzata SOLO da personale qualificato;
  • qualsiasi modifica attuata in proprio è a propria responsabilità personale nonché a proprio rischio e pericolo (i contenuti della presenta pagina hanno puro scopo didattico);
  • qualsiasi modifica attuata in proprio a un dispositivo ne fa decadere garanzia, omologazioni e certificazioni di qualità.
Revisione progetto: 1.1

Abstract

I più – noi di certo – amano rientrare in casa (o entrare in un ambiente) e percepire un buon profumo nell’aria. Allo scopo, spesso e volentieri si ricorre a deodoranti d’ambiente di diversa natura: solidi, liquidi a evaporazione naturale o elettrica, spray manuali o automatici. Quest’ultimi – quelli automatici – sono spesso al contempo tra i più efficaci, come rapidità di effetto, ma anche i più ingestibili.

Dispenser deodorante

Gli spray automatici, infatti, tendono a prevedere delle programmazioni molto elementari: spruzzano un certo quantitativo di deodorante ogni tot minuti (solitamente regolabili) e/o in base alla rilevazione della presenza (alcuni modelli sono infatti dotati di rilevatore di presenza che aziona il meccanismo di spruzzo). Solitamente ricaricabili tramite bombolette standard e alimentati a batteria, servono a deodorare ambienti come sale da pranzo, bagni, cantine ed altro.

Ma se volessimo superare la logica della auto-deodorazione e volessimo integrarla all’interno della nostra domotica personale?

Si può fare. Come sempre, quando si decide per la domotizzazione di qualcosa di non nativamente domotico, è necessario aguzzare l’ingegno e trovare una risposta.

In questo progetto l’abbiamo trovata in un semplice diffusore spray (compatibile con lo standard Glade Automatic Spray da 300ml) dotato di tutte le caratteristiche sopraelencate, ma con un’ulteriore particolarità: la possibilità di esser controllato tramite telecomando a infrarossi. Come sappiamo, quella infrarossa è una tecnologia elementare ma spesso molto utile agli amanti della domotica personale, e questo caso ne è ennesima riprova.

Quel che faremo in questo progetto è quindi utilizzare i codici infrarossi prodotti dal telecomando del dispenser per trasmetterli, tramite domotica, utilizzando un semplicissimo Broadlink RM4 Mini (o analoghi).

Questo permetterà di attivare la deodorazione solo quando meglio crediamo: nel progetto vedremo esempi di automazione Home Assistant per l’attivazione al rientro in casa, tramite rilevatore di presenza e tramite comando allo smart speaker Alexa.

Si parte

Procedimento

Il procedimento è semplice: catturare i codici infrarossi dal telecomando (per il modello usato per il progetto l’abbiamo già fatto noi per voi, ma per qualsiasi altro bisognerà provvedere in autonomia, vedremo come), cablarli in uno script che, quando eseguito, invii quelli necessari affinché il dispenser emetta il profumo, dopodiché sfruttare questo script per gli scopi descritti nell’abstract.

Ovviamente lo scopo è semplice: far sì che il dispenser produca uno o più spruzzi tramite domotica.

A tal scopo è necessario, prima, capire il funzionamento del dispenser. Quello che abbiamo utilizzato per questo progetto è abbastanza versatile. Permette di:

  • spruzzare automaticamente il profumo ogni tot minuti/ore;
  • spruzzare a comando;
  • definire quanti spruzzi effettuare quando viene azionato automaticamente e/o manualmente;
  • inibire lo spruzzo in determinate fasce della giornata (giorno/notte) grazie al sensore di luminosità.

Per entrare in piena operatività (ovvero auto-spruzzo) è sufficiente attivare l’unità premendo sul telecomando il tasto on/off: all’accensione, l’unità emetterà un singolo spruzzo, seguito da un nuovo spruzzo ogni tot minuti. Agendo sugli altri tasti del telecomando si provvederà, volendo, a cambiarne il comportamento, regolando l’auto-spruzzo su un lasso di tempo diverso, di giorno piuttosto che di notte e il numero di spruzzi (uno, due o tre) ad ogni innesco. Premendo nuovamente on/off, l’unità di spegnerà.

Quello che faremo è quindi simulare il comportamento “manuale” provvedendo sostanzialmente all’invio del codice di on/off due volte: il primo per attivare l’unità (cosa che causa uno spruzzo), il secondo per metterla a riposo ed evitare lo spruzzo automatico ogni tot minuti.

N.b. Il progetto realizza il comportamento spiegato, ma ovviamente nessuno vieta di definire in configurazione Home Assistant un comportamento diverso: una volta che si conoscono tutti i codici infrarossi accettati dall’unità, il limite è la fantasia.

Cattura dei codici

Catturare i codici infrarossi del telecomando, per questo progetto (se si dispone dell’unità proposta) non è necessario: li abbiamo catturati noi per voi e li abbiamo resi disponibili presso l’archivio collaborativo di inDomus (produttore “Hakeeta”, dispositivo “dispenser di profumo”) – al quale, come sempre, vi chiediamo di collaborare.

In caso si utilizzi un dispenser diverso, è sempre possibile provvedere alla cattura in piena autonomia, o utilizzando Home Assistant o il più pratico Broadlink Manager.

Componente Broadlink

Per far sì che la domotica Home Assistant possa inviare codici infrarossi (anche per esempio utilizzando componenti strutturati come “SmartIR“) è necessario che il componente “Broadlink” sia operativo.

Per farlo è necessario:

Una volta ottenuti questi due dati è sufficiente provvedere alla configurazione del componente “Broadlink” Home Assistant.

Definizione dello script

Arrivati a questo punto siamo pronti per definire uno script che, quando evocato, scateni la sequenza che ci interessa, ovvero “quell’accendi/spegni” via infrarosso che causa, al fine ultimo, l’emissione di profumo. Definire uno script, come vedremo, sarà particolarmente comodo perché ci consentirà di utilizzarne la sequenza automatica nelle nostre automazioni, rendendo “pienamente domotica” l’emissione di profumo.

Lo script da aggiungere in configurazione è il seguente:

script:
  deo_ir_sequence:
    alias: "Deodorazione ambiente"
    sequence:
      - service: remote.send_command    #codice per l'accensione
        data:
          entity_id: remote.NOME_DEL_BROADLINK
          command: "b64:JgByAAABKj0eHxweWSAcH1ggPD0AASk+Hh8cHlofHR9YIDs+AAEqPh0eHh9YIB0fWCA7PgABLDweHxwfWSAcH1kgPD0AASs9Hh4dH1ofHCBYIDs/AAEqPh4eHCBZIBwgWCA7PwABKj4eHhwhWCAcH1kgOwANBQAAAAAAAA=="
      - delay:
          seconds: 10
      - service: remote.send_command    #codice per lo spegnimento
        data:
          entity_id: remote.NOME_DEL_BROADLINK
          command: "b64:JgByAAABKj4dHhwgOx87H1ggOj8AASo9HR8cIDofPB9YIDo/AAEpPh4eHCE6HzweWSA8PQABLDwcIBwgOx88HlghOz4AASs9HR8cIDsfOx9ZIDs+AAErPh0fHB88HzsgWCA7PwABKj4dHh0hOh86IVggOwANBQAAAAAAAA=="

Note:

  • nel campo host va indicato l’IP del proprio Broadlink (quello usato, per capirci, nella configurazione del componente “Broadlink” spiegata sopra);
  • i codici della sequenza sono proprio relativi all’unità usata come esempio per questo progetto e sono testati e funzionanti; malgrado ci si aspetti debbano essere uguali (perché prodotti dal medesimo tasto on/off del telecomando), abbiamo appurato che in cattura il codice cambia e solo con questi due ha pieno funzionamento;
  • l’attesa di 10 secondi tra un comando e l’altra è motivata che se l’unità è precedentemente configurata via telecomando per spruzzare tre volte ad ogni attivazione, dieci secondi sono il tempo necessario tra l’accensione e conseguenti tre spruzzi e il momento il cui l’unità può esser messa a riposo.

Una vota riavviato Home Assistant apparirà una nuova entità di tipo script chiamata “script.deo_ir_sequence” dal friendly name “Deodorazione Ambiente” (nome che ricorrerà più avanti). Evocando il servizio script.turn_on associato a tale entità, il nostro dispenser dovrebbe finalmente essere stato domotizzato.

Automazione

La cosa più sfiziosa è, ovviamente, utilizzare la profumazione dell’ambiente pilotandola dalla domotica.
In questo progetto valuteremo tre possibilità:

  • quella di attivare la profumazione al rientro in casa;
  • quella di attivarla quando usciamo da o entriamo in un locale, grazie a un sensore di presenza;
  • quella di attivarla tramite un comando vocale ad Alexa.
AL RIENTRO IN CASA

Si tratta dell’automazione più semplice. Dando per assunto che esista un’entità gruppo chiamata “group.famiglia” data dall’insieme dei “Device Tracker” degli inquilini di casa, scateneremo l’automazione al rientro di almeno un componente della famiglia, in modo da rientrare in casa e sentire un buon profumo.

La configurazione potrebbe essere la seguente:

automation:
  alias: "Rientro a casa"
  initial_state: 'on'
  trigger:
    platform: state
    entity_id: group.famiglia
    to: 'home'
  condition: []
  action:
    - service: script.turn_on
      entity_id: script.deo_ir_sequence

Questa semplice automazione ottiene lo scopo.

N.b. Il tema dell’automazione al rientro/uscita di casa è trattato in dettaglio in questa guida a hoc.
QUANDO USCIAMO O ENTRIAMO IN UN LOCALE 

A volte l’uscita o l’ingresso in un locale potrebbe essere un trigger ideale per l’emissione di profumo. Pensiamo ai bagni: alla nostra uscita, emettere automaticamente del profumo potrebbe essere un vantaggio. Sopratutto per chi arriva dopo! 😅

Per farlo, assumiamo che in configurazione Home Assistant sia stato integrato un sensore di presenza di qualche tipo e che tale sensore abbia la sua proiezione logica in un’entità di tipo “Binary Sensor” chiamata binary_sensor.presenza.

Potremmo quindi realizzare automazioni di questo tipo:

automation:
  alias: "Profumazione in uscita"
  trigger:
    platform: state
    entity_id: binary_sensor.presenza
    to: 'off'
    for:
      minutes: 2
  condition: []
  action:
    - service: script.turn_on
      entity_id: script.deo_ir_sequence

In questa configurazione il trigger attende che il sensore binary_sensor.presenza torni a stato “off” e ci rimanga per un paio di minuti, quindi inneschi lo script che attiva la profumazione. Ovviamente impostando il campo “to:” a “on”, la profumazione verrebbe innescata all’avvenuta rilevazione di presenza, quindi all’ingresso di una persona.

TRAMITE ALEXA

Dato che abbiamo realizzato uno script, Alexa può facilmente gestirlo e quindi innescarlo a fronte di un nostro comando. Dando per assunta l’avvenuta integrazione del proprio Amazon Echo alla domotica Home Assistant (in modo gratuito o tramite cloud a pagamento) – la quale deve includere, nei domini integrati, anche gli script – andremo a vedere come gestire, tramite routine Alexa, l’innesco dello scenario (così si chiamano gli script Home Assistant per l’ecosistema Alexa) chiamato “Deodorazione ambiente” precedentemente definito.

In primis, apriamo l’applicazione Alexa su smartphone/tablet e selezioniamo “Routine” / “Nuova routine“. Come trigger, selezioniamo “Quando questo accade“:

Alexa - Routine - Deodorazione - 1

selezioniamo poi l’icona “Voce“:

Alexa - Routine - Deodorazione - 2

Selezioniamo poi la voce “Alexa dice“:

Alexa - Routine - Deodorazione - 3

Nella schermata successiva indichiamo il comando che ci aspettiamo venga interpretato come l’attivazione della profumazione. Noi abbiamo scelto “Alexa, profuma“:

Alexa - Routine - Deodorazione - 4

selezioniamo poi la voce “Aggiungi un’azione” e selezioniamo, nella schermata seguente, “Controlla scenario“:

Alexa - Routine - Deodorazione - 5

A questo punto nell’elenco degli scenari presenti, selezionare “Deodora ambiente” (in caso manchi, recarsi alla voce di menù principale “Aggiungi dispositivo” / “Altro” ed effettuare a mano l’autodiscovery, poi tornare alle Routine):

Alexa - Routine - Deodorazione - 6

Poi, nella schermata successiva selezionare “Avanti“:

Alexa - Routine - Deodorazione - 7

Infine, selezionare “Salva“:

Alexa - Routine - Deodorazione - 8

Così facendo, da qui in poi ogni volta che si pronuncerà “Alexa, profuma” l’ambiente verrà deodorato on-demand.
Ovviamente, nessuno ci impedirà di effettuare qualcosa di analogo tramite un Google Home integrato con Home Assistant e similari. Nel caso di Siri, la cosa potrà essere effettuata tramite l’adozione del componente “HomeKit” di Home Assistant.


Home Assistant Official Logo ATTENZIONE: ricorda che sul nostro community FORUM c'è una sezione ad hoc dedica a Home Assistant, per qualsiasi dubbio, domanda, informazione nel merito specifico di queste componenti.


Telegram News Channel