Inhoudsopgave:

Handsfree Google Assistant voor Raspberry Pi 14 stappen (met afbeeldingen) - Ajarnpa
Handsfree Google Assistant voor Raspberry Pi 14 stappen (met afbeeldingen) - Ajarnpa

Video: Handsfree Google Assistant voor Raspberry Pi 14 stappen (met afbeeldingen) - Ajarnpa

Video: Handsfree Google Assistant voor Raspberry Pi 14 stappen (met afbeeldingen) - Ajarnpa
Video: Мини ПК на Intel N100 - AC8-N, мощная безвентиляторная платформа, установка Home Assistant OS 2024, November
Anonim
Image
Image
De SD-kaart formatteren
De SD-kaart formatteren

Hallo en welkom bij mijn eerste Instructable!

In deze instructable ga ik je laten zien wat ik beschouw als de gemakkelijkste manier om een alle zingende, dansende Google-assistent op je Raspberry Pi te installeren. Ze is volledig handsfree met het OK Google-commando en ze start automatisch op wanneer je je Pi opstart. Ze is super cool en serieus eenvoudig in te stellen!

Dus hoe is dit allemaal mogelijk?

Kort geleden heeft Google een doe-het-zelf AI-kit uitgebracht met nummer #57 van The Magpi. Dit maakte het extreem eenvoudig om je eigen Google-assistent te maken, maar het was een beetje moeilijker om de voice-kit te bemachtigen en op veel plaatsen was deze binnen enkele uren uitverkocht.

Gelukkig heeft Google alle software online beschikbaar gemaakt, compleet met volledige instructies. Dit betekende dat we geen exemplaar van The Magpi nodig hadden om te profiteren van al dat harde werk.

Desondanks lijken er geen duidelijke instructies online te zijn over het gebruik van de spraakkit zonder een kopie van het tijdschrift of zonder de hardware die ermee is meegeleverd. In plaats daarvan proberen de meeste tutorials om alles helemaal opnieuw te installeren, wat vaak resulteert in een warboel van code die onmogelijk te volgen is voor niet-codeerders zoals ik.

En dat is waar deze Instructable binnenkomt. Het is het resultaat van 2 dagen hard werken door honderden tutorials, video's en berichten online te bekijken. Het resultaat is een stabiele Google Assistant die bij het opstarten draait en spraakgestuurd wordt met het hotword 'OK Google'.

Wat is er nodig?

Om deze Instructable met succes te voltooien, hebt u het volgende nodig:

  • Een Raspberry Pi 3 (met de gebruikelijke microSD-kaart en netsnoer). * Bedankt aan MichaelW142 die heeft bevestigd dat dit ook werkt met Raspberry Pi 2.
  • Een basisspeaker met een 3,5 mm aux-aansluiting
  • Een USB-microfoon
  • Een muis en toetsenbord

Stap 1: De SD-kaart formatteren

Het allereerste dat we moeten doen, is onze SD-kaart formatteren. Laten we de formatteringstool van de SD Association gebruiken, die wordt aanbevolen door de officiële Raspberry Pi Foundation.

Eenmaal geïnstalleerd, start u de applicatie en klikt u op 'Optie'. U moet de optie voor 'FORMAT SIZE ADJUSTMENT' wijzigen in 'ON'.

Klik nu op 'OK' en controleer nogmaals of we de juiste schijf formatteren en klik vervolgens op 'Formatteren'. Dit zou niet te lang moeten duren, wacht gewoon op de bevestiging dat de schijf met succes is geformatteerd voordat u naar de volgende stap gaat.

Stap 2: De SD-kaart voorbereiden

De SD-kaart voorbereiden
De SD-kaart voorbereiden

Vervolgens moeten we de Voice Kit microSD-kaartafbeelding voor de Raspberry Pi downloaden. Je kunt de afbeelding downloaden van mijn Google Drive.

Om de afbeelding die we zojuist hebben gedownload naar onze SD-kaart over te zetten, gaan we een programma gebruiken met de naam Etcher.io. Het is gratis, open source en vereist geen installatie.

Nadat u Etcher hebt gedownload, voert u het programma uit en ziet u een scherm zoals hierboven. Het kan een minuut of twee duren om te laden, dus als het niet meteen wordt geladen, heb dan geduld.

Klik op 'Afbeelding selecteren' en navigeer naar de afbeelding van de voicekit die we zojuist hebben gedownload (aiyprojects-2017-05-03.img). Eenmaal geselecteerd, controleer nogmaals of u de inhoud naar de juiste schijf schrijft. Ervan uitgaande dat we de juiste schijf hebben geselecteerd, klik dan op 'Flash!'.

Het kan ongeveer 20 minuten of langer duren om de afbeelding naar je SD-kaart te schrijven, dus voel je vrij om een lekker kopje thee voor jezelf te zetten en ik zie je hier zo weer terug!

Stap 3: Zet die Pi aan

Zet die Pi aan!
Zet die Pi aan!
Zet die Pi aan!
Zet die Pi aan!

Zodra de SD-kaart klaar is, kunnen we de microSD-kaart in onze Raspberry Pi plaatsen. Op dit punt moeten we ook onze stroomkabel, HDMI-kabel, toetsenbord, muis, monitor, luidspreker en USB-microfoon aansluiten. Hopelijk zou jouw setup er ongeveer zo uit moeten zien als de mijne.

Ik gebruik een draadloos toetsenbord en draadloze muis, dus maak je geen zorgen als je een paar extra kabels krijgt met je eigen setup!

Met de voedingskabel aangesloten, laat je je Raspberry Pi opstarten en krijg je binnenkort de standaard Pixel-desktop te zien.

Stap 4: Eerste configuratie

Initiële configuratie
Initiële configuratie
Initiële configuratie
Initiële configuratie
Initiële configuratie
Initiële configuratie

Pak je cursor en navigeer naar het Raspberry Pi-logo linksboven in je scherm. Selecteer in de vervolgkeuzelijst 'Voorkeuren' en vervolgens 'Raspberry Pi-configuratie'.

Ga vervolgens naar 'Interfaces' en schakel 'SSH' in.

Klik nu op het wifi-logo rechtsboven in het scherm en selecteer je wifi-netwerk. Als uw wifi met een wachtwoord is beveiligd, wordt u gevraagd om dat in te voeren. Het groene vinkje bevestigt dat we succesvol verbinding hebben gemaakt en dat we klaar zijn om naar de volgende stap te gaan.

Stap 5: De installatie bijwerken

De installatie bijwerken
De installatie bijwerken

Dit is ongeveer net zo geavanceerd als deze tutorial. We gaan de dev-terminal gebruiken om de Google Assistant SDK, Project Kit en afhankelijkheden bij te werken om ervoor te zorgen dat we de nieuwste versies hebben. Raak niet in paniek als dit allemaal niet logisch voor u is, maar het is essentieel dat we deze stap niet overslaan. Doe precies wat deze tutorial zegt en pas op dat je geen typefouten maakt en het komt allemaal goed.

Dus, paniek, laten we beginnen! Dubbelklik op de naam van het bureaubladpictogram 'Start dev terminal'.

Je zou een eng uitziend dev-terminalvenster moeten zien zoals hierboven.

Typ vervolgens de volgende opdrachten in de terminal precies zoals ze hieronder worden weergegeven. Er zijn hier 9 commando's en elk moet afzonderlijk worden ingevoerd in de volgorde waarin ze verschijnen. Druk na het typen van elke opdracht op 'Enter' op je toetsenbord voordat je naar de volgende gaat. Sommige commando's duren een paar seconden om te voltooien, dus wacht geduldig tot ze allemaal zijn voltooid voordat je naar de volgende gaat.

cd ~/assistent-sdk-python

git kassa master

git pull oorsprong master

cd ~/spraakherkenning-raspi

git kassa master

git pull oorsprong master

cd ~/spraakherkenning-raspi

rm -rf env

scripts/install-deps.sh

Stap 6: De configuratiebestanden voorbereiden

Vervolgens moeten we een back-up maken van onze bestaande configuratiebestanden en de nieuwste versies overbrengen die zojuist zijn bijgewerkt. Hier zijn nog 4 opdrachten om precies dat te doen. Deze kunnen worden gedaan in dezelfde dev-terminal die we net gebruikten. Nogmaals, ze moeten in deze volgorde worden gedaan en moeten precies worden getypt zoals ze hieronder worden weergegeven:

cp ~/.config/status-led.ini ~/.config/status-led.ini~

cp ~/.config/voice-recognizer.ini ~/.config/voice-recognizer.ini~

cp ~/voice-recognizer-raspi/config/status-led.ini.default ~/.config/status-led.ini

cp ~/voice-recognizer-raspi/config/voice-recognizer.ini.default ~/.config/voice-recognizer.ini

Stap 7: Het Hotword instellen

Het Hotword instellen
Het Hotword instellen
Het Hotword instellen
Het Hotword instellen

Geweldig werk tot nu toe! We komen nu heel dichtbij, dus hou vol.

We moeten nu de trigger voor onze Google AIY-projectkit wijzigen, zodat deze op onze stem reageert wanneer we de woorden 'OK Google' uitspreken.

Typ de volgende opdracht in de dev-terminal:

nano ~/.config/voice-recognizer.ini

Dit zal dit nog enger venster opleveren.

Zoek in dit nieuwe venster naar de volgende code:

# Selecteer de trigger: gpio (standaard), klap, ok-google.

# trigger = klap

We moeten deze code wijzigen in:

# Selecteer de trigger: gpio (standaard), klap, ok-google.

trigger = ok-google

Als u de pijltjestoetsen op uw toetsenbord gebruikt, ziet u een cursor verschijnen. Gebruik de pijltoetsen om de cursor omlaag te brengen naar de tekstregel die we proberen te wijzigen. Gebruik de backspace-toets op uw toetsenbord om de tekstregel die we proberen te wijzigen, te verwijderen en typ deze opnieuw, net als in het bovenstaande voorbeeld.

Merk op dat ik ook het # symbool heb verwijderd, het is belangrijk dat we de # niet opnemen in deze nieuwe regel tekst.

Ik heb een screenshot voor en na bijgevoegd van hoe dit er allemaal uit zou moeten zien (encase ik ben je daar kwijtgeraakt).

Ervan uitgaande dat uw venster er precies zo uitziet als het mijne, kunnen we de wijzigingen sluiten en opslaan. Houd 'Ctrl' op uw toetsenbord ingedrukt en druk op 'X' om het venster te sluiten. We worden dan gevraagd om de gemaakte wijzigingen op te slaan, druk op 'Y' en druk vervolgens op 'Enter' op uw toetsenbord. Het venster wordt nu gesloten en de wijzigingen zijn opgeslagen.

Om ervoor te zorgen dat de wijzigingen van kracht zijn, moeten we de service opnieuw starten. Typ de volgende opdracht in het terminalvenster en druk op 'Enter':

sudo systemctl herstart voice-recognizer.service

Stap 8: Audioconfiguratie (deel 1)

Audioconfiguratie (deel 1)
Audioconfiguratie (deel 1)

Op dit moment is Google Assistant min of meer levend en klaar om te dienen.. Gefeliciteerd!

Voordat je echter te opgewonden raakt, kun je elkaar niet horen. Dat komt omdat de Google AIY Project Image is geconfigureerd om te werken met de hardware die bij de kit is geleverd. Omdat we een standaard aux-luidspreker en usb-microfoon gebruiken, moeten we een deel van de configuratie aanpassen.

We zullen opnieuw hetzelfde dev-terminalvenster gebruiken, dit keer van het type:

sudo leafpad /boot/config.txt

Dit opent een tekstvenster. Scroll helemaal naar beneden in het document en verwijder de # voor de regel dtparam=audio=on en voeg een # in voor de twee regels eronder.

Nadat u deze wijzigingen heeft aangebracht, zou het er precies zo uit moeten zien:

# Audio inschakelen (laadt snd_bcm2835)

dtparam=audio=aan #dtoverlay=i2s-mmap #dtoverlay=googlevoicehat-geluidskaart

Ik heb ook een screenshot bijgevoegd om je te laten zien hoe dit eruit zal zien.

Ga naar 'Bestand' en klik vervolgens op 'Opslaan'. U kunt het document nu sluiten.

Stap 9: Audioconfiguratie (deel 2)

Audioconfiguratie (deel 2)
Audioconfiguratie (deel 2)

Terug in de dev-terminal typ je:

sudo leafpad /etc/asound.conf

Wanneer u op 'Enter' drukt, wordt een nieuw tekstdocument geopend. Verwijder deze keer ALLE tekst in het document en vervang deze door het volgende:

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

Nogmaals, ik heb een screenshot bijgevoegd die u laat zien hoe dit eruit zal zien.

Sla het document nogmaals op en sluit het.

Nu is het tijd om je Raspberry Pi opnieuw op te starten. Klik op het Raspberry Pi-logo linksboven in je scherm en klik op 'Shutdown' en vervolgens op 'Reboot'.

Nadat je de Pi opnieuw hebt opgestart, hoeven we nog maar één aanpassing te maken. Dubbelklik nogmaals op het pictogram 'Start dev terminal' en typ het volgende:

leafpad /home/pi/voice-recognizer-raspi/checkpoints/check_audio.py

In dit laatste document moet u de coderegel vinden die luidt:

VOICEHAT_ID = 'googlevoicehat'

Verander dit in:

VOICEHAT_ID = 'bcm2835'

Nadat u deze wijzigingen heeft aangebracht, zoals we eerder hebben gedaan, slaat u dit document op en sluit u het.

Stap 10: de audio testen

De audio testen
De audio testen

Op het bureaublad staat een bestand met de naam 'Check audio'. Dubbelklik hierop en volg de aanwijzingen om ervoor te zorgen dat zowel de spraak als de microfoon werken.

Als je deze Instructable correct hebt gevolgd, zouden er geen problemen moeten zijn. Als u echter niets kunt horen, controleer dan nogmaals of het volume hoog staat en of uw Raspberry Pi 'Analoog' gebruikt voor geluidsuitvoer. Dit doet u door met de rechtermuisknop op het geluidspictogram boven in het scherm te klikken. 'Analoog' moet worden aangevinkt, net als in het voorbeeld in de schermafbeelding.

Ervan uitgaande dat u geslaagd bent voor de audiocontrole, kunnen we doorgaan naar de volgende stap.

Stap 11: Verbinding maken met de cloud

Voordat Google Assistant ons antwoorden geeft op de brandende vragen van het leven, moeten we haar verbinden met Google's Cloud Services.

Dit is gemakkelijk te doen, maar als u nog niet eerder in de cloud bent geweest, lijkt het in het begin misschien een beetje ontmoedigend.

Dit is wat we moeten doen:

1) Open op de Raspberry Pi de Chrome internetbrowser en ga naar de Cloud Console:

2) Log in met een bestaand Google-account of meld je aan als je er nog geen hebt.

3) Maak een nieuw project aan en geef het een naam. Ik noemde de mijne 'Google Pi'

4) Gebruik de zoekbalk om 'Google Assistant' te typen en u zou de 'Google Assistant API' moeten zien. Klik erop en wanneer de volgende pagina wordt geladen, klikt u op 'Inschakelen' om de API te activeren.

5) Ga naar 'API Manager' en vervolgens naar 'Inloggegevens' en maak een 'OAuth 2.0-client' aan.

6) Klik op 'Inloggegevens maken' en selecteer 'OAuth-client-ID'. Als u nog nooit in de cloud bent geweest, wordt u nu gevraagd om uw toestemmingsscherm te configureren. Je moet je app een naam geven, ik noemde de mijne 'Raspberry Pi'. Alle andere velden kunnen leeg worden gelaten.

7) Zoek in de lijst met inloggegevens uw nieuwe inloggegevens en klik op het downloadpictogram aan de rechterkant.

8) De Chrome-browser downloadt nu een klein JSON-bestand waarin al uw inloggegevens veilig zijn opgeslagen. Zoek dit bestand en hernoem het naar 'assistant.json' en verplaats het vervolgens naar /home/pi/assistant.json.

9) Ga ten slotte naar de pagina Activiteitsbeheer: https://myaccount.google.com/activitycontrols en schakel de volgende services in: web- en app-activiteit, locatiegeschiedenis, apparaatinformatie, spraak- en audio-activiteit. Zorg ervoor dat u inlogt met hetzelfde Google-account als voorheen!

Als je op enig moment in deze fase vastloopt, raak dan niet in paniek, Google heeft uitstekend werk verricht door dit proces te documenteren met screenshots voor elke stap op de Google AIY Kit-website.

Stap 12: Laatste testen

Laatste testen
Laatste testen

Als alles correct was ingesteld in de cloud, zijn we nu klaar om met Google te praten. Gebruik het opdrachtvenster 'Start dev terminal' opnieuw en typ het volgende:

src/main.py

Hierdoor wordt onze assistent wakker, maar aangezien dit de eerste keer is dat we verbinding maken met de services van Google, wordt een webbrowser geopend en moet je inloggen bij Google om toestemming te geven voor de Raspberry Pi om toegang te krijgen tot de Google Assistant API. Zorg er opnieuw voor dat u dezelfde aanmeldingen voor uw Google-account gebruikt als voorheen.

Nadat u succesvol bent ingelogd en toestemming hebt gegeven, wordt u gevraagd het venster te sluiten. Het opdrachtvenster ziet er nu uit als de bijgevoegde schermafbeelding die bevestigt dat alles correct is ingesteld.

Ga je gang, stel een vraag, ze luistert!

Voordat je echter te opgewonden raakt, zijn we nog niet helemaal klaar. Als je klaar bent met spelen, sluit je het venster, hiervoor gebruik je het witte kruis rechtsboven in het venster.

Stap 13: Google Assistent instellen bij opstarten

Ik heb je beloofd dat onze Google Assistent automatisch zou opstarten wanneer we de Raspberry Pi opstarten. Open hiervoor een nieuw opdrachtvenster met behulp van het pictogram 'Start dev terminal' op het bureaublad. Typ de volgende regel code in uw terminalvenster en druk op 'Enter' op uw toetsenbord:

sudo systemctl spraakherkenning inschakelen

We hebben zojuist het automatisch opstarten van onze Google Assistent geconfigureerd met één regel code.. Hoe gemakkelijk was dat!!

Stap 14: de finishlijn

Nu je alle stappen hebt voltooid, ga je gang en start je je Raspberry Pi opnieuw op. Als je al deze instructies zorgvuldig hebt gevolgd, zou Google Assistant op de achtergrond moeten draaien wanneer de Pi wordt geladen. Probeer het eens, zeg OK Google om haar wakker te maken en vraag haar wat je maar wilt!

Ik hoop echt dat je dit Instructable leuk vond. Het is het resultaat van 2 dagen hard werken en veel online lezen. Ik ben absoluut geen programmeur, dus ik heb geprobeerd de gemakkelijkste en meest logische manier te vinden om een werkende Google Assistent op een Raspberry Pi te krijgen en ik geloof dat dit het is.

Als je vragen of suggesties hebt met betrekking tot deze Instructable, laat het me dan weten in de reacties hieronder. Ik hoor ook graag hoe die van jou is bevallen.

Ik heb veel tutorials, blogposts en forumberichten gelezen, maar mijn grootste doorbraken met dit project kwamen van 2 online posts die allebei soortgelijke taken probeerden uit te voeren: https://eduncan911.com/stem/embedded/aiy-google-assistant -upgrades-may-2017.html en https://www.androidauthority.com/build-google-assistant-raspberry-pi-770296/. Deze Instructable is het resultaat van het uitzoeken hoe de twee samen te voegen in een eenvoudige en ongecompliceerde Instructable!

Extra tegoeden

- De Google Assistant SDK heeft al een groot aantal ingebouwde functies, maar er zijn veel 'mods' die je aan de AIY Kit kunt toevoegen om hem wat extra functionaliteit te geven. Ktinkerer heeft een up-to-date lijst van de nieuwste beschikbare mods, check it out! Bedankt cyberwolves om ons erop te wijzen:)

- Wat dacht je van een luidsprekerbehuizing voor je piepende nieuwe AI? Bekijk deze van adylinn.

Als je iets anders kunt bedenken om aan deze Instructable toe te voegen, neem dan contact met ons op:)

Eerste keer auteurswedstrijd
Eerste keer auteurswedstrijd
Eerste keer auteurswedstrijd
Eerste keer auteurswedstrijd

Tweede plaats in de eerste auteurswedstrijd

Aanbevolen: