- Hardvérové požiadavky
- Nastavenie rozhrania Google API pre Raspberry Pi Google Assistant
- Nastavenie aplikácie Google Assistant pre Raspberry Pi Google Home
- Autorizuje sa Raspberry Pi pre Asistenta Google
- Používanie aplikácie Google Assistant na Raspberry Pi
Už ste niekedy premýšľali o reproduktore, ktorý je ovládateľný vašim hlasom !!! Áno, Amazon Echo je jedným z najpopulárnejších reproduktorov ovládaných hlasom, ale v konkurencii s ním je populárny aj Google Home. Hlasoví asistenti sa stávajú populárnejšími, keď sa blížime k ére systémov založených na umelej inteligencii. Počuli ste už o Google Assistant, Apple Siri a Amazon Alexa. Jedná sa o hlasové systémy AI, ktoré sa navzájom líšia, a to ich ekosystémami. Práve tu vyniká Google Assistant. Google, Apple a Amazon, všetky tieto spoločnosti už uviedli na trh svoje inteligentné reproduktory. Na trhu sú k dispozícii aj inteligentné reproduktory Google. Aplikácii Amazon Echo založenej na Raspberry Pi sme sa už venovali, tentokrát z Raspberry Pi urobíme domáci reproduktor Google.
Google poskytuje API na používanie svojej hlasovej služby, ktorá je otvoreným zdrojom a je k dispozícii na Github. Pomocou hlasovej služby Google môžeme prehrávať hudbu, získavať informácie o počasí, rezervovať letenky a mnoho ďalších. Musíte sa len opýtať. V tomto tutoriále sa pozrieme na to, ako vytvoriť hlasový inteligentný reproduktor pomocou asistenta Google a Raspberry Pi.
Hardvérové požiadavky
- Karta Raspberry Pi 3 alebo Raspberry Pi 2 Model B a SD (8 GB alebo viac)
- Externý reproduktor s 3,5 mm káblom AUX
- Akákoľvek webová kamera alebo mikrofón USB 2.0
Tiež predpokladáme, že vaša Raspberry pi je už nastavená na OS Raspbian a je pripojená k internetu. Po ich zavedení pokračujeme v tutoriále. Ak ste v Raspberry Pi nováčikom, najskôr si prečítajte časť Začíname s Raspberry Pi.
Poznámka: Webová kamera má zabudovaný mikrofón, takže ho použijeme namiesto mikrofónu USB 2.0.
Potrebujete tiež klávesnicu, myš a monitor na pripojenie maliny pi pomocou kábla HDMI.
Kontrola mikrofónu webovej kamery s Raspberry Pi:
1. Otvorte terminál Raspberry Pi a zadajte príkaz arecord -l. Toto zobrazí hardvérové zariadenia, ktoré sú pripojené k Raspberry Pi, ako je uvedené nižšie:
Karta 1 je mikrofón vašej webovej kamery, ktorý budeme používať. Ak sa nezobrazuje, môže byť vaša webová kamera chybná.
2. Teraz skontrolujte, či mikrofón funguje spustením príkazu nahrávania zvuku ako:
arecord /home/pi/Desktop/test.wav -D sysdefault: KARTA = 1
3. Ak chcete prehrať zaznamenaný zvuk, zadajte tento príkaz:
omxplayer -p -o local /home/pi/Desktop/test.wav
Ak ste pripojili Raspberry Pi k monitoru pomocou kábla HDMI, štandardne je zvukový výstup cez reproduktor vášho monitora (ak je v ňom zabudovaný reproduktor). Ak ho chcete zmeniť na 3,5 mm, musíte napísať nasledujúci príkaz:
sudo raspi-config a choďte na možnosť Advance.
V zozname vyberte Zvuk -> vyberte Sila 3,5 mm -> vyberte Ok a reštartujte Raspberry Pi.
Teraz by ste mali počuť zvuk z 3,5 mm jacku.
POZNÁMKA: Ak chcete zvýšiť alebo znížiť vstupnú hlasitosť mikrofónu, do terminálu zadajte alsamixer . Vyberte zvukovú kartu z terminálu stlačením klávesu F6.
Stlačením F4 zmeňte zosilnenie Mic dB a nastavte ho podľa potreby.
Ak máte mikrofón USB 2.0, postupujte pri kontrole mikrofónu rovnako. Tu sme použili webovú kameru pre USB mikrofón.
Nastavenie rozhrania Google API pre Raspberry Pi Google Assistant
1. Najskôr sa musíme zaregistrovať a nastaviť projekt na hlavnom paneli Akcie konzoly Google.
2. Po prihlásení do svojho účtu Google sa zobrazí nasledujúce okno.
Kliknite na Pridať / Importovať projekt .
3. Na ďalšej obrazovke musíte zadať názov projektu a kliknúť na Create Project .
4. Teraz prejdite na konzole vývojárov Google na novej karte a vyhľadajte rozhranie Google Assistant API. Predtým, ako začnete a stlačte tlačidlo Povoliť, skontrolujte, či máte vybratý projekt. Potom kliknite na Povoliť.
5. Teraz otvorte predchádzajúcu kartu konzoly Google a posuňte sa nadol do dolnej časti obrazovky.
Nájdete možnosť Registrácia zariadenia , kliknite na ňu.
6. Na ďalšej obrazovke kliknite na položku Registrovať model. Potom je potrebné nastaviť názov výrobku, označením výrobcu a nastavte typ zariadenia. Tieto mená môžu byť akékoľvek, ako chcete.
Zapíšte si ID modelu zariadenia, pretože to budeme neskôr potrebovať.
Teraz kliknite na Registrovať model .
7. Ďalšia obrazovka bude pre položku Stiahnutie poverení. Ak chcete získať tento súbor poverení, kliknite na stiahnutie poverení OAuth 2.0 . Tento súbor je veľmi dôležitý, takže ho uschovajte niekde v bezpečí.
Teraz kliknite na Ďalej.
8. Môžete zvoliť ľubovoľné vlastnosti, ktoré potrebujete, ale v našom prípade nič z toho nepotrebujeme, takže sme klikli na tlačidlo Preskočiť , ako je to znázornené nižšie .
9. Po dokončení všetkého sa zobrazí nasledujúca obrazovka.
10. Teraz choďte na stránku Riadenie aktivity. Tu musíte aktivovať nasledujúce ovládacie prvky aktivity, aby ste zabezpečili správne fungovanie rozhrania Google Assistant API.
Aktivita na webe a v aplikáciách, História polohy, Informácie o zariadení, Hlasová a zvuková aktivita
11. Znova prejdite na konzolu vývojárov Google. Kliknite na poverenia na ľavej strane palubnej dosky. Kliknite na obrazovku súhlasu OAuth.
12. Vyplňte svoje ID služby Gmail a ľubovoľné meno do poľa Názov produktu a uložte ho.
Teraz sme skončili s nastavením rozhrania Google API.
Nastavenie aplikácie Google Assistant pre Raspberry Pi Google Home
Upozorňujeme, že od tejto časti bude potrebné dokončiť výukový program na pracovnej ploche Raspbian priamo, a nie cez SSH, pretože budete musieť použiť zabudovaný webový prehliadač.
1. Najskôr aktualizujte zoznam balíkov Raspberry Pi pomocou nasledujúceho príkazu
sudo apt-get aktualizácia
2. Teraz vytvoríme súbor, do ktorého môžeme uložiť prihlasovacie údaje, ktoré sme si predtým stiahli. Za týmto účelom spustite nasledujúce dva príkazy
mkdir ~/googleassistant
nano ~/googleassistant/credentials.json
3. V tomto súbore musíte skopírovať obsah súboru poverení, ktorý sme stiahli. Otvorte súbor.json vo svojom obľúbenom textovom editore a stlačením Ctrl + A potom Ctrl + C skopírujte obsah.
Po skopírovaní obsahu uložte súbor stlačením klávesov Ctrl + X, potom Y a nakoniec stlačte kláves Enter.
4. Po uložení súboru poverení začneme inštalovať niektoré závislosti potrebné na spustenie asistenta Google.
Spustením nasledujúceho príkazu nainštalujte Python3 a Python 3 Virtual Environment do nášho RPi.
sudo apt-get install python3-dev python3-venv
5. Teraz povoľte python3 ako naše virtuálne prostredie pomocou nasledujúceho príkazu
python3 -m venv env
6. Nainštalujte si najnovšie verzie pipu a setuptools. Spustením nasledujúceho príkazu získate aktualizáciu
env/bin/python -m pip install --upgrade pip setuptools --upgrade
7. Aby sme sa dostali do prostredia pythonu, musíme spustiť tento príkaz
source env/bin/activate
8. Teraz nainštalujeme Knižnicu pomocníka Google, postupne spustíme nasledujúce príkazy, aby sme získali aktualizovanú knižnicu
python -m pip install --upgrade google-assistant-library
python -m pip install --upgrade google-assistant-sdk
Teraz sme dokončili inštaláciu všetkých požadovaných závislostí a knižníc.
Autorizuje sa Raspberry Pi pre Asistenta Google
1. Najprv nainštalujeme autorizačný nástroj Google na našu Raspberry pi vykonaním nasledujúceho príkazu
python -m pip install --upgrade google-auth-oauthlib
2. Teraz musíme spustiť knižnicu Google Authentication. Vykonaním tohto príkazu spustíte knižnicu.
google-oauthlib-tool --client-secrets ~ / googleassistant / credentials.json \ --scope https://www.googleapis.com/auth/assistant-sdk-prototype \ --scope https: //www.googleapis. com / auth / gcm \ --save –hlava
Tento príkaz vygeneruje adresu URL, skopíruje túto adresu URL a vloží ju do vášho webového prehliadača.
3. V prehliadači sa prihláste do svojho účtu Google. Ak máte viac účtov, vyberte iba ten, s ktorým ste nastavili kľúč API.
Po prihlásení uvidíte dlhý autentifikačný kód. Skopírujte tento kód, vložte ho do okna terminálu a stlačte kláves Enter. Ak je overenie overené, na príkazovom riadku by sa mal zobraziť nasledujúci riadok, ako je to znázornené na obrázku vyššie:
uložené poverenia: /home/pi/.config/google-oauthlib-tool/credentials.json
4. Naše autentifikačné údaje sú teraz overené, Google však napriek tomu chce, aby boli overené prostredníctvom vyskakovacieho okna. Ale naše pop-up je blokované CORS (Cross-origin resource sharing), takže najskôr túto vec zakážte pomocou príkazu dole.
Ak chcete použiť tento príkaz, uistite sa, že je váš prehliadač chrómu zatvorený, a teraz otvorte nové okno terminálu a zadajte príkaz. Tento príkaz spustí prehliadač chrómu s vypnutým zabezpečením CORS, s týmto vypnutím neprehliadajte internet.
chromium-browser --disable-web-security --user-data-dir "/home/pi/
Po otvorení prehliadača prejdite do predchádzajúceho okna terminálu, v ktorom ste nastavili ukážku asistenta Google.
5. Teraz spustite nasledujúci príkaz na prvé spustenie asistenta Google. V tomto príkaze nahraďte
Ak ste ID projektu zabudli, prejdite do konzoly Actions Console na Googli, kliknite na projekt, ktorý ste vytvorili, potom kliknite na ikonu ozubeného kolieska v ľavom hornom rohu a potom na položku Project Settings.
Tiež vymeniť
googlesamples-assistant-pushtotalk --project-id
Tento príkaz spustí novú kartu v prehliadači Chromium.
6. Teraz stlačte kláves Enter v okne terminálu, čím ho aktivujete a položte akúkoľvek otázku.
Keď ste položili prvú otázku, v prehliadači sa môže zobraziť obrazovka nižšie. Kliknite na Pokračovať -> Rozumiem -> Povoliť.
Ak sa táto obrazovka Pokračovať nezobrazí, žiadny problém.
7. Teraz môžeme použiť vzorku aplikácie Google Assistant spoločnosti Push to talk a získať výstupnú odpoveď.
Keď stlačíte Enter na termináli a hovoríte o akcii, mali by ste počuť slovnú odpoveď a otvorí sa tiež ďalšia karta s akciou, ktorú ste práve volali.
Otvorenie karty môžete zakázať odstránením argumentu –display z príkazu. Potrebovali sme to, aby sme získali obrazovku autorizácie.
Používanie aplikácie Google Assistant na Raspberry Pi
Autorizovali sme našu Raspberry Pi. Kedykoľvek chcete spustiť asistenta Google, jednoducho sa dostaňte do prostredia a postupujte podľa nasledujúcich krokov.
1. Spustite nasledujúci príkaz v prostredí get
zdroj env / bin / aktivovať
Uvidíte (env) v prednej časti každého riadku.
2. Ak chcete spustiť ukážku push to talk, spustite nasledujúci príkaz
googlesamples-assistant-pushtotalk
Tentokrát nepotrebujeme ID produktu a ID zariadenia.
3. Okrem funkcie push to talk môžete asistenta Google spustiť aj vyslovením výrazu Ok Google. Aby ste mohli pracovať, musíte zadať neplatné ID zariadenia. Nesprávne ID zariadenia môže byť čokoľvek ako aaaa, abcd.
Teraz spustite nasledujúci príkaz.
googlesamples-assistant-hotword --device-model-id
Teraz môžete požiadať o čokoľvek pomocou vlastného pomocníka Google, jednoducho povedzte „ Ok Google“.
Takto môžeme nainštalovať Google Assistant na Raspberry Pi a zmeniť ho na domovskú stránku Google pripojením reproduktora a mikrofónu.