La reconnaissance vocale avec BitVoicer et Arduino

le but principal de ce projet était de tester les performances de la reconnaissance vocale de BitVoicer (http://www.bitsophia.com/BitVoicer.aspx). Pour cela, j’ai conçu une esquisse de contrôle led simple dont j’ai intégré avec BitVoicer. Bien sûr, vous pouvez faire tout ce que vous voulez une fois que vous avez reçu les commandes de Bitvoicer, mais pour garder les choses simples, j’ai pensé à qu'un test mené ferait l’affaire.

Voici le YouTube vidéo avec les résultats :

C’est le sketch Arduino qui contrôle les leds et récupère les données envoyées par BitVoicer :

Inclut la bibliothèque de BitVoicer à l’esquisse
#include < BitVoicer.h >

Met en place les goupilles et les variables par défaut
pinR int = 3 ;
int pinY = 5 ;
pinG int = 6 ;
int blinkDelay = 250 ;
int sequenceDir = 0 ;
Éclairement int = 0 ;

Crée une nouvelle instance de la classe BitVoicerSerial
Met en place port série 0
BitVoicerSerial bitVoicer = BitVoicerSerial(0) ;

void setup()
{
Démarre la communication sérielle et met en place le pinModes
Serial.Begin(9600) ;
pinMode (pinR, sortie) ;
pinMode (pinY, sortie) ;
pinMode (pinG, sortie) ;
}

void loop()
{
Récupère des données de tampon série
bitVoicer.getData() ;

Quitte la boucle si aucune chaîne de données a été retournée par getData
Si (bitVoicer.strData == "")
{
retour ;
}

Chacun des énoncés « if » suivante effectue une autre
tâche, basé sur les données provenant de BitVoicer
Si (bitVoicer.strData == « wake »)
{
digitalWrite (pinR, faible) ;
digitalWrite (pinY, faible) ;
digitalWrite (pinG, faible) ;
digitalWrite (pinR, HIGH) ;
digitalWrite (pinY, élevé) ;
digitalWrite (pinG, HIGH) ;
Delay(200) ;
digitalWrite (pinR, faible) ;
digitalWrite (pinY, faible) ;
digitalWrite (pinG, faible) ;
Delay(200) ;
digitalWrite (pinR, HIGH) ;
digitalWrite (pinY, élevé) ;
digitalWrite (pinG, HIGH) ;
Delay(200) ;
digitalWrite (pinR, faible) ;
digitalWrite (pinY, faible) ;
digitalWrite (pinG, faible) ;
Delay(200) ;
digitalWrite (pinR, HIGH) ;
digitalWrite (pinY, élevé) ;
digitalWrite (pinG, HIGH) ;
Delay(200) ;
digitalWrite (pinR, faible) ;
digitalWrite (pinY, faible) ;
digitalWrite (pinG, faible) ;
bitVoicer.strData = "" ;
Éclairement = 0 ;
}
ElseIf (bitVoicer.strData == « veille »)
{
digitalWrite (pinR, faible) ;
digitalWrite (pinY, faible) ;
digitalWrite (pinG, faible) ;
digitalWrite (pinR, HIGH) ;
digitalWrite (pinY, élevé) ;
digitalWrite (pinG, HIGH) ;
Delay(200) ;
digitalWrite (pinR, faible) ;
digitalWrite (pinY, faible) ;
digitalWrite (pinG, faible) ;
Delay(200) ;
digitalWrite (pinR, HIGH) ;
digitalWrite (pinY, élevé) ;
digitalWrite (pinG, HIGH) ;
Delay(200) ;
digitalWrite (pinR, faible) ;
digitalWrite (pinY, faible) ;
digitalWrite (pinG, faible) ;
bitVoicer.strData = "" ;
Éclairement = 0 ;
}
ElseIf (bitVoicer.strData == « RH »)
{
digitalWrite (pinR, HIGH) ;
bitVoicer.strData = "" ;
Éclairement = 255 ;
}
ElseIf (bitVoicer.strData == « RL »)
{
digitalWrite (pinR, faible) ;
bitVoicer.strData = "" ;
Éclairement = 0 ;
}
ElseIf (bitVoicer.strData == « YH »)
{
digitalWrite (pinY, élevé) ;
bitVoicer.strData = "" ;

Éclairement = 255 ;
}
ElseIf (bitVoicer.strData == « YL »)
{
digitalWrite (pinY, faible) ;
bitVoicer.strData = "" ;
Éclairement = 0 ;
}
ElseIf (bitVoicer.strData == « GH »)
{
digitalWrite (pinG, HIGH) ;
bitVoicer.strData = "" ;
Éclairement = 255 ;
}
ElseIf (bitVoicer.strData == « GL »)
{
digitalWrite (pinG, faible) ;
bitVoicer.strData = "" ;
Éclairement = 0 ;
}
ElseIf (bitVoicer.strData == « blink »)
{
digitalWrite (pinR, HIGH) ;
digitalWrite (pinY, élevé) ;
digitalWrite (pinG, HIGH) ;
Delay(blinkDelay) ;
digitalWrite (pinR, faible) ;
digitalWrite (pinY, faible) ;
digitalWrite (pinG, faible) ;
Delay(blinkDelay) ;
Éclairement = 255 ;
}
ElseIf (bitVoicer.strData == « BF »)
{
blinkDelay = 100 ;
bitVoicer.strData = « blink » ;
Éclairement = 255 ;
}
ElseIf (bitVoicer.strData == « BFF »)
{
Switch (blinkDelay)
{
boîtier 500 :
blinkDelay = 250 ;
rupture ;
boitier 250 :
blinkDelay = 100 ;
rupture ;
par défaut :
rupture ;
}
bitVoicer.strData = « blink » ;
Éclairement = 255 ;
}
ElseIf (bitVoicer.strData == « BS »)
{
blinkDelay = 500 ;
bitVoicer.strData = « blink » ;
Éclairement = 255 ;
}
ElseIf (bitVoicer.strData == « BSS »)
{
Switch (blinkDelay)
{
boîte de 100 :
blinkDelay = 250 ;
rupture ;
boitier 250 :
blinkDelay = 500 ;
rupture ;
par défaut :
rupture ;
}
bitVoicer.strData = « blink » ;
Éclairement = 255 ;
}
ElseIf (bitVoicer.strData == « séquence »)
{
Si (sequenceDir == 0)
{
digitalWrite (pinR, HIGH) ;
Delay(250) ;
digitalWrite (pinR, faible) ;
digitalWrite (pinY, élevé) ;
Delay(250) ;
digitalWrite (pinY, faible) ;
digitalWrite (pinG, HIGH) ;
Delay(250) ;
digitalWrite (pinG, faible) ;
}
d’autre
{
digitalWrite (pinG, HIGH) ;
Delay(250) ;
digitalWrite (pinG, faible) ;
digitalWrite (pinY, élevé) ;
Delay(250) ;
digitalWrite (pinY, faible) ;
digitalWrite (pinR, HIGH) ;
Delay(250) ;
digitalWrite (pinR, faible) ;
}
Éclairement = 255 ;
}
ElseIf (bitVoicer.strData == « revenir »)
{
Si (sequenceDir == 0)
{
sequenceDir = 1 ;
}
d’autre
{
sequenceDir = 0 ;
}
bitVoicer.strData = « sequence » ;
Éclairement = 255 ;
}
ElseIf (bitVoicer.strData == « ALLON »)
{
digitalWrite (pinR, HIGH) ;
digitalWrite (pinY, élevé) ;
digitalWrite (pinG, HIGH) ;
bitVoicer.strData = "" ;
Éclairement = 255 ;
}
ElseIf (bitVoicer.strData == « ALLOFF »)
{
digitalWrite (pinR, faible) ;
digitalWrite (pinY, faible) ;
digitalWrite (pinG, faible) ;
bitVoicer.strData = "" ;
Éclairement = 0 ;
}
ElseIf (bitVoicer.strData == « plus clair »)
{
Si (éclairement < 255)
{
Éclairement += 85 ;
analogWrite (pinR, éclairement) ;
analogWrite (pinY, éclairement) ;
analogWrite (pinG, éclairement) ;
}
bitVoicer.strData = "" ;
}
ElseIf (bitVoicer.strData == « sombre »)
{
Si (éclairement > 0)
{
Éclairement-= 85 ;
analogWrite (pinR, éclairement) ;
analogWrite (pinY, éclairement) ;
analogWrite (pinG, éclairement) ;
}
bitVoicer.strData = "" ;
}
d’autre
{
Serial.println ("ERROR:" + bitVoicer.strData) ;
bitVoicer.strData = "" ;
}
}

Cette esquisse utilise la bibliothèque d’Arduino BitVoicer qui peut être téléchargé sur th.

Le schéma de voix BitVoicer qui reconnaît le discours montré dans la vidéo est disponible à: http://www.justbuss.xpg.com.br/BitVoicerTest.zip (vous devez avoir BitVoicer installé afin de l’ouvrir).

J’espère que vous les gars s’amuser avec elle !

Articles Liés

Voix de l’Arduino / reconnaissance vocale avec Geeetech Module [Tutoriel]

Voix de l’Arduino / reconnaissance vocale avec Geeetech Module [Tutoriel]

Comment : Arduino voix / reconnaissance vocale avec Geeetech Module [Tutoriel]. Cette vidéo vous montrera comment parler avec votre Arduino avec le module de commande de voix Geeetech (bon marché). Vous pouvez ensuite utiliser le code pour commander
La reconnaissance vocale avec Arduino et serveur BitVoicer

La reconnaissance vocale avec Arduino et serveur BitVoicer

Dans ce Instructable je vais montrer comment utiliser une carte Arduino et BitVoicer serveur pour contrôler quelques LEDs avec commandes vocales. Je vais utiliser le Micro de l'Arduino dans ce Instructable, mais vous pouvez utiliser n'importe quel ca
Streaming Audio et la reconnaissance vocale avec Arduino sans fil

Streaming Audio et la reconnaissance vocale avec Arduino sans fil

dans ce projet j'ai connecter ma carte Arduino à un WiFly module (https://www.sparkfun.com/products/10822) de Roving Networks et de flux audio pour le PC, alors que BitVoicer (http://www.bitsophia.com/BitVoicer.aspx) peut exécuter la reconnaissance v
La reconnaissance vocale avec Arduino

La reconnaissance vocale avec Arduino

dans ce projet, j'utilise de BitVoicer fonctionnalités de reconnaissance vocale (http://www.bitsophia.com/BitVoicer.aspx), une carte Arduino et un microphone à électret (https://www.sparkfun.com/products/9964) pour quelques LEDs de contrôle.Ce projet
La reconnaissance vocale et la synthèse avec Arduino

La reconnaissance vocale et la synthèse avec Arduino

Dans mon précédent Instructable, j'ai montré comment contrôler quelques LEDs à l'aide d'une carte Arduino et le Serveur BitVoicer. Dans ce Instructable, je vais rendre les choses un peu plus compliqués. Je vais également à synthétiser la parole en ut
Voix de contrôle l’Arduino avec reconnaissance vocale de Windows 7

Voix de contrôle l’Arduino avec reconnaissance vocale de Windows 7

Tout d'abord, je suis désolé pour l'orthographe ou des erreurs de grammaire que vous pouvez trouver ici, en anglais n'est pas ma langue maternelle.J'ai fait ce instructable parce que je n'ai pas vu un qui met l'accent sur ce sujet, alors j'ai voulu p
Faites votre propre tiroir de rangement fonctionne avec la reconnaissance vocale (1Sheeld - Arduino)

Faites votre propre tiroir de rangement fonctionne avec la reconnaissance vocale (1Sheeld - Arduino)

J'ai toujours eu le problème de l'oubli dans quel tiroir, j'ai mis mes composants et parfois l'encre sur les étiquettes obtenir effacées par le temps alors j'ai pensé faire quelque chose d'intelligent et j'ai fini avec un tiroir de rangement qui fonc
Comment utiliser un Module de reconnaissance vocale Serial - Arduino Tutorial

Comment utiliser un Module de reconnaissance vocale Serial - Arduino Tutorial

Dans ce tutoriel, vous apprendrez comment utiliser un module de reconnaissance de voix - série - avec la carte de Arduino uno. Ce module peut stocker jusqu'à 15 commandes vocales. Ceux qui sont divisés en 3 groupes, avec 5 commandes dans chaque group
Voix à Arduino : LEDs de contrôle à l’aide du système de reconnaissance vocale MIT

Voix à Arduino : LEDs de contrôle à l’aide du système de reconnaissance vocale MIT

Bonjour, tout le monde!!! Depuis quelque temps je n'avais pas mis à jour mon post ici. Aujourd'hui, je voudrais partager avec vous les gars une expérience que j'ai fait. Je vais commander des LEDs en utilisant la reconnaissance vocale MIT app invento
Reconnaissance vocale Arduino Via Bluetooth HC-05

Reconnaissance vocale Arduino Via Bluetooth HC-05

Il est vraiment facile et rapide d'ajouter la commande vocale à votre projet arduino. Que ce soit commande vocale home automation ou serrure ou robots, pourrait être un accrocheur fonctionnalité dans un projet arduino. Dans ce tutoriel je « ll vous m
Reconnaissance vocale de l’Arduino. (Base)

Reconnaissance vocale de l’Arduino. (Base)

Hé les gars, aujourd'hui, nous avons un grand projet pour vous. Reconnaissance vocale de l'Arduino ! Nous utilisons le VR facile et un Arduino. Ce projet va vous apprendre comment utiliser l'easyVR pour la reconnaissance vocale : Remarque : la reconn
Projet Suite Bros : Commande vocale LED amitié Photoset (Arduino, Bluetooth, métiers d’art)

Projet Suite Bros : Commande vocale LED amitié Photoset (Arduino, Bluetooth, métiers d’art)

J'ai rencontré les meilleurs compagnons suite au Collège - Kevin et Briton(et partenaire de crime, Abbie). Maintenant, je pars pour la prochaine étape de ma vie, alors j'ai décidé de construire cette amitié photoset pour Kevin et britannique se rappe
Dispositifs de commande par commande vocale utilisant android et arduino

Dispositifs de commande par commande vocale utilisant android et arduino

Cette ible servira de questions, comme la façon de contrôler les périphériques par commandes vocales, la reconnaissance vocale disponible dans android.Tous les appareils android est livré avec la reconnaissance vocale intégré. Ceci peut être utilisé
Animatronic Talking Tree - partie 2 - la reconnaissance vocale

Animatronic Talking Tree - partie 2 - la reconnaissance vocale

si vous avez suivi avec mon premier Instructable, arbre de Noël de parler animatronique, je vous ai montré comment prendre un arbre artificiel, ajouter des servos et un Arduino, connectez-le à une esquisse de traitement en cours d'exécution sur votre