Table des matières:
2025 Auteur: John Day | [email protected]. Dernière modifié: 2025-01-13 06:57
La dernière fois, j'ai utilisé ESP32 pour créer une station de diffusion météo, qui peut diffuser la météo actuelle. Si vous êtes intéressé, vous pouvez vérifier la précédente instructable. Maintenant, je veux faire une version améliorée, que je désignerai une ville pour vérifier la météo dans cette ville. Non seulement il joue la météo d'une ville, mais il interroge et diffuse également la météo d'autres villes en fonction de mes commandes.
Fournitures
Matériel:
- Raspberry Pi 3B+ (avec carte SD)
- Chapeau d'interaction vocale
- Module de capteur de mouvement PIR
- Câble micro-USB
- Ligne Dupont
Étape 1: Comment faire
- Nous prévoyons d'implémenter ces fonctions avec Raspberry Pi. Mais le Raspberry Pi n'a pas de microphone pour recevoir la voix, et il n'y a pas de dispositif pour jouer du son si le haut-parleur n'est pas branché. Nous avons fait une carte d'extension pour le Raspberry Pi avec deux entrées microphones et une sortie haut-parleur, afin que le Raspberry Pi Pi peut réaliser la fonction d'entrée vocale et lire l'audio sans se connecter au haut-parleur.
- Nous avons besoin de trois API, qui sont la synthèse vocale, la météo et la synthèse vocale. Ensuite, jouez l'audio.
Speech-to-text:
Météo: https://rapidapi.com/community/api/open-weather-map/endpoints Text-to-speech:
De plus, nous allons connecter un capteur pour reconnaître que RasPi commence à fonctionner lorsque quelqu'un s'approche
Étape 2: Connexion
Voice Interaction Hat est une carte d'extension Raspberry Pi. Insérez simplement le Raspberry Pi en fonction des broches. Nous devons également souder plusieurs fils DuPont pour connecter les capteurs. Les connexions des broches sont les suivantes:
Chapeau d'interaction vocale ------ PIR
5V ------ VCC GND ------ GND GPIO27 ------ OUT
Étape 3: Installez le pilote de la carte d'extension
- Étant donné que la carte d'extension est conçue en référence au produit de seed, nous pouvons utiliser le pilote de seed pour la conduire au travail.
- Saisissez la commande suivante dans la fenêtre du terminal Raspberry Pi pour installer le pilote:
git clone
cd seeed-voicecard sudo./install.sh sudo reboot
Un didacticiel d'utilisation détaillé peut être consulté sur la page (https://www.makerfabs.com/wiki/index.php?title=Voice_Interaction_Hat)
Étape 4: Coder
- Github:
- Après avoir obtenu le code, vous devez remplacer la clé API par la vôtre dans asr.py, weather.py et tts.py.
r = requêtes.post('https://speech.googleapis.com/v1/speech:recognize?key='+api_key, data=data, headers=headers) headers = { 'x-rapidapi-host': "community-open-weather-map.p.rapidapi.com", 'x-rapidapi-key': "************************************ *****" } r = request.post('https://texttospeech.googleapis.com/v1/text:synthesize?key='+api_key, data=data, headers=headers)
Remplissez le nom du lieu dans le weather.py et il sera reconnu à partir de cette liste d'adresses. Bien sûr, vous pouvez remplir les noms de villes à travers le pays et même dans le monde si l'API météo peut les reconnaître
adresse = ['Pékin', 'Londres']
Si vous n'utilisez pas les haut-parleurs de la carte d'extension, mais utilisez vos propres haut-parleurs, vous devez remplacer "hw:0, 0" dans le code suivant par "hw:1, 0" dans le test1.py
os.system("aplay -Dhw:1, 0 sortie1.wav")
Copiez tous les fichiers de Raspi-Voice-Interaction-Hat/weather_workSpace/ dans un répertoire de travail du Raspberry Pi
Étape 5: Faire une boîte d'emballage
Afin de paraître plus beau, nous l'avons emballé dans un carton. Coupez de manière appropriée pour exposer le haut-parleur et le microphone et utilisez des stylos de couleur pour peindre sur la boîte en papier pour la décorer.
Étape 6: Comment utiliser
Utilisez le câble USB pour alimenter le Raspberry Pi, contrôlez Raspberry Pi pour exécuter test1.py et déclenchez le capteur. Après qu'il ait diffusé un son, nous commençons à parler d'un lieu, puis nous attendons qu'il diffuse la météo. Un assistant météo est terminé.