3 modi per aggiungere il controllo vocale ai progetti Arduino
Sto davvero iniziando ad amare il mio Arduino ultimamente; Avendo seguito i tutorial di base e persino realizzato un cubo LED, ero pronto ad affrontare qualcosa di molto più complesso. Fortunatamente, il parlato che controlla un progetto Arduino in realtà non è così complesso come pensavo - quindi ecco 3 approcci chiaramente diversi che puoi prendere.
Utilizzo di OSX Automator e elementi compatibili
Un modo per farlo è utilizzare le utility di comandi vocali esistenti incorporate in OSX; l'impostazione di comandi personalizzati per attivare le azioni di Automator è semplice. (Se non hai familiarità con Automator, scarica la nostra guida gratuita in formato PDF per automatizzare il tuo Mac!)
Sul lato codice Arduino, stiamo facendo uso di un buffer String dettagliato su questo thread del forum Arduino - questo ci ha permesso di cercare parole esatte nella comunicazione seriale - senza questo, ho trovato il tipo di conversioni tra numeri, byte, e stringhe essere problematico Ecco il codice completo di Arduino per l'ascolto di comandi seriali, anche se dovrai aggiungere i tuoi comandi e hardware per controllare effettivamente i dispositivi, in quanto ciò non rientra nell'ambito di questo tutorial del progetto Arduino. Se usi i relay, ricorda che devono essere in grado di gestire 120-240vAC. Inoltre, se sei nuovo a tutto questo, assicurati di controllare prima la nostra guida Arduino per principianti.
Successivamente, scarica questa utility Arduino-seriale che ci consente di comunicare direttamente con Arduino dalla riga di comando o dallo script di shell. Inseriscilo nella radice della tua directory utente, quindi apri una sessione Terminale e digita:
fare arduino-seriale
per compilare il pacchetto per il tuo sistema.
L'utilizzo di questa utility è abbastanza semplice, ma per i nostri scopi, iniziare digitando
ls /dev/tty.*
per capire su quale porta è acceso Arduino (quello USB). Quindi per inviare un comando, utilizzare:
./ arduino-serial -b 9600 -p /dev/tty.usbmodemfd13411 -s lightsOn
Sostituire /dev/tty.usb~ con il nome esatto trovato per la porta USB collegata ad Arduino. Fare riferimento alla pagina originale per ulteriori esempi di utilizzo, tra cui ottenere un valore di ritorno, ma questo lo farà per ora.
Una cosa che ho trovato è che dovevo “kickstart” l'Arduino inviando un comando usando il Arduino Serial Monitor prima, poi tutto ha funzionato bene. Se qualcuno sa perché questo è il caso, mi piacerebbe sentire.
Avanti, aperto Automator e creare un nuovo Applicazione. Trovare la Esegui uno script di shell azione, aggiungilo e incolla nel comando seriale per accendere le luci.
Salva questo al biblioteca / discorso / elementi parlati cartella con le parole che desideri attivare l'azione - nel mio caso “luci accese”.
Quindi, abilita i comandi pronunciabili da Accessibilità pannello delle preferenze.
Questo tutorial del 2009 Come utilizzare i comandi vocali sul tuo Mac Come utilizzare i comandi vocali sul tuo Mac Leggi altro è ancora pertinente, ma in pratica vuoi abilitare il Articoli globali parlati.
Ecco una demo di tutto ciò che funziona.
Easy VR Shield (Hardware)
EasyVR è uno scudo hardware aggiuntivo che per prima codifica i tuoi campioni vocali pre-registrati, quindi utilizza una soluzione basata su hardware per associarli a modelli. L'installazione è un po 'complicata e ogni comando risponde solo a una singola impronta vocale, ma questa è la scelta più completa se si desidera che il progetto sia indipendente dal computer. L'EasyVR Shield costa £ 35 da CoolComponents nel Regno Unito, o $ 50 da SparkFun negli Stati Uniti. Ecco una demo dello scudo in azione insieme al processo di codifica:
SiriProxy Via Ruby
Se possiedi un iPhone con funzionalità Siri che è stato jailbroken, Siri Proxy è un ottimo modo per sfruttare le funzionalità di riconoscimento vocale del tuo telefono. SiriProxy è un'app Ruby che ascolta i comandi riconosciuti e inviati ai server Apple; aggiungi un modo per comunicare con Arduino e hai SiriProxy-Arduino. L'unico svantaggio è che devi caricare uno schizzo speciale su Arduino che implementa un'API Ruby, quindi dovrai modificarlo o codificare tutto in Ruby sul lato del computer.
Eccolo lì: 3 modi unici per controllare qualsiasi progetto Arduino con la sola voce. Proverai la voce che controlla le tue luci? Pensi di poter utilizzare queste idee in un altro progetto? Fateci sapere nei commenti!
Scopri di più su: Arduino, riconoscimento vocale.