Home Automation System - Comandiamo OpenHAB con la voce

in #ita5 years ago



Fonte PIXABAY - CC0 Creative Commons

Come promesso, torno a raccontare dei miei esperimenti "vocali"...in particolare integrazione e configurazione di Google Home Mini con OpenHAB

Nel post precedente (vedi https://steemit.com/ita/@marcolino76/home-automation-system-diamo-il-benvenuto-al-nostro-assistente-vocale) avevo introdotto i miei nuovi acquisti: un Google Home Mini ed un Google Chromecast. Ho fatto alcune prove con diverse configurazioni e setup e adesso sono pronto per integrare l'assistente in OpenHAB per poter inviare comandi e richieste vocali al mio Home Automation System.

In OpenHAB esiste un ottimo plugin nativo per l'integrazione di Google Assistant. Niente di più facile...come sempre basta seguire le indicazioni della guida ufficiale - https://www.openhab.org/docs/ecosystem/google-assistant/

In particolare il plugin si appoggia al connettore Cloud di OpenHAB ed al servizio myOpenHAB, che permettono l'utilizzo di OpenHAB al di fuori della rete locale in maniera del tutto sicura; in questo modo è possibile interfacciarsi con servizi esterni, come appunto il nostro Google Assistant.



Fonte PIXABAY - CC0 Creative Commons

Dopo la configurazione iniziale è necessario marchiare gli item che vogliamo esporre e quindi comandare con Google Assistant...Questa operazione viene effettuata con l'ausilio dei tag di OpenHAB, che non sono altro che degli attributi da assegnare ai diversi items del nostro sistema, normalmente utilizzati da addons (per approfondimenti vedere https://www.openhab.org/docs/configuration/items.html#tags)

In base al tag assegnato al singolo item possiamo attribuire la funzione che l'item stesso avrà all'interno del sistema Google Home; questo perchè un item di OpenHAB per essere utilizzabile da Google Assistant dev'essere visto come un "device" compatibile con Google Home; in questo modo può essere aggiunto come dispositivo all'interno dell'app di Google e quindi controllabile nativamente con la voce (oltre che direttamente dall'app, cosa che però a me non interessa perchè continuerò ad utilizzare OpenHAB).

Al momento non tutte le tipologie di dispositivi sono compatibili. In particolare ad oggi possiamo gestire interruttori, luci, termostati e prese. Ecco i relativi tag:

  • "Lighting"
  • "Switchable"
  • "Scene"
  • "Outlet"
  • "CurrentTemperature"
  • "Thermostat"

L'elenco è in evoluzione...per avere l'elenco aggiornato seguire questo link

https://github.com/openhab/openhab-google-assistant/blob/master/README.md

Per attribuire un tag ad un item abbiamo due strade:

  • se l'item è definito in un file di configurazione allora possiamo semplicemente aggiungere i tag all'interno di [...] nella riga di definizione dell'item;
  • se l'item è definito tramite interfaccia web PAPERUI, si devono utilizzare le API REST (vedere https://www.openhab.org/docs/configuration/restdocs.html), in particolare il servizio /items/{itemname}/tags/{tag}

Ad esempio, ecco l'aggiunta del tag "lighting" allo switch della luce in soggiorno:




Terminato l'assegnazione dei diversi tag a tutti gli items interessati, proseguiamo con la configurazione dell'applicazione Google Home su smartphone e/o tablet (la stessa utilizzata per il setup iniziale di Google Home Mini e Chromecast). Quello che bisogna fare è andare ad aggiungere un nuovo dispositivo e ricercare OpenHAB dalla lista dei dispositivi compatibli. Verrà richiesto l'aggancio al servizio myOpenHAB utilizzando le credenziali di accesso e la magia è fatta...Vengono riconosciuti tutti gli items precedentemente configurati che ritroveremo nell'app Google Home. Non ci rimane che assegnare ad ognuno di essi un nome che utilizzeremo nel comando vocale...ad esempio, nel mio caso ho chiamato la lampada in soggiorno "Lampada Peppina".



Basterà dire: Hey Google, accendi la lampada Peppina e il gioco è fatto!

Ogni dispositivo può essere inserito in una stanza della nostra casa virtuale; in questo modo possiamo accendere più luci in contemporanea semplicemente chiedendo a Google, ad esempio, di accendere le luci in soggiorno.




Oltre ad inviare dei comandi di accensione / spegnimento delle luci è possibile anche interrogare lo stato di un sensore...ad esempio chiedere la temperatura in una stanza.

Nel mio caso, ho aggiunto il tag "CurrentTemperature" all'item relativo al sensore di temperatura in cucina




Google Home me lo vede come un termostato ed in questo modo posso farmi dire la temperature corrente.



Dulcis in fundo, quando si taggano altri item su OpenHAB, sarà sufficiente dire a Google *Hey Google, sincronizza i miei dispositivi per far apparire i nuovi device in Google Home.

Una cosa molto interessante è che il sistema è utilizzabile anche da Google Assistant presente sugli smartphone Android, anche in remoto, cioè non connessi alla nostra rete locale; l'importante è che si utilizzi lo stesso account google utilizzato per il Google Home.

Quindi possiamo accendere le luci con un semplice comando vocale dato allo smartphone mentre stiamo rientrando a casa.

Tutte le foto, se non diversamente indicato, sono di proprietà dell'autore

Sort:  

Sensazionale! Questo genere di cose mi interessa davvero molto, anche se non ho la pazienza e l'attitudine giuste per mettere le mani in pasta in prima persona. Sono curiosa di capire i limiti del sistema, di base acquistando gli strumenti giusti si può controllare proprio tutto, dalle luci agli elettrodomestici. Tempp fa stavo studiando un sistema per l'irrigazione automatica delle mie piante, quando erano ancora vive (Lol) e cercavo un modo per poterlo controllare a distanza (non semplicemente temporizzato, ma qualcosa che potessi monitorare ed eventualmente attivare anche in vacanza). Intravedo potenziale nel tuo sistema, se dovessi ritentarci so cosa utilizzare :)
Bravo! Sono argomenti interessanti ma complessi e generare interesse è difficile a volte, perché la complessità può creare prconcetti, e invece leggere questo post mi ha fatto sognare ad occhi aperti!

Io ho fatto un impianto di irrigazione automatico temporizzato, pilotabile da dovunque, su due aree non contigue e che tiene conto delle previsioni del tempo, il tutto spendendo circa 30 euro.
Prossimamente spiegherò in un post cosa ho fatto.

Fai concorrenza al nostro domotico @marcolino76! Scherzi a parte, sarebbe interessante capire che procedimento e logica hai seguito per mettere insieme il tutto. Io non ho alte ambizioni e purtroppo neanche troppa pazienza ma sono stregata da questo fantastico universo! Aspetto il post con curiosità :) Al momento devo ammettere che vince marcolino con le piante finte xD

Grazie mille per le tue belle parole...molto apprezzate.

Sì, diciamo che al giorno d'oggi con gli strumenti che ci sono a disposizione sembrerebbe tutto possibile...con un pò di buona volontà, tanta pazienza e soprattutto passione.

L'IoT in generale è un mondo per me molto affascinante...pensare che tanti piccoli pezzettini indipendenti e semplici possano essere uniti per creare un qualcosa di importante e soprattutto utile mi genera curiosità ed interesse.

Oggi ci sono gli strumenti e le possibilità per poter raggiungere obiettivi che anni fa sarebbero stati proibitivi per costi e conoscenza...

Per le piante...io personalmente ho risolto senza "intelligenza"...le ho messe finte 😁😁😁

Complimenti per tutte le tue domotizzazioni.
Io sono solo all'inizio, farò poi dei post descrivendo cosa e come l'ho fatto.
Provo a farti una domanda, sperando che tu mi possa dare qualche "dritta".
In una stanza ho due porte, accanto ad una c’è un interruttore per il lampadario.
Questo è l’unico punto che comanda il lampadario.
Io avrei la necessità di comandarlo anche vicino all’altra porta ma non posso nè tirare cavi nè incassare una scatola nella quale arrivi corrente.
Ho visto cose tipo questa: https://www.amazon.it/More-Yan-interruttore-intelligente-ricevitore-autoalimentato/dp/B07H2DK5LX/ref=sr_1_2?ie=UTF8&qid=1546874444&sr=8-2&keywords=More-Yan
Il problema è che con questa potrei accendere e spegnere mettendo il comando nella scatola dove c'è l'interruttore vicino alla seconda porta o direttamente nel lampadario, ma come fare per accendere/spegnere dai due punti come se fossero due deviatori?
Usando anche altri componenti, ovviamente…

Ciao, non conosco bene il prodotto che hai indicato ma se non ho capito male è un pulsante wireless che comanda un relè a distanza. A prima vista non credo che si possa pilotare anche da un pulsante fisico...forse per avere due punti di azione devi avere un altro pulsante wireless sulla stessa frequenza.

Altrimenti potresti provare con il SONOFF RF, che è un relè wifi comandabile anche in radio frequenza

https://sonoff.itead.cc/en/products/sonoff/sonoff-rf

Praticamente è simile al prodotto che hai indicato tu ma al posto di avere un pulsante wireless a muro ha un telecomando...però in più ha un pulsante fisico che può essere comandato anche da un pulsante a muro; quindi potresti avere due punti di accensione: il pulsante a muro connesso direttamente al pulsante fisico del sonoff e il telecomando.

Congratulations @marcolino76! You have completed the following achievement on the Steem blockchain and have been rewarded with new badge(s) :

You made more than 16000 upvotes. Your next target is to reach 17000 upvotes.

Click here to view your Board
If you no longer want to receive notifications, reply to this comment with the word STOP

Do not miss the last post from @steemitboard:

Valentine challenge - Love is in the air!

Support SteemitBoard's project! Vote for its witness and get one more award!

Per quanto riguarda la domotica, mi sembra che sia molto comoda e molto moderna, quindi ho deciso anche di iniziare ad automatizzare la mia casa installando soluzioni di casa intelligente fai da te. Inoltre, ora sto cercando un buon sistema di sicurezza, ma ad essere sincero, non so cosa scegliere, non so a chi rivolgermi ora in modo che possano aiutarmi. La pubblicità scrive che Ajax https://ajax.systems/it/ è una buona soluzione, ma questa è solo una pubblicità, voglio conoscere l'opinione delle persone reali.

Coin Marketplace

STEEM 0.31
TRX 0.11
JST 0.034
BTC 64549.55
ETH 3170.62
USDT 1.00
SBD 4.13