
Brian Curtis
0
1098
236
Jeg begynder virkelig at elske min Arduino for nylig; Efter at have gennemgået de grundlæggende tutorials og endda lavet en LED-terning, var jeg klar til at tackle noget langt mere kompliceret. Heldigvis er tale, der styrer et Arduino-projekt, virkelig ikke så kompliceret, som jeg troede - så her er 3 tydeligt forskellige tilgange, du kan tage.
Brug af OSX Automator og talelige elementer
En måde vi kan gøre dette på er at bruge de eksisterende talekommandoværktøjer, der er indbygget i OSX; Det er enkelt at indstille tilpassede kommandoer til at udløse Automator-handlinger. (Hvis du ikke kender Automator, skal du downloade vores gratis PDF-guide til automatisering af din Mac!)
På siden Arduino-kode bruger vi en strengbuffer, der er detaljeret i denne Arduino-forumtråd - dette gjorde det muligt for os at søge efter nøjagtige ord i den serielle kommunikation - uden dette fandt jeg typekonverteringerne mellem numre, bytes, og strygere at være problematisk. Her er den fulde Arduino-kode til at lytte til serielle kommandoer, selvom du bliver nødt til at tilføje dine egne kommandoer og hardware til faktisk at kontrollere enhederne, da det ikke er omfattet af denne Arduino-projektvejledning. Hvis du bruger relæer, skal du huske, at de skal være i stand til at håndtere 120-240vAC. Hvis du er ny på alt dette, skal du først tjekke vores begynders Arduino-guide.
Download derefter dette Arduino-serielle værktøj, som gør det muligt for os at kommunikere direkte med Arduino fra kommandolinjen eller shell-scriptet. Placer dette i roden af dit brugermappe, og åbn derefter en terminalsession og skriv:
lav arduino-seriel
at kompilere pakken til dit system.
Brug af dette værktøj er ret simpelt, men begynder til vores formål med at skrive
ls /dev/tty.*
for at finde ud af, hvilken port din Arduino er på (USB-en). Brug derefter følgende for at sende en kommando:
./ arduino-serial -b 9600 -p /dev/tty.usbmodemfd13411 -s lys På
Erstatte /dev/tty.usb~ med det nøjagtige navn, du fandt på din USB-port, der er tilsluttet Arduino. Se den originale side for flere eksempler på brug, herunder at få en returværdi, men det gør det i øjeblikket.
Én ting, jeg fandt, er, at jeg måtte “kickstart” Arduino ved at sende en kommando ved hjælp af Arduino Serial Monitor først, så fungerede alt fint. Hvis nogen ved, hvorfor det er tilfældet, vil jeg meget gerne høre det.
Åbn næste gang op Automator og oprette en ny Ansøgning. Find Kør et Shell-script handling, tilføj den, og indsæt den serielle kommando for at tænde lysene.
Gem det i bibliotek / tale / talelige genstande mappe med de ord, du gerne vil udløse handlingen - i mit tilfælde “tændes”.
Aktivér derefter talbare kommandoer fra Tilgængelighed indstillinger panel.
Denne tutorial fra 2009 Sådan bruges talekommandoer på din Mac Sådan bruges talekommandoer på din Mac er stadig relevant, men dybest set vil du aktivere Globale talelige varer.
Her er en demonstration af det hele fungerer.
Nem VR-skjold (hardware)
EasyVR er et add-on hardwareskjold, der først koder dine forudindspilte taleprøver og derefter bruger en hardwarebaseret løsning til at matche dem. Opsætningen er lidt kompliceret, og hver kommando reagerer kun på et enkelt stemmeaftryk, men dette er det mest omfattende valg, hvis du ønsker, at projektet skal være computeruafhængig. EasyVR Shield koster £ 35 fra CoolComponents i Storbritannien eller $ 50 fra SparkFun i USA. Her er en demonstration af skjoldet i aktion sammen med kodningsprocessen:
SiriProxy Via Ruby
Hvis du har en Siri-kompatibel iPhone, der er blevet jailbroken, er Siri Proxy en god måde at udnytte din telefons stemmegenkendelsesegenskaber. SiriProxy er en Ruby-app, der lytter til på de kommandoer, der genkendes og sendes til Apples servere; tilføj på en måde at kommunikere med Arduino, og du har SiriProxy-Arduino. Den eneste ulempe er, at du er nødt til at uploade en speciel skitse til Arduino, der implementerer et Ruby API, så du bliver enten nødt til at justere det eller kode alt i Ruby på computersiden.
Der har du det - 3 unikke måder at kontrollere ethvert Arduino-projekt med din stemme alene. Vil du prøve, at stemme styrer dine lys? Tror du, at du kunne bruge disse ideer i et andet projekt? Fortæl os det i kommentarerne!