- Απαιτήσεις υλικού
- Ρύθμιση του Google API για το Raspberry Pi Google Assistant
- Ρύθμιση του Βοηθού Google για το Raspberry Pi Google Home
- Εξουσιοδότηση του Raspberry Pi για τον Βοηθό Google
- Χρήση του Βοηθού Google στο Raspberry Pi
Έχετε σκεφτεί ποτέ για ένα ηχείο που μπορεί να ελεγχθεί από τη φωνή σας !!! Ναι, το Amazon Echo είναι ένα από τα πιο δημοφιλή ηχεία με φωνητικό έλεγχο, αλλά σε ανταγωνισμό με αυτό το Google Home γίνεται επίσης δημοφιλές. Οι βοηθοί φωνής γίνονται όλο και πιο δημοφιλείς καθώς προχωρούμε προς μια εποχή συστημάτων που βασίζονται σε AI. Έχετε ακούσει για τον Βοηθό Google, το Apple Siri και το Amazon Alexa. Όλα αυτά είναι συστήματα AI που βασίζονται στη φωνή, αυτό που τα διαφοροποιεί μεταξύ τους είναι τα οικοσυστήματά τους και εδώ είναι που ξεχωρίζει περισσότερο ο Βοηθός Google. Google, Apple και Amazon, όλες αυτές οι εταιρείες έχουν ήδη ξεκινήσει τα έξυπνα ηχεία τους. Τα έξυπνα ηχεία Google είναι επίσης διαθέσιμα στην αγορά. Καλύψαμε ήδη το Amazon Echo με βάση το Raspberry Pi, αυτή τη φορά θα μετατρέψουμε το Raspberry Pi σε ηχείο Google Home.
Η Google παρέχει το API για τη χρήση της υπηρεσίας φωνής, η οποία είναι ανοιχτού κώδικα και είναι διαθέσιμη στο Github. Χρησιμοποιώντας τη φωνητική υπηρεσία Google, μπορούμε να παίξουμε μουσική, να λάβουμε πληροφορίες σχετικά με τον καιρό, να κάνουμε κράτηση εισιτηρίων και πολλά άλλα. Το μόνο που έχετε να κάνετε είναι να ρωτήσετε. Σε αυτό το σεμινάριο, ας δούμε πώς να φτιάξουμε ένα έξυπνο ηχείο με φωνητική χρήση χρησιμοποιώντας το βοηθό Google και το Raspberry Pi.
Απαιτήσεις υλικού
- Κάρτα Raspberry Pi 3 ή Raspberry Pi 2 Model B και SD (8 GB ή περισσότερο)
- Εξωτερικό ηχείο με καλώδιο AUX 3,5 mm
- Οποιαδήποτε κάμερα Web ή μικρόφωνο USB 2.0
Υποθέτουμε επίσης ότι το Raspberry pi έχει ήδη ρυθμιστεί με λειτουργικό σύστημα Raspbian και είναι συνδεδεμένο στο διαδίκτυο. Με αυτά στη θέση του ας συνεχίσουμε το σεμινάριο. Εάν είστε νέοι στο Raspberry Pi, τότε ξεκινήστε πρώτα με το Raspberry pi.
Σημείωση: Η κάμερα Web έχει ενσωματωμένο μικρόφωνο, έτσι θα το χρησιμοποιήσουμε στη θέση του μικροφώνου USB 2.0.
Χρειάζεστε επίσης πληκτρολόγιο, ποντίκι και οθόνη για να συνδέσετε το βατόμουρο pi χρησιμοποιώντας καλώδιο HDMI.
Έλεγχος μικροφώνου Webcam με Raspberry Pi:
1. Ανοίξτε το τερματικό Raspberry Pi και πληκτρολογήστε arecord -l εντολή. Αυτό θα εμφανίσει τις συσκευές υλικού που είναι συνδεδεμένες στο Raspberry Pi όπως φαίνεται παρακάτω:
Το Card 1 είναι το μικρόφωνο της κάμερας web που πρόκειται να χρησιμοποιήσουμε. Εάν δεν εμφανίζεται, η κάμερα web ενδέχεται να είναι ελαττωματική.
2. Τώρα, ελέγξτε αν το μικρόφωνο λειτουργεί εκτελώντας την εντολή ήχου εγγραφής ως:
arecord /home/pi/Desktop/test.wav -D sysdefault: ΚΑΡΤΑ = 1
3. Για αναπαραγωγή του εγγεγραμμένου ήχου πληκτρολογήστε αυτήν την εντολή:
omxplayer -p -o local /home/pi/Desktop/test.wav
Εάν έχετε συνδέσει το Raspberry Pi με οθόνη χρησιμοποιώντας καλώδιο HDMI, τότε από προεπιλογή η έξοδος ήχου γίνεται μέσω του ηχείου της οθόνης σας (εάν υπάρχει ενσωματωμένο ηχείο σε αυτό). Έτσι, για να το αλλάξετε σε 3,5 mm πρέπει να πληκτρολογήσετε την ακόλουθη εντολή:
sudo raspi-config και μεταβείτε στην επιλογή Advance.
Επιλέξτε Ήχος από τη λίστα -> επιλέξτε Force 3.5mm -> επιλέξτε Ok και επανεκκινήστε το Raspberry Pi.
Τώρα, θα πρέπει να ακούσετε τον ήχο από την υποδοχή 3,5 mm.
ΣΗΜΕΙΩΣΗ: Εάν θέλετε να αυξήσετε ή να μειώσετε τη φωνητική ένταση εισόδου για το μικρόφωνο, πληκτρολογήστε alsamixer στο τερματικό. Επιλέξτε κάρτα ήχου από το τερματικό πατώντας F6.
Πατήστε F4 για να αλλάξετε το κέρδος Mic dB και να το ρυθμίσετε όπως θέλετε.
Εάν διαθέτετε μικρόφωνο USB 2.0, τα βήματα που ακολουθούν είναι τα ίδια για τον έλεγχο του μικροφώνου. Εδώ έχουμε χρησιμοποιήσει κάμερα Web για μικρόφωνο USB.
Ρύθμιση του Google API για το Raspberry Pi Google Assistant
1. Πρώτον, πρέπει να εγγραφούμε και να δημιουργήσουμε ένα έργο στον πίνακα ελέγχου Google Console Actions.
2. Αφού συνδεθείτε στον Λογαριασμό σας Google, θα δείτε το ακόλουθο παράθυρο.
Κάντε κλικ στο Προσθήκη / Εισαγωγή έργου .
3. Στην επόμενη οθόνη, πρέπει να εισαγάγετε το όνομα έργου και να κάνετε κλικ στο Δημιουργία έργου .
4. Τώρα, μεταβείτε στην κονσόλα προγραμματιστών Google στη νέα καρτέλα και αναζητήστε το Google Assistant API. Πριν προχωρήσετε και πατήστε το κουμπί Ενεργοποίηση βεβαιωθείτε ότι έχετε επιλέξει το έργο σας. Στη συνέχεια, κάντε κλικ στο Ενεργοποίηση.
5. Τώρα, ανοίξτε την προηγούμενη καρτέλα της κονσόλας Google και μετακινηθείτε προς τα κάτω στο κάτω μέρος της οθόνης.
Θα βρείτε μια επιλογή Εγγραφή συσκευής , κάντε κλικ σε αυτήν.
6. Στην επόμενη οθόνη, κάντε κλικ στο Register Model. Μετά από αυτό, πρέπει να ορίσετε ένα όνομα προϊόντος, ένα όνομα κατασκευαστή και να ορίσετε έναν τύπο συσκευής. Αυτά τα ονόματα μπορεί να είναι οτιδήποτε θέλετε.
Σημειώστε το αναγνωριστικό μοντέλου συσκευής, καθώς θα χρειαστεί αυτό αργότερα στη διαδικασία.
Τώρα, κάντε κλικ στο Register Model .
7. Η επόμενη οθόνη θα είναι για διαπιστευτήρια λήψης. Για να λάβετε αυτό το αρχείο διαπιστευτηρίων, κάντε κλικ στο Λήψη διαπιστευτηρίων OAuth 2.0 . Αυτό το αρχείο είναι πολύ σημαντικό, διατηρήστε το κάπου ασφαλές.
Τώρα, κάντε κλικ στο Επόμενο.
8. Μπορείτε να επιλέξετε τυχόν χαρακτηριστικά που χρειάζεστε, αλλά στην περίπτωσή μας δεν χρειαζόμαστε κανένα από αυτά, οπότε απλώς κάναμε κλικ στο κουμπί Παράλειψη όπως φαίνεται παρακάτω .
9. Όταν όλα γίνουν, θα έχετε την ακόλουθη οθόνη.
10. Τώρα, μεταβείτε στη σελίδα Στοιχεία ελέγχου δραστηριότητας. Εδώ πρέπει να ενεργοποιήσετε τα ακόλουθα στοιχεία ελέγχου δραστηριότητας για να διασφαλίσετε ότι το Google Assistant API λειτουργεί καλά.
Δραστηριότητα ιστού και εφαρμογών, Ιστορικό τοποθεσίας, Πληροφορίες συσκευής, Δραστηριότητα φωνής και ήχου
11. Και πάλι, μεταβείτε στην κονσόλα προγραμματιστών Google. Κάντε κλικ στα διαπιστευτήρια στην αριστερή πλευρά του ταμπλό. Κάντε κλικ στην οθόνη συναίνεσης OAuth.
12. Συμπληρώστε το αναγνωριστικό Gmail και οποιοδήποτε όνομα στο όνομα προϊόντος και αποθηκεύστε το.
Τώρα, έχουμε κάνει με τη ρύθμιση του API Google.
Ρύθμιση του Βοηθού Google για το Raspberry Pi Google Home
Λάβετε υπόψη ότι από αυτό το μέρος και μετά θα σας ζητηθεί να ολοκληρώσετε το σεμινάριο στην επιφάνεια εργασίας Raspbian απευθείας και όχι μέσω SSH, καθώς θα πρέπει να χρησιμοποιήσετε το ενσωματωμένο πρόγραμμα περιήγησης ιστού.
1. Πρώτα, ενημερώστε τη λίστα πακέτων του Raspberry Pi χρησιμοποιώντας την ακόλουθη εντολή
sudo apt-get ενημέρωση
2. Τώρα, θα δημιουργήσουμε ένα αρχείο όπου μπορούμε να αποθηκεύσουμε τα διαπιστευτήρια που κατεβάσαμε νωρίτερα. Για αυτό, εκτελέστε τις ακόλουθες δύο εντολές
mkdir ~/googleassistant
nano ~/googleassistant/credentials.json
3. Σε αυτό το αρχείο, πρέπει να αντιγράψετε το περιεχόμενο του αρχείου διαπιστευτηρίων που κατεβάσαμε. Ανοίξτε το αρχείο.json στον αγαπημένο σας επεξεργαστή κειμένου και πατήστε ctrl + A και στη συνέχεια ctrl + C για να αντιγράψετε τα περιεχόμενα.
Μετά την αντιγραφή του περιεχομένου, αποθηκεύστε το αρχείο πατώντας Ctrl + X και Y και, στη συνέχεια, πατήστε Enter.
4. Μετά την αποθήκευση του αρχείου διαπιστευτηρίων, θα ξεκινήσουμε να εγκαθιστούμε ορισμένες από τις εξαρτήσεις που απαιτούνται για την εκτέλεση του βοηθού Google.
Εκτελέστε την ακόλουθη εντολή για να εγκαταστήσετε το Python3 και το εικονικό περιβάλλον Python 3 στο RPi μας.
sudo apt-get install python3-dev python3-venv
5. Τώρα ενεργοποιήστε το python3 ως εικονικό περιβάλλον χρησιμοποιώντας την ακόλουθη εντολή
python3 -m venv env
6. Εγκαταστήστε τις τελευταίες εκδόσεις του pip και των εργαλείων εγκατάστασης. Εκτελέστε την ακόλουθη εντολή για να λάβετε την ενημέρωση
env/bin/python -m pip install --upgrade pip setuptools --upgrade
7. Για να μπει στο περιβάλλον του python, πρέπει να εκτελέσουμε αυτήν την εντολή
source env/bin/activate
8. Τώρα θα εγκαταστήσουμε τη Βιβλιοθήκη Βοηθού Google, θα εκτελέσουμε τις ακόλουθες εντολές μία προς μία για να λάβουμε την ενημερωμένη βιβλιοθήκη
python -m pip install --upgrade google-assistant-library
python -m pip install --upgrade google-assistant-sdk
Τώρα, ολοκληρώσαμε την εγκατάσταση όλων των απαιτούμενων εξαρτήσεων και βιβλιοθηκών.
Εξουσιοδότηση του Raspberry Pi για τον Βοηθό Google
1. Θα εγκαταστήσουμε πρώτα το εργαλείο εξουσιοδότησης Google στο Raspberry pi εκτελώντας την ακόλουθη εντολή
python -m pip install - αναβάθμιση google-auth-oauthlib
2. Τώρα, πρέπει να εκτελέσουμε τη βιβλιοθήκη ελέγχου ταυτότητας Google. Εκτελέστε αυτήν την εντολή για να εκτελέσετε τη βιβλιοθήκη.
google-oauthlib-tool --client-secret ~ / googleassistant / credentials.json \ --scope https://www.googleapis.com/auth/assistant-sdk-prototype \ - εύρος https: //www.googleapis. com / auth / gcm \ --save - χωρίς κεφάλι
Αυτή η εντολή θα δημιουργήσει μια διεύθυνση URL, θα αντιγράψει αυτήν τη διεύθυνση URL και θα την επικολλήσει στο πρόγραμμα περιήγησής σας.
3. Στο πρόγραμμα περιήγησης, συνδεθείτε στον λογαριασμό σας Google, εάν έχετε πολλούς λογαριασμούς, επιλέξτε μόνο αυτόν με τον οποίο έχετε ρυθμίσει το κλειδί API.
Μετά τη σύνδεση, θα δείτε έναν μακρύ κωδικό ελέγχου ταυτότητας. Αντιγράψτε αυτόν τον κωδικό και επικολλήστε τον στο παράθυρο του τερματικού σας και πατήστε enter. Εάν επαληθευτεί ο έλεγχος ταυτότητας, θα πρέπει να δείτε την ακόλουθη γραμμή στη γραμμή εντολών όπως φαίνεται στην παραπάνω εικόνα:
αποθηκευμένα διαπιστευτήρια: /home/pi/.config/google-oauthlib-tool/credentials.json
4. Τα διαπιστευτήρια ελέγχου ταυτότητας επαληθεύονται τώρα, αλλά η Google εξακολουθεί να θέλει να επαληθεύσει μέσω μιας αναδυόμενης οθόνης. Αλλά το αναδυόμενο παράθυρο μας αποκλείεται από το CORS (κοινή χρήση πόρων μεταξύ προέλευσης), επομένως, απενεργοποιήστε πρώτα αυτό το πράγμα χρησιμοποιώντας την παρακάτω εντολή.
Για να χρησιμοποιήσετε αυτήν την εντολή, βεβαιωθείτε ότι το πρόγραμμα περιήγησης χρωμίου είναι κλειστό και ανοίξτε τώρα νέο παράθυρο τερματικού και πληκτρολογήστε την εντολή. Αυτή η εντολή θα ξεκινήσει το πρόγραμμα περιήγησης χρωμίου με απενεργοποιημένη την ασφάλεια CORS, μην περιηγείστε στο Διαδίκτυο με αυτό το απενεργοποιημένο.
chromium-browser --disable-web-security --user-data-dir "/home/pi/
Μετά το άνοιγμα του προγράμματος περιήγησης, μεταβείτε στο προηγούμενο παράθυρο τερματικού στο οποίο έχετε ρυθμίσει το δείγμα βοηθού Google.
5. Τώρα εκτελέστε την ακόλουθη εντολή για την πρώτη εκκίνηση του βοηθού Google Σε αυτήν την εντολή αντικαταστήστε
Εάν ξεχάσατε το Αναγνωριστικό έργου, μεταβείτε στην Κονσόλα ενεργειών στο Google, κάντε κλικ στο έργο που δημιουργήσατε και, στη συνέχεια, κάντε κλικ στο εικονίδιο με το γρανάζι στην επάνω αριστερή γωνία και στη συνέχεια Ρυθμίσεις έργου.
Επίσης, αντικαταστήστε
googlesamples-Assistant-pushtotalk --project-id
Αυτή η εντολή θα ξεκινήσει μια νέα καρτέλα στο πρόγραμμα περιήγησης Chromium.
6. Τώρα πατήστε Enter στο παράθυρο τερματικού για να το ενεργοποιήσετε και να θέσετε οποιαδήποτε ερώτηση.
Όταν θέσατε την πρώτη ερώτηση, ενδέχεται να εμφανιστεί η παρακάτω οθόνη στο πρόγραμμα περιήγησης. Κάντε κλικ στο Συνέχεια -> Καταλαβαίνω -> Να επιτρέπεται.
Εάν δεν εμφανιστεί αυτή η οθόνη Συνέχεια , δεν υπάρχει πρόβλημα.
7. Τώρα, μπορούμε να χρησιμοποιήσουμε το δείγμα push to talk του Βοηθού Google και να λάβουμε μια απάντηση εξόδου.
Όταν πατήσετε το Enter στο τερματικό και μιλήσετε μια ενέργεια, θα πρέπει να ακούσετε μια προφορική απάντηση και θα ανοίξει μια άλλη καρτέλα όπου θα εμφανίζεται η ενέργεια που μόλις καλέσατε.
Μπορείτε να απενεργοποιήσετε το άνοιγμα της καρτέλας καταργώντας το όρισμα –display από την εντολή. Χρειαζόμασταν αυτό για να λάβουμε την οθόνη εξουσιοδότησης.
Χρήση του Βοηθού Google στο Raspberry Pi
Έχουμε εξουσιοδοτήσει το Raspberry Pi. Όποτε θέλετε να ξεκινήσετε τον Βοηθό Google, απλώς μπείτε στο περιβάλλον και ακολουθήστε τα παρακάτω βήματα.
1. Εκτελέστε την ακόλουθη εντολή get in the environment
πηγή env / bin / ενεργοποίηση
Θα δείτε (env) να εμφανίζεται στο μπροστινό μέρος κάθε γραμμής.
2. Για να ξεκινήσετε το δείγμα push to talk, εκτελέστε την ακόλουθη εντολή
googlesamples-assistant-pushtotalk
Αυτή τη φορά δεν χρειαζόμαστε αναγνωριστικό προϊόντος και αναγνωριστικό συσκευής.
3. Εκτός από τη δυνατότητα push to talk, μπορείτε επίσης να ενεργοποιήσετε τον βοηθό Google λέγοντας Ok Google. Για αυτό πρέπει να εισαγάγετε ένα μη έγκυρο αναγνωριστικό συσκευής για να λειτουργήσει. Το λανθασμένο αναγνωριστικό της συσκευής μπορεί να είναι οτιδήποτε όπως aaaa, abcd.
Τώρα, εκτελέστε την ακόλουθη εντολή.
googlesamples-assistant-hotword --device-model-id
Τώρα, μπορείτε να ρωτήσετε οτιδήποτε με τον δικό σας βοηθό Google, απλώς πείτε Ok Google.
Έτσι λοιπόν μπορούμε να εγκαταστήσουμε τον Βοηθό Google στο Raspberry Pi και να τον μετατρέψουμε σε Google Home συνδέοντας ένα ηχείο και μικρόφωνο σε αυτό.