Spraakherkenning met BitVoicer en Arduino


het hoofddoel van dit project was om te testen van de toespraak erkenning prestaties van BitVoicer (http://www.bitsophia.com/BitVoicer.aspx). Voor dit doel ontwierp ik een eenvoudig led besturingselement schets die ik geïntegreerd met BitVoicer. Natuurlijk kan je alles wat die je wilt wanneer u de opdrachten van de Bitvoicer hebt ontvangen, maar om de dingen simpel te houden, ik dacht dat een led test zou doen prima.

Hier is de YouTube video met de resultaten:

Dit is de Arduino schets die controles van de leds en opgehaald van de gegevens die worden verzonden vanaf de BitVoicer:

Bevat de bibliotheek van de BitVoicer aan de schets
#include < BitVoicer.h >

Stelt de pinnen en de standaard variabelen
int pinR = 3;
int pinY = 5;
int pinG = 6;
int blinkDelay = 250;
int sequenceDir = 0;
int lightLevel = 0;

Maakt een nieuw exemplaar van de klasse BitVoicerSerial
Seriële poort op 0 ingesteld
BitVoicerSerial bitVoicer = BitVoicerSerial(0);

VOID Setup
{
Seriële communicatie begint en stelt de pinModes
Serial.begin(9600);
pinMode (pinR, OUTPUT);
pinMode (pinY, OUTPUT);
pinMode (pinG, uitvoer);
}

void loop
{
Haalt gegevens op uit seriële buffer
bitVoicer.getData();

De lus wordt afgesloten, als er was geen tekenreeksgegevens verzameld van getData
Als (bitVoicer.strData == "")
{
terugkeer;
}

Elk van de volgende instructies 'als' presteert een verschillende
taak op basis van de gegevens ontvangen van BitVoicer
Als (bitVoicer.strData == "wake")
{
digitalWrite (pinR, laag);
digitalWrite (pinY, laag);
digitalWrite (pinG, laag);
digitalWrite (pinR, hoge);
digitalWrite (pinY, hoge);
digitalWrite (pinG, hoge);
delay(200);
digitalWrite (pinR, laag);
digitalWrite (pinY, laag);
digitalWrite (pinG, laag);
delay(200);
digitalWrite (pinR, hoge);
digitalWrite (pinY, hoge);
digitalWrite (pinG, hoge);
delay(200);
digitalWrite (pinR, laag);
digitalWrite (pinY, laag);
digitalWrite (pinG, laag);
delay(200);
digitalWrite (pinR, hoge);
digitalWrite (pinY, hoge);
digitalWrite (pinG, hoge);
delay(200);
digitalWrite (pinR, laag);
digitalWrite (pinY, laag);
digitalWrite (pinG, laag);
bitVoicer.strData = "";
lightLevel = 0;
}
else if (bitVoicer.strData == "slaap")
{
digitalWrite (pinR, laag);
digitalWrite (pinY, laag);
digitalWrite (pinG, laag);
digitalWrite (pinR, hoge);
digitalWrite (pinY, hoge);
digitalWrite (pinG, hoge);
delay(200);
digitalWrite (pinR, laag);
digitalWrite (pinY, laag);
digitalWrite (pinG, laag);
delay(200);
digitalWrite (pinR, hoge);
digitalWrite (pinY, hoge);
digitalWrite (pinG, hoge);
delay(200);
digitalWrite (pinR, laag);
digitalWrite (pinY, laag);
digitalWrite (pinG, laag);
bitVoicer.strData = "";
lightLevel = 0;
}
else if (bitVoicer.strData == "RH")
{
digitalWrite (pinR, hoge);
bitVoicer.strData = "";
lightLevel = 255;
}
else if (bitVoicer.strData == "RL")
{
digitalWrite (pinR, laag);
bitVoicer.strData = "";
lightLevel = 0;
}
else if (bitVoicer.strData == "YH")
{
digitalWrite (pinY, hoge);
bitVoicer.strData = "";

lightLevel = 255;
}
else if (bitVoicer.strData == "YL")
{
digitalWrite (pinY, laag);
bitVoicer.strData = "";
lightLevel = 0;
}
else if (bitVoicer.strData == "GH")
{
digitalWrite (pinG, hoge);
bitVoicer.strData = "";
lightLevel = 255;
}
else if (bitVoicer.strData == "GL")
{
digitalWrite (pinG, laag);
bitVoicer.strData = "";
lightLevel = 0;
}
else if (bitVoicer.strData == "blink")
{
digitalWrite (pinR, hoge);
digitalWrite (pinY, hoge);
digitalWrite (pinG, hoge);
delay(blinkDelay);
digitalWrite (pinR, laag);
digitalWrite (pinY, laag);
digitalWrite (pinG, laag);
delay(blinkDelay);
lightLevel = 255;
}
else if (bitVoicer.strData == "BF")
{
blinkDelay = 100;
bitVoicer.strData = "blink";
lightLevel = 255;
}
else if (bitVoicer.strData == "BFF")
{
schakelaar (blinkDelay)
{
Case 500:
blinkDelay = 250;
breken;
Case 250:
blinkDelay = 100;
breken;
standaard:
breken;
}
bitVoicer.strData = "blink";
lightLevel = 255;
}
else if (bitVoicer.strData == "BS")
{
blinkDelay = 500;
bitVoicer.strData = "blink";
lightLevel = 255;
}
else if (bitVoicer.strData == "BSS")
{
schakelaar (blinkDelay)
{
Case 100:
blinkDelay = 250;
breken;
Case 250:
blinkDelay = 500;
breken;
standaard:
breken;
}
bitVoicer.strData = "blink";
lightLevel = 255;
}
else if (bitVoicer.strData == "volgorde")
{
Als (sequenceDir == 0)
{
digitalWrite (pinR, hoge);
delay(250);
digitalWrite (pinR, laag);
digitalWrite (pinY, hoge);
delay(250);
digitalWrite (pinY, laag);
digitalWrite (pinG, hoge);
delay(250);
digitalWrite (pinG, laag);
}
anders
{
digitalWrite (pinG, hoge);
delay(250);
digitalWrite (pinG, laag);
digitalWrite (pinY, hoge);
delay(250);
digitalWrite (pinY, laag);
digitalWrite (pinR, hoge);
delay(250);
digitalWrite (pinR, laag);
}
lightLevel = 255;
}
else if (bitVoicer.strData == "terug")
{
Als (sequenceDir == 0)
{
sequenceDir = 1;
}
anders
{
sequenceDir = 0;
}
bitVoicer.strData = "volgorde";
lightLevel = 255;
}
else if (bitVoicer.strData == "ALLON")
{
digitalWrite (pinR, hoge);
digitalWrite (pinY, hoge);
digitalWrite (pinG, hoge);
bitVoicer.strData = "";
lightLevel = 255;
}
else if (bitVoicer.strData == "ALLOFF")
{
digitalWrite (pinR, laag);
digitalWrite (pinY, laag);
digitalWrite (pinG, laag);
bitVoicer.strData = "";
lightLevel = 0;
}
else if (bitVoicer.strData == "helderder")
{
Als (lightLevel < 255)
{
lightLevel += 85;
analogWrite (pinR, lightLevel);
analogWrite (pinY, lightLevel);
analogWrite (pinG, lightLevel);
}
bitVoicer.strData = "";
}
else if (bitVoicer.strData == "donkerder")
{
Als (lightLevel > 0)
{
lightLevel-= 85;
analogWrite (pinR, lightLevel);
analogWrite (pinY, lightLevel);
analogWrite (pinG, lightLevel);
}
bitVoicer.strData = "";
}
anders
{
Serial.println ("fout:" + bitVoicer.strData);
bitVoicer.strData = "";
}
}

Deze schets de BitVoicer Arduino-bibliotheek die kan worden gedownload van th gebruikt.

De BitVoicer stem Schema die de toespraak getoond in de video herkent is beschikbaar op: http://www.justbuss.xpg.com.br/BitVoicerTest.zip (u moet hebben BitVoicer geïnstalleerd om te openen).

Ik hoop dat jullie veel plezier ermee!

Gerelateerde Artikelen

Draadloos Audio Streaming en spraakherkenning met Arduino

Draadloos Audio Streaming en spraakherkenning met Arduino

In dit project ik verbinden met mijn Arduino Board een WiFly module (https://www.sparkfun.com/products/10822) van Roving meetnetten en streamen van audio naar de PC, zodat BitVoicer (http://www.bitsophia.com/BitVoicer.aspx) van spraakherkenning uitvo
Arduino stem / spraakherkenning met Geeetech Module [Tutorial]

Arduino stem / spraakherkenning met Geeetech Module [Tutorial]

How to: Arduino stem / spraakherkenning met Geeetech Module [Tutorial]. Deze video zal u tonen hoe om te praten met je Arduino met het (goedkope) Besturingsmodule voor Geeetech stem. Vervolgens kunt u de code te controleren van een motor of stem geco
PC-bediening van de Apps met behulp van Arduino

PC-bediening van de Apps met behulp van Arduino

Dit is mijn eerste instructable en ik maakte dit te wijten aan mijn nieuwsgierigheid op de mogelijkheden van interfacing apparaten zoals smartphone en laptop met behulp van arduino.Het doel is om de smartphone via Bluetooth met behulp van arduino lap
Parking System met Ethernet in arduino

Parking System met Ethernet in arduino

Dit is de Parking systeem met Ethernet en arduino.Ethernet is WIZnet W5500 Ethernet shiled.Het is zeer gemakkelijk mogelijk met behulp van het ethernet. Ethernet of internet is oorspronkelijk met behulp van de mededeling van de TCP/IP-Protocol.En oor
De eenvoudigste zoemer Tutorial; Met behulp van Arduino

De eenvoudigste zoemer Tutorial; Met behulp van Arduino

Hey Makers,Laat maken van een eenvoudige Quiz zoemer met behulp van Arduino!Stap 1: Wat kunnen we ermee?Wat kunnen we ermee?> quiz Game zoemer> speel wijsjes en veel meer...Stap 2:Vereiste dingen> Arduino Uno (kopen van Amazon.in) (kopen van Amaz
Mod Xbox 360 Controller met behulp van Arduino (MW3)

Mod Xbox 360 Controller met behulp van Arduino (MW3)

ik wilde kopen een modded controller chip om twee redenen een ze alleen het één ding doen en twee ze uit datum snel waardoor ze nutteloos voor nieuwe spellen. Dus de arduino die ik net pakte leek perfect, is het programmeerbare zin dat als er een upd
Star Wars Nachtlampje met Linosnede en Arduino

Star Wars Nachtlampje met Linosnede en Arduino

Deze keer ik wilde doen een andere frame PictureProject en opnieuw met een eenvoudige arduino gecontroleerde LED-licht. Daar had ik spullen voor linocutting liggen, ik dacht dat het zou leuk zijn voor het verlichten van een handprinted patroon.Videol
Analyseren van elk willekeurig IR-protocol met alleen je Arduino board

Analyseren van elk willekeurig IR-protocol met alleen je Arduino board

onlangs was ik in diepe onderzoek over hoe te maken van onze eigen "zelf leren universele Remote". Dus toen ik voor de procedure zocht voor het maken van deze, eerste stap die ik vond is het analyseren van IR-protocol, pulse de frequentie (perio
Hoe te programmeren van de Vexplorer met behulp van Arduino

Hoe te programmeren van de Vexplorer met behulp van Arduino

dit instructable zal gaan over de revell vexplorer besturen met behulp van arduino. Later kunt u zoveel sensoren die u wilt toevoegen. Als u geen meeste onderdelen al kost dit je ongeveer $200 dollar. Allermeest naar de elektronische bits die u op ra
Kalibreren van Hobby servomotoren met behulp van Arduino

Kalibreren van Hobby servomotoren met behulp van Arduino

Een RC auto of een humanoïde Robot, servomotoren een doorslaggevende rol zou spelen in het project. Dus ik ben het maken van dit Instructable zodat met behulp van deze servomotor gemakkelijk en programmering zullen krijgt het een stuk gemakkelijker.
Snelheidsmeter met behulp van Arduino en Processing

Snelheidsmeter met behulp van Arduino en Processing

Hallo allemaal, dit is mijn eerste Instructables publicatie. Ik ga vertellen u hoe maak je een snelheidsmeter met behulp van Arduino en Processing. Het koele ding over het gebruik van is verwerking hier, dat u uw snelheidsmeter look cool zoals degene
Eenvoudige Wav speler met behulp van Arduino

Eenvoudige Wav speler met behulp van Arduino

Praten over met behulp van Arduino om muziek te spelen, is het de Arduino MP3 schild niet het eerste ding dat je verzinnen? Of misschien sommige geeks zullen overwegen over tone() functie? Ze zijn niet de dingen die ons onderwerp gaat over vandaag. W
Controle licht met behulp van Arduino AC

Controle licht met behulp van Arduino AC

De eerste tutorial iedereen suggereren in arduino is Blinking een LED. Vandaag zal ik u tonen hoe om te controleren van een AC licht/toestel met hetzelfde Blink sketchControlling AC licht of toestel met arduino is eenvoudig als het knipperen van een
RC zender voor USB-Gamepad met behulp van Arduino

RC zender voor USB-Gamepad met behulp van Arduino

Waarom moet ik dit doen?Als het gaat om vliegen RC vliegtuigen die gebruikmaakt van een simulator kunnen zijn een geweldige manier om je vaardigheden tijdens het laagseizoen of zelfs voor te bereiden voor uw eerste vlucht. Het grote nadeel aan het ge