Sadržaj:

Pi Home, virtualni pomoćnik s napajanjem na malini: 11 koraka (sa slikama)
Pi Home, virtualni pomoćnik s napajanjem na malini: 11 koraka (sa slikama)

Video: Pi Home, virtualni pomoćnik s napajanjem na malini: 11 koraka (sa slikama)

Video: Pi Home, virtualni pomoćnik s napajanjem na malini: 11 koraka (sa slikama)
Video: Параплан и новый город ► 6 Прохождение Dying Light 2: Stay Human 2024, Decembar
Anonim
Pi Home, virtualni asistent na malini
Pi Home, virtualni asistent na malini

Google Home je korisno imati kod kuće. To je prekrasan uređaj s ugrađenim Google pomoćnikom - Google -ovim najmodernijim digitalnim ličnim asistentom. Može reproducirati medije, spremati vaše podsjetnike i bilješke, reći vam koliko dugo putujete, raditi kućnu automatizaciju. Može se postaviti bilo gdje u vašem domu i učinit će vam neke nevjerojatne stvari, ali, to je skupa ponuda ako niste sigurni da ćete ga koristiti. Dobre vijesti, međutim, možete napraviti potpuno funkcionalnu koristeći Raspberry Pi.

Do kraja ovog vodiča imat ćete potpuno funkcionalan Google Home koji reagira na vaše glasovne naredbe. Inače, to je Asistent sa svim funkcijama Google Home. Što znači da može vršiti pretvaranje jedinica, reproducirati medije, provjeravati rezultate, čitati vam audio knjige, provjeravati vremenske prilike i još mnogo toga. Također će raditi s raznim uređajima za kućnu automatizaciju poput pametnih žarulja, tako da ih možete kontrolirati svojim glasom. Poput pravog Google asistenta, vaš DIY Google Home može se povezati za dodavanje više funkcija, poput dodavanja obaveza Evernoteu ili za primanje obavještenja na telefonu kada se mjerač vremena isključi.

Korak 1: Stvari koje trebate

Stvari koje trebate
Stvari koje trebate

Trebalo bi vam:

  • Raspberry Pi 3 ili 2 sa instaliranim Raspbian-om i Wi-Fi postavkom.
  • Napajanje i MicroUSB kabel za napajanje. (Minimalno 5V, 2A)
  • MicroSD kartica. (Najmanje 8 GB)
  • USB mikrofon. (Dobit ćete mnogo načina postavljanja putem interneta, također ovdje …)
  • Zvučnici
  • Tastatura i miš za postavljanje
  • LED i nekoliko žica za povezivanje

Sve stvari su se okupile, spojile i priključile. Hajde da počnemo.

Korak 2: Postavljanje USB mikrofona

Postavljanje USB mikrofona
Postavljanje USB mikrofona
  • Pi nema ugrađene mikrofone. Morate priključiti USB mikrofon ako želite snimiti zvuk.
  • Priključite USB mikrofon u bilo koji od USB priključaka na vašem Pi.
  • Upišite sljedeću naredbu u terminal.

arecord -l

Ova naredba će ispisati sve dostupne uređaje za snimanje zvuka. Bit će prazan ako je priključen vaš USB mikrofon. Trebali biste dobiti sljedeći izlaz

pi@raspberrypi: ~ $ arecord -l

**** Popis HVATNIH hardverskih uređaja **** kartica 1: Uređaj [USB PnP zvučni uređaj], uređaj 0: USB audio [USB zvuk] Poduređaji: Poduređaj #0: poduređaj #0

Možete vidjeti da je vaš USB uređaj priključen na karticu 1, a ID uređaja je 0. Raspberry Pi prepoznaje karticu 0 kao internu zvučnu karticu, odnosno bcm2835 i ostale vanjske zvučne kartice kao vanjske zvučne kartice nazvane kartica 1, kartica 2 i prati…

Sada ćemo morati promijeniti audio konfiguracije. Da biste uredili datoteku asound.conf, upišite sljedeću naredbu

sudo nano /etc/asound.conf

Dodajte ispod redove u datoteku. Zatim pritisnite Ctrl+X i nakon toga Y za spremanje datoteke

pcm.! default {

type asym capture.pcm "mic" playback.pcm "speaker"} pcm.mic {type plug slave {pcm "hw: 1, 0"}} pcm.speaker {type hw card 0} ctl.! default {type hw card 0}

Ovo će postaviti vaš vanjski mikrofon (pcm.mic) kao uređaj za snimanje zvuka (pcm!. Default) i vašu ugrađenu zvučnu karticu (kartica 0) kao uređaj zvučnika.

Kreirajte novu datoteku pod imenom.asoundrc u matičnom direktoriju (/home/pi) izdavanjem sljedeće naredbe i zalijepite gornje konfiguracije (koje su dodane u /etc/asound.conf datoteci.) Ovoj datoteci

sudo nano.asoundrc.

Korak 3: Postavite izlaz zvučnika

Postavljanje izlaza zvučnika
Postavljanje izlaza zvučnika
  • Spojite zvučnik na 3,5 mm priključak za slušalice na Raspberry Pi.
  • Pokrenite naredbu ispod da otvorite konfiguracijski ekran pi.

sudo raspi-config

Idite na Napredne opcije> Zvuk i odaberite izlazni uređaj. (Priključak od 3,5 mm ili HDMI)

Korak 4: Testirajte mikrofon i zvučnike

Testirajte mikrofon i zvučnike
Testirajte mikrofon i zvučnike

Da biste testirali zvučnik, pokrenite sljedeću naredbu na terminalu. Ovo će reproducirati probni zvuk. Pritisnite Ctrl+C za izlaz. Ako ne možete čuti zvuk testa, provjerite vezu i napajanje zvučnika. Test zvuči kao …

Prednji lijevi, prednji desni

spiker -test -t wav

Da biste testirali svoj mikrofon, pokrenite sljedeću naredbu. Ovo će snimiti kratki audio isječak od 5 sekundi. Ako dobijete bilo kakvu grešku, ponovo provjerite prethodne korake

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

Reproducirajte snimljeni zvuk i potvrdite da sve radi ispravno upisivanjem sljedeće naredbe

aplay --format = S16_LE --rate = 16k out.raw

Naš hardver je podešen

Korak 5: Preuzmite potrebne pakete i konfigurirajte Python okruženje:

Preuzmite potrebne pakete i konfigurirajte Python okruženje
Preuzmite potrebne pakete i konfigurirajte Python okruženje

Prvo ažurirajte svoj operativni sistem pokretanjem naredbi jednu po jednu u terminalu

sudo apt-get update

sudo apt-get nadogradnja

Pokretanje naredbi jednu po jednu u terminalu stvorit će okruženje Python 3 (biblioteka Google pomoćnika radi samo na Pythonu 3) u vašem Pi i instalirat će potrebne stavke

sudo apt-get install python3-dev python3-venv

$ python3 -m venv env $ env/bin/python -m pip install -nadogradnja pip setuptools

Aktivirajte okruženje python. Ovo će donijeti "(env)" tekst ispred vašeg komandnog terminala Pi

izvor env/bin/aktiviraj

Instalirajte paket Google Assistant SDK koji sadrži sav kôd potreban za pokretanje Google pomoćnika na Pi -u. Trebala bi preuzeti biblioteku Google pomoćnika i značaj

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

Korak 6: Omogućavanje Google Cloud projekta Google pomoćnika

Omogućavanje projekta u oblaku Google pomoćnika
Omogućavanje projekta u oblaku Google pomoćnika
Omogućavanje projekta u oblaku Google pomoćnika
Omogućavanje projekta u oblaku Google pomoćnika
Omogućavanje projekta u oblaku Google pomoćnika
Omogućavanje projekta u oblaku Google pomoćnika
Omogućavanje projekta u oblaku Google pomoćnika
Omogućavanje projekta u oblaku Google pomoćnika
  • Otvorite Google Cloud Console i kreirajte novi projekt. (Imenujte ga bilo čime.) Račun s kojim se prijavljujete koristit će se za slanje upita Google Asistentu i dobivanje vašeg personaliziranog odgovora.
  • Prijeđite na API upravitelja i omogućite API Google pomoćnika.
  • Obavezno omogućite Aktivnosti na webu i u aplikacijama, Informacije o uređaju te Glasovne i audio aktivnosti u Kontrolama aktivnosti za račun.
  • Idite na “Credentials” i postavite OAuth Content Screen.
  • Idite na karticu "Vjerodajnice" i kreirajte novi ID klijenta OAuth
  • Odaberite vrstu aplikacije kao "Ostalo" i dajte naziv ključa.
  • Preuzmite JSON datoteku koja pohranjuje podatke o ključu OAuth i sačuvajte ih.

Korak 7: Provjera autentičnosti Raspberry Pi

Provjera autentičnosti Raspberry Pi
Provjera autentičnosti Raspberry Pi
Provjera autentičnosti Raspberry Pi
Provjera autentičnosti Raspberry Pi
Provjera autentičnosti Raspberry Pi
Provjera autentičnosti Raspberry Pi
Provjera autentičnosti Raspberry Pi
Provjera autentičnosti Raspberry Pi

Instalirajte alat za autorizaciju pokretanjem naredbe ispod

(env) python -m pip install --upgrade google-auth-oauthlib [alat]

Pokrenite alatku pokretanjem sljedeće naredbe. Pobrinite se da navedete ispravnu putanju za JSON datoteku koju ste preuzeli u koraku 6

(env) google-oauthlib-tool --client-secrets "JSON_FILE_PATH" --scope https://www.googleapis.com/auth/assistant-sdk-prototype --save --headless

Trebalo bi da se prikaže kao što je prikazano ispod. Kopirajte URL i zalijepite ga u preglednik. Ako umjesto toga prikazuje:

InvalidGrantError

tada je unesen neispravan kod. Pokušaj ponovo.

Idite na ovaj URL:

Unesite autorizacijski kod:

Korak 8: Postavljanje LED indikatora

Postavljanje LED indikatora
Postavljanje LED indikatora
  • Spojite LED diodu između GPIO pina 25 i mase.
  • Postavit ćemo GPIO pin 25 kao izlazni pin.
  • SDK za Google Asistenta pruža povratni poziv EventType. ON_CONVERSATION_TURN_STARTED kada započne konverzija s Google Asistentom. U tom trenutku postavit ćemo GPIO 25 da svijetli LED diodu.
  • Kad god razgovor završi, EventType. ON_CONVERSATION_TURN_FINISHED će primiti povratni poziv. U tom trenutku ćemo resetirati GPIO 25 kako bismo isključili LED.

Korak 9: Inicijalizacija pri pokretanju je dovršena:

Inicijalizacija pri pokretanju je dovršena
Inicijalizacija pri pokretanju je dovršena
  • Kad god vaš Pi završi dizanje, pokrenut ćemo python skriptu koja će provjeriti i predstaviti Google Assistant pri pokretanju.
  • Prvo dodajte paket RPi. GPIO da biste dodali podršku za GPIO pomoću sljedeće naredbe.

pip install RPi. GPIO

Izvršite korake jedan po jedan. Idite u korisnički direktorij. Kreirajte novu python datoteku main.py

cd /home /pi

sudo nano main.py

Napišite povezanu skriptu i spremite datoteku

Sada kreirajte jednu ljuskastu skriptu koja će pokrenuti i pokrenuti Google pomoćnika

sudo nano google-assistant-init.sh

Zalijepite donje redove u datoteku i spremite datoteku

#!/bin/sh

/home/pi/env/bin/python3 -u /home/pi/main.py

Dajte dozvolu za izvršavanje

sudo chmod +x google-assistant-init.sh

Možete pokrenuti google-assistant-init.sh da pokrenete Google Asistenta u bilo kojem trenutku.

Korak 10: Pokretanje Google asistenta tokom pokretanja

Pokretanje Google asistenta tokom pokretanja
Pokretanje Google asistenta tokom pokretanja

Za omogućavanje Google Asistenta pri pokretanju postoje dva načina. Pogledajmo svaku od njih

1. Automatsko pokretanje s Pixel radnom površinom pri pokretanju:

  • Ovo će pokrenuti Google Asistenta čim se Pixel radna površina podigne. Provjerite jeste li odabrali "Desktop" pokretanje u konfiguracijama Raspberry Pi.
  • Upišite naredbu ispod.

sudo nano /home/pi/.config/lxsession/LXDE-pi/autostart

Dodajte sljedeće nakon @xscreensaver -no -splash

@lxterminal -e "/home/pi/google-assistant-init.sh"

Sačuvajte i izađite pritiskom na „Ctrl+X“, a zatim „Y

2. Automatsko pokretanje s CLI -jem pri pokretanju: (Ja sam ovo osobno koristio, iako autostart radi sasvim dobro.)

  • Ovo će pokrenuti Google pomoćnik ako ste postavili CLI pokretanje. Uvjerite se da ste odabrali “CLI” pokretanje u konfiguracijama Raspberry Pi.
  • Upišite naredbu ispod.

sudo nano /etc /profile

Dodajte red ispod na kraju datoteke

sudo /home/pi/google-assistant-init.sh

Sačuvajte i izađite pritiskom na „Ctrl+X“, a zatim „Y“

Korak 11: Zaključak

Zaključak
Zaključak

Po čemu se zapravo razlikuje ovaj Home Pi? Ništa, osim troškova. Krajnji rezultat je u osnovi isti, možete aktivirati svoj DIY Google Home izgovaranjem riječi za buđenje "Ok Google/ Hej Google", a uređaj radi kao pravi pomoćnik. Pomoću svog Google Home možete obavljati mnoge dnevne aktivnosti. Ako želite obavljati svoje prilagođene zadatke, poput gašenja svjetla, provjere vrata, to možete učiniti integriranjem Google radnji u Google pomoćnika. Ako imate problema s pokretanjem Google asistenta, ostavite komentar ispod. Pokušat ću ih riješiti koliko god mogu.

Preporučuje se: