Paverskite savo „Raspberry Pi“ naminiu „Google“ pagrindiniu puslapiu

Šaltinis

„Google“ pagrindinis puslapis yra gražus įrenginys su įmontuotu „Google Assistant“ - moderniausias skaitmeninis „Google“ asistentas. Kurį galite patalpinti bet kurioje savo namų vietoje ir jis padarys už jus keletą nuostabių dalykų. Tai padės išsaugoti jūsų priminimus, pirkinių sąrašus, užrašus ir, svarbiausia, atsakyti į jūsų klausimus ir klausimus, atsižvelgiant į pokalbių kontekstą.

Šiame straipsnyje jūs išmoksite savo „Raspberry Pi“ paversti namų gamybos „Google Home“ įrenginiu, kuris yra,

  • Powered by „Google Assistant“.
  • Balsas įjungtas. Nereikia paspausti jokio mygtuko, tiesiog pasakykite „Ok Google“ arba „Ei Google“ ir užduokite savo klausimą.
  • Šviečia LED indikatorius, kuris dega visada, kai vyksta vartotojo ir „Google Assistant“ pokalbis.
  • Jis gali būti inicijuotas įkrovos metu, todėl nereikia iš naujo prisijungti ir paleisti scenarijaus iš terminalo po pakartotinio paleidimo.

Taigi, pradėkime.

Kokių dalykų jums reikės?

  • „Raspberry Pi“ modelis 2 ar 3.
  • „MicroSD“ kortelė su „Raspbian“ (rekomenduojama mažiausiai 8 GB).
  • Maitinimas aviečių pi maitinimui. (Veiks bet kuris USB mobilusis įkroviklis su mažiausiai 5 V, 2A išvestimi.)
  • USB mikrofonas (kadangi „Raspberry Pi“ neturi įmontuoto mikrofono. Aš naudojau MI-305).
  • Kalbėtojas.
  • Šviesos diodas.
  • Pora laidų prijungti LED.

Kai jau turėsite visus šiuos dalykus, prisijunkite prie „Raspbian“ darbalaukio ir pereikite prie šių veiksmų po vieną.

-1 veiksmas: USB mikrofono nustatymas.

  • „Raspberry Pi“ neturi įmontuotų mikrofonų. Jei norite įrašyti garsą, turite pridėti USB mikrofoną.
  • Prijunkite savo USB mikrofoną prie bet kurio „Raspberry Pi“ USB lizdo.
  • Eikite į terminalą ir įveskite šią komandą.
  • Ši komanda išvardins visus galimus garso įrašymo įrenginius. Turėtumėte patekti žemiau išvesties.

Kaip matote, jūsų USB įrenginys yra prijungtas prie 1 kortelės, o įrenginio ID yra 0. „Raspberry Pi“ 0 kortelę atpažįsta kaip vidinę garso plokštę (kuri yra bcm2835), o kitas išorines garso plokštes - kaip išorines garso plokštes.

  • Pakeiskime garso konfigūracijas. Įveskite žemiau esančią komandą, kad galėtumėte redaguoti „asound.conf“ failą.
  • Pridėti žemiau esančias failo eilutes. Tada paspauskite Ctrl + X ir po to Y, kad išsaugotumėte failą.

Tai nustatys jūsų išorinę mikrofoną (žr. Pcm.mic) kaip garso fiksavimo įrenginį (žr. Pcm !. pagal nutylėjimą), o vidinę garso plokštę (0 kortelė) kaip garsiakalbį.

  • Pradiniame kataloge (/ home / pi) sukurkite naują failą pavadinimu .asoundrc, išleisdami šią komandą ir įklijuokite aukščiau esančias konfigūracijas (kurias pridėjote /etc/asound.conf faile.).

-2 žingsnis: garsiakalbio išvesties nustatymas.

  • Prijunkite garsiakalbį prie Raspberry Pi 3,5 mm ausinių lizdo.
  • Vykdykite žemiau esančią komandą, kad atidarytumėte aviečių pi konfigūracijos ekraną.
  • Eikite į Išplėstinės parinktys> Garsas ir pasirinkite norimą išvesties įrenginį.

-3 žingsnis: patikrinkite mikrofoną ir garsiakalbius.

  • Norėdami patikrinti savo garsiakalbį, važiuokite žemiau komanda terminale. Tai leis atlikti bandomąjį garsą. Baigę paspauskite Ctrl + C. Jei negalite išgirsti bandymo garso, patikrinkite garsiakalbio ryšį.
  • Norėdami patikrinti savo mikrofono paleidimą atlikdami komandą. Tai įrašys trumpą garso įrašą. Jei gausite kokių nors klaidų, dar kartą patikrinkite 1 veiksmą.
  • Atkurkite įrašytą garso įrašą ir patvirtinkite, kad viskas veikia tinkamai, išleisdami šią komandą.

Gerai. Mūsų aparatūra nustatyta.

-4 žingsnis: atsisiųskite reikiamus paketus ir sukonfigūruokite „Python“ aplinką:

  • Pirmiausia atnaujinkite operacinę sistemą.
  • Vykdykite žemiau komandą po vieną terminale.

Tai sukurs jūsų „aviečių pi“ aplinką „Python 3“ (kadangi „Google Assistant“ biblioteka veikia tik „Python 3.x“) ir įdiegs reikiamas priklausomybes.

  • Suaktyvinkite python aplinką.
  • Dabar įdiekite „Google Assistant SDK“ paketą, kuriame yra visas kodas, reikalingas norint „Google Assistant“ paleisti „Raspberry Pi“. Tai turėtų atsisiųsti „Google Assistant Library“ ir demonstracinę versiją.

-5 žingsnis: „Google Assistant“ debesies projekto įgalinimas.

  • Atidarykite „Google Cloud Console“ ir sukurkite naują projektą. (Galite tai pavadinti kaip tik norite.) Paskyra, su kuria prisijungiate, bus naudojama užklausoms siųsti „Google Assistant“ ir gauti suasmenintą atsakymą.
  • Eikite į API valdytoją ir įgalinkite „Google Assistant“ API.
  • - Įsitikinkite, kad paskyroje „Activity Controls“ įgalinote žiniatinklio ir programų veiklą, informaciją apie įrenginį ir balso bei garso veiklą.
  • - Eikite į „Kredencialus“ ir nustatykite „OAuth“ turinio ekraną.
  • Eikite į skirtuką „Kredencialai“ ir sukurkite naują „OAuth“ kliento ID.
  • Pasirinkite programos tipą kaip „Kita“ ir nurodykite klavišo pavadinimą.
  • Atsisiųskite JSON failą, kuriame saugoma pagrindinė „OAuth“ informacija, ir saugokite jį.

-6 žingsnis: Raspberry Pi autentifikavimas.

  • Įdiekite autorizacijos įrankį vykdydami žemiau esančią komandą.
  • Paleiskite įrankį vykdydami šią komandą. Įsitikinkite, kad pateikėte teisingą JSON failo, kurį atsisiųsite atlikdami 5 veiksmą, kelią.
  • Jis turėtų būti rodomas kaip parodyta žemiau. Nukopijuokite URL ir įklijuokite jį į naršyklę (tai galite padaryti pas savo kūrėjus

Jei vietoj to rodoma: InvalidGrantError, tada buvo įvestas neteisingas kodas. Bandyk iš naujo.

-7 žingsnis: LED indikatoriaus nustatymas.

  • Prijunkite savo šviesos diodą tarp GPIO 25 kaiščio ir žemės.
  • Idėja čia paprasta. Mes ketiname nustatyti GPIO kaištį 25 kaip išvesties kaištį. „Google Assistant SDK“ teikia atgalinio iškvietimo įvykio tipą.ON_CONVERSATION_TURN_STARTED, kai prasideda konversija su „Google Assistant“. Tuo metu mes nustatysime GPIO 25, kad jie apšviestų šviesos diodą. Kai pokalbis baigsis „EventType“ .ON_CONVERSATION_TURN_FINISHED bus atgautas atgalinis ryšys. Tuo metu iš naujo nustatysime GPIO 25, kad išjungtume šviesos diodą.

-8 žingsnis: Pradėkite įkrovos procesą:

  • Kai jūsų „Raspberry Pi“ užbaigs įkrovos procesą, paleisime python scenarijų, kuris autentifikuos ir inicijuos „Google Assistant“ įkrovos metu.
  • Pirmiausia pridėkite RPi.GPIO paketą, kad pridėtumėte GPIO palaikymą naudodami šią komandą.
  • Eikite į vartotojo katalogą. Sukurkite naują python failą main.py.
  • Parašykite šį scenarijų ir išsaugokite failą.
  • Dabar sukurkite vieną apvalkalo scenarijų, kuris inicijuos ir paleis „Google Assistant“.
  • Įklijuokite žemiau esančias eilutes į failą ir išsaugokite failą.
  • Suteikite leidimą vykdyti.

Galite paleisti google-assistant-init.sh ir bet kada paleisti „Google Assistant“.

Pažiūrėkime, kaip paleidus „Google Assistant“ galite paleisti.

  • Yra du būdai, kaip įgalinti „Google Assistant on Boot“. Pažiūrėkime kiekvieną iš jų.

1. Automatinis paleidimas naudojant „Pixel“ darbalaukį paleidžiant:

  • Tai paleis „Google Assistant“, kai tik įkels „Pixel“ darbalaukį. Įsitikinkite, kad „Raspberry Pi“ konfigūracijose pasirinkote „Desktop“ įkrovą.
  • Įveskite žemiau esančią komandą.
  • Pridėkite šiuos žodžius po @xscreensaver -no-splash
  • Išsaugokite ir išeikite paspausdami „Ctrl + X“, tada „Y“.

2. Automatinis paleidimas naudojant CLI įkrovoje:

  • Tai paleis „Google Assistant“, jei nustatysite CLI įkrovą. Įsitikinkite, kad pasirinkote „CLI“ įkrovą „Raspberry Pi“ konfigūracijose.
  • Įveskite žemiau esančią komandą.
  • Pridėti žemiau esančią eilutę failo pabaigoje.
  • Išsaugokite ir išeikite paspausdami „Ctrl + X“, tada „Y“.
Tai viskas!!! „Namų„ Google “pagrindinis puslapis“ dabar paruoštas. Perkraukite įrenginį ir užduokite savo pirmąjį klausimą „Google Assistant“.

Išvada:

Savo „Google“ pagrindiniame puslapyje galite padaryti daug kasdienių dalykų. Jei norite atlikti pasirinktines užduotis, pavyzdžiui, išjungti šviesą, atidaryti duris, galite tai padaryti integruodami „Google“ veiksmus į „Google Assistant“. Jei kyla problemų paleidžiant „Google Assistant“, palikite komentarą žemiau. Aš pasistengsiu juos išspręsti.

~ Jei jums patiko straipsnis, spustelėkite žemiau esantį , kad jį pamatytų daugiau žmonių! Be to, galite sekti mane „Medium“ arba „Mano tinklaraštyje“, kad gautumėte naujienų apie mano būsimus straipsnius !! ~