2WD röst kontrollerat Robot med Arduino och BitVoicer Server (6 / 7 steg)
Steg 6: Konfigurera BitVoicer Server
I det här steget måste du bygga BitVoicer Server Röst Schema med meningar ska kännas och kommandon som skickas till Arduino. På ned av detta steg finns det två länkar till filer som innehåller alla BitVoicer Server Lösning objekt används i detta Instructable. Om du inte vill skapa alla lösning objekt en-för-en, kan du importera dem (Importera lösningen objekt) med dessa filer.
Innan du börjar bygga röst schemat, måste du skapa en enhet som representerar Arduino i BitVoicer Server. Skapa en blandad enhet och kalla den ArduinoUnoWiFi. Kommunikation på fliken Välj TCP/IP och ange den IP-adress tilldelad till WiFi modul i steg 3. Möjligt Av aktiverat Startperiod och Slutet av aktiverat perioden ledtrådar ledtrådar på fliken. Välj Int16 SendData kommandon för både ledtrådar och välj ArduinoUnoWiFi enheten som mål för kommandon. I fältet Data anger du 1 för Start av aktiverat Period cue och 0 för Slutet av aktiverat perioden stack-ikonen. Dessa signaler kommer att göra Arduino tur på en LED varje gång aktiveringen ordet känns igen. När aktiverad (definieras i röst-schemat) har löpt ut, stänger denna LED av.
Nu låt oss bygga röst schemat. Även om roboten har bara 40 grundläggande kommandon, kan du skapa många ordkombinationer som utlöser samma kommando. Som ett exempel, kan du meningarna "flytta framåt en meter" och "gå framåt en meter" för att utlösa samma kommando. Dessutom kan du skapa komplexa kommandon som "göra en kvadrat" som ska utlösa en serie temporized kommandon i sekvens. På grund av detta, kan din röst Schema växa mycket och har många fler än 40 grundläggande kommandon. BitVoicer Server stöder obegränsad meningar så du kan definiera så många meningar som du behöver (min slutade med mer än 80 meningar). Här vill jag ge två tips: skapa en standardkommandot i BitVoicer Server Manager alternativ; och Kopiera och klistra in (bilden ovan) kopieras kommandon från en mening till andra.
Meningen kommandon kommer att skicka byte -datatyper till Arduino. Använda konstanter som definieras i början av skissen för att veta vilket värde som ska skickas för varje kommando. Komplexa kommandon kommer att skicka många värden i sekvens och du kommer att behöva kontrollera intervallet (fördröjning) mellan dem så att inget värde skickas medan föregående kommando är under utförande. Använd fältet förskjutning för att ange intervallet mellan kommandon.
Lösningsfiler objekt: