Taula de continguts:

Pi-Assistant: 12 passos
Pi-Assistant: 12 passos

Vídeo: Pi-Assistant: 12 passos

Vídeo: Pi-Assistant: 12 passos
Vídeo: [Home Assistant Project] Part 0, Raspberry PI-based Home Assistant preparation and basic settings. 2024, Desembre
Anonim
Pi-Assistent
Pi-Assistent

Es tracta d’un projecte de l’Assistent de Google que utilitza la placa Raspberry Pi 3 A +.

Aquest va ser el disseny del projecte IEEE dels meus col·legis, de manera que la gent estarà més interessada en la tecnologia i en fer coses.

Seguiré la instal·lació bàsica del sistema operatiu per al raspi, configurant l'assistent de google al raspi i arrencant automàticament.

Comencem!

Pas 1: llista de peces

Utilitzarem la placa Raspberry Pi 3 A +

El motiu pel qual fa servir la placa A + és perquè era més barat que la placa B i volia utilitzar-la ja que s’acaba de llançar.

1x Raspberry Pi 3 A +

1x cable micro USB (per alimentar-lo)

1 cable ethernet

1x USB a Ethernet

1x concentrador USB

1x micròfon

1x altaveu

Serà útil si podeu obtenir un concentrador USB + cable de port Ethernet.

A més, necessitareu un altre ordinador per treballar en aquest projecte.

Pas 2: Configuració de Raspi

Haureu d’instal·lar Rasbian OS a la targeta sd.

Aneu a https://www.raspberrypi.org/downloads/raspbian/ i descarregueu la versió més recent de Rasbian.

MAC:

Utilitzeu Etcher i graveu el fitxer img a la targeta sd.

* La targeta sd s'esborrarà. Assegureu-vos de fer una còpia de seguretat si cal.

Windows:

Utilitzeu Rufus i graveu el fitxer img a la targeta sd.

* La targeta sd s'esborrarà. Assegureu-vos de fer una còpia de seguretat si cal.

Activeu SSH col·locant un fitxer anomenat "ssh" (sense cap extensió) a la partició d'arrencada de la targeta SD

Si feu servir un monitor, no cal que ho feu.

Pas 3: Connecteu el maquinari

Ara connecteu els programes durs junts.

Utilitzeu un concentrador USB i connecteu el micro i el cable ethernet. Connecteu l’altaveu al connector estèreo de 3,5 mm.

Ara connecteu l’altra cara del cable ethernet a l’ordinador.

Finalment, connecteu el cable micro usb al raspi.

Pas 4: inicieu la sessió a Raspi

Obriu el terminal o utilitzeu massilla i ssh al raspi

tipus

ssh pi @ raspberrypi

Per iniciar la sessió com

nom d'usuari: pi

contrasenya: gerd

Ara esteu a raspi!

Podeu anar a sudo raspi-config per canviar la contrasenya i connectar-vos a wi-fi.

Pas 5: Configuració de l'àudio

Haureu de configurar el sistema d’àudio al raspi per poder utilitzar el codi de mostra de l’assistent de Google.

Tipus

arecord -l

aplay -l

i anoteu el número de la targeta i el número del dispositiu.

Per a l’altaveu, voldreu triar l’opció que diu bcm2835 ALSA.

A continuació, crearà un fitxer.asoundrc a / home / pi

Tipus

nano.asoundrc

Ara copieu, enganxeu el codi següent i substituïu el número de la targeta i el número del dispositiu pel vostre número.

pcm.! predeterminat {

escriviu asym

capture.pcm "micròfon"

playback.pcm "altaveu"

}

pcm.mic {

tipus endoll

esclau {

pcm "hw: número de targeta, número de dispositiu"

}

}

pcm.speaker {

tipus endoll

esclau {

pcm "hw: número de targeta, número de dispositiu"

}

}

Ara utilitzeu el codi següent per provar la funcionalitat de l'altaveu i del micròfon.

altaveu-prova -t wav

arecord --format = S16_LE --duration = 5 --rate = 16000 --file-type = raw out.raw

aplay --format = S16_LE --rate = 16000 out.raw

Pas 6: instal·leu l'SDK i el codi de mostra

Instal·leu l'SDK i el codi de mostra al raspi executant aquestes ordres.

Primer instal·leu Python 3

sudo apt-get update

sudo apt-get install python3-dev python3-venv # Utilitzeu python3.4-venv si no es pot trobar el paquet.

python3 -m venv env

env / bin / python -m instal·lar pip - actualitzar la roda d'eines setup setup pip

font env / bin / activate

Obteniu els paquets de l'Assistent de Google

sudo apt-get install portaudio19-dev libffi-dev libssl-dev libmpg123-dev

python -m pip install --upgrade google-assistant-library

python -m pip install --upgrade google-assistant-sdk [samples]

Pas 7: registreu el vostre Pi-assistant

Haureu de registrar el vostre projecte i el dispositiu per poder utilitzar l'Assistent de Google.

Passeu per les instruccions següents.

1. Activeu l'API de l'Assistent de Google

a. Obriu la consola d'acció

b. Feu clic a Afegeix / importa projecte.

c. Creeu un projecte nou, escriviu un nom al quadre Nom del projecte i feu clic a CREA PROJECTE.

d. Feu clic a Registre de dispositius a la part inferior de la pàgina.

e. Activeu l'API de l'Assistent de Google

Aneu a l'enllaç i feu clic a Activa.

f. Heu de configurar la pantalla de consentiment OAuth per al vostre projecte a Cloud Platform Console.

2. Torneu a obrir Action Console per registrar el model de dispositiu.

a. Empleneu informació

b. Un cop hàgiu acabat, feu clic a Registra model

c. A continuació, baixareu les credencials

També haureu de col·locar aquest fitxer al raspberry pi

Per fer-ho, podeu escriure l'ordre al terminal (substituïu l'identificador de client amb el vostre propi identificador)

scp ~ / Downloads / client_secret_ client-id.json pi @ raspberrypi-ip: / home / pi / Download

d. Podeu ometre l'especificació de trets

e. Si editeu el model, haureu de tornar a descarregar la credencial

Pas 8: generar credencials

Instal·leu o actualitzeu l'eina d'autorització:

python -m pip install --upgrade google-auth-oauthlib [eina]

Genereu credencials per poder executar el codi de mostra i les eines. Feu referència al fitxer JSON que heu descarregat en un pas anterior; és possible que hàgiu de copiar-lo al dispositiu. No canvieu el nom d'aquest fitxer.

google-oauthlib-tool --scope https://www.googleapis.com/auth/assistant-sdk-prototype / --scope https://www.googleapis.com/auth/gcm / --save --headless - -client-secrets /path/to/client_secret_client-id.json

Pas 9: proveu el codi de mostra

Ara podeu executar el programa de mostra.

Per fer-ho, executeu l'ordre següent substituint my-dev-project i my-model

googlesamples-assistant-hotword --project-id my-dev-project --device-model-id my-model

Un cop comenci a funcionar, proveu-ho

Hola Google, com fa el temps?

Quina hora es?

Si us dóna un error sobre l'àudio, proveu d'executar aquesta ordre

sudo apt-get install matrixio-creator-xxxx

Pas 10: Configuració de l’inici automàtic: genera un script

Per fer que el raspi pugui iniciar automàticament el programari de Google Assistant, editarem el fitxer d’inici automàtic.

Primer feu un script anomenat google_autostart.sh

nano google_autostart.sh

Després escriuràs

#! / bin / bash

font env / bin / activate

google-assistant-demo &

& al final de la línia farà que el programari s'executi en segon pla.

Quan feu un script, el fitxer no tindrà permís per executar-lo.

Podeu comprovar-ho executant

ls -l google_autostart.sh

hauria de resultar-vos amb

-rw-r - r-- l pi pi data hora google_autostart

Donar permís a aquest script per executar-lo

sudo chmod + x google_autostart.sh

Ara, si comproveu el fitxer, el color del fitxer.sh hauria de canviar i dir

-rwxr-xr-x l pi pi data hora google_autostart.sh

Proveu i si funciona, heu generat un fitxer de script per iniciar automàticament l'assistent de Google.

./google_autostart.sh

Pas 11: Configuració de l’inici automàtic: configureu l’escriptura com a Inici automàtic

Ara heu d'establir l'script al fitxer d'inici al raspi.

Anar a

/ etc / xdg / lxsession / LXDE-pi /

llavors

nano autoinici

al fitxer, afegiu el directori i la informació de script a la darrera línia.

/home/pi/google_autostart.sh

Ara hauríeu de ser capaç de desconnectar el cable ethernet i només heu d’iniciar automàticament l’altaveu, el micròfon i l’alimentació del USB i el programari de l’assistent de google.

Pas 12: extra

Tot i que les instruccions que hem fet aquí són només per al codi de mostra bàsic de l'Assistent de Google.

Podeu actualitzar el programari instal·lant diferents biblioteques.

L’enllaç següent us afegirà més ajuda de pi-fetures

github.com/googlesamples/assistant-sdk-pyt…

Si configureu l'SDK de Google Cast, podreu fer coses com ara

Ok Google, juga a Spotify

També podeu fer servir Google Assistant i els altres pins i ports del raspi per fer més accions

com controlar els LED, els motors i qualsevol cosa que se us pugui ocórrer !!!

Recomanat: