Comment contrôler une lampe avec des commandes vocales et un Raspberry Pi

Le contrôle vocal ne concerne plus uniquement les téléphones intelligents et les films B. Steve Hickson a créé un système pour mettre l'automatisation et l'intelligence de Wolfram Alpha à votre service..

Dans ce tutoriel, je vais vous montrer comment installer, configurer et commander la commande vocale, et lui apprendre à allumer et éteindre une lampe. Le contrôle de l'alimentation secteur est un sujet délicat et dangereux pour les amateurs. Vous utiliserez donc une solution préconfigurée pour contrôler la tension de la lampe..


Rassembler les composants et les outils

  • Raspberry Pi - Modèle A ou B avec bloc d'alimentation et carte SD
  • PowerSwitch Tail II
  • Câble de raccordement femelle à mâle
  • Microphone compatible Raspberry Pi. Soit une webcam USB avec micro, soit une carte son USB avec microphone. Cette liste peut vous aider à en identifier un dans votre budget
  • Haut-parleurs pour la sortie audio de votre Raspberry Pi
  • Lampe de ménage
  • Petit tournevis à lame plate

Connecter les composants

Avant de brancher quoi que ce soit au pouvoir, connectez le matériel externe au Pi. La configuration est assez basique.

  • Connectez le microphone ou la webcam au port Pi USB
  • Connectez les haut-parleurs externes au Pi. Vous pouvez utiliser la prise de sortie audio ou utiliser la sortie audio via la connexion HDMI
  • Connectez un cavalier noir femme / homme à la broche physique 6, une broche de terre. Utilisez ce schéma de brochage GPIO pour obtenir de l'aide.
  • Connectez un cavalier rouge à la broche physique 16 de votre Pi

  • Pi avec des cavaliers attachés
  • Connectez l'extrémité mâle du cavalier rouge à la broche 1 du PowerSwitch Tail II. Utilisez le tournevis pour lame plate pour desserrer la vis et insérez la goupille dans le trou situé sur le côté du PowerSwitch. Serrez ensuite la vis jusqu'à ce que la broche de cavalier soit fermement fixée
  • Connectez l'extrémité mâle du cavalier noir à la broche n ° 2 du PowerSwitch Tail II

  • PowerSwitch Tail II avec cavaliers attachés

Configurer le Raspberry Pi

Il existe plusieurs guides pour l’achat et l’installation d’un système d’exploitation sur votre Raspberry Pi. Installer le dernier système d'exploitation Raspbian.

Vous travaillerez à partir de la ligne de commande et ferez un peu de copier-coller afin de vous assurer que sshd est activé. Assurez-vous également que vous pouvez connecter SS à votre Pi à partir de votre programme de terminal préféré. Une fois votre Raspberry Pi configuré et démarré, passez à l'étape suivante..

Pointe: Si vous souhaitez en savoir plus sur le flashage d'une carte SD pour votre Raspberry Pi, reportez-vous à nos tutoriels: Comment flasher une carte SD pour Raspberry Pi et Comment installer NOOBS sur un Raspberry Pi avec un Mac.


Installer le câblage Pi

Le script qui contrôle la lampe repose sur le projet Wiring Pi pour commuter les broches GPIO haut et bas. Exécutez les commandes suivantes pour télécharger et installer Wiring Pi.

 sudo apt-get install git-core git clone git: //git.drogon.net/wiringPi cd câblagePi ./build

Créer le script et le test de l'interrupteur lumineux

Maintenant que les commandes pour tourner les broches haut et bas sont installées avec le kit Wiring Pi, l'étape suivante consiste à créer un script appelé interrupteur. interrupteur sera appelé à partir du cadre de commande vocale. Il recevra un argument en ligne de commande sur ou de en fonction de vos instructions. Le script évalue l'argument et définit l'épingle haut ou bas de manière appropriée..

  • Exécutez les commandes suivantes pour créer un des scripts annuaire
 cd ~ mkdir scripts cd scripts
  • créer le script suivant dans un fichier nommé interrupteur
  •  #! / bin / bash if [$ #> 1] puis / usr / local / bin / gpio mode 4 si [["" 1 "=" sur "]] puis / usr / local / bin / gpio écrit 4 sur fi if [["" $ 1 "=" off "]], puis / usr / local / bin / gpio write 4 off fi fi
  • Définissez le script pour qu'il soit exécutable avec la commande suivante
  • chmod u + x lightswitch
  • Branchez le PowerSwitch Tail II au secteur
  • Branchez la lampe dans le PowerSwitch Tail II
  • Testez le script et votre configuration en exécutant le script pour allumer puis éteindre la lumière.
  •  ./ allumer / éteindre

    Si tout est correctement branché, vous devriez voir votre lampe s'allumer et s'éteindre.


    Installer la commande vocale

    Voice Command est un programme qui s'exécute sur le Raspberry Pi et écoute un mot clé qui signifie que vous l'adressez. Imaginez votre personnage Star Trek préféré qui s’adresse à l’ordinateur du navire en disant simplement «Ordinateur». C'est comme ça et tout aussi cool.

    Après avoir entendu son mot-clé ou son nom, la commande vocale demandera une instruction par défaut disant "Oui, monsieur". Il tentera ensuite de traiter tout ce que vous dites en fonction de la configuration de son.

    Dans cette étape, vous installerez le logiciel de commande vocale. La commande vocale s’installe dans le cadre d’une suite d’outils très soignée. Cependant, seuls les les dépendances et commande vocale des composants sont nécessaires pour ce tutoriel. Lorsque le script de configuration est exécuté, il vous sera demandé si vous souhaitez installer plusieurs packages. Oui à les dépendances et commande vocale.

    Exécutez les commandes ci-dessous.

     git clone git: //github.com/StevenHickson/PiAUISuite.git cd PiAUISuite / Installer / ./InstallAUISuite.sh

    Une fois que Voice Command est installé, il vous sera demandé de l’autoriser. Choisissez oui pour autoriser la configuration automatique du script d'installation. Une fois la configuration terminée, vous serez invité à appuyer sur Entrer pour éditer le fichier de configuration. presse Entrer pour éditer le fichier et voir la section suivante pour la configuration.


    Configurer et exécuter la commande vocale

    Après avoir appuyé sur Entrer un éditeur de fichier vous sera proposé pour modifier la configuration de la commande vocale. Ajouter la ligne suivante au config archiver, sauvegarder et quitter.

     light == / home / pi / scripts / lightswitch… 

    Cette ligne signifie que lorsque vous dites lumière allumée ou lumière éteinte Commande vocale exécutera le script / home / pi / scripts / lightswitch avec l'argument sur ou de. Cela aura le même résultat que lorsque vous avez exécuté le script manuellement.

    Utilisez la ligne de commande ci-dessous pour lancer la commande vocale. le -c signifie courir en permanence, -k pi définit le nom prompt à attirer l'attention du Raspberry Pi. le -v oblige le programme à vérifier l'invite avant de passer en mode de reconnaissance vocale.

    le -je voicecommand ne traite que les commandes explicites répertoriées dans le config fichier. Sans cet indicateur, voicecommand cherche des réponses aux mots qui ne sont pas définis comme des commandes sur Wolfram Alpha et lit les résultats à haute voix..

    Finalement, le -b0 argument force voicecommand à ne pas utiliser de texte de remplissage avant sa réponse.

    commande vocale -c -k pi -v -b0 -i
    • Exécuter la commande ci-dessus
    • Dis clairement pi et attendez que votre pi réponde "Oui Monsieur"
    • Dis clairement lumière allumée. La lampe devrait s'allumer
    • Dis clairement lumière éteinte. La lampe devrait s'éteindre

    Toutes nos félicitations! Vous avez réussi à contrôler la voix de votre lampe avec votre Raspberry Pi.


    Résumé

    Ce didacticiel combinait plusieurs technologies pour allumer et éteindre une lampe. Je vous ai montré comment installer le PowerSwitch Tail II pour commuter le secteur en toute sécurité. Je vous ai également montré comment installer Wiring Pi et créer un script permettant de contrôler les broches GPIO de bas niveau..

    Enfin, je vous ai montré comment installer le paquet de commandes vocales avec ses dépendances et le configurer pour répondre à mes instructions. À l'aide de la commande vocale et de scripts personnalisés, vous pouvez automatiser un large éventail de tâches via le Raspberry Pi. La commande vocale peut aussi faire beaucoup plus sans le -je drapeau.

    Prenez le temps d'expérimenter le programme voicecommand et voyez quelles autres choses vous pouvez automatiser.