3 maneras de agregar control de voz a los proyectos de Arduino
Realmente estoy empezando a amar a mi Arduino últimamente; Habiendo seguido los tutoriales básicos e incluso hecho un cubo LED, estaba listo para abordar algo mucho más complejo. Afortunadamente, el control del habla de un proyecto Arduino realmente no es tan complejo como pensaba, así que aquí hay 3 enfoques distintos que puede tomar.
Usando OSX Automator y elementos hablados
Una forma en que podemos hacer esto es utilizando las utilidades de comandos de voz existentes integradas en OSX; configurar comandos personalizados para desencadenar acciones de Automator es simple. (Si no está familiarizado con Automator, descargue nuestra guía gratuita en PDF para automatizar su Mac)
En el lado del código de Arduino, estamos haciendo uso de un búfer String detallado en este hilo del foro de Arduino, que nos permitió buscar palabras exactas en la comunicación en serie. Sin esto, encontré las conversiones de tipo entre números, bytes, y instrumentos de cuerda ser problematico Aquí está el código completo de Arduino para escuchar los comandos en serie, aunque tendrá que agregar sus propios comandos y hardware para controlar realmente los dispositivos, ya que está fuera del alcance de este tutorial del proyecto Arduino. Si está utilizando relés, recuerde que deben ser capaces de manejar 120-240vAC. Además, si eres nuevo en todo esto, asegúrate de consultar primero nuestra guía Arduino para principiantes.
A continuación, descargue esta utilidad Arduino-serial que nos permite comunicarnos directamente con Arduino desde la línea de comandos o el script de shell. Coloque esto en la raíz de su directorio de usuarios, luego abra una sesión de Terminal y escriba:
hacer arduino-serial
para compilar el paquete para su sistema.
El uso de esta utilidad es bastante simple, pero para nuestros propósitos, comience escribiendo
ls /dev/tty.*
para averiguar en qué puerto está tu Arduino (el USB). Luego, para enviar un comando, usa:
./ arduino-serial -b 9600 -p /dev/tty.usbmodemfd13411 -s lightsOn
Reemplazar /dev/tty.usb~ con el nombre exacto que encontró para su puerto USB conectado al Arduino. Consulte la página original para ver más ejemplos de uso, incluido obtener un valor de retorno, pero esto será suficiente por ahora..
Una cosa que encontré es que tenía que “puntapié inicial” el Arduino enviando un comando utilizando el Monitor Serial Arduino Primero, luego todo funcionó bien. Si alguien sabe por qué este es el caso, me encantaría escucharlo..
Siguiente, abierto Automatizador y crea un nuevo Solicitud. Encuentra el Ejecutar un script de shell acción, agréguelo y pegue el comando de serie para encender las luces.
Guárdalo en el Biblioteca / discurso / artículos hablados Carpeta con las palabras que le gustaría activar la acción, en mi caso “luces encendidas”.
Luego, habilite los comandos hablados desde el Accesibilidad panel de preferencias.
Este tutorial de 2009 Cómo usar los comandos de voz en su Mac Cómo usar los comandos de voz en su Mac Leer más sigue siendo relevante, pero básicamente desea habilitar la Artículos hablados globales.
Aquí hay una demostración de todo trabajando.
Escudo VR fácil (Hardware)
EasyVR es un escudo de hardware adicional que primero codifica sus muestras de voz pregrabadas y luego utiliza una solución basada en hardware para hacer coincidir patrones. La configuración es un poco complicada y cada comando solo responde a una única impresión de voz, pero esta es la opción más completa si desea que el proyecto sea independiente de la computadora. El EasyVR Shield cuesta £ 35 de CoolComponents en el Reino Unido, o $ 50 de SparkFun en los Estados Unidos. Aquí hay una demostración del escudo en acción junto con el proceso de codificación:
SiriProxy Via Ruby
Si tiene un iPhone compatible con Siri que ha sido liberado, Siri Proxy es una excelente manera de aprovechar las capacidades de reconocimiento de voz de su teléfono. SiriProxy es una aplicación de Ruby que escucha los comandos que se reconocen y envían a los servidores de Apple; Agregue una forma de comunicarse con Arduino, y tendrá SiriProxy-Arduino. El único inconveniente es que necesitas subir un boceto especial al Arduino que implementa una API de Ruby, por lo que deberás ajustar eso o codificar todo en Ruby en el lado de la computadora.
Ahí lo tiene: 3 formas únicas de controlar cualquier proyecto de Arduino solo con su voz. ¿Probarás la voz controlando tus luces? ¿Crees que podrías hacer uso de estas ideas en otro proyecto? Háganos saber en los comentarios.!
Explorar más sobre: Arduino, Reconocimiento de voz.