Inhoudsopgave:

Pi-assistent: 12 stappen
Pi-assistent: 12 stappen

Video: Pi-assistent: 12 stappen

Video: Pi-assistent: 12 stappen
Video: Home Assistant - первые настройки, File Editor, Maria DB, HACS - октябрь 2023 2024, November
Anonim
Pi-assistent
Pi-assistent

Dit is een Google Assistent-project met Raspberry Pi 3 A+ bord.

Dit was een ontwerp voor het IEEE-project van mijn universiteit, zodat mensen meer geïnteresseerd zullen zijn in technologie en het maken van dingen.

Ik zal door de basisinstallatie van het besturingssysteem voor de raspi gaan, google-assistent instellen op de raspi en automatisch starten.

Laten we beginnen!

Stap 1: Onderdelenlijst

We zullen het Raspberry Pi 3 A+-bord gebruiken

De reden dat ik het A + -bord gebruik, is alleen omdat ik het goedkoper was dan het B-bord en ik het wilde gebruiken sinds het net werd gelanceerd.

1x Raspberry Pi 3 A+

1x Micro-USB-kabel (voor stroom)

1x ethernetkabel

1x USB naar ethernet

1x USB-hub

1x microfoon

1x luidspreker

Het is handig als u een USB-hub + Ethernet-poortkabel kunt krijgen.

Je hebt ook een andere computer nodig om aan dit project te werken.

Stap 2: Raspi-installatie

U moet Rasbian OS op de SD-kaart installeren.

Ga naar https://www.raspberrypi.org/downloads/raspbian/ en download de nieuwste Rasbian.

MAC:

Gebruik Etcher en brand het img-bestand op de SD-kaart.

*De SD-kaart wordt gewist, maak indien nodig een back-up.

Ramen:

Gebruik Rufus en brand het img-bestand op de SD-kaart.

*De SD-kaart wordt gewist, maak indien nodig een back-up.

Schakel SSH in door een bestand met de naam "ssh" (zonder enige extensie) op de opstartpartitie van de SD-kaart te plaatsen

Als u een monitor gaat gebruiken hoeft u dit niet te doen.

Stap 3: Hardware aansluiten

Verbind nu de hardware met elkaar.

Gebruik een usb-hub en sluit de microfoon en de ethernetkabel aan. Sluit de luidspreker aan op de 3,5 mm stereo-aansluiting.

Sluit nu de andere kant van de ethernetkabel aan op uw computer.

Sluit tot slot de micro-usb-kabel aan op de raspi.

Stap 4: Log in op Raspi

Open terminal of gebruik stopverf en ssh in de raspi

type

ssh pi@raspberrypi

Inloggen als

gebruikersnaam: pi

wachtwoord: framboos

Nu ben je in raspi!

U kunt naar sudo raspi-config gaan om het wachtwoord te wijzigen en verbinding te maken met wifi.

Stap 5: Audio instellen

U moet het audiosysteem op de raspi configureren om de voorbeeldcode van Google Assistant te kunnen gebruiken.

Type

een record -l

aplay -l

en noteer het kaartnummer en het apparaatnummer.

Voor de luidspreker kiest u de op die zegt bcm2835 ALSA.

Dan maak je een bestand.asoundrc onder /home/pi

Type

nano.asoundrc

Kopieer nu de onderstaande code en vervang het kaartnummer en het apparaatnummer door uw nummer.

pcm.!standaard {

typ asymmetrisch

capture.pcm "microfoon"

playback.pcm "luidspreker"

}

pcm.mic {

type stekker

slaaf {

pcm "hw: kaartnummer, apparaatnummer"

}

}

pcm.luidspreker {

type stekker

slaaf {

pcm "hw:kaartnummer, apparaatnummer"

}

}

Gebruik nu de onderstaande code om de functionaliteit van de luidspreker en de microfoon te testen.

luidsprekertest -t wav

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

aplay --format=S16_LE --rate=16000 out.raw

Stap 6: Installeer de SDK en voorbeeldcode

Installeer de SDK en de voorbeeldcode op de raspi door deze opdrachten uit te voeren.

Eerst installeer je Python 3

sudo apt-get update

sudo apt-get install python3-dev python3-venv # Gebruik python3.4-venv als het pakket niet kan worden gevonden.

python3 -m venv env

env/bin/python -m pip install --upgrade pip setuptools wiel

bron env/bin/activeren

Download de Google Assistent-pakketten

sudo apt-get install portaudio19-dev libffi-dev libssl-dev libmpg123-dev

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

python -m pip install --upgrade google-assistant-sdk [voorbeelden]

Stap 7: Registreer uw Pi-assistent

Je moet je project en het apparaat registreren om Google Assistant te kunnen gebruiken.

Doorloop de volgende instructies.

1. Schakel Google Assistent API in

A. Open de actieconsole

B. Klik op Project toevoegen/importeren.

C. Maak een nieuw project, typ een naam in het vak Projectnaam en klik op PROJECT MAKEN.

NS. Klik op Apparaatregistratie onderaan de pagina.

e. De Google Assistent-API inschakelen

Ga naar link en klik op Inschakelen.

F. U moet het OAuth-toestemmingsscherm voor uw project configureren in de Cloud Platform Console.

2. Open Action Console opnieuw om het apparaatmodel te registreren.

A. Vul informatie in

B. Als u klaar bent, klikt u op Model registreren

C. Vervolgens download je de inloggegevens

U moet dit bestand ook op de raspberry pi. plaatsen

Om dit te doen, typt u de opdracht in terminal (vervang client-id door uw eigen id)

scp ~/Downloads/client_secret_ client-id.json pi@raspberrypi-ip:/home/pi/Download

NS. U kunt de Specificeer eigenschappen overslaan

e. Als u het model bewerkt, moet u de referentie opnieuw downloaden

Stap 8: Inloggegevens genereren

Installeer of update de autorisatietool:

python -m pip install --upgrade google-auth-oauthlib[tool]

Genereer referenties om de voorbeeldcode en hulpprogramma's uit te voeren. Verwijs naar het JSON-bestand dat u in een vorige stap hebt gedownload; u moet het mogelijk naar het apparaat kopiëren. Hernoem dit bestand niet.

google-oauthlib-tool --scope https://www.googleapis.com/auth/assistant-sdk-prototype / --scope https://www.googleapis.com/auth/gcm / --save --headless - -clientgeheimen /pad/naar/client_secret_client-id.json

Stap 9: Probeer de voorbeeldcode

Nu kunt u het voorbeeldprogramma uitvoeren.

Voer hiervoor de volgende opdracht uit en vervang de my-dev-project en my-model

googlesamples-assistent-hotword --project-id mijn-dev-project --device-model-id mijn-model

Zodra het begint te lopen, probeer het

Hey Google, hoe is het weer?

Hoe laat is het?

Als het u een foutmelding geeft over audio, probeer dan deze opdracht uit te voeren

sudo apt-get install matrixio-creator-xxxx

Stap 10: Autostart instellen: script genereren

Om ervoor te zorgen dat de raspi de Google Assistant-software automatisch kan starten, zullen we het autostart-bestand bewerken.

Maak eerst een script met de naam google_autostart.sh

nano google_autostart.sh

Dan typ je

#!/bin/bash

bron env/bin/activeren

google-assistent-demo&

& aan het einde van de regel zorgt ervoor dat de software op de achtergrond draait.

Wanneer u ooit een script maakt, heeft het bestand geen toestemming om uit te voeren.

U kunt controleren door te rennen

ls -l google_autostart.sh

het zou je moeten opleveren met

-rw-r--r-- l pi pi datum tijd google_autostart

Om dit script toestemming te geven om een script uit te voeren

sudo chmod +x google_autostart.sh

Als u nu het bestand controleert, moet de kleur van het.sh-bestand veranderen en zeggen:

-rwxr-xr-x l pi pi datum tijd google_autostart.sh

Probeer en als het werkt, heb je met succes een scriptbestand gegenereerd om Google Assistant automatisch te starten.

./google_autostart.sh

Stap 11: Autostart instellen: het script instellen op Autostart

Nu moet je het script instellen in het opstartbestand in de raspi.

Ga naar

/etc/xdg/lxsession/LXDE-pi/

dan

nano automatisch starten

voeg in het bestand de directory en de scriptinformatie toe op de laatste regel.

/home/pi/google_autostart.sh

Nu zou je in staat moeten zijn om de ethernetkabel los te koppelen en alleen de luidspreker, microfoon en de stroom op de usb te hebben en de Google Assistant-software zou automatisch moeten opstarten.

Stap 12: Extra

De instructies die we hier hebben gevolgd, zijn alleen voor de basisvoorbeeldcode van de Google-assistent.

U kunt de software upgraden door verschillende bibliotheken te installeren.

De onderstaande link zal je pi-assistent toevoegen, wat meer fetures

github.com/googlesamples/assistant-sdk-pyt…

Als u de Google Cast SDK instelt, kunt u dingen doen als:

Oké Google, speel Spotify af

U kunt ook Google Assistant en de andere pinnen en poorten op de raspi gebruiken om meer acties uit te voeren

zoals het besturen van LED's, motoren en alles wat je maar kunt bedenken !!!

Aanbevolen: