- Exigences matérielles
- Configuration de l'API Google pour Raspberry Pi Assistant Google
- Configurer l'Assistant Google pour Raspberry Pi Google Home
- Autoriser Raspberry Pi pour l'Assistant Google
- Utilisation de Google Assistant sur Raspberry Pi
Avez-vous déjà pensé à un haut-parleur qui peut être contrôlé par votre voix !!! Oui, Amazon Echo est l'un des haut-parleurs à commande vocale les plus populaires, mais en concurrence avec lui, Google Home devient également populaire. Les assistants vocaux deviennent de plus en plus populaires alors que nous nous dirigeons vers une ère de systèmes basés sur l'IA. Vous avez entendu parler de Google Assistant, d'Apple Siri et d'Amazon Alexa. Ce sont tous des systèmes d'IA basés sur la voix, ce qui les rend différents les uns des autres, ce sont leurs écosystèmes, et c'est là que Google Assistant se démarque le plus. Google, Apple et Amazon, toutes ces entreprises ont déjà lancé leurs enceintes intelligentes. Les haut-parleurs intelligents de Google sont également disponibles sur le marché. Nous avons déjà couvert Amazon Echo basé sur Raspberry Pi, cette fois, nous allons transformer Raspberry Pi en un haut-parleur Google Home.
Google fournit l'API pour utiliser son service vocal, qui est open source et disponible sur Github. Grâce au service vocal de Google, nous pouvons écouter de la musique, obtenir des informations sur la météo, réserver des billets et bien d'autres. Tout ce que vous avez à faire est de demander. Dans ce tutoriel, voyons comment créer un haut-parleur intelligent à commande vocale à l'aide de l'assistant Google et de Raspberry Pi.
Exigences matérielles
- Raspberry Pi 3 ou Raspberry Pi 2 modèle B et carte SD (8 Go ou plus)
- Haut-parleur externe avec câble AUX de 3,5 mm
- Toute webcam ou microphone USB 2.0
Nous supposons également que votre Raspberry pi est déjà configuré avec un système d'exploitation Raspbian et qu'il est connecté à Internet. Avec ceux-ci en place, procédons au didacticiel. Si vous êtes nouveau sur Raspberry Pi, passez d'abord par Premiers pas avec Raspberry pi.
Remarque: la webcam a un microphone intégré, nous allons donc l'utiliser à la place du microphone USB 2.0.
Vous avez également besoin d'un clavier, d'une souris et d'un moniteur pour connecter le raspberry pi à l'aide d'un câble HDMI.
Vérification du micro de la webcam avec Raspberry Pi:
1. Ouvrez le terminal Raspberry Pi et tapez la commande arecord -l. Cela affichera les périphériques matériels connectés à Raspberry Pi comme indiqué ci-dessous:
La carte 1 est le micro de votre webcam que nous allons utiliser. S'il ne s'affiche pas, votre webcam est peut-être défectueuse.
2. Maintenant, vérifiez si le micro fonctionne en exécutant la commande d'enregistrement audio comme:
arecord /home/pi/Desktop/test.wav -D sysdefault: CARD = 1
3. Pour lire l'audio enregistré, tapez cette commande:
omxplayer -p -o local /home/pi/Desktop/test.wav
Si vous avez connecté Raspberry Pi avec un moniteur à l'aide d'un câble HDMI, la sortie audio par défaut se fait via le haut-parleur de votre moniteur (s'il y a un haut-parleur intégré). Donc, pour le changer en 3,5 mm, vous devez taper la commande suivante:
sudo raspi-config et accédez à l'option Advance.
Sélectionnez Audio dans la liste -> sélectionnez Force 3,5 mm -> sélectionnez OK et redémarrez votre Raspberry Pi.
Maintenant, vous devriez entendre le son de la prise jack 3,5 mm.
REMARQUE: Si vous souhaitez augmenter ou diminuer le volume de la voix d'entrée pour le microphone, tapez également un mixeur dans le terminal. Sélectionnez la carte son du terminal en appuyant sur F6.
Appuyez sur F4 pour modifier le gain Mic dB et réglez-le comme vous le souhaitez.
Si vous avez un microphone USB 2.0, les étapes suivies sont les mêmes pour vérifier le microphone. Ici, nous avons utilisé une webcam pour un microcphone USB.
Configuration de l'API Google pour Raspberry Pi Assistant Google
1. Tout d'abord, nous devons nous enregistrer et configurer un projet sur le tableau de bord Actions de la console Google.
2. Une fois connecté à votre compte Google, vous verrez la fenêtre suivante.
Cliquez sur Ajouter / Importer un projet .
3. Sur l'écran suivant, vous devez entrer le nom du projet et cliquer sur Créer un projet .
4. Maintenant, accédez à la console des développeurs Google dans le nouvel onglet et recherchez l'API de l'Assistant Google. Avant de continuer et d'appuyer sur le bouton Activer, assurez-vous que votre projet est sélectionné. Cliquez ensuite sur Activer.
5. Maintenant, ouvrez l'onglet précédent de la console Google et faites défiler vers le bas de l'écran.
Vous trouverez une option Enregistrement de l'appareil , cliquez dessus.
6. Sur l'écran suivant, cliquez sur Enregistrer le modèle. Après cela, vous devez définir un nom de produit, un nom de fabricant et un type de périphérique. Ces noms peuvent être tout ce que vous voulez.
Notez l'ID du modèle de l'appareil, car nous en aurons besoin plus tard dans le processus.
Maintenant, cliquez sur Enregistrer le modèle .
7. L'écran suivant sera celui des identifiants de téléchargement. Pour obtenir ce fichier d'informations d'identification, cliquez sur Télécharger les informations d'identification OAuth 2.0 . Ce fichier est très important, conservez-le dans un endroit sûr.
Maintenant, cliquez sur Suivant.
8. Vous pouvez sélectionner tous les traits dont vous avez besoin, mais dans notre cas, nous n'en avons pas besoin, nous avons donc simplement cliqué sur le bouton Ignorer comme indiqué ci-dessous .
9. Une fois que tout est fait, vous aurez l'écran suivant.
10. Maintenant, allez à la page Contrôles d'activité. Ici, vous devez activer les contrôles d'activité suivants pour vous assurer que l'API Google Assistant fonctionne correctement.
Activité sur le Web et les applications, historique des positions, informations sur l'appareil, activité vocale et audio
11. Encore une fois, accédez à la console des développeurs Google. Cliquez sur Credentials sur le côté gauche du tableau de bord. Cliquez sur l' écran de consentement OAuth.
12. Remplissez votre identifiant Gmail et n'importe quel nom dans le nom du produit et enregistrez-le.
Maintenant, nous en avons terminé avec la configuration de l'API Google.
Configurer l'Assistant Google pour Raspberry Pi Google Home
Veuillez noter qu'à partir de cette partie, vous devrez suivre le didacticiel sur le bureau Raspbian directement et non via SSH, car vous devrez utiliser le navigateur Web intégré.
1. Tout d'abord, mettez à jour la liste des packages du Raspberry Pi en utilisant la commande suivante
sudo apt-get mise à jour
2. Maintenant, nous allons créer un fichier dans lequel nous pouvons stocker les informations d'identification que nous avons téléchargées précédemment. Pour cela, exécutez les deux commandes suivantes
mkdir ~/googleassistant
nano ~/googleassistant/credentials.json
3. Dans ce fichier, vous devez copier le contenu du fichier d'informations d'identification que nous avons téléchargé. Ouvrez le fichier.json dans votre éditeur de texte préféré et appuyez sur ctrl + A puis ctrl + C pour copier le contenu.
Après avoir copié le contenu, enregistrez le fichier en appuyant sur Ctrl + X puis Y, puis appuyez enfin sur Entrée.
4. Après avoir enregistré le fichier d'informations d'identification, nous commencerons à installer certaines des dépendances requises pour exécuter l'assistant Google.
Exécutez la commande suivante pour installer Python3 et l'environnement virtuel Python 3 sur notre RPi.
sudo apt-get install python3-dev python3-venv
5. Activez maintenant python3 comme notre environnement virtuel à l'aide de la commande suivante
python3 -m venv env
6. Installez les dernières versions de pip et de setuptools. Exécutez la commande suivante pour obtenir la mise à jour
env/bin/python -m pip install --upgrade pip setuptools --upgrade
7. Pour entrer dans l'environnement python, nous devons exécuter cette commande
source env/bin/activate
8. Nous allons maintenant installer la bibliothèque de l'Assistant Google, exécuter les commandes suivantes une par une pour obtenir la bibliothèque mise à jour
python -m pip install --upgrade google-assistant-library
python -m pip install --upgrade google-assistant-sdk
Maintenant, nous avons fini d'installer toutes les dépendances et bibliothèques requises.
Autoriser Raspberry Pi pour l'Assistant Google
1. Nous allons d'abord installer l'outil d'autorisation Google sur notre Raspberry pi en exécutant la commande suivante
python -m pip install --upgrade google-auth-oauthlib
2. Nous devons maintenant exécuter la bibliothèque d'authentification Google. Exécutez cette commande pour exécuter la bibliothèque.
google-oauthlib-tool --client-secrets ~ / googleassistant / credentials.json \ --scope https://www.googleapis.com/auth/assistant-sdk-prototype \ --scope https: //www.googleapis. com / auth / gcm \ --save –sans tête
Cette commande va générer une URL, copier cette URL et la coller dans votre navigateur Web.
3. Dans le navigateur, connectez-vous à votre compte Google, si vous avez plusieurs comptes, sélectionnez uniquement celui avec lequel vous avez configuré votre clé API.
Après la connexion, vous verrez un long code d'authentification. Copiez ce code et collez-le dans la fenêtre de votre terminal et appuyez sur Entrée. Si l'authentification est vérifiée, vous devriez voir la ligne suivante apparaître sur la ligne de commande comme indiqué dans l'image ci-dessus:
identifiants enregistrés: /home/pi/.config/google-oauthlib-tool/credentials.json
4. Nos informations d'authentification sont maintenant vérifiées, mais Google souhaite toujours vérifier via un affichage pop. Mais notre fenêtre contextuelle est bloquée par le CORS (partage de ressources croisées), alors désactivez d'abord cette chose en utilisant la commande ci-dessous.
Pour utiliser cette commande, assurez-vous que votre navigateur Chrome est fermé et ouvrez maintenant une nouvelle fenêtre de terminal et tapez la commande. Cette commande lancera le navigateur Chrome avec la sécurité CORS désactivée, ne naviguez pas sur Internet avec cette option désactivée.
chromium-browser --disable-web-security --user-data-dir "/home/pi/
Après l'ouverture du navigateur, accédez à la fenêtre de terminal précédente dans laquelle vous avez configuré l'exemple d'assistant Google.
5. Exécutez maintenant la commande suivante pour le premier lancement de l'assistant Google. Dans cette commande, remplacez
Si vous avez oublié l'ID de projet, accédez à Actions Console sur Google, cliquez sur le projet que vous avez créé, puis cliquez sur l'icône d'engrenage dans le coin supérieur gauche, puis sur Paramètres du projet.
Remplacez également
googlesamples-assistant-pushtotalk - id-projet
Cette commande lancera un nouvel onglet dans le navigateur Chromium.
6. Appuyez maintenant sur Entrée dans la fenêtre du terminal pour le déclencher et poser n'importe quelle question.
Lorsque vous avez posé la première question, l'écran ci-dessous peut apparaître dans le navigateur. Cliquez sur Continuer -> Je comprends -> Autoriser.
Si cet écran Continuer n'apparaît pas, pas de problème.
7. Maintenant, nous pouvons utiliser l'exemple de Google Assistant push to talk et obtenir une réponse de sortie.
Lorsque vous appuyez sur Entrée dans le terminal et prononcez une action, vous devriez entendre une réponse verbale et un autre onglet s'ouvrira également affichant l'action que vous venez d'appeler.
Vous pouvez désactiver l'ouverture de l'onglet en supprimant l' argument –display de la commande. Nous en avions besoin pour obtenir l'écran d'autorisation.
Utilisation de Google Assistant sur Raspberry Pi
Nous avons autorisé notre Raspberry Pi. Chaque fois que vous souhaitez lancer l'assistant Google, accédez simplement à l'environnement et suivez les étapes ci-dessous.
1. Exécutez la commande suivante pour accéder à l'environnement
source env / bin / activer
Vous verrez (env) apparaître au début de chaque ligne.
2. Pour démarrer l'exemple push to talk, exécutez la commande suivante
googlesamples-assistant-pushtotalk
Cette fois, nous n'avons pas besoin de l'identifiant du produit et de l'identifiant de l'appareil.
3. En plus de la fonction push to talk, vous pouvez également déclencher l'assistant Google en disant Ok Google. Pour cela, vous devez entrer un identifiant d'appareil non valide pour que cela fonctionne. Un identifiant de périphérique incorrect peut être quelque chose comme aaaa, abcd.
Maintenant, exécutez la commande suivante.
googlesamples-assistant-hotword --device-model-id
Maintenant, vous pouvez demander n'importe quoi avec votre propre assistant Google, dites simplement Ok Google.
C'est ainsi que nous pouvons installer Google Assistant sur Raspberry Pi et le transformer en Google Home en y connectant un haut-parleur et un microphone.