Sommario:
- Passaggio 1: cose di cui hai bisogno
- Passaggio 2: configurazione del microfono USB
- Passaggio 3: configurazione dell'uscita dell'altoparlante
- Passaggio 4: testare il microfono e gli altoparlanti
- Passaggio 5: scarica i pacchetti richiesti e configura l'ambiente Python:
- Passaggio 6: abilitazione del progetto cloud dell'Assistente Google
- Passaggio 7: autenticazione del Raspberry Pi
- Passaggio 8: impostazione dell'indicatore LED
- Passaggio 9: inizializzazione al completamento dell'avvio:
- Passaggio 10: avvio dell'Assistente Google durante l'avvio
- Passaggio 11: conclusione
Video: Pi Home, un assistente virtuale basato su Raspberry: 11 passaggi (con immagini)
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:02
Google Home è utile da avere in casa. È un bellissimo dispositivo con Google Assistant integrato: un assistente personale digitale all'avanguardia di Google. Può riprodurre contenuti multimediali, salvare promemoria e note, dirti la durata del tuo tragitto giornaliero, eseguire l'automazione domestica. Può essere posizionato ovunque a casa tua e farà cose incredibili per te, ma è una proposta costosa se tu' non sono sicuro che lo userai. Buone notizie, tuttavia, puoi crearne uno completamente funzionale usando un Raspberry Pi.
Alla fine di questa guida, avrai un Google Home perfettamente funzionante che risponde ai tuoi comandi vocali. Altrimenti, è un assistente con tutte le funzionalità di Google Home. Ciò significa che può eseguire conversioni di unità, riprodurre contenuti multimediali, controllare i punteggi, leggere audiolibri, controllare il tempo e molto altro. Funzionerà anche con una varietà di dispositivi di automazione domestica come le lampadine intelligenti, quindi puoi controllarli con la tua voce. Come il vero Assistente Google, il tuo Google Home fai da te può essere collegato per aggiungere più funzionalità, come aggiungere cose da fare a Evernote o per ricevere una notifica sul telefono quando il timer si spegne.
Passaggio 1: cose di cui hai bisogno
Avresti bisogno di:
- Raspberry Pi 3 o 2 con Raspbian installato e configurazione Wi-Fi.
- Alimentatore e cavo di alimentazione MicroUSB. (Minimo 5V, 2A)
- Scheda MicroSD. (minimo 8 GB)
- Un microfono USB. (Otterrai un sacco di come configurare su Internet, anche qui …)
- Altoparlanti
- Una tastiera e un mouse per l'installazione
- Un LED e un paio di fili da collegare
Tutte le cose raccolte, collegate e collegate, iniziamo.
Passaggio 2: configurazione del microfono USB
- Il Pi non ha microfoni integrati. È necessario collegare un microfono USB se si desidera registrare l'audio.
- Collega il tuo microfono USB a uno qualsiasi degli slot USB del tuo Pi.
- Digita il seguente comando nel terminale.
arecord -l
Questo comando elencherà tutti i dispositivi di registrazione audio disponibili. Sarà vuoto se il tuo microfono USB è collegato. Dovresti ottenere il seguente output
pi@raspberrypi:~ $ arecord -l
**** Elenco dei dispositivi hardware CAPTURE **** scheda 1: Dispositivo [Dispositivo audio PnP USB], dispositivo 0: Audio USB [Audio USB] Sottodispositivi: Sottodispositivo #0: Sottodispositivo #0
Puoi vedere che il tuo dispositivo USB è collegato alla scheda 1 e l'ID del dispositivo è 0. Raspberry Pi riconosce la scheda 0 come scheda audio interna, ovvero bcm2835 e altre schede audio esterne come schede audio esterne denominate scheda 1, scheda 2 e a seguire…
Ora, dovremo cambiare le configurazioni audio. Per modificare il file asound.conf, digita il seguente comando
sudo nano /etc/asound.conf
Aggiungi sotto le righe nel file. Quindi premi Ctrl+X e poi Y per salvare il file
pcm.!default {
digita asym capture.pcm "mic" playback.pcm "speaker" } pcm.mic { digita plug slave { pcm "hw:1, 0" } } pcm.speaker { digita scheda hw 0 } ctl.!default { digita scheda hw 0}
Questo imposterà il tuo microfono esterno (pcm.mic) come dispositivo di acquisizione audio (pcm!.default) e la tua scheda audio integrata (scheda 0) come dispositivo altoparlante.
Crea un nuovo file chiamato.asoundrc nella directory home (/home/pi) emettendo il seguente comando e incollando le configurazioni sopra (che sono state aggiunte nel file /etc/asound.conf.) a questo file
sudo nano.asoundrc.
Passaggio 3: configurazione dell'uscita dell'altoparlante
- Collega il tuo altoparlante al jack per cuffie da 3,5 mm del Raspberry Pi.
- Esegui il comando seguente per aprire la schermata di configurazione di pi.
sudo raspi-config
Vai su Opzioni avanzate > Audio e seleziona il dispositivo di output. (jack da 3,5 mm o HDMI)
Passaggio 4: testare il microfono e gli altoparlanti
Per testare il tuo altoparlante, esegui il seguente comando nel terminale. Questo riprodurrà un suono di prova. Premi Ctrl+C per uscire. Se non riesci a sentire il suono di prova, controlla la connessione e l'alimentazione degli altoparlanti. Il test suona come-
Anteriore Sinistro, Anteriore Destro
altoparlante-test -t wav
Per testare il tuo microfono, esegui il seguente comando. Questo registrerà una breve clip audio di 5 secondi. Se ricevi un errore, controlla di nuovo i passaggi precedenti
arecord --format=S16_LE --duration=5 --rate=16k --file-type=raw out.raw
Riproduci l'audio registrato e verifica che tutto funzioni correttamente digitando il seguente comando
aplay --format=S16_LE --rate=16k out.raw
Il nostro hardware è impostato
Passaggio 5: scarica i pacchetti richiesti e configura l'ambiente Python:
Innanzitutto, aggiorna il tuo sistema operativo eseguendo i comandi uno per uno nel terminale
sudo apt-get update
sudo apt-get upgrade
L'esecuzione dei comandi uno per uno nel terminale creerà l'ambiente Python 3 (la libreria dell'Assistente Google funziona solo su Python 3) nel tuo Pi e installerà gli elementi richiesti
sudo apt-get install python3-dev python3-venv
$ python3 -m venv env $ env/bin/python -m pip install --upgrade pip setuptools
Attiva l'ambiente Python. Questo porterà un testo " (env)" davanti al terminale di comando del tuo Pi
source env/bin/activate
Installa il pacchetto Google Assistant SDK, che contiene tutto il codice necessario per eseguire l'Assistente Google sul Pi. Dovrebbe scaricare la libreria dell'Assistente Google e il significato
python -m pip install --upgrade google-assistant-library
Passaggio 6: abilitazione del progetto cloud dell'Assistente Google
- Apri Google Cloud Console e crea un nuovo progetto. (Nominalo qualsiasi cosa.) L'account con cui accedi verrà utilizzato per inviare query all'Assistente Google e ottenere la tua risposta personalizzata.
- Vai al gestore API e abilita l'API dell'Assistente Google.
- Assicurati di abilitare Attività web e app, Informazioni sul dispositivo e Attività vocale e audio in Gestione attività per l'account.
- Vai su "Credenziali" e imposta la schermata del contenuto di OAuth.
- Vai alla scheda "Credenziali" e Crea nuovo ID client OAuth
- Seleziona il tipo di applicazione come "Altro" e dai il nome della chiave.
- Scarica il file JSON che memorizza le informazioni sulla chiave OAuth e tienilo salvato.
Passaggio 7: autenticazione del Raspberry Pi
Installa lo strumento di autorizzazione eseguendo il comando seguente
(env) python -m pip install --upgrade google-auth-oauthlib[strumento]
Esegui lo strumento eseguendo il comando seguente. Assicurati di fornire il percorso corretto per il file JSON che hai scaricato nel passaggio 6
(env) google-oauthlib-tool --client-secrets "JSON_FILE_PATH" --scope https://www.googleapis.com/auth/assistant-sdk-prototype --save --headless
Dovrebbe essere visualizzato come mostrato di seguito. Copia l'URL e incollalo in un browser. Se invece visualizza:
InvalidGrantError
quindi è stato inserito un codice non valido. Riprova.
Si prega di andare a questo URL:
Inserisci il codice di autorizzazione:
Passaggio 8: impostazione dell'indicatore LED
- Collega il tuo LED tra il pin 25 e la massa GPIO.
- Stiamo per impostare il pin 25 GPIO come pin di uscita.
- Google Assistant SDK fornisce un callback EventType. ON_CONVERSATION_TURN_STARTED quando inizia la conversione con l'Assistente Google. A quel punto, imposteremo il GPIO 25 per accendere il LED.
- Ogni volta che la conversazione termina, verrà ricevuto il callback EventType. ON_CONVERSATION_TURN_FINISHED. A quel punto ripristineremo il GPIO 25 per spegnere il LED.
Passaggio 9: inizializzazione al completamento dell'avvio:
- Ogni volta che il tuo Pi completa l'avvio, eseguiremo uno script Python che verificherà e introdurrà l'Assistente Google all'avvio.
- Prima aggiungi il pacchetto RPi. GPIO per aggiungere il supporto GPIO usando il seguente comando.
pip install RPi. GPIO
Esegui i passaggi uno per uno. Vai alla directory dell'utente. Crea un nuovo file python main.py
cd /home/pi
sudo nano main.py
Scrivi lo script collegato e salva il file
Ora crea uno script di shell che inizializzerà ed eseguirà l'Assistente Google
sudo nano google-assistant-init.sh
Incolla le righe sottostanti nel file e salva il file
#!/bin/sh
/home/pi/env/bin/python3 -u /home/pi/main.py
Concedere l'autorizzazione di esecuzione
sudo chmod +x google-assistant-init.sh
Puoi eseguire google-assistant-init.sh per avviare l'Assistente Google in qualsiasi momento.
Passaggio 10: avvio dell'Assistente Google durante l'avvio
Per abilitare l'Assistente Google all'avvio ci sono due modi. Vediamo ciascuno di loro
1. Avvio automatico con Pixel Desktop all'avvio:
- Questo avvierà l'Assistente Google non appena il desktop Pixel si avvia. Assicurati di avere l'avvio "Desktop" selezionato nelle configurazioni Raspberry Pi.
- Digita sotto il comando.
sudo nano /home/pi/.config/lxsession/LXDE-pi/autostart
Aggiungi quanto segue dopo @xscreensaver -no-splash
@lxterminal -e "/home/pi/google-assistant-init.sh"
Salva ed esci premendo "Ctrl+X" e poi "Y
2. Avvio automatico con CLI all'avvio: (l'ho usato personalmente, anche se l'avvio automatico funziona bene.)
- Questo avvierà l'Assistente Google se hai impostato l'avvio della CLI. Assicurati di avere l'avvio "CLI" selezionato nelle configurazioni Raspberry Pi.
- Digita sotto il comando.
sudo nano /etc/profile
Aggiungi sotto la riga alla fine del file
sudo /home/pi/google-assistant-init.sh
Salva ed esci premendo “Ctrl+X” e poi “Y”
Passaggio 11: conclusione
Cosa c'è di diverso in questo Home Pi? Niente, tranne le spese. Il risultato finale è sostanzialmente lo stesso, puoi attivare il tuo Google Home fai da te pronunciando la parola sveglia "Ok Google/ Hey Google" e il dispositivo funziona proprio come un vero assistente. Puoi svolgere molte attività quotidiane con Google Home. Se desideri eseguire le tue attività personalizzate come spegnere la luce, controllare la porta, puoi farlo integrando Google Actions nel tuo Assistente Google. Se hai problemi con l'avvio dell'Assistente Google, lascia un commento qui sotto. Cercherò di risolverli il più possibile.
Consigliato:
Controllo LED basato su Assistente Google utilizzando Raspberry Pi: 3 passaggi
Controllo LED basato su Assistente Google utilizzando Raspberry Pi: Ehi! In questo progetto, implementeremo il controllo del LED basato su Assistente Google utilizzando Raspberry Pi 4 utilizzando HTTP in Python. Puoi sostituire il LED con una lampadina (ovviamente non letteralmente, avrai bisogno di un modulo relè in mezzo) o qualsiasi altra casa
Realtà virtuale su Raspberry Pi con BeYourHero!: 19 passaggi (con immagini)
Realtà virtuale su Raspberry Pi con BeYourHero!: Benvenuto in "Be Your Hero" progetto!Spero che tu sia pronto per entrare nella prossima generazione di immersione nella realtà virtuale!Questo progetto ti darà il pieno controllo gestuale di qualsiasi eroe virtuale che ti piace con un semplice set di dispositivi economici che utilizzano se
Orologio di pianificazione: il tuo assistente di produttività virtuale.: 6 passaggi (con immagini)
Orologio di pianificazione: il tuo assistente di produttività virtuale.: Sono un procrastinatore professionista! Questo blocco mi ha messo in un loop temporale, in cui tutti i giorni volano senza alcun lavoro produttivo. Per battere la mia procrastinazione, ho realizzato questo orologio semplice e veloce, che pianifica il mio lavoro. Ora posso semplicemente attenermi a
Generatore musicale basato sulle condizioni meteorologiche (generatore MIDI basato su ESP8266): 4 passaggi (con immagini)
Generatore di musica basato sul tempo (Generatore MIDI basato su ESP8266): Ciao, oggi spiegherò come creare il tuo piccolo generatore di musica basato sul tempo. È basato su un ESP8266, che è un po' come un Arduino, e risponde alla temperatura, alla pioggia e l'intensità della luce. Non aspettarti che produca intere canzoni o programmi di accordi
SEER- Assistente personale intelligente basato su InternetOfThings: 12 passaggi (con immagini)
SEER- Assistente personale intelligente basato su InternetOfThings: Seer è un dispositivo che svolgerà un ruolo di richiamo nel campo delle case intelligenti e dell'automazione. È fondamentalmente un'applicazione dell'internet delle cose. SEER è un altoparlante wireless vivavoce da 9 pollici composto di Raspberry Pi 3 modello B con fotocamera integrata