Ir al contenido principal

Tabla de sonidos easyVR desde cero

Uno de los poderes del easyVR es reproducir sonidos. Esta entrada se encarga de despejar todas la dudas y que al final sean capaz de crear un tabla de sonido ustedes solos, asi que al "ataque".

Los pasos son:
1.- Conseguir los archivos de sonidos, con las siguientes características.

  • formato: WAV  
  • 22050 Hz 
  • Canal: Mono (o Monoaural) 
2.- Agregar los archivos .WAV al quick synthesis 5
3.- Agregar proyecto a la memoria del easyVR 
4.- Codigo
5 .- Fin

Paso 1/5 - Conseguir los archivos de sonidos

Esta parte es la mas tediosa sobre todo si quieres conseguir un tabla de calidad, a que me refiero con calidad, a que lo sonidos se escuchen perfectos sin ningún tipo de ruido.

Con el programa Audacity, puedes grabar todo lo que pasa por tu tarjeta de sonido, esto es muy recomendable cuando quieres hacer tus propios sonidos. También puedes editarlos para que se escuchen un poco mejor. Solo no olvides guardar tus sonidos con las características indicadas. 

Para fines prácticos y RÁPIDOS les facilitare una capeta de sonidos que encontré en una pagina(no recuerdo la liga, la conseguí hace mucho tiempo). Muchas gracias "pagina". 

Paso 2/5 -  Agregar los archivos .WAV al quick synthesis 5


 Quick synthesis 5 es un SW(software) que se instala por default con el easyVR commander, si no fue asíaquí esta el link para que lo descarguen.

QS5 nos ayudara al proceso de crear proyectos para que easyVR commander pueda leer archivos de sonido. 

Abrimos QS5 como modo administrador(te dará problemas si no lo haces así) y lo primero que tenemos que hacer es crear un nuevo proyecto.

FILE > NEW > RSC4 Family > GUARDAMOS




Ahora agregamos los archivos .wav 

EDIT > ADD WAV FILE > Buscamos la carpeta de los sonidos




Después que seleccionamos, aparecerá una ventana de comprir y presionamos OK For ALL.




Ahora nos saldrá un cuadro para escoger el nombre del archivo, si quieren cambien el nombre, después presionen OK hasta el final o seleccionen Auto Label(recomendado). 

Nuestros sonidos ya están listos para ser procesados, ahora presionamos ctrl+A  para seleccionar todos los archivos y buscamos el botón de Compress(ctrl+z) y esperamos a que termine y deberán ver un mensaje como el siguiente.



Cuando haya terminado lo que sigue es presionar el botón Build(todavía tenemos todos los archivos seleccionados)abrirá un cuadro como el siguiente


 presionamos OK y esperamos a que termine. Deberán ver un mensaje como el siguiente.



NOTA: En este paso es muy común que vean este error, cayendo en un ciclo "infinito". La solución es cerrar el QS5 y abrirlo como administrador.



Ya para salir de este paso, guardamos el proyecto(ctrl+s).

Paso 3/5 -  Agregar proyecto a la memoria del easyVR

Lo primero que tenemos que hacer es conectar el easyVR en Adapter mode. Les comparto una imagen de como debe ser las conexiones.

NOTA: Por seguridad para el modulo, cambiar de modo Bridge a Adapter(o viceversa) con el Arduino desconectado a la PC(sin corriente).


Cuando tengamos las conexiones listas abrimos el easyVR commander para agregarle la tabla de sonidos.

Paso 1 .- Conectar el Arduino a la PC en adapter mode.
Paso 2 .- Seleccionar el puerto COM correspondiente.
Paso 3.- Abrir menu TOOLS > UPDATE SOUND TABLE
Paso 4.- Buscamos el proyecto creado en QS5
Paso 5.- Seleccionamos la casilla "SLOW TRANSFERS" (para sonidos pesados).
Paso 6.- Damos "DOWNLOAD"

Si todo esta bien.. el proyecto bien creado, las conexiones bien hechas después que den "download" te mandara a la pantalla principal y podrás ver tus sonidos en el grupo de "SoundTable".

El puerto COM cambia en cada computadora


Desconectamos el arduino de la PC y cambiamos a modo Bridge.




Paso 4/5 - Código

Para este paso reciclaremos el código que hicimos en la entrada anterior y de ahí partiremos.

Código anterior


Agregando la tabla de sonidos quedaría


Paso 5/5 - FIN

Espero les haya ayudado cualquier duda o cualquier ruido que le haya entrado en algún paso comenten aquí abajo, intentare ayudarles de uno por uno. 

VÍDEO

https://www.dropbox.com/s/afur12sbr3z129v/VID_20130316_172616.3gp


REFERENCIAS

http://dlnmh9ip6v2uc.cloudfront.net/datasheets/Dev/Arduino/Shields/EasyVR_User_Manual_3.3.pdf

Comentarios

  1. Estupendo. Me pondré con ello en cuanto tenga un momento.

    Mil gracias

    ResponderEliminar
  2. hola, oie quisiera saber como hacer lo mismo pero para poder mover un servomotor?

    ResponderEliminar
    Respuestas
    1. Que tal Diego, lo primero que te aconsejo es mover los servos con la voz y una vez que tengas esa parte agregarle sonido a tu proyecto se te hará demasiado sencillo.

      En esta entrada http://4imedio.blogspot.mx/2013/03/encender-leds-con-la-voz-easyvr.html incluye código de como encender leds con la voz, tu unicamente modificalo a tus necesidades.

      Eliminar
  3. hola..muchas gracias por tu tutorial...pero tengo una duda, en esta parte del codigo:
    for(int i=2; i<=3; i++){
    pinMode(i, OUTPUT);
    }
    que está dentro del easyvr... configuraste los pines 2 y 3 como salida..eso es para LA ARDUINO UNO?????
    osea en dichos pines conectas los leds en la arduino uno????

    ResponderEliminar
    Respuestas
    1. Que tal Stiwar, respondiendo a tus preguntas
      1.- si, es para el arduino uno y también configure los pines 2 y 3 como salida(eso lo hace el for)
      2 .- si, efectivamente tengo 2 leds... en realidad se puede tener cualquier cosa conectada, pero este tutorial es para que entiendan el concepto.

      Eliminar
    2. gracias por responder....te voy a hacer una ultima pregunta...lo que pasa es que yo estoy trabajando con la arduino mega 2560 y el easyvr shield...este ultimo ps trae el modulo easyvr y ademas trae unos pines de mas marcados como d0-d13..segun encontre en internet, d0 y d1 son para tx y rx pero no se para que son los pines d2-d13, de casualidad tu lo sabes???
      muchas gracias...

      Eliminar
    3. Esas son las salidas/entradas del arduino... es que el modulo actua como "puente" entre las entradas "originales" y las que trae el modulo, si tu quieres conectar un led, un servo o un sensor tienes que usar esas entradas para que el arduino las pueda interpretar.

      Lo que a ti te interesa es el apartado que esta abajo, dice algo como UP, PC, HW, SW y tienes que estarlos moviendo de posición según lo que necesites.

      UP(upload-subir) - para cargarle una tabla de sonidos al modulo easyVr.
      PC - Para entrenar el modulo, crear nuevas palabras, modificarlas, etc, etc todo lo que tenga que ver directamente con el modulo.
      HW - Cuando quieres que interactuen el arduino con el modulo
      SW - no recuerdo...

      y afectivamente d0 y d1 son tx y rx.

      Eliminar
    4. Este comentario ha sido eliminado por el autor.

      Eliminar
    5. Este comentario ha sido eliminado por el autor.

      Eliminar
  4. sabes en que pines o como se conecta el parlante?

    ResponderEliminar
    Respuestas
    1. Con parlante te refieres a bocina? Si es así... el easyVr cuenta con sus propios pines para conectar la bocina. Checa el link de referencia en la pagina 5, el conector J2 es el que necesitas.

      Eliminar

Publicar un comentario

Entradas populares de este blog

Pequeño Juego con LEDS y Dip Switch

Siguiendo con los mini-proyectos, lo que quería hacer originalmente era un tipo "candado" con push-button y LEDs, el objetivo seria, meter la combinacion de botones correcta y los LEDS encendería por un motivo practico, en forma de serpiente. El objetivo no cambio, pero por falta de "material" lo hice con un dip switch de X entradas(depende de que tan grande quieras la combinación). CONOCIMIENTOS(max. 7 estrellas): Electronica:     ★ ★ Programación: ★ ★ Juego de Combinación + LEDs El programa es un poco mas complicado que el mini-proyecto pasado , pero aun asi es basico. Guardamos las salidas de los LEDs en un arreglo, despues con los valores recibidos y comparados de los dip switch jugamos con los LEDś. Hardware Requerido (1) Arduino Uno (6) LED (8) Resistencias 330 Ω (1) Dip Switch Circuito Usamos las salidas del ARduino 2-7 para los LEDS Usamos la salida A5, A4 para el dip switch Para hacer prender los LEDS tienes que encontrar la

Tarea #5 - Codigo Hamming - Python

Codigo hamming Liga al repo Teoria segun wikipedia Antes de los códigos Hamming se utilizaron ciertos códigos detectores de error, como lo fueron el código linteing, pero ninguno llegó a ser tan eficaz como los de Hamming. A continuación se describen algunos de estos códigos. Paridad   La   paridad   consiste en añadir un bit, denominado   bit de paridad , que indique si el número de los bits de valor 1 en los datos precedentes es par o impar. Si un solo bit cambiara por error en la transmisión, el mensaje cambiará de paridad y el error se puede detectar (nótese que el bit donde se produzca el error puede ser el mismo bit de paridad). La convención más común es que un valor de paridad   1   indica que hay un número impar de unos en los datos, y un valor de paridad de   0   indica que hay un número par de unos en los datos. info. completa y un vídeo que me ayudo mucho para esta tarea: (TIENEN QUE VERLO - OBLIGATORIO) http://www.youtube.com/watch?v=xiDPFm9PeLU Impleme

Potenciometro + pushboton + led

Bueno, estos días he estado practicando con los ejemplos de la pagina de Arduino , algunos que me llamaron la atención los voy a compartir, por supuesto con modificaciones. Nivel de conocimientos: Electronica:        ★   Programació n :    ★    Potenciometro + push-boton = LEDintensidad El mini-proyecto es controlar la intensidad de un LED mediante un potenciometro el cual combinado con push-botton para prenderlo o apagarlo. Hardware Requerido (1) Arduino UNO (1) Potenciometro (1) Push-boton (1) LED (1) Resistencia 330 Ω Circuito Conectamos el LED al PIN 9 del Arduino Conectamos el PUSH_BOTON al PIN ANOLOGICO 0 (A0) Conectamos el POTENCIOMETRO al PIN ANOLOGICO 1 (A1) El funcionamiento del circuito es basico, mientras tengas pulsado el Push-Boton el LED se mantendrá encendido y con el pontenciometro controlas la intensidad del LED. Código Video