Sommario:

Smart Home fai da te con Google Assistant e Arduino: 6 passaggi
Smart Home fai da te con Google Assistant e Arduino: 6 passaggi

Video: Smart Home fai da te con Google Assistant e Arduino: 6 passaggi

Video: Smart Home fai da te con Google Assistant e Arduino: 6 passaggi
Video: [ITALIANO] ESP8266 + Ok Google! (Assistente Google/Google Home) con Adafruit IO e IFTTT 2024, Novembre
Anonim
Image
Image
Smart Home fai da te con Google Assistant e Arduino
Smart Home fai da te con Google Assistant e Arduino

Chi non desidera una casa intelligente? Una delle cose più belle che puoi fare è accendere le luci o altri elettrodomestici in casa tramite il controllo vocale. Con l'aiuto dell'app Google Home e dell'assistente Google questo è davvero un gioco da ragazzi……

Non hai bisogno di molte parti per farlo ed è un bel esperimento costruire questo controllo vocale da solo con un altoparlante intelligente, un mini computer Arduino e alcuni relè di commutazione. Puoi anche acquistare molte luci intelligenti e prese di connessione molto economiche, ma farlo da solo è molto più divertente. Descriverò passo dopo passo come puoi farlo. Avrai bisogno dei seguenti componenti:

Forniture

1 Un altoparlante intelligente, ad esempio un Google Nest Mini.

2 Un computer Arduino MKR1000 per convertire i comandi vocali in comandi di commutazione.

3 Uno o più relè di commutazione a 5 Volt, uno per ogni lampada che si desidera controllare.

4 Un alimentatore USB per Arduino MKR1000 con presa micro-USB.

5 Cablaggio principale (1,5 mq) e prese per un collegamento sicuro delle luci e degli altri apparecchi.

6 Uno smartphone Android per l'app Google Home.

Passaggio 1: il processo di comando tramite Internet

Il processo di comando via Internet
Il processo di comando via Internet

In questa immagine puoi vedere passo dopo passo come funziona l'intero processo.

L'accensione e lo spegnimento tramite i comandi vocali avviene completamente via internet. Per farlo sono necessari tre (!) servizi cloud… Devi creare un account per ogni servizio cloud… È un po' macchinoso ma funziona!

Per prima cosa avrai bisogno dell'app Google Home. Scaricalo dal Playstore sul tuo telefono Android e installa l'app. Comprendere i tuoi comandi vocali con Google Home funziona solo con la lingua inglese. Quindi imposta la lingua su inglese tramite impostazioni / altre impostazioni / assistente / lingue e quindi scegli inglese (Stati Uniti).

Google Nest Mini sente il comando vocale, ad esempio "Ehi Google, accendi la luce numero uno". Questo segnale audio analogico viene digitalizzato e inviato al cloud di Google Assistant. Viene quindi inoltrato al cloud IFTTT dove viene effettuata la risposta. IFTTT (If This Than That o “se fai una cosa succede l'altra”) è una sorta di stazione intermedia che analizza il comando, dà la risposta e inoltra le azioni al cloud successivo, l'Adafruit IO. Se il comando è completamente compreso, la risposta di IFTTT verrà restituita digitalmente a Google Nest Mini e lì verrà convertita in un segnale audio. Se il comando non viene compreso, l'Assistente Google restituirà un'altra risposta per chiarire che non seguirà alcuna azione di cambio. Un comando ben compreso verrà inoltrato da IFTTT al sito Web di Adafruit. Adafruit è un fornitore di elettronica che gestisce un sito Web per memorizzare i dati di commutazione intelligente. Lo chiamano un "Mangime". IFTTT invia a questo feed il codice associato al comando (nel nostro caso “one_on”). L'Arduino MKR1000 è programmato per controllare regolarmente questo sito, leggendo i dati nel feed e quindi accendendo o spegnendo il relativo relè di commutazione. Il feed Adafruit è protetto per motivi di sicurezza con un nome account e un IOKEY Adafruit univoco noto solo al proprietario dell'account.

Passaggio 2: Programmazione dell'Arduino MKR1000

Programmazione dell'Arduino MKR1000
Programmazione dell'Arduino MKR1000
Programmazione dell'Arduino MKR1000
Programmazione dell'Arduino MKR1000

Usa l'IDE standard dal sito web di Arduino. Inserisci le seguenti librerie nell'IDE (tramite: strumenti / gestisci librerie): ArduinoJson e WiFi101.

Se non hai precedentemente programmato la MKR1000, devi prima rendere questa scheda accessibile nell'IDE. Scarica il file della scheda “Schede Arduino SAMD” tramite il menu strumenti / scheda / gestore scheda, dopodiché puoi selezionare la scheda MKR1000.

Lo schizzo utilizza anche un file aggiuntivo, arduino_secrets.h.

Questo è un file di testo che puoi creare con il blocco note. Questo file contiene i codici di accesso utilizzati per la rete Wi-Fi (SSID di rete e password) e i codici di accesso alla pagina web Adafruit IO (nome account e codice IOKEY). Salva questo file nella directory della libreria arduino sul tuo PC con il nome arduino_secrets.h in una directory separata. Prima di salvare, sostituisci tutti "xxx" con i tuoi dati di rete e Adafruit. Questo dovrebbe essere nel file arduino_secrets.h:

#define SECRET_SSID “xxx”

#define SECRET_PASS “xxx”

#define IO_USERNAME “xxx”

#define IO_KEY “xxx”

Copia lo schizzo Arduino qui sotto e caricalo nel MKR1000 tramite il programma Arduino IDE.

Passaggio 3: il mangime Adafruit

Il mangime Adafruit
Il mangime Adafruit

Crea un account su www.io.adafruit.com. Adafruit è un fornitore di elettronica che gestisce un sito Web per memorizzare i dati di commutazione intelligente.

Crea un feed ON_OFF in cui i comandi verranno salvati in seguito. Adafruit ha un ampio tutorial che ti mostra come farlo:

learn.adafruit.com/adafruit-io-basics-feeds/creating-a-feed

È meglio impostare il "feed" nella cronologia dei feed su OFF, non è necessario ricordare i comandi di commutazione. (le impostazioni sono sul lato destro della pagina).

Passaggio 4: le impostazioni IFTTT

Le impostazioni IFTTT
Le impostazioni IFTTT
Le impostazioni IFTTT
Le impostazioni IFTTT
Le impostazioni IFTTT
Le impostazioni IFTTT
Le impostazioni IFTTT
Le impostazioni IFTTT

Crea un account su www. IFTTT.com. Vai su "esplora" (in alto a destra) e quindi scegli "crea le tue applet da zero". Fare clic su "QUESTO" e cercare google. Scegli assistente google. Quindi scegli la prima opzione "pronuncia una frase semplice". Quindi inserire la descrizione del comando desiderato e la risposta da dare.

(Nel nostro caso “accendi tutte le luci” e “OK. Accenderò tutte le luci. Attenzione!”). Quindi premere "crea trigger" e nella schermata successiva premere "THAT". Quindi scegli Adafruit e fai clic su "invia dati a adafruit IO". Nel primo campo compare il feed ON-OFF e poi nel secondo campo inserire il codice desiderato (qui a titolo di esempio “all-on”).

Infine, clicca su “crea azione” e poi su “finire”.

Puoi anche ricevere un messaggio sul tuo telefono per controllare ogni volta che un'applet è stata attiva, il che è utile per la risoluzione dei problemi ma quando tutto funziona puoi disattivarlo.

Se vuoi controllare più luci o altri elettrodomestici, devi creare un'applet IFTTT per ogni comando e i codici memorizzati nel feed di Adafruit devono corrispondere ai codici nello sketch di Arduino.

Passaggio 5: testare le connessioni e il software

Testare le connessioni e il software
Testare le connessioni e il software

Per testare il sistema, è possibile effettuare una configurazione di prova con LED anziché relè:

Passaggio 6: collegamento degli elettrodomestici

Collegamento di elettrodomestici
Collegamento di elettrodomestici
Collegamento di elettrodomestici
Collegamento di elettrodomestici

Per commutare gli elettrodomestici, è necessario collegare i relè di commutazione alle porte dell'Arduino MKR1000 invece dei LED di test. Utilizzare un cablaggio da 1,5 mm2 sul lato di alimentazione della tensione di rete per collegare in modo sicuro gli apparecchi ei contatti del relè.

Consigliato: