Haz una pregunta
  Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos
Foros Registrarse ¿Olvidaste tu contraseña?

Temas similares

17/08/2005 #1


Control por comandos de voz
Necesito información sobre algún integrado o circuito que reconozca comandos por voz, para luego adaptarlo a un pic (por ej).

El circuito es para controlar una silla de ruedas eléctrica, PARA UNA CHICA QUE QUEDO CUADRIPLEGICA. Es Adhonorem ya que las sillas con joystic cuestan $15000 pesos, y no nos sirve porque ella solamente puede hablar. Realmente necesito AUNQUE SEA cualquier tipo de idea o pagina web.

Si internet es util, hacemelo creer. Ella te lo va a agradecer !
17/08/2005 #2
Moderador general

Avatar de Andres Cuenca

Te invito a que visites esta pagina, las aplicaciones de reconocimiento de voz que conozco utilizan estos integrados.

http://www.sensoryinc.com/html/products/ics.html

Saludos.
18/08/2005 #3


Si sos de Argentina, puedo recomendarte que solicites el catálogo de la linea HT (holtek) ya que ahi mismo he visto varias aplicaciones ya armadas que trabajan con el reconocimiento de voz.
La linea Holtek la importa Cika Electrónica y creo que es el unico.
21/08/2005 #4


Rolando, creo que una solución más práctica, multifuncional y rápida de implementar es utilizar una solución mixta basada en software/hardware, empleando para ello cualquier plugin (OCX o DLL) de Microsoft u otra compañía para C++ o Visual Basic para reconocimiento de voz.

Fíjate por ejemplo en:
http://www.wizzardsoftware.com/products_developer.php
http://www.sharewareconnection.com/d...-sharecon.html
http://www.o2a.com/AX/dtalkAX.htm
http://www.popularshareware.com/Voic...oad-11237.html

y hay muchas más por allí.

Para esto deberías disponer de un laptop y una interfaz puerto paralelo que te permite controlar los motores u otros elementos que necesites a voluntad.

De esta forma requerirías del laptop, la interfaz y el programa.

Esto sería mucho más versátil pues permite expandir la utilización a cualquier aspecto requerido, utilizando el mismo software, es mucho más rápido de implementar y además tendrías todos los puertos de interfaz listos para usar (Seriales y Paralelo). Hay montones de circuitos como por ejemplo los PWM (Pulse With Modulation) para poder controlar motores AC, DC, Paso a Paso y Servos desde el puerto paralelo, los dedicados a la robótica los utilizan mucho.

La idea general del software a desarrollar es que el activex te traduzca la voz a caracteres y basado en la interpretación de estos caracteres realizarías la acción que deseas sobre el puerto paralelo, por ejemplo con las palabras "Adelante" "Atrás" "Izquierda" "Derecha" "Parar" "Ir". te bastarían para controlar 2 motores que muevan la silla en estas direcciones.

El Laptop que necesitarías no tendría que ser de última generación pues solo estaría dedicado a esta aplicación. Me atrevo a decir que hasta un 486 con Windows 98 sería suficiente y además sería muy económico.

La interfáz es más que común y "sencilla" de realizar y por aquí hay un montón de personas que te podrían ayudar en su desarrollo.

Por otro lado podrías utilizar la pantalla del Laptop para mostrar información adicional como puede ser el estado de carga de las baterías y con esta configuración dispondrías de todo el setup para desarrolar aplicaciones adicionales como pudieran ser: generar alarmas, accionar controles remotos para encender y apagar luces, televisores, llamar por teléfono y muchas cosas más.

Saludos.

Marcelo.
21/08/2005 #5
Moderador general

Avatar de Andres Cuenca

Comparto la idea de Marcelo, utilizar un software de reconocimiento de voz hace el proyecto mas versátil y sencillo, además que la lógica de control también se realiza por sottware, dejando una simple etapa de potencia para controlar los motores.
02/09/2005 #6


Marce, es una muy buena idea. La descarté al principio porque los costos de una laptop me parecian elevados pero al investigar los CHIP-VOICE me di cuenta que 500 dolares para un chip, aunque sea de reconocimiento, ES CARO.
El programa que deberia usar tendria que ser compatible con C, que es el que se usar. Tambien tengo pensado usar un puente H para la etapa de potencia.

GRACIAS MARCE

Y SIGAN POR FAVOR
03/09/2005 #7


Hola Rolando,

Fíjate en esta página donde vas a conseguir montones de ideas para controlar motores, incluidos puentes H.

http://www.commlinx.com.au/Control.htm

El problema de usar puentes H para este proyecto es que la etapa de potencia debería constar de transistores y diodos muy grandes para poder manejar los motores y sus transitorias debido a los inducidos de armadura.

Creo que sería mejor utilizar relés y un micro que los controle. Es mucho más fácil y directo. Según mi experiencia, otro problema del puente H es que debe estar bien balanceado para que el torque en ambos sentidos sea aproximadamente igual. Necesitaras 2 de ellos.

Obviamente, lo anterior es respecto a los puentes H hechos "a mano", pues existen chips que ya contienen puentes doble H con compensación. que preveen estos problemas.

Aqui tienes un circuito que maneja hasta 20V, 24A con componentes discretos:

http://www.palmiga.com/myztec/byo/turbo/miniz-turbo.pdf#search='double%20hbridge%20chip'

y aquí uno de los integrados:

http://www.acroname.com/robotics/inf.../stacking.html

otros son el L293D reemplazado actualmente por SN754410NE y el ULN2003A. Estos chips manejan hasta 1 o 2 amperes solamente, aunque se pueden montar uno sobre el otro para manejar cargas mayores (como se muestra en el primer link).

Tengo un circuito diseñado por mi que usa un Hbridge para controlar un motor de 9 voltios DC 500 mA, un MAX232 para comunicación serial y una etapa de control con un PIC 16F84A que comanda el puente. Además permite la lectura de un sensor de pulsos por RB0. Si te interesa que te mande los esquemáticos déjame tu correo electrónico.

Este circuito está diseñado para mover un enfocador de un telescopio automáticamente y si bien no lo vas a poder usar directamente, te podría servir como base para el diseño.
Creo que sería muy fácil adaptarlo a lo que necesitas. Reescribir el firmware del pic también sería sencillo.

De igual forma se puede cambiar el PIC a uno con UART como el 16F87 que es pin a pin compatible, para que las rutinas de comunicaciones sean mucho más fácil de desarrollar, pero como está funciona perfectamente y tiene aplicación directa a lo que necesitas.

Con respecto a las DLL de reconocimiento de voz, las ACTIVEX que te comenté se pueden usar en C++ y VB. Allí no hay problema. Si dominas C++, hacer el programa será un paseo.

Creo que todo es cuestion de ponerse a hacerlo y listo.

Saludos.
Marcelo.
03/09/2005 #8


Marcelo dijo:
....otros son el L293D reemplazado actualmente por SN754410NE y el ULN2003A. Estos chips manejan hasta 1 o 2 amperes solamente, aunque se pueden montar uno sobre el otro para manejar cargas mayores ....(como se muestra en el primer link)
Un comentario al pasar...

Ahora que mencionaste esto, creo que habia un integrado, si mal no recuerdo era algo como MPPC 1 , de la gente que desarrola BasicStamp, este integrado se habia pensado para el manejo de motores paso a paso, recuerdo que lo interesante de este semiconductor es que tenia la posibilidad de endosarle un encoder para determinar la posición del eje. Lamentablemente SCM internacional se fue de Argentina, pero era un producto interesante y a la vez muy económico, manejaba hasta 20A.
14/10/2005 #9


Novedades, pedidos y agradeciemtos
Gracias por los datos del Puente H. Ya que este era uno de mis problemas. Los motores calculados son de 1/4 HP (cojudos) y por eso la corriente es un problema para los Puentes integrados. Por lo que veo hacerlos es la unica salida.
GRAN NOTICIA::: La chica despues de tanta reabilitación PUEDE MOVER un Brazo y un poco la muñeca... por lo tanto el control se facilitaria con una espacie de joystick adaptado. Igualmente les agradesco todo el material que me mandaron, y lo voy a tener en cuenta (GRACIAS POR SU TIEMPO EN SERIO).
Les comento algunas noticias y avances... la silla pensabamos hacerla ultraliviana para que ella intente, con la reavilitacion, moverla manualmente. Pero despues de ver los costos (del aluminio ultraliviano y el carbono), vamos hacerla de hierro estructural. El control mediante un pic a los puentes H y a diversos circuitos de control (baterias frenos sirena de emergencia etc).
Ni bien tenga fotos las mando
Marce mi e-mail es rolando_electronica@yahoo.com.ar y te agradeceria que me mandes el proyecto del enfocador, me serviria mucho.
Otra cosita y te dejo de joder.. Yo pensaba manejar la velocidad de los motores por PWM.. Si lo hago por reles hay alguna manera para modificar la velocidad ? Esto es necesario para manejar la aceleración y desaceleración de la silla y que koki (la chica), no salga arando. Gracias
14/10/2005 #10


Saludos Rolando,

Bueno, luego de escribir esto te mando los archivos.

Me alegro que la chica esté respondiendo a la terapia, ¡eso es maravilloso!, me alegro mucho.

Con respecto a los motores, investiga a ver si puedes conseguir unas cajas de conversión para así poder usar motores menos potentes (de 1/8), además necesitas más torque que velocidad.

A veces es mejor usar este tipo de "cajas de transmisión" porque es más fácil poder controlar mecánicamente el arranque y parado de los motores. También te proporcionan un poco más de "backslash" (inercia), haciendo que el movimiento sea mucho más suave es decir, no tan brusco como si el eje del motor estuviera diréctamente acoplado al eje de las ruedas.

Me parece que para empezar, una silla más pesada es mucho mejor que una liviana, por cuestiones de estabilidad. Luego de la adaptación que le llevará algún tiempo, se podría pensar en algo más liviano mejorando el diseño.

Con relés?, no. Eso sería como un switch, prendido o apagado. A no ser que te inventes algo para tener distintos voltajes aplicados al motor por medio de relés (aunque no es lo más eficiente porque pierdes torque).

Si los motores son DC lo indicado es PWM y si son AC, un variador de frecuencia (que es prácticamente PWM aplicado a cada fase y sincronizado). Como no se puede cambiar dinámicamente la mecánica de un motor, para variar su velocidad hay que variar el campo de armadura, lo que quiere decir que debe existir un mecanismo para realizar el cambio en el voltaje y/o la corriente en las bobinas.

Por cierto, si por casualidad quieres ver algo sobre el variador de frecuencia fíjate aquí en el foro, en "Documentación", que hay un trabajo muy bueno sobre eso.

Saludos,
Marcelo.
23/11/2005 #11


Hola soy nuevo aquí y necesito ayuda para realizar mi tesis, vi tu proyecto y te agradecería si me pudieras dar mayor información gracias
08/12/2005 #12


Ayuda para tu tesis
Hola Marvin como te va!. Ante nada te quiero comentar que el proyecto esta en sus inicios y en estos proximos 2 o tres meses vamos a hacer muchos avences. Es cuestion de tiempo.
Necesitaria que si es que tenes alguna duda con algo me la comentes o decime de que se trata tu tesis para poder ayudarte si es que puedo.
Desde ya te cuento que en este proyecto tiene un fin en especial (como ya sabes), y por lo tanto se va a intentar hacer la silla lo mas barata posible, y esto descarta el control por vos (por ahora).
El control por vos si se hace por programa hay que hacerlo por medio de una pc, pero si queres implementarlo con algún chip especial este puede costar cerca de 1000 dolares. Por lo tanto si sos un iniciado en la electrónica CUiDADO.
Saludos y escribime
17/02/2006 #13


hola mar de este mensaje es de un tema que tu respondiste

para programar un pic de microchip PARA CONTROLAR UN MOTOR PASO A PASO DE UN SISTEMA DEMASIODO LINEAL , que me pudes dar un link para encontar la descripccion del cuerpo del programa en C o C++ O SOLO LO TEDAS CUENTA QUE PROGRAMAR EN C ES MAS FACIL O COMO VEZ, AHY ALGUN PROGRAMA X ESPECIAL PRA PROGRAMAR PIC LOS MAS CENCILLOS[/img]
13/03/2006 #14


No son necesarios chips complicados.

Como ya lo publique en un post de otro tema, alguien me pregunto por un tema similar, es posible hacer reconocimiento de voz (por lo menos para un conjunto restringido de palabras) mediante un microcontrolador sencillo que tenga un conversor analogo digital. Mira un ejemplo practico hecho con un microcontrolador de muy bajo costo:

http://www.circuitcellar.com/pastiss...art91/text.htm
13/03/2006 #15


Hola a todos!!

Me da mucha felicidad leer estos mensajes y saber que por medio del foro hay gente que se ayuda mutuamente a desarrollar proyectos de bajo costo para personas que necesitan ayuda. Realmenente me emociona ésto.

Rolando, si todavía sigues interesado en aplicar el reconocimiento de voz, me puedes decir lo siguiente.

Cuales comandos te gustaría impelentar por voz: por ejemplo:

Claves:
<Activador> = Silla electrónica

1. <Activador> Avanzar
2. <Activador> Detener
3. <Activador> Derecha
4. <Activador> Izquierda

No se que otro comando te interesaría.

Actualmente estoy haciendo mi tésis en reconocimiento de voz y puedo probar lo que estoy aprendiendo, para tratar de lograr alguna herramienta de bajo costo con las funciones que necesitas.

Estoy trabajando con un sistema de reconocimiento de voz que se llama Sphinx. Éste tiene una vesión 2 que ha sido incorporado en sistemas embebidos, y creo que ha sido porteado al microcontrolador de Blackfin de Analog Devices. El codigo de Open Source al igual que el diseño de la tarjeta Stamp en donde se utiliza éste microcontrolador, incluyendo el uCLinux y el compilador GCC, asi se pueden hacer programas en C y compilarlos a la tarjeta.

Eso quiere decir que la herramienta ha de costar cerca de 200 dolares en Estados Unidos. Esta herramienta la tengo en la casa y ya en el futuro pudiera hacer pruebas, si ésto es de interés.

Para el sistema de reconocimiento de voz necesitaríamos:

1. Un decodificador de voz (preferiblemente adaptado a la voz de Koki)
El decodificador puede contar con
a. Reconocedor de fonemas y
b. Reconocedor de palabras.

La forma más común utilizada en ambientes Robustos de reconocimiento del habla es utilizando sistemas probablilísticos implementando cadenas de Markov (que realmente todavía no entiendo a la perfección, pero en ésto andamos durante estos meses). Necesitarías un ambiente Robusto, porque seguramente abrá mucho ruido donde ande la silla de ruedas.

Otra forma de aplicar el reconocimiento de voz es por medio de redes neuronales, que es mi principal área de interés.

Bueno, si sigues interesado podemos diseñar un sistema y pudiera hacer pruebas para ver cómo resulta el comportamiento. Seguramente sería muy buena motivación para mi también, el saber que puedo ayudar a alguien.


Muchos Saludos,

El P@n@
06/04/2006 #16


Digitalizacion de voz
Betomelo dijo:
No son necesarios chips complicados.

Como ya lo publique en un post de otro tema, alguien me pregunto por un tema similar, es posible hacer reconocimiento de voz (por lo menos para un conjunto restringido de palabras) mediante un microcontrolador sencillo que tenga un conversor analogo digital. Mira un ejemplo practico hecho con un microcontrolador de muy bajo costo:

http://www.circuitcellar.com/pastiss...art91/text.htm
Como dice el autor en su pagina, el utiliza una teoria de hace mas o menos 50 años, en la que utiliza dos bandas de frecuencia F1 y F2.

En resumidas cuentas lo que el autor hizo es un oscilador de ancho de pulso modulado por la frecuencia de la voz de entrada.

es como si se se tomara una "instantanea" de la frecuencia cada determinado instante de tiempo.

El circuito mide los anchos de los pulsos y los guarda.

Te doy un ejemplo para que te guies, pero no es real. Digamos que pronuncias la palabra "hola", el circuito genera una señal cuadrada de cuyo ancho de pulso varia respecto a la frecuencia de la señal de entrada en un instante, digamos que al pronunicar la palabra hola y medir los anchos de los pulsos cada x segundos se obtiene una secuencia de numeros algo asi:

56 567 78 45 34 45 67 78 89 89 12

el internamente tiene secuencias que fueron producidas por las palabras que fueron "grabadas". mediante ciertos algoritmos el compara cual de las secuencias que hay almacenadas, se parece mas a la secuencia de numeros que ingreso.

No se exactamente que es lo que no entiendes de ese proyecto, pues esta muy bien documentado
11/04/2006 #17


te recomiendo que lleve un miniordenador en la silla con linux y el programa c-voice con este sencillo programa podrás hacer maravillas en cuanto a reconocimiento de voz, y ademas es gratuito y permite activar otros programas por linea de comandos (manejandolo todo por voz), lo que te permitiria hacer sencillos programas para decir la velocidad, direccion, etc,etc
12/04/2006 #18


Marcelo a los muchachos del foro yo esoy haciendo un sistemita direccionemiento con servomotores para orientar una antena de Video para que esta se oriente hacia la fuente de señal previo haber llegado posicion gps de la fuente de origen los datos exactos de su ubicacion esto esta casi listo el traslado de datos pero me falta la parte de decodificar esta información y pasarla a los servos para que esta antena que esta estatica en un pundo pueda autoorientarse a esa fuente y no tengo conocimiento del menejo de motores y salidas de pics para el manejo de estos pero veo que en el foro hay gente muy capaz asi que pido si alguien me puede ayudar desdev ya estoy agradecido y si de lo mio hay algo que les sea util no tiene mas que solicitarlo gracias
13/06/2007 #19


Reconocimiento de voz
Saludos soy un profesor de Mexico y quiero hacer unas pruebas con mis alumnos de la materia de informática para hacer mover un motor controlado con la voz, estoy haciendo pruebas con el api de windows de reconocimiento de voz y lo estoy programando en visual basic pero hasta el momento no se ha activado el motor, tengo conectado una interfaz puente h l293b conectada al puerto paralelo para controlar hasta 4 motores y ya los hice mover con visual basic en los 2 dos sentidos pero aun no logro controlarlos con la voz puedo manipular el activex de text to speech y hacer que gire los motores y se escuche una voz pero no logro manejar los activex vcommand o directsr si alguien pudiera auxiliarme se los voy a agradecer
hasta luego.
18/08/2009 #20


Hola. y me gustaria saber como puedo guardar la voz en el micro convirtiendo en hex?o como es la manera mas eficiente de hacerlo'?

La idea sencillamente es hacer un sistema de reconocimiento de voz a traves de microcontroladores. Que reconozca una palabra y dispare una señal, nada mas!. No necesito ultraprecision ya que el microfono va a estar a menos de 1 metro de la persona.

Desde ya muchisimas Gracias!

Saludoss!
¿Tienes una mejor respuesta a este tema? ¿Quieres hacerle una pregunta a nuestra comunidad y sus expertos? Registrate

Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO ©2011, Crawlability, Inc.