SCOPI DEL PROGETTO:
CONCETTI AFFRONTATI:
|
COMPONENTI SOFTWARE UTILIZZATE:
DISPOSITIVI FISICI UTILIZZATI:
|
PROGETTO INDICATO a UTENTI CON ISTALLAZIONE: |
|
NOTE E DISCLAIMER
|
|
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.
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
- Cattura dei codici
- Componente Broadlink
- Definizione dello script
- Automazione
- al rientro in casa
- tramite rilevazione movimento
- tramite Amazon Alexa / Google Assistant
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.
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“:
selezioniamo poi l’icona “Voce“:
Selezioniamo poi la voce “Alexa dice“:
Nella schermata successiva indichiamo il comando che ci aspettiamo venga interpretato come l’attivazione della profumazione. Noi abbiamo scelto “Alexa, profuma“:
selezioniamo poi la voce “Aggiungi un’azione” e selezioniamo, nella schermata seguente, “Controlla scenario“:
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):
Poi, nella schermata successiva selezionare “Avanti“:
Infine, selezionare “Salva“:
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. |