community italiana di domotica personale
 
Domotizzare la profumazione degli ambienti tramite diffusore e Home Assistant

Domotizzare la profumazione degli ambienti tramite diffusore e Home Assistant

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 attuatore equivalente con emettitore infrarosso)
  • Uno smart speaker Amazon Echo o analoghi (facoltativo)
PROGETTO INDICATO 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 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 del movimento (alcuni modelli sono infatti dotati di rilevatore di movimento 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 movimento 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 molto 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 effettuare la classica configurazione del componente “Broadlink” Home Assistant (voce “Integrazione”). A valle di tale configurazione si conoscerà il nome dell’entità che rappresenta l’attuatore, per esempio remote.NOME_DEL_BROADLINK.

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.

Vetrina Promo

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 movimento;
  • 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: true
  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 movimento di qualche tipo e che tale sensore abbia la sua proiezione logica in un’entità di tipo “Binary Sensor” chiamata binary_sensor.movimento.

Potremmo quindi realizzare automazioni di questo tipo:

automation:
  alias: "Profumazione in uscita"
  trigger:
    platform: state
    entity_id: binary_sensor.movimento
    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.movimento 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 movimento, quindi all’ingresso di una persona.

TRAMITE AMAZON ALEXA/Google ASSISTANT

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.

⚠️ 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.