Spisu treści:
- Więc jak to wszystko jest możliwe?
- Co jest wymagane?
- Krok 1: Formatowanie karty SD
- Krok 2: Przygotowanie karty SD
- Krok 3: Wzmocnij to Pi
- Krok 4: Konfiguracja wstępna
- Krok 5: Aktualizacja instalacji
- Krok 6: Przygotowanie plików konfiguracyjnych
- Krok 7: Konfigurowanie słowa-klucza
- Krok 8: Konfiguracja dźwięku (część 1)
- Krok 9: Konfiguracja dźwięku (część 2)
- Krok 10: Testowanie dźwięku
- Krok 11: Łączenie się z chmurą
- Krok 12: Testy końcowe
- Krok 13: Konfiguracja Asystenta Google podczas uruchamiania
- Krok 14: Linia mety
Wideo: Hands Free Google Assistant dla Raspberry Pi: 14 kroków (ze zdjęciami)
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:27
Witam i zapraszam do mojego pierwszego Instructable!
W tej instrukcji pokażę, co uważam za najłatwiejszy sposób na zainstalowanie całego śpiewającego, tańczącego Asystenta Google na twoim Raspberry Pi. Jest całkowicie wolna od rąk za pomocą polecenia OK Google i uruchamia się automatycznie po uruchomieniu Pi. Jest super fajna i naprawdę łatwa w konfiguracji!
Więc jak to wszystko jest możliwe?
Jakiś czas temu Google wypuścił zestaw AI typu „zrób to sam” w numerze 57 magazynu The Magpi. Ułatwiło to stworzenie własnego asystenta Google, jednak zdobycie zestawu głosowego było trochę trudniejsze i w wielu miejscach wyprzedał się w ciągu kilku godzin.
Na szczęście firma Google udostępniła całe oprogramowanie online wraz z pełnymi instrukcjami. Oznaczało to, że nie potrzebowaliśmy kopii The Magpi, aby skorzystać z całej tej ciężkiej pracy.
Mimo to wydaje się, że nie ma żadnych wyraźnych instrukcji online dotyczących korzystania z zestawu głosowego bez kopii magazynu lub bez dostarczonego z nim sprzętu. Zamiast tego większość samouczków próbuje zainstalować wszystko od zera, co często powoduje bałagan w kodzie, który jest niemożliwy do naśladowania dla nie-koderów, takich jak ja.
I tu właśnie pojawia się ten Instructable. Jest to wynik 2 dni ciężkiej pracy, przyglądając się setkom samouczków, filmów i postów online. Rezultatem jest stabilny Asystent Google, który działa przy starcie i jest aktywowany głosem za pomocą słowa-klucza „OK Google”.
Co jest wymagane?
Aby pomyślnie ukończyć tę instrukcję, będziesz potrzebować:
- Raspberry Pi 3 (ze zwykłą kartą microSD i przewodem zasilającym). * Dziękuję MichaelW142, który potwierdził, że działa to również z Raspberry Pi 2.
- Podstawowy głośnik ze złączem aux 3,5 mm
- Mikrofon USB
- Mysz i klawiatura
Krok 1: Formatowanie karty SD
Pierwszą rzeczą, którą musimy zrobić, to sformatować naszą kartę SD. Użyjmy narzędzia formatowania SD Association, które jest zalecane przez oficjalną fundację Raspberry Pi.
Po zainstalowaniu uruchom aplikację i kliknij „Opcja” Musisz zmienić opcję „REGULACJA ROZMIARU FORMATU” na „WŁ”.
Teraz kliknij „OK” i dwukrotnie sprawdź, czy formatujemy właściwy dysk, a następnie kliknij „Formatuj”. Nie powinno to zająć zbyt dużo czasu, po prostu poczekaj na potwierdzenie, że dysk został pomyślnie sformatowany, zanim przejdziesz do następnego kroku.
Krok 2: Przygotowanie karty SD
Następnie musimy pobrać obraz karty microSD Voice Kit dla Raspberry Pi. Możesz pobrać obraz z mojego Dysku Google.
Aby przenieść obraz, który właśnie pobraliśmy na naszą kartę SD, użyjemy programu o nazwie Etcher.io. Jest darmowy, open source i nie wymaga instalacji.
Po pobraniu Etchera uruchom program i powinieneś zobaczyć ekran podobny do powyższego. Załadowanie może zająć minutę lub dwie, więc jeśli nie załaduje się od razu, bądź cierpliwy.
Kliknij „Wybierz obraz” i przejdź do pobranego właśnie obrazu zestawu głosowego (aiyprojects-2017-05-03.img). Po wybraniu dwukrotnie sprawdź, czy zapisujesz zawartość na właściwym dysku. Zakładając, że mamy wybrany właściwy dysk, kliknij „Flash!”.
Zapisanie obrazu na karcie SD może zająć około 20 minut lub więcej, więc nie wahaj się i zrób sobie filiżankę herbaty, a do zobaczenia za chwilę!
Krok 3: Wzmocnij to Pi
Gdy tylko karta SD będzie gotowa, możemy włożyć kartę microSD do naszego Raspberry Pi. W tym momencie musimy również podłączyć nasz przewód zasilający, kabel HDMI, klawiaturę, mysz, monitor, głośnik i mikrofon USB. Mam nadzieję, że twoja konfiguracja powinna wyglądać podobnie do mojej.
Używam bezprzewodowej klawiatury i myszy, więc nie przerażaj się, jeśli otrzymasz kilka dodatkowych kabli z własną konfiguracją!
Po podłączeniu kabla zasilającego pozwól, aby Twoje Raspberry Pi uruchomiło się, a wkrótce pojawi się standardowy pulpit Pixel.
Krok 4: Konfiguracja wstępna
Chwyć kursor i przejdź do logo Raspberry Pi w lewym górnym rogu ekranu. Z menu wybierz „Preferencje”, a następnie „Konfiguracja Raspberry Pi”.
Następnie przejdź do „Interfejsów” i włącz „SSH”.
Teraz kliknij logo Wi-Fi w prawym górnym rogu ekranu i wybierz swoją sieć Wi-Fi. Jeśli twoje WiFi jest chronione hasłem, zostaniesz poproszony o wprowadzenie tego. Zielony haczyk potwierdza, że nawiązaliśmy połączenie i jesteśmy gotowi, aby przejść do następnego kroku.
Krok 5: Aktualizacja instalacji
To jest tak zaawansowane, jak ten samouczek. Zamierzamy użyć terminala deweloperskiego, aby zaktualizować pakiet SDK Asystenta Google, zestaw projektów i zależności, aby mieć pewność, że mamy najnowsze wersje. Nie panikuj, jeśli nic z tego nie ma dla Ciebie większego sensu, ale ważne jest, abyśmy nie pominęli tego kroku. Po prostu zrób dokładnie to, co mówi ten samouczek, uważając, aby nie popełnić żadnych literówek, a wszystko będzie dobrze.
Więc panikuj, zacznijmy! Kliknij dwukrotnie ikonę na pulpicie „Uruchom terminal programistyczny”.
Powinieneś zobaczyć przerażająco wyglądające okno terminala deweloperskiego, takie jak to powyżej.
Następnie wpisz następujące polecenia w terminalu dokładnie tak, jak wyglądają poniżej. Jest tu 9 poleceń i każde należy wprowadzić osobno w kolejności, w jakiej się pojawiają. Po wpisaniu każdego polecenia naciśnij „Enter” na klawiaturze przed przejściem do następnego. Wykonanie niektórych poleceń zajmie kilka sekund, więc bądź cierpliwy, czekając na zakończenie każdego z nich, zanim przejdziesz do następnego.
cd ~/asystent-sdk-python
Mistrz kasy git
Mistrz pochodzenia git pull
cd ~/rozpoznawanie głosu-raspi
Mistrz kasy git
Mistrz pochodzenia git pull
cd ~/rozpoznawanie głosu-raspi
rm -rf env
skrypty/instalacja-deps.sh
Krok 6: Przygotowanie plików konfiguracyjnych
Następnie musimy wykonać kopię zapasową naszych istniejących plików konfiguracyjnych i przenieść najnowsze wersje, które właśnie zostały zaktualizowane. Oto 4 dodatkowe polecenia, które możesz właśnie to zrobić. Można to zrobić w tym samym terminalu deweloperskim, którego właśnie używaliśmy. Po raz kolejny należy je wykonać w tej kolejności i wpisać dokładnie tak, jak pokazano poniżej:
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
Krok 7: Konfigurowanie słowa-klucza
Jak dotąd świetna robota! Jesteśmy teraz naprawdę blisko, więc trzymaj się tego.
Musimy teraz zmienić wyzwalacz dla naszego zestawu projektu Google AIY, aby reagował na nasz głos, gdy wypowiadamy słowa „OK Google”.
Wpisz następujące polecenie w terminalu deweloperskim:
nano ~/.config/voice-recognizer.ini
Spowoduje to jeszcze bardziej przerażające okno.
W tym nowym oknie poszukaj następującego kodu:
# Wybierz wyzwalacz: gpio (domyślnie), clap, ok-google.
# wyzwalacz = klaś
Musimy zmienić ten kod na:
# Wybierz wyzwalacz: gpio (domyślnie), clap, ok-google.
wyzwalacz = ok-google
Jeśli użyjesz klawiszy strzałek na klawiaturze, zauważysz, że pojawia się kursor. Używając klawiszy strzałek, sprowadź kursor do wiersza tekstu, który próbujemy zmienić. Używając klawisza Backspace na klawiaturze usuń wiersz tekstu, który próbujemy zmienić i wpisz go ponownie, tak jak w powyższym przykładzie.
Zauważ, że usunąłem również symbol #, ważne jest, abyśmy nie umieszczali # w tym nowym wierszu tekstu.
Załączam zrzut ekranu przed i po tym, jak to wszystko powinno wyglądać (okrywając, że cię tam zgubiłem).
Zakładając, że twoje okno wygląda dokładnie tak, jak moje, możemy zamknąć i zapisać zmiany. Przytrzymaj „Ctrl” na klawiaturze i naciśnij „X”, aby zamknąć okno. Następnie zostaniemy poproszeni o zapisanie wprowadzonych zmian, naciśnięcie „Y”, a następnie naciśnięcie „Enter” na klawiaturze. Okno zostanie teraz zamknięte, a zmiany zapisane.
Aby zmiany weszły w życie, musimy ponownie uruchomić usługę. Wpisz następujące polecenie w oknie terminala i naciśnij „Enter”:
sudo systemctl restart voice-recognizer.service
Krok 8: Konfiguracja dźwięku (część 1)
W tej chwili Asystent Google jest mniej więcej żywy i gotowy do służby. Gratulacje!
Jednak zanim się za bardzo podniecicie, nie będziecie się wzajemnie słyszeć. Dzieje się tak, ponieważ obraz projektu Google AIY został skonfigurowany do pracy ze sprzętem dostarczonym z zestawem. Ponieważ używamy standardowego głośnika aux i mikrofonu USB, musimy poprawić niektóre z konfiguracji.
Ponownie użyjemy tego samego okna terminala deweloperskiego, tym razem wpisz:
sudo leafpad /boot/config.txt
Otworzy się okno tekstowe. Przewiń na sam dół dokumentu i usuń # przed wierszem dtparam=audio=on i wstaw # przed dwoma wierszami poniżej.
Po wprowadzeniu tych zmian powinno wyglądać dokładnie tak:
# Włącz dźwięk (ładuje snd_bcm2835)
dtparam=audio=on #dtoverlay=i2s-mmap #dtoverlay=googlevoicehat-soundcard
Załączam również zrzut ekranu, aby pokazać, jak to będzie wyglądać.
Przejdź do „Plik”, a następnie kliknij „Zapisz. Możesz teraz zamknąć dokument.
Krok 9: Konfiguracja dźwięku (część 2)
Z powrotem w terminalu deweloperskim, wpisz:
sudo leafpad /etc/asound.conf
Po naciśnięciu „Enter” otworzy się nowy dokument tekstowy. Tym razem usuń WSZYSTKI tekst w dokumencie i zastąp go następującym:
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" } }
Ponownie załączyłem zrzut ekranu pokazujący, jak to będzie wyglądać.
Jeszcze raz zapisz i zamknij dokument.
Teraz nadszedł czas na ponowne uruchomienie Raspberry Pi. Kliknij logo Raspberry Pi w lewym górnym rogu ekranu i kliknij „Zamknij”, a następnie „Uruchom ponownie”.
Po ponownym uruchomieniu Pi mamy jeszcze tylko jedną poprawkę. Ponownie kliknij dwukrotnie ikonę „Uruchom terminal deweloperski” i wpisz następujące polecenie:
leafpad /home/pi/voice-recognizer-raspi/checkpoints/check_audio.py
W tym końcowym dokumencie musisz zlokalizować wiersz kodu, który brzmi:
VOICEHAT_ID = „czapka googlevoice”
Zmień to na:
VOICEHAT_ID = „bcm2835”
Po wprowadzeniu tych zmian, tak jak poprzednio, zapisz, a następnie zamknij ten dokument.
Krok 10: Testowanie dźwięku
Na pulpicie znajduje się plik o nazwie „Sprawdź dźwięk”. Kliknij to dwukrotnie i postępuj zgodnie z instrukcjami, aby upewnić się, że zarówno mowa, jak i mikrofon działają.
Jeśli prawidłowo postępowałeś zgodnie z tą instrukcją, nie powinno być żadnych problemów. Jeśli jednak nic nie słyszysz, sprawdź, czy głośność jest zwiększona i czy Twój Raspberry Pi używa „analogowego” do wyjścia dźwięku. Możesz to zrobić, klikając prawym przyciskiem myszy ikonę dźwięku u góry ekranu. „Analogowy” powinien być zaznaczony, tak jak przykład na zrzucie ekranu.
Zakładając, że przeszedłeś test audio, możemy przejść do następnego kroku.
Krok 11: Łączenie się z chmurą
Zanim Asystent Google udzieli nam odpowiedzi na nurtujące nas pytania, musimy połączyć ją z usługami Google Cloud.
Jest to łatwe, ale jeśli wcześniej nie byłeś w chmurze, na początku może się to wydawać nieco zniechęcające.
Oto, co musimy zrobić:
1) Na Raspberry Pi otwórz przeglądarkę internetową Chrome i przejdź do konsoli Cloud:
2) Zaloguj się przy użyciu istniejącego konta Google lub zarejestruj się, jeśli go nie masz.
3) Utwórz nowy projekt i nadaj mu nazwę. Nazwałem swoje „Google Pi”
4) Korzystając z paska wyszukiwania zacznij pisać „Asystent Google” i powinieneś zobaczyć „API Asystenta Google”. Kliknij go, a następnie, gdy załaduje się następna strona, kliknij „Włącz”, aby aktywować API.
5) Przejdź do „Menedżera API”, a następnie „Poświadczenia” i utwórz „klienta OAuth 2.0”.
6) Kliknij „Utwórz dane uwierzytelniające” i wybierz „Identyfikator klienta OAuth”. Jeśli nigdy wcześniej nie byłeś w chmurze, zostaniesz poproszony o skonfigurowanie ekranu zgody. Musisz nazwać swoją aplikację, ja nazwałem swoją „Raspberry Pi”. Wszystkie pozostałe pola można pozostawić puste.
7) Na liście Poświadczenia znajdź nowe poświadczenia i kliknij ikonę pobierania po prawej stronie.
8) Przeglądarka Chrome pobierze teraz mały plik JSON ze wszystkimi Twoimi danymi uwierzytelniającymi przechowywanymi bezpiecznie w środku. Znajdź ten plik i zmień jego nazwę na „assistant.json”, a następnie przenieś go do /home/pi/assistant.json.
9) Na koniec przejdź do strony Kontrola aktywności: https://myaccount.google.com/activitycontrols i włącz następujące usługi: Aktywność w internecie i aplikacjach, Historia lokalizacji, Informacje o urządzeniu, Aktywność głosowa i dźwiękowa. Pamiętaj, aby zalogować się na to samo konto Google, co wcześniej!
Jeśli utknąłeś w dowolnym momencie na tym etapie, nie wariuj, Google wykonało świetną robotę dokumentując ten proces za pomocą zrzutów ekranu dla każdego kroku na stronie Google AIY Kit.
Krok 12: Testy końcowe
Jeśli wszystko zostało poprawnie skonfigurowane w chmurze, jesteśmy teraz gotowi do rozmowy z Google. Ponownie korzystając z okna poleceń „Uruchom terminal deweloperski”, wpisz następujące polecenie:
src/main.py
To obudzi naszego asystenta, ale ponieważ po raz pierwszy łączymy się z usługami Google, otworzy się przeglądarka internetowa i będziesz musiał zalogować się do Google, aby zezwolić Raspberry Pi na dostęp do interfejsu Google Assistant API. Ponownie upewniając się, że używasz tych samych loginów konta Google, co wcześniej.
Po pomyślnym zalogowaniu i przyznaniu uprawnień zostaniesz poproszony o zamknięcie okna. Okno poleceń będzie teraz wyglądać jak dołączony zrzut ekranu potwierdzający, że wszystko zostało poprawnie skonfigurowane.
Śmiało, zadaj pytanie, ona słucha!
Zanim jednak się za bardzo podekscytujesz, jeszcze nie skończyliśmy. Po zakończeniu gry zamknij okno, w tym celu użyj białego krzyżyka w prawym górnym rogu okna.
Krok 13: Konfiguracja Asystenta Google podczas uruchamiania
Obiecałem, że nasz Asystent Google uruchomi się automatycznie, gdy włączymy Raspberry Pi. Aby to zrobić, otwórz nowe okno poleceń za pomocą ikony „Uruchom terminal deweloperski” na pulpicie. Wpisz następujący wiersz kodu w oknie terminala i naciśnij „Enter” na klawiaturze:
sudo systemctl włącz rozpoznawanie głosu
Właśnie skonfigurowaliśmy automatyczne uruchamianie naszego Asystenta Google za pomocą jednej linijki kodu. Jakie to proste!!
Krok 14: Linia mety
Teraz, gdy wykonałeś wszystkie kroki, uruchom ponownie Raspberry Pi. Jeśli dokładnie wykonałeś wszystkie te instrukcje, Asystent Google powinien działać w tle, gdy Pi się ładuje. Spróbuj, powiedz OK Google, aby ją obudzić, i zapytaj, co chcesz!
Naprawdę mam nadzieję, że podoba Ci się ten Instruktaż. To efekt 2 dni ciężkiej pracy i wielu lektur online. Zdecydowanie nie jestem programistą, więc próbowałem znaleźć najłatwiejszy i najbardziej logiczny sposób na przeniesienie działającego Asystenta Google na Raspberry Pi i wierzę, że to jest to.
Jeśli masz jakieś pytania lub sugestie dotyczące tego Instruktażu, daj mi znać w komentarzach poniżej. Chciałbym też usłyszeć, jak wyszedł Twój.
Czytałem wiele samouczków, postów na blogach i wpisów na forum, ale moje największe przełomy w tym projekcie pochodziły z 2 postów online, które próbowały wykonać podobne zadania: https://eduncan911.com/stem/embedded/aiy-google-assistant -upgrades-may-2017.html i https://www.androidauthority.com/build-google-assistant-raspberry-pi-770296/. Ten Instructable jest wynikiem wymyślenia, jak połączyć te dwa elementy w łatwy i prosty Instruktaż!
Dodatkowe kredyty
- Pakiet SDK Asystenta Google ma już ogromną liczbę wbudowanych funkcji, jednak istnieje wiele „modów”, które można dodać do zestawu AIY, aby nadać mu dodatkową funkcjonalność. Ktinkerer ma aktualną listę najnowszych dostępnych modów, sprawdź to! Dziękuję cyberwilkom za zwrócenie na to uwagi:)
- Co powiesz na obudowę głośnika dla twojej nowej, piskliwej sztucznej inteligencji? Sprawdź ten przez adylinn.
Jeśli możesz wymyślić coś jeszcze, co możesz dodać do tej instrukcji, skontaktuj się z nami:)
Drugie miejsce w konkursie autorskim po raz pierwszy
Zalecana:
Pasywny filtr dolnoprzepustowy dla obwodów audio (filtr Free-Form RC): 6 kroków
Pasywny filtr dolnoprzepustowy dla obwodów audio (filtr Free-Form RC): Jedną z rzeczy, która zawsze sprawiała mi problemy podczas tworzenia niestandardowych instrumentów elektronicznych, są ciągłe zakłócenia sygnału audio. Próbowałem ekranowania i różnych sztuczek dla sygnałów okablowania, ale najprostsze rozwiązanie po kompilacji wydaje się b
Szafka arkadowa dla 4 graczy dla MAME: 32 kroki (ze zdjęciami)
Szafka arkadowa dla 4 graczy dla MAME: To pokaże Ci, jak skonstruowałem szafkę MAME dla 4 graczy. Jest wiele rzeczy, które możesz chcieć dostosować do swoich upodobań. Pokażę ci, jak stworzyłem swoją, możesz ją dostosować do własnych upodobań. Mieści się w nim standardowe okno
Google AIY VoiceHAT dla zestawu Raspberry Pi (MagPi 57 wersja 2017): 6 kroków (ze zdjęciami)
Google AIY VoiceHAT dla zestawu Raspberry Pi (MagPi 57 Version 2017): Wskazówki dotyczące montażu zestawu głosowego MagPi nie znajdują się w samouczkach
10 alternatyw dla majsterkowiczów dla gotowych komponentów elektronicznych: 11 kroków (ze zdjęciami)
10 alternatyw dla majsterkowiczów dla gotowych komponentów elektronicznych: witam w moim pierwszym instruktażu! Czy uważasz, że niektóre części od sprzedawców internetowych są zbyt drogie lub niskiej jakości? Potrzebujesz szybko przygotować i uruchomić prototyp i nie mogę się doczekać tygodni na wysyłkę? Brak lokalnych dystrybutorów elektroniki?
Uzyskaj ekran dla swojego Google Home za pomocą Raspberry Pi i Dialogflow (alternatywa dla Chromecasta): 13 kroków
Uzyskaj ekran dla swojego domu Google za pomocą Raspberry Pi i Dialogflow (alternatywa dla Chromecasta): Odkąd kupiłem dom Google, chcę sterować moimi urządzeniami w domu za pomocą poleceń głosowych. Działa świetnie pod każdym względem, ale czułem się źle z powodu jego funkcji wideo. Youtube i Netflix możemy oglądać tylko wtedy, gdy mamy urządzenie Chromecast lub T