- Un nuovo approccio per i dispositivi di automazione domestica che utilizzano Chirp
- Riproduzione di audio Chirp con l'Assistente Google
- Preparare il tuo Arduino Nano 33
Recentemente mi sono incuriosito con tutti i nuovi prodotti di automazione domestica sul mercato e quindi ho acquistato un Google Home Mini e pochi altri dispositivi intelligenti per controllare luci, ventilatori, aria condizionata e cosa no. Mentre funzionava e tutto era divertente da usare, ho avuto un po 'di problemi con tutte queste connettività wireless intorno a me. Solo la mia camera da letto aveva 5 dispositivi intelligenti e, inclusi il mio laptop e telefono, ci saranno un totale di 7 dispositivi wireless intorno a me che rimarranno sempre connessi al mio router. Ero preoccupato che tutti questi segnali Wi-Fi potessero essere dannosi per la nostra salute e questo documento di ricerca su Sciencedirect ha aggiunto prove ai miei pensieri. Questo è quando ho iniziato a pensare a una soluzione di automazione domestica wireless alternativa che non necessita di Wi-Fi / Bluetooth per funzionare.
Un nuovo approccio per i dispositivi di automazione domestica che utilizzano Chirp
Abbiamo già realizzato un progetto di automazione domestica telecomandata IR che può funzionare senza Wi-Fi o Bluetooth, ma non è più bello e volevo controllare i dispositivi con la voce. Stavo cercando una tecnica per Google home mini per comunicare direttamente con i dispositivi intelligenti, quindi fondamentalmente ho bisogno di un metodo di comunicazione wireless Machine to Machine senza utilizzare Wi-Fi o BLE.
Questo è quando ho ricordato l'intervista con Dan Jones, CTO di Chirp in cui ha introdotto Chirp come "Chirp è un modo per trasmettere informazioni utilizzando le onde sonore. A differenza del Wi-Fi o del Bluetooth che utilizza le frequenze radio, Chirp codifica i dati in toni che possono essere riprodotti (trasmessi) utilizzando qualsiasi altoparlante del computer e ricevuti tramite qualsiasi microfono del computer senza la necessità di avere alcun hardware aggiuntivo come i chip RF. Ciò consente a Chirp di essere utilizzato su qualsiasi dispositivo consumer dotato di altoparlante e microfono, come telefoni cellulari, laptop, sistemi PA e così via, e può trasmettere informazioni anche tramite streaming YouTube o trasmissione TV ". Ciò significa che possiamo utilizzare il nostro Google home mini per parlare direttamente (utilizzando il chirp) al nostro dispositivo smart.Tutto ciò di cui abbiamo bisogno è un microfono e un processore all'interno di questi dispositivi intelligenti per decodificare i dati audio del chirp per eseguire le azioni richieste. Chirp ha anche recentemente annunciato l'integrazione di data-over-sound per Arduino, questo significa che dovremmo essere in grado di utilizzare la nuova scheda Sense Arduino nano 33 BLE per eseguire Chirp SDK per il nostro progetto.
Quindi, in questo progetto, costruiremo un dispositivo di automazione domestica acustica in cui saremo in grado di controllare questo dispositivo intelligente senza utilizzare connessioni wireless come Wi-Fi o Bluetooth. Utilizzeremo Actions for Google e Dialogflow per creare un'applicazione di test per il nostro Assistente Google per riprodurre audio codificato (Chirp). Questo audio verrà quindi catturato dalla scheda di rilevamento BLE Arduino nano che esegue il programma Chirp Arduino, in base al messaggio codificato nei dati la scheda Arduino potrebbe eseguire qualsiasi azione come l'attivazione di un carico CA controllando il LED RGB, ecc. molto, ma è relativamente semplice e le istruzioni complete sono fornite di seguito. Quindi iniziamo.
Riproduzione di audio Chirp con l'Assistente Google
Il modo più semplice per creare l' automazione domestica a comando vocale è utilizzare IFTTT con Google Assistant for Home Automation. Ma, al momento della stesura di questo articolo, Chrip non ha un'applet su IFTTT, quindi utilizzeremo la piattaforma Actions for Google nativa. Ci sono buone probabilità che Chirp abbia fornito la propria applet in IFTTT nel momento in cui stai leggendo questo articolo, quindi dai un'occhiata. In caso contrario, procediamo con Azioni per Google per creare un'applicazione dell'Assistente Google.
Passaggio 1: aprire la console di Dialogflow. Potrebbe essere necessario registrarsi se non l'hai ancora fatto. Quindi fare clic su "Crea nuovo agente" come mostrato di seguito
Passaggio 2: assegnare un nome al nuovo agente e quindi fare clic su Crea. Ho chiamato il mio agente "Circuitdgest_Automation"
Passaggio 3: ora verrai portato alla sezione degli intenti. Qui è dove formi il tuo nuovo agente per vari intenti. Nel nostro caso scriveremo due intenti, uno è accendere la luce e l'altro è spegnere la luce. È possibile scrivere un numero qualsiasi di intenti in base alle applicazioni e ai comandi che devono essere compresi dal proprio agente. Per impostazione predefinita, avrai l'intento di benvenuto, ma creiamone uno nuovo per accendere la luce facendo clic su "Crea intento" e chiamerò questo intento Luci accese
Nella nuova pagina clicca su "Aggiungi frasi di formazione" e inserisci il comando che deve essere compreso dal tuo assistente in questo caso "Accendi la luce". Puoi scrivere un numero qualsiasi di frasi di formazione che trasmettono il significato dello stesso intento.
Passaggio 4: ora scorri verso il basso e fai clic su "Aggiungi risposta". È qui che diciamo all'assistente come rispondere se questo particolare intento viene attivato. Per impostazione predefinita, puoi inserire la risposta di testo qui, ma abbiamo bisogno che l'audio venga riprodotto dal nostro assistente, quindi fai clic sul simbolo "+" vicino alla scheda "Predefinito" e seleziona Assistente Google, quindi fai clic su "Aggiungi risposte" e seleziona "Risposte semplici ". All'interno della casella di testo della risposta semplice digitare questo codice
È un semplice codice SSML per riprodurre l'audio da un URL e quindi dire "Luci accese". Questo audio dovrebbe essere l'audio codificato da Chirp e dovrebbe essere caricato su jovo.tech.
Ottenere audio codificato da chirp:
Questo audio codificato può essere ottenuto dall'applicazione Android Chrip. Installa l'app e digita il messaggio da codificare e clicca sul pulsante Invia per ascoltare l'audio codificato
Qui ho digitato "Luci accese". Allo stesso modo, puoi digitare qualsiasi messaggio e fare clic sul pulsante Invia per controllare l'audio codificato. Possiamo quindi salvare questo file audio (formato mp3) utilizzando qualsiasi registratore di suoni. Ho registrato due di questi file audio con il messaggio codificato "Luci accese" e "Luci spente". Puoi scaricarli da qui se vuoi risparmiare tempo. Una volta che sei pronto con i file audio, vai su jovo tech audio converter per caricare i tuoi file mp3 e ottenere un collegamento per esso.
Tieni presente che questo è uno strumento di test e i tuoi file saranno attivi solo per 24 ore. Se hai bisogno che funzioni per molto tempo, devi utilizzare il tuo server web come Google Fire Base come questo esempio di interfaccia Firebase dell'assistente Google. Ora che hai il collegamento, la tua risposta sul flusso di dialogo dovrebbe essere simile a questa
Assicurati di fare clic su Salva per salvare questo intento.
Passaggio 5: allo stesso modo, crea un altro nuovo intento per spegnere le luci. Inserisci di nuovo la frase di allenamento e anche la risposta. Questa volta inserisci il link dell'altro file audio e chiedigli di dire Luci spente come mostrato di seguito.
Assicurati di salvare anche questo.
Passaggio 6: ora, sul lato sinistro, fai clic sulla scheda integrazioni e seleziona Assistente Google. Questo ci aiuterà a testare l'applicazione utilizzando l'Assistente Google. Seleziona l'applicazione dell'Assistente Google e fai clic su "TEST"
Passaggio 7: questo richiederà del tempo dopo il quale verrà visualizzata la schermata di prova come mostrato di seguito. Nell'angolo sinistro, puoi vedere una casella di testo in cui puoi digitare i comandi di prova e vedere come risponde l'applicazione. Puoi anche trovare alcune applicazioni di debug sul lato sinistro dello schermo.
Quando digiti "accendi le luci di lettura", dovrebbe riprodurre il tono del cinguettio e dire che le luci si accendono, simile dovrebbe anche per "Spegni le luci di lettura". Una volta che funziona qui, puoi provarlo su qualsiasi dispositivo dell'assistente Google come il tuo telefono o Google Home Mini collegato al tuo ID Gmail. Dì solo parla con la mia app di prova e inizia a controllare il dispositivo.
Preparare il tuo Arduino Nano 33
Ora dal punto di vista hardware, le cose sono diventate piuttosto facili grazie alla scheda Arduino Nano 33 BLE Sense. Perché la scheda ha un microfono integrato e librerie chirp pronte per essere distribuite direttamente dal tuo IDE Arduino. Se sei completamente nuovo in questa scheda, ti consigliamo di leggere questo articolo "Introduzione ad Arduino Nano 33 BLE" per capire