Si aún no eres usuario, puedes crear una cuenta o entrar
Tutorial Arduino: Audio y reconocimiento de voz  (Parte I SOMO 14D)

Hoy empezamos una serie de tutoriales sobre audio y reconocimiento de voz con Arduino. Formarán parte del proyecto de darle a mi robot Orugas mas personalidad. En la última parte veremos a Orugas siendo comandado mediante voz y respondiendo a nuestras órdenes vocales con su propia voz robótica. Realmente impresionante pero muy sencillo gracias a Arduino y los dos módulos que veremos.

Hoy os enseñaré como gracias al primero, el SOMO 14D podéis fácilmente añadir audio a vuestros proyectos. Y así poder crear robots parlanchines, proyectos musicales, avisos acústicos e infinidad de posibilidades.

¡No os perdáis el tutorial que comienza después del salto!





Hablemos primero del módulo con el que jugaremos hoy. Se trata de un circuito de la marca 4D Systems (famosa por sus pantallas) que nos permitirá reproducir archivos de audio con solo conectar un pequeño altavoz de 8 Ohmios. De hecho, es capaz de funcionar sin nada más. Lo alimentamos con un par de pilas de 1.5V y colocándole tres pulsadores y ya tenemos control total sobre la reproducción del audio. Incluso posee una salida de línea de audio que podemos utilizar en un amplificador externo u otro equipo.

También podemos controlarlo con 4 pines digitales desde nuestro Arduino, aunque si andamos escasos de pines podemos seguir controlándolo con solo dos pines.

Posee un zócalo para tarjetas MicroSD que es donde introduciremos nuestros archivos de audio para poder reproducirlos.

Veamos los pasos para poder controlar el modulo desde Arduino:

Montaje

Primero conectaremos el módulo a nuestro Arduino.

El módulo trabaja con alimentación de 3V por lo que es muy importante tener cuidado al montarlo ya que si lo alimentamos con los 5 voltios, lo dañaremos. Además como las entradas y salidas del SOMO14D son de 3V debemos colocar resistencias de 470 Ohmnios para adaptar los niveles a las salidas del Arduino que son como sabéis de 5v.

Podemos colocar lo cuatro pines que conectamos al Arduino en cualquiera de los pines digitales, siempre que cambiemos en el código la definición de los mismos.

El led nos permitira saber visualmente cuando si encuentra reproduciendo o no, estado que podemos consultar desde Arduino por el pin BUSY, que para eso está.

Conversion de archivos

Ahora convertiremos los archivos que queremos reproducir. Podéis saltaros este paso si vais a utilizar los sonidos de ejemplo que encontraréis en la sección de enlaces.

Primero prepararemos nuestros archivos de audio, renombrándolos ya que deben estar con el formato "0.mp3", "1.mp3"... "511.mp3" etc para que el sean reconocidos. Podremos utilizar un maximo de 512 archivos.

Una vez los tengamos listos utilizaremos el programa conversor (enlaces), con el que podemos convertir archivos  wav o mp3. 

Para realizar la conversion, abrimos nuestra carpeta y seleccionamos el tipo de archivo de audio del que partimos. Seleccionamos la frecuencia de muestreo (la más alta soportada es 32000), y finalmente presionamos "Encode".

Nos creará los archivos para nuestro dispositivo, que tendrán extension ".ad4".

Preparacion de la MicroSD

Preparamos nuestra tarjeta formateándola en FAT16. La MicroSD no debe tener una capacidad superior a 2GB (no sería una MicroSD sino una MicroSDHC) ya que corremos el riesgo de que el módulo no la detecte. Una vez formateada copiamos nuestros archivos ".ad4" a la trajeta sin meterlos en ninguna carpeta, directamente en la raiz de la MicroSD. Por último introducimos la tarjeta en el módulo.

Código Arduino

Programamos nuestro Arduino con el código de ejemplo.

Una vez programado ya tendremos nuestro Arduino reproduciendo la primera (la "0.ad4") pista de audio.

El código contiene el protocolo para comunicarse con el SOMO14D en múltiples funciones. Este código que unicamente reproduce una pista de audio utiliza solo una linea para darle la orden de reproducción.

PlaySong(0);

También podemos:

-Pausar o retomar la reproducción

pausePlay();

-Reproducir la siguiente pista de audio

nextPlay();

-Parar la reproducción

stopPlay()

-Incrementar o decrementar el volumen

incVol();
decVol();

-Resetear el módulo

Reset();

-Reproducir todas las pistas de audio consecutivamente

CycleSongs();

Muy sencillo e intuitivo. También os dejo un ejemplo mas completo en el que podemos controlar el circuito desde la terminal serie de nuestro ordenador mediante comandos para ver todas estas posibilidades.

A continuación del vídeo de montaje en el que también os muestro como montarlo de manera independiente. Espero que os guste.

¡Hasta el próximo Bricotuto!

 

Enlaces:

SOMO-14D  Altavoz 50mm 8 Ohm - 1W Arduino UNO Set de cables M/M (10 Unid.)


Comparte esto con tus amigos!

Si te ha gustado, quizás también te interese...
Juego 2048 portátil con Arduino
Publicado el 16/07/2014

Comentarios:


Francisco Sotomayor
Enviado el 01/12/2011 (12:03)
Muy interesante, y esperando con ansia la 2ª parte del tuto :)

Francisco Javier Bermejo Lozoya
Enviado el 26/12/2011 (06:55)
Muy bueno, cuando se publicará la segunda parte?

Carlos Cárdenas Medina
Enviado el 14/02/2012 (16:58)
Esperando el siguiente tuto, El más importante que necesito para un proyecto y tomarlo como guía Gracias

leonardo cañumil
Enviado el 07/05/2012 (00:32)
:o esto es perfecto para mi proyecto de fin de año!! un brazo robotico que le de comida a discapacitados y esto es perfecto... espero el segundo tuto, esta pagina esta re copada


Jesus David Alvarez Laguado
Enviado el 25/07/2012 (23:03)
Tengo un pequeño inconveniente, es que la página en donde se descarga el programa conversor para el formato (.ad4), esta caída, será que alguien me podría colaborar con el software, es urgente... Agradezco su atención.

Daniel Gomez
Enviado el 25/11/2012 (01:40)
mi pregunta es con cual software hiciste la imagen de como iria conectado todo al arduino saludos

David Pascual Acirón
Enviado el 06/12/2012 (18:26)
Muy bueno. Me gustaría saber si seria posible con el somo14d reproducir sonidos cuando se pulse un botón. Y que si es posible con varios botones, con un sonido para cada botón, al pulsarse dos o mas los tres sonidos se escuchen a la vez. No se si me explico bien. Gracias

francisco vazquez villegas
Enviado el 12/04/2013 (04:54)
excelente quisiera saber donde puedo ver la parte dos gracias

Julian CL
Enviado el 10/05/2013 (05:17)
Muy interesante gracias, quisiera saber si se realizo la segunda parte?


Oscar Gonzalez Oscar Gonzalez es un colaborador!
Enviado el 10/05/2013 (11:04)
Hola Julio,
Han salido un módulo más actualizado que el SOMO (el WTV020SD disponible en la tienda) y se ha descartado hacer una segunda parte.

Saludos!

david gonzalez
Enviado el 11/05/2013 (05:43)
esta perfecto el proyecto. pero como puedo hacer que reconosca la vos
pongamos un ejemplo si digo (encender) que se encienda el robot . como puedo hacer esto espero tu respuesta gracias

marlon vilchez yurivilca
Enviado el 02/08/2013 (00:35)
hola esta super bueno el proyecto, si me compro el arduino leonardo podría hacer este proyecto oh es con otro arduino gracias espero su respuesta


krlos ruales
Enviado el 13/02/2014 (19:24)
gracias por la ayuda...
donde puedo encontrar la parte 2..
saludos

MARCO ANTONIO QUISPE PALACIOS
Enviado el 19/07/2014 (01:18)
buenas una pregunta se podria hacer lo mismo un modulo sd card para arduino y utilizando un arduino uno


Enviar comentario

Debes disponer de una cuenta de usuario para publicar un comentario.

Si aún no dispones de una cuenta, únete a la comunidad de BricoGeek.com y registrate ahora, te llevará tan solo un minuto y es gratis. También puedes identificate si ya dispones de una cuenta de usuario.
rss

Conecta con BricoGeek.com

Canales sociales

Nos gusta mucho estar en contacto con nuestros lectores y saber más acerca de sus proyecto e inventos.


También puedes sugerir una noticia en el blog
Tienda de Electrónica DIY y Arduino

Lo que se cuece...

Comentarios recientes Más comentado Top noticias
Feed de novedades

Tienda BricoGeek.com

Electrónica para tus proyectos!

Estás preparando un proyecto o quieres iniciarte en la electrónica? Encuentra todo lo que necesitas en la tienda.

Visita la tienda BricoGeek!

La familia de BricoGeek.com

Conoce toda la gente que hace que BricoGeek.com sea posible cada día:

Alejandro Mallo
Colaborador
Puedes hacer click sobre un autor para ver todas sus noticias


Etiquetas más populares:

Descubre todo el contenido de bricogeek.com con las etiquetas más populares:


© BricoGeek.com 2005-2014

Demuestra lo que sabes hacer!