Table des matières:

Pi Home, un assistant virtuel alimenté par Raspberry : 11 étapes (avec photos)
Pi Home, un assistant virtuel alimenté par Raspberry : 11 étapes (avec photos)

Vidéo: Pi Home, un assistant virtuel alimenté par Raspberry : 11 étapes (avec photos)

Vidéo: Pi Home, un assistant virtuel alimenté par Raspberry : 11 étapes (avec photos)
Vidéo: Мини ПК AC8-N на Intel N100 - часть 3. Proxmox, Home Assistant OS 2024, Novembre
Anonim
Pi Home, un assistant virtuel alimenté par Raspberry
Pi Home, un assistant virtuel alimenté par Raspberry

Le Google Home est utile à avoir à la maison. C'est un bel appareil avec Google Assistant intégré - Un assistant personnel numérique de pointe de Google. Il peut lire des médias, enregistrer vos rappels et vos notes, vous indiquer la durée de votre trajet, faire de la domotique. Il peut être placé n'importe où chez vous et il fera des choses incroyables pour vous, mais c'est une proposition coûteuse si vous n'êtes pas sûr que vous l'utiliserez. Bonne nouvelle cependant, vous pouvez en créer un entièrement fonctionnel à l'aide d'un Raspberry Pi.

À la fin de ce guide, vous disposerez d'un Google Home entièrement fonctionnel qui répondra à vos commandes vocales. Sinon, c'est un assistant avec toutes les fonctionnalités de Google Home. Ce qui signifie qu'il peut effectuer des conversions d'unités, lire des médias, vérifier les scores, vous lire des livres audio, consulter la météo et bien plus encore. Il fonctionnera également avec une variété d'appareils domotiques comme les ampoules intelligentes, afin que vous puissiez les contrôler avec votre voix. Comme le véritable assistant Google, votre Google Home DIY peut être connecté pour ajouter plus de fonctionnalités, comme l'ajout de tâches à faire à Evernote ou pour recevoir une notification sur votre téléphone lorsque la minuterie se déclenche.

Étape 1: choses dont vous avez besoin

Choses dont tu as besoin
Choses dont tu as besoin

Vous auriez besoin de:

  • Raspberry Pi 3 ou 2 avec Raspbian installé et configuration Wi-Fi.
  • Alimentation et câble d'alimentation microUSB. (Minimum 5V, 2A)
  • Carte Micro SD. (Minimum 8 Go)
  • Un micro USB. (Vous obtiendrez de nombreuses informations sur la configuration sur Internet, également ici…)
  • Haut-parleurs
  • Un clavier et une souris pour la configuration
  • Une LED et quelques fils à connecter

Toutes les choses rassemblées, connectées et branchées, commençons.

Étape 2: configuration du micro USB

Configuration du micro USB
Configuration du micro USB
  • Le Pi n'a pas de microphones intégrés. Vous devez connecter un microphone USB si vous souhaitez enregistrer de l'audio.
  • Branchez votre microphone USB dans l'un des emplacements USB de votre Pi.
  • Tapez la commande suivante dans le terminal.

arcord -l

Cette commande listera tous les périphériques d'enregistrement audio disponibles. Il sera vide si votre micro USB est connecté. Vous devriez obtenir la sortie suivante

pi@raspberrypi:~ $ arecord -l

**** Liste des périphériques matériels de CAPTURE **** carte 1: Périphérique [Périphérique audio PnP USB], périphérique 0: Audio USB [Audio USB] Sous-périphériques: Sous-périphérique n°0: sous-périphérique n°0

Vous pouvez voir que votre périphérique USB est connecté à la carte 1 et que l'identifiant de périphérique est 0. Raspberry Pi reconnaît la carte 0 comme carte son interne, c'est-à-dire bcm2835 et d'autres cartes son externes comme cartes son externes nommées carte 1, carte 2 et Suivant…

Maintenant, nous allons devoir changer les configurations audio. Pour modifier le fichier asound.conf, tapez la commande suivante

sudo nano /etc/asound.conf

Ajoutez les lignes ci-dessous dans le fichier. Appuyez ensuite sur Ctrl+X puis sur Y pour enregistrer le fichier

pcm.!default {

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

Cela définira votre micro externe (pcm.mic) comme périphérique de capture audio (pcm!.default) et votre carte son intégrée (carte 0) comme périphérique de haut-parleur.

Créez un nouveau fichier nommé.asoundrc dans le répertoire personnel (/home/pi) en exécutant la commande suivante et collez les configurations ci-dessus (qui ont été ajoutées dans le fichier /etc/asound.conf.) dans ce fichier

sudo nano.asoundrc.

Étape 3: Configuration de votre sortie haut-parleur

Configuration de votre sortie haut-parleur
Configuration de votre sortie haut-parleur
  • Connectez votre haut-parleur à la prise casque 3,5 mm du Raspberry Pi.
  • Exécutez la commande ci-dessous pour ouvrir l'écran de configuration du pi.

sudo raspi-config

Allez dans Options avancées > Audio et sélectionnez le périphérique de sortie. (jack 3,5 mm ou HDMI)

Étape 4: Testez le micro et les haut-parleurs

Testez le micro et les haut-parleurs
Testez le micro et les haut-parleurs

Pour tester votre haut-parleur, exécutez la commande suivante dans le terminal. Cela jouera un son de test. Appuyez sur Ctrl+C pour quitter. Si vous n'entendez pas le son de test, vérifiez la connexion et l'alimentation de vos haut-parleurs. Le test ressemble à-

Avant gauche, avant droit

haut-parleur-test -t wav

Pour tester votre micro, exécutez la commande suivante. Cela enregistrera un court clip audio de 5 secondes. Si vous obtenez une erreur, vérifiez à nouveau les étapes précédentes

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

Lisez l'audio enregistré et confirmez que tout fonctionne correctement en tapant la commande suivante

aplay --format=S16_LE --rate=16k out.raw

Notre matériel est réglé

Étape 5: Téléchargez les packages requis et configurez l'environnement Python:

Téléchargez les packages requis et configurez l'environnement Python
Téléchargez les packages requis et configurez l'environnement Python

Tout d'abord, mettez à jour votre système d'exploitation en exécutant les commandes une par une dans le terminal

sudo apt-get mise à jour

sudo apt-get mise à niveau

L'exécution des commandes une par une dans le terminal créera un environnement Python 3 (la bibliothèque Google Assistant fonctionne uniquement sur Python 3) dans votre Pi et installera les éléments requis

sudo apt-get installer python3-dev python3-venv

$ python3 -m venv env $ env/bin/python -m pip install --upgrade pip setuptools

Activez l'environnement python. Cela apportera un texte " (env)" devant le terminal de commande de votre Pi

source env/bin/activate

Installez le package Google Assistant SDK, qui contient tout le code requis pour exécuter Google Assistant sur le Pi. Il devrait télécharger la bibliothèque Google Assistant et la signification

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

Étape 6: Activer le projet Google Assistant Cloud

Activation du projet Google Assistant Cloud
Activation du projet Google Assistant Cloud
Activation du projet Google Assistant Cloud
Activation du projet Google Assistant Cloud
Activation du projet Google Assistant Cloud
Activation du projet Google Assistant Cloud
Activation du projet Google Assistant Cloud
Activation du projet Google Assistant Cloud
  • Ouvrez Google Cloud Console et créez un nouveau projet. (Nommez-le n'importe quoi.) Le compte avec lequel vous vous connectez sera utilisé pour envoyer des requêtes à Google Assistant et obtenir votre réponse personnalisée.
  • Rendez-vous sur le gestionnaire d'API et activez l'API Google Assistant.
  • Assurez-vous d'activer l'activité Web et des applications, les informations sur l'appareil et l'activité vocale et audio dans les contrôles d'activité pour le compte.
  • Allez dans "Identifiants" et configurez l'écran de contenu OAuth.
  • Allez dans l'onglet "Identifiants" et créez un nouvel ID client OAuth
  • Sélectionnez le type d'application comme "Autre" et donnez le nom de la clé.
  • Téléchargez le fichier JSON qui stocke les informations de clé OAuth et conservez-le.

Étape 7: Authentification du Raspberry Pi

Authentifier le Raspberry Pi
Authentifier le Raspberry Pi
Authentifier le Raspberry Pi
Authentifier le Raspberry Pi
Authentifier le Raspberry Pi
Authentifier le Raspberry Pi
Authentifier le Raspberry Pi
Authentifier le Raspberry Pi

Installez l'outil d'autorisation en exécutant la commande ci-dessous

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

Exécutez l'outil en exécutant la commande suivante. Assurez-vous de fournir le chemin correct pour le fichier JSON que vous avez téléchargé à l'étape 6

(env) google-oauthlib-tool --client-secrets "JSON_FILE_PATH" --scope https://www.googleapis.com/auth/assistant-sdk-prototype --save --headless

Il devrait s'afficher comme indiqué ci-dessous. Copiez l'URL et collez-la dans un navigateur. Si à la place, il affiche:

InvalidGrantError

puis un code invalide a été entré. Réessayer.

Veuillez vous rendre sur cette URL:

Saisissez le code d'autorisation:

Étape 8: Configuration de l'indicateur LED

Configuration de l'indicateur LED
Configuration de l'indicateur LED
  • Connectez votre LED entre la broche GPIO 25 et la masse.
  • Nous allons définir la broche GPIO 25 comme broche de sortie.
  • Le SDK de l'Assistant Google fournit un rappel EventType. ON_CONVERSATION_TURN_STARTED lorsque la conversion avec l'Assistant Google commence. À ce stade, nous allons configurer le GPIO 25 pour qu'il allume la LED.
  • Chaque fois que la conversation se termine, le rappel EventType. ON_CONVERSATION_TURN_FINISHED sera reçu. À ce stade, nous réinitialiserons le GPIO 25 pour éteindre la LED.

Étape 9: Initialisation au démarrage terminé:

Initialiser à la fin du démarrage
Initialiser à la fin du démarrage
  • Chaque fois que votre Pi termine le démarrage, nous exécuterons un script python qui vérifiera et présentera l'assistant Google au démarrage.
  • Ajoutez d'abord le package RPi. GPIO pour ajouter la prise en charge GPIO à l'aide de la commande suivante.

pip installer RPi. GPIO

Exécutez les étapes une par une. Allez dans le répertoire des utilisateurs. Créez un nouveau fichier python main.py

cd /accueil/pi

sudo nano main.py

Écrivez le script lié et enregistrez le fichier

Créez maintenant un script shell qui initialisera et exécutera l'assistant Google

sudo nano google-assistant-init.sh

Collez les lignes ci-dessous dans le fichier et enregistrez le fichier

#!/bin/sh

/home/pi/env/bin/python3 -u /home/pi/main.py

Accordez l'autorisation d'exécution

sudo chmod +x google-assistant-init.sh

Vous pouvez exécuter google-assistant-init.sh pour lancer l'assistant Google à tout moment.

Étape 10: Démarrer l'Assistant Google lors du démarrage

Démarrer l'assistant Google pendant le démarrage
Démarrer l'assistant Google pendant le démarrage

Pour activer Google Assistant au démarrage, il existe deux manières. Voyons chacun d'eux

1. Démarrage automatique avec Pixel Desktop au démarrage:

  • Cela démarrera l'assistant Google dès le démarrage du bureau Pixel. Assurez-vous d'avoir sélectionné le démarrage « Desktop » dans les configurations Raspberry Pi.
  • Tapez ci-dessous la commande.

sudo nano /home/pi/.config/lxsession/LXDE-pi/autostart

Ajoutez ce qui suit après @xscreensaver -no-splash

@lxterminal -e "/home/pi/google-assistant-init.sh"

Enregistrez et quittez en appuyant sur « Ctrl+X » puis « Y

2. Démarrage automatique avec CLI au démarrage: (J'ai personnellement utilisé ceci, bien que le démarrage automatique fonctionne correctement.)

  • Cela démarrera l'Assistant Google si vous avez défini le démarrage CLI. Assurez-vous que le démarrage « CLI » est sélectionné dans les configurations Raspberry Pi.
  • Tapez ci-dessous la commande.

sudo nano /etc/profil

Ajoutez la ligne ci-dessous à la fin du fichier

sudo /home/pi/google-assistant-init.sh

Enregistrez et quittez en appuyant sur « Ctrl+X » puis « Y »

Étape 11: Conclusion

Conclusion
Conclusion

Quelle est exactement la différence avec ce Home Pi ? Rien, sauf les dépenses. Le résultat final est fondamentalement le même, vous pouvez activer votre DIY Google Home en prononçant le mot de réveil « Ok Google/ Hey Google », et l'appareil fonctionne comme un véritable assistant. Vous pouvez effectuer de nombreuses activités quotidiennes avec votre Google Home. Si vous souhaitez effectuer vos tâches personnalisées comme éteindre la lumière, vérifier la porte, vous pouvez le faire en intégrant Google Actions dans votre assistant Google. Si vous rencontrez des problèmes pour démarrer l'Assistant Google, laissez un commentaire ci-dessous. Je vais essayer de les résoudre dans la mesure du possible.

Conseillé: