Pretvorite malinu Pi u domaći Google dom

Izvor

Google počet je prekrasan uređaj s ugrađenim Google Assistantom - vrhunski digitalni osobni asistent od Googlea. - koju možete smjestiti bilo gdje u svom domu i ona će napraviti neke nevjerojatne stvari za vas. To će spremiti vaše podsjetnike, popise za kupovinu, bilješke i najvažnije odgovoriti na vaša pitanja i upite na temelju konteksta razgovora.

U ovom ćete članku naučiti pretvoriti Raspberry Pi u domaći uređaj Google Home koji je,

  • Pokreće Google Assistant.
  • Glas je aktiviran. Nema potrebe da pritisnete nijedan gumb, samo recite "OK Google" ili "Hey Google" i postavite svoje pitanje.
  • Uključit će se LED indikator koji će se uključiti svaki put kada razgovor između korisnika i Google Assistenta u tijeku.
  • Može se inicijalizirati na boot pa nema potrebe za prijavom i pokretanje skripte s terminala nakon ponovnog pokretanja.

Dakle, započnimo.

Koje će vam stvari trebati?

  • Raspberry Pi model 2 ili 3.
  • MicroSD kartica s Raspbianom na njoj (preporučuje se minimalno 8 GB).
  • Napajanje za hranjenje vašeg malina pi. (Bilo koji USB mobilni punjač s najmanje 5 V, 2A izlazom će raditi.)
  • USB mikrofon (Kako Raspberry Pi nema ugrađeni mikrofon. Koristio sam MI-305).
  • Zvučnik.
  • LED.
  • Nekoliko žica za spajanje LED-a.

Nakon što sve ove stvari prijavite, prijavite se na radnu površinu Raspbian i idite na sljedeće korake jedan po jedan.

Korak -1: Postavljanje USB mikrofona.

  • Raspberry Pi nema ugrađene mikrofone. Ako želite snimati zvuk, morate priključiti USB mikrofon.
  • Priključite USB mikrofon u bilo koji USB utor vašeg Raspberry Pi.
  • Idite na terminal i utipkajte sljedeću naredbu.
  • Ova naredba popisat će sve dostupne uređaje za snimanje zvuka. Trebali biste dobiti ispod rezultata.

Kao što vidite, vaš USB uređaj priključen je na karticu 1, a ID uređaja je 0. Raspberry Pi prepoznaje karticu 0 kao unutarnju zvučnu karticu (što je bcm2835), a ostale vanjske zvučne kartice kao vanjske zvučne kartice.

  • Sada, promijenimo audio konfiguracije. Unesite naredbu ispod za uređivanje datoteke asound.conf.
  • Dodajte niže retke u datoteku. Zatim pritisnite Ctrl + X i nakon toga Y da biste spremili datoteku.

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

  • Napravite novu datoteku s imenom .asoundrc u matičnom direktoriju (/ home / pi) izdavanjem sljedeće naredbe i lijepljenja iznad konfiguracija (koje ste dodali u /etc/asound.conf datoteku.) U ovu datoteku.

Korak -2: Postavljanje izlaza zvučnika.

  • Spojite svoj zvučnik na 3,5 mm priključak za slušalice Raspberry Pi.
  • Pokrenite ispod naredbe da otvorite zaslon konfiguracije maline pi.
  • Idite na Napredne mogućnosti> Zvuk i odaberite željeni izlazni uređaj.

Korak -3: Ispitajte mikrofon i zvučnike.

  • Za provjeru vašeg zvučnika pokrenite ispod naredbe u terminalu. Ovo će reproducirati testni zvuk. Pritisnite Ctrl + C kada završite. Ako ne možete čuti testni zvuk, provjerite vezu vašeg zvučnika.
  • Za testiranje mic run slijedeći naredbu. Time će se snimiti kratki audioisječak. Ako se pojavi bilo koja pogreška, ponovo provjerite korak 1.
  • Reprodukujte snimljeni zvuk i potvrdite da sve ispravno radi izdavanjem sljedeće naredbe.

U redu. Naš je hardver podešen.

Korak -4: Preuzmite potrebne pakete i konfigurirajte Python okruženje:

  • Prvo, ažurirajte svoj operativni sustav.
  • Pokrenite dolje naredbu jednu po jednu u terminalu.

Ovo će stvoriti Python 3 okruženje (budući da biblioteka Google Assistant radi samo na Python 3.x) u vašoj malini pi i instalirati potrebne ovisnosti.

  • Aktivirajte okruženje pytona.
  • Sada instalirajte paket SDK Google Assistant koji sadrži sav kôd potreban za pokretanje Google Assistant-a na Raspberry Pi. Trebalo bi preuzeti biblioteku Google Assistant-a i demo prikaz.

Korak -5: Omogućivanje oblačnog projekta Google Assistant.

  • Otvorite Google Cloud Console i napravite novi projekt. (Možete ga imenovati kako god želite.) Račun na koji se prijavljujete služit će se za slanje upita Googleovom pomoćniku i dobivanje vašeg prilagođenog odgovora.
  • Prijeđite na upravitelj API-ja i omogućite Google Assistant API.
  • - Obavezno omogućite aktivnost na webu i u aplikacijama, informacije o uređaju i glasovne i audio aktivnosti u kontrolama aktivnosti za račun.
  • - Idite na "Vjerodostojni podaci" i postavite zaslon sadržaja OAuth.
  • Idite na karticu "Vjerodostojni" i stvorite novi OAuth ID klijenta.
  • Odaberite vrstu aplikacije kao "Ostalo" i navedite ime ključa.
  • Preuzmite datoteku JSON koja pohranjuje ključne podatke OAuth i čuvajte je na sigurnom.

Korak -6: Autentifikacija vašeg Raspberry Pi.

  • Instalirajte alat za autorizaciju pokretanjem ispod naredbe.
  • Pokrenite alat pokretanjem sljedeće naredbe. Obavezno navedite ispravnu putanju za datoteku JSON koju ste preuzeli u koraku 5.
  • Trebao bi biti prikazan kao što je prikazano u nastavku. Kopirajte URL i zalijepite ga u preglednik (to se može učiniti kod razvojnih programera)

Ako umjesto toga, prikazuje se: InvalidGrantError, tada je unesen nevažeći kod. Pokušajte ponovo.

Korak -7: Postavljanje LED indikatora.

  • Spojite LED između GPIO pin 25 i mase.
  • Ideja je ovdje jednostavna. Postavit ćemo GPIO pin 25 kao izlazni pin. SDK Google Assistant nudi povratni događaj EventType.ON_CONVERSATION_TURN_STARTED kada započne konverzija s Google Assistantom. U tom ćemo trenutku postaviti GPIO 25 da svijetli LED. Kad god razgovor završi EventType.ON_CONVERSATION_TURN_FINISHED povratni poziv. Tada ćemo resetirati GPIO 25 kako bi isključio LED.

Korak -8: Inicijalizacija pokretanja dovršena:

  • Kad god vaš Raspberry Pi dovrši postupak dizanja, pokrenut ćemo python skriptu koja će provjeriti autentičnost i inicijalizaciju Google Assistant-a pri pokretanju sustava.
  • Prvo dodajte RPi.GPIO paket da biste dodali GPIO podršku koristeći sljedeću naredbu.
  • Idite u korisnički imenik. Stvorite novu datoteku python main.py.
  • Napišite sljedeću skriptu i spremite datoteku.
  • Sada napravite jednu skriptu ljuske koja će inicijalizirati i pokrenuti Google Assistant.
  • Zalijepite ispod retka u datoteku i spremite je.
  • Dajte odobrenje za izvršenje.

Možete pokrenuti google-assistant-init.sh da biste bilo kada pokrenuli Google Assistant.

Pogledajmo kako možete pokrenuti Google Assistant tijekom dizanja.

  • Postoje dva načina za omogućavanje Google Assistant-a pri pokretanju. Pogledajmo svaki od njih.

1. Automatsko pokretanje s radne površine Pixel na boot:

  • To će pokrenuti Google Assistant čim se Pixel desktop podiže. Provjerite da li je u Raspberry Pi konfiguracijama odabrano boot za radnu površinu.
  • Unesite naredbu ispod.
  • Nakon @xscreensaver -no-splash dodajte sljedeće
  • Spremite i izlazite pritiskom na "Ctrl + X", a zatim na "Y".

2. Automatsko pokretanje s CLI na boot:

  • Ovo će pokrenuti Google Assistant ako ste postavili CLI boot. Provjerite jeste li odabrali pokretanje "CLI" u Raspberry Pi konfiguracijama.
  • Unesite naredbu ispod.
  • Dodajte ispod retka na kraju datoteke.
  • Spremite i izlazite pritiskom na "Ctrl + X", a zatim na "Y".
To je sve!!! "Domaći Google dom" sada je spreman. Ponovo pokrenite uređaj i prvo pitanje postavite svom Google Assistantu.

Zaključak:

S Google Home možete učiniti mnogo stvari svakodnevno. Ako želite izvršavati svoje prilagođene zadatke poput isključivanja svjetla, otvaranja vrata, to možete učiniti integrirajući Google akcije u svoj Google Assistant. Ako imate problema s pokretanjem Google Assistant-a, u nastavku ostavite komentar. Pokušat ću ih riješiti.

~ Ako vam se članak svidio, kliknite ispod kako bi ga drugi mogli vidjeti! Također, možete me pratiti na Medium ili na mom blogu, pa ćete dobiti ažuriranja u vezi s mojim budućim člancima !! ~