TODOPIC

Microcontroladores PIC => Todo en microcontroladores PIC => Mensaje iniciado por: pakofer en 12 de Febrero de 2007, 11:35:09

Título: Proyecto: Boligrafo con acelerometro
Publicado por: pakofer en 12 de Febrero de 2007, 11:35:09
Buenas;

Actualmente me encuentro en Alemania haciendo mi diploma de bachelor, que trata de un boligrafo que mediante el uso de un aceletrómetro de Analog, concretamente el ADXL330 (http://www.analog.com/en/prod/0%2C2877%2CADXL330%2C00.html), tengo que conseguir que lea la escritura y la mande a un PC de forma inalambrica (Bluetooth, Zigbee...).

Ya he pasado un poco la parte en la que me tenia que enterar que era una acelerómetro y como funciona y ahora me dispongo a hacer algo funcional y fisico. Para ello ya tengo que ir buscando los componentes que voy a utilizar y me gustaría utilizar un micro PIC para la conversión A/D de las 3 salidas analogicas correspondientes a cada uno de los ejes espaciales que va a dar el acelerómetro.

¿Que micro puedo utilizar? Tened en cuenta que tiene que ser pequeño para que quepa dentro del PCB que ira en el boligrafo.

Gracias!! Estoy empezando y toda ayuda vendra genial.
Título: Re: Conversion A/D 3 canales - Problema
Publicado por: navaismo en 12 de Febrero de 2007, 11:41:11
Puedes checar en la pagina de Microchip, los PICs de 8 pines el que mas te convenga. Creo que le 12F675 te serviria
Título: Re: Conversion A/D 3 canales - Problema
Publicado por: maunix en 12 de Febrero de 2007, 11:44:51
Sería bueno que pactes o aclares qué tamaño puede tener, ya que si le quieres agregar un módulo de comunicación bluetooth y otras cosas, no será tan pequeño como un simple bolígrafo.

Sería importante que aclares que requerimientos de procesamiento necesitas ya que podrías requerir más de la cuenta de lo que te puede ofrecer un pequeño pic.

A priori te sugieriría que elijas un pic que tenga usart por hardware y que tenga a/d también por hardware.  Podrías usar un 16F628A en encapsulado SSOIC pero cómo te dije antes habría que ver que requerimientos de procesamiento tienes.

También podrías usar un 16F886 y te ahorras el uso del oscilador además de que son bajo consumo.

Te sugiero también que pases por este post: http://www.todopic.com.ar/foros/index.php?topic=15315.msg96242#msg96242

Saludos


Título: Re: Conversion A/D 3 canales - Problema
Publicado por: pakofer en 12 de Febrero de 2007, 11:53:37
Muchas gracias por vuestras respuestas.

Realmente tampoco os puedo dar mucha información, pese a que he casi completado mis estudios en electronica , lo que me han enseñado en clase ¿¿?? no es muy aplicable a la realidad puesto que son conocimientos muy muy basicos y por eso ahora me tengo que "comer el marron" de tener que empezar a llevarme los palos por no haberme puesto por mi cuenta antes.

El microcontrolador tiene que tener la suficiente velocidad de muestreo como para poder leer la escritura de una persona, iría dentro de lo que seria un bolígrafo de un diametro máximo APROXIMADO de 10.63mm, pero aún puedo encontrar algo mas grueso hasta los 13 - 14 mm de diámetro.

¿Algún consejo?

Repito, gracias por vuestra ayuda
Título: Re: Conversion A/D 3 canales - Problema
Publicado por: maunix en 12 de Febrero de 2007, 14:45:53
El microcontrolador tiene que tener la suficiente velocidad de muestreo como para poder leer la escritura de una persona, iría dentro de lo que seria un bolígrafo de un diametro máximo APROXIMADO de 10.63mm, pero aún puedo encontrar algo mas grueso hasta los 13 - 14 mm de diámetro.

Para dimensionar esto, habría que conocer bien tu aplicación, el sensor que tienes, etc.

Me parece que si estas en el diseño podrías decirnos 10Ksamples por segundo o algo similar.  No se cómo se comporta el acelerómetro que mencionas pero intuyo que arrojará una señal analógica en función del movimiento del bolígrafo. 

Habría que analizar si la señal se procesará así sin más o bien si necesitas filtrarla eléctricamente (con un circuito) o por software. 

Creo que estos aspectos los debes conocer mucho antes de dimensionar la complejidad el microcontrolador y digamos que solo tú puedes analizar tales parámetros.  Acá te podemos decir que si requieres tal cantidad de muestreos por segundo por cada canal, qué pic elegir pero no mucho más ya que dudo que algún otro haya hecho algo con un bolígrafo.  Entiende que tu aplicación es "muy específica" para que encuentres información detallada a tal fin.

Si lees el link que te dejé anteriormente eso te ayudará a definir el pic y te sugiero sea con encapsulado SSOIC

Saludos
Título: Re: Conversion A/D 3 canales - Problema
Publicado por: todopic en 12 de Febrero de 2007, 15:42:11
Hola, interesante proyecto!,  creo que primero, hay que saber la velocidad de escritura, es decir, a cuantros metros, centimetros o milimetros por segundo "recorre" la punta del boligrafo al escribir, luego, cada cuantas decimas o milesimas se tendria que "tomar" esa medicion para transmitirlas como vectores o coordenadas, y en ese rango se sabria la velocidad de conversion que se emplea...
Ya hay un juego de Sony, que emplea acelerometro en lugar de joystick, asi que hay que "pelear" en lugar de pulsar  :D

Hya ejemplos aqui en el foro de conversores, tendrias que especificar en que lenguaje

Suerte! y mantenenos al tanto del proyecto

Norberto
Título: Re: Conversion A/D 3 canales - Problema
Publicado por: Nocturno en 12 de Febrero de 2007, 18:41:16
Bonito proyecto, aunque creo que hay una pega importante.
El acelerómetro mide aceleraciones, cambios de velocidad; por tanto en un trazo recto sólo medirá aceleraciones al comienzo del trazo y al final del mismo. La longitud del trazo tendrás que obtenerla midiendo el tiempo del trazo.
Son muchas variables que no harán más que aumentar el margen de error que irá acumulándose poco a poco y dudo mucho que seas capaz de interpretar trazos escritos con esta técnica.
Quizás si realimentaras la posición absoluta del bolígrafo mediante algún dispositivo externo podrías disminuir ese error.
Título: Re: Conversion A/D 3 canales - Problema
Publicado por: Veguepic en 13 de Febrero de 2007, 00:07:42
Supongo que la ubicacion del sensor debe ser crucial, pues debe ir lo mas cerca a la punta.

Los ejes X e Y deben tener movimientos que el acelerometro debe poder medirlos facilmente, mi duda es que el eje Z normalmente son movimientos pequeños que no se si el acelerometro los pueda detectar, de repente te conviene mas un sensor en la punta.

Segun recuerdo el 16F628A no tiene conversores A/D.

Suerte en tu proyecto!!
Título: Re: Conversion A/D 3 canales - Problema
Publicado por: pakofer en 13 de Febrero de 2007, 08:07:11
Ante todo muchas gracias a todos por vuestras respuestas.

para maunix: El sensor que voy a utilizar es un acelerómetro ADXL330 que se caracteriza por su alta sensivilidad y el poco ruido que genera (tienes el link al datasheet en el primer mensaje). El acelerómetro que utilizo tiene 3 salidas analogicas, cada una de las cuales correspondiente con los ejes espaciales X,Y,Z, por lo que la salida son 3 ondas. No hace falta ningun tipo de filtro por hardware, lo haré por software. Gracias :)

para todopic: Si que es interesante, y tambien conozo el juego ese que comentas. No es de sony es de nintendo y utiliza casualmente el mismo sensor , el ADXL330 que yo. Lo podeis ver aquí. PCB del WII de Nintendo (http://wiire.org/Wii/wiimote) El acelerómetro es el U4 y creo que el conversor Analogico/Digital es el U3. Lo que pasa esque este dispositivo utiliza movimientos mas amplios que los que se producen con la escritura de una mano.

para Nocturno. Si que es una pega, pero en el link que he escrito antes se muestra que hay un precedente y responde perfectamente a los movimientos. Ten en cuenta que en la escritura de una mano es muy dificil que un movimiento no posea aceleración, puesto que incluso al dibujar una linea recta, se acelera hasta el momento en el que se va a parar que se vuelve a "decelerar". Además puedo hacer que el boligrafo escriba en letras mayusculas y solo responda por aproximación de ondas para escribir una letra. Se me acaba de ocurrir, no se si serviría.

para veguepic: En efecto la ubicación del sensor es crucial y debe ir lo mas cerca de la punta para desestimar movimientos que no queremos, que pienso que puede ser corregido con la senhal analogica Z. Es cuestión de verlo
Título: Re: Conversion A/D 3 canales - Problema
Publicado por: maunix en 13 de Febrero de 2007, 08:32:33
Ante todo muchas gracias a todos por vuestras respuestas.

para maunix: El sensor que voy a utilizar es un acelerómetro ADXL330 que se caracteriza por su alta sensivilidad y el poco ruido que genera (tienes el link al datasheet en el primer mensaje). El acelerómetro que utilizo tiene 3 salidas analogicas, cada una de las cuales correspondiente con los ejes espaciales X,Y,Z, por lo que la salida son 3 ondas. No hace falta ningun tipo de filtro por hardware, lo haré por software. Gracias :)

pakofer, más allá de la velocidad que funcione tu acelerómetro o en tu aplicación, es casi imposible hacer sugerencia sobre tipos de proyectos muy diferentes.  Uno lo que hace es entonces, tomar parámetros que sean relevantes y que definan por ejemplo, velocidad del microcontrolador, velocidad de los A/D del microcontrolador, capacidad de cálculo, etc.

Si inicias una pregunta, hablando de un acelerómetro para un bolígrafo, tal vez no consigas a nadie que te responda.  Pero si dices que necesitas un microcontrolador que pueda muestrear 3 canales A/D a por lo menos 10K samples por segundo, y que tenga capacidad para desarrollar un algoritmo de control en ese tiempo, entonces ya has 'dimensionado' tu proyecto.

A lo que voy es que no hace falta leer el datasheet del acelerómetro, porque tu pregunta no fue relacionada a cómo hacer un hardware para el acelerómetro sino de qué microcontrolador te conviene usar para tu aplicación.

Cuando entramos en el entorno de la aplicación, me imagino que tendrás conocimiento o que habrás dimensionado qué rapidez necesitas en los A/D para poder registrar lo que te haga falta registrar en un tiempo acotado.  Amén de eso, deberás tener en cuenta donde almacenaras esos datos, si los cálculos serán volátiles o si necesitarás analizar "la curva del acelerómetro" para luego definir o decidir otras cuestiones.

Todo este dimensionamiento te lleva a que necesitarás hacer:

- N1 muestras por segundo por canal.
- N2 posiciones de memoria donde almacenar dichos datos para un cálculo posterior
- Cierto algoritmo a ser procesado en al menos N3 microsegundos.
- N4 mm2 de área aproximada para ubicar tu microcontrolador.
- N5 mW de consumo
- N6 V de alimentación

Una vez que tengas esa información, la cual solo tú puedes conocer porque eres el que estás investigando el tema, te podremos dar una sugerencia más acabada, precisa y pormenorizada de porqué te sugerimos tal o cual microcontrolador.

Saludos
Título: Re: Conversion A/D 3 canales - Problema
Publicado por: Nocturno en 13 de Febrero de 2007, 14:41:06

para Nocturno. Si que es una pega, pero en el link que he escrito antes se muestra que hay un precedente y responde perfectamente a los movimientos. Ten en cuenta que en la escritura de una mano es muy dificil que un movimiento no posea aceleración, puesto que incluso al dibujar una linea recta, se acelera hasta el momento en el que se va a parar que se vuelve a "decelerar". Además puedo hacer que el boligrafo escriba en letras mayusculas y solo responda por aproximación de ondas para escribir una letra. Se me acaba de ocurrir, no se si serviría.

¿Qué link?, no lo encuentro
Título: Re: Conversion A/D 3 canales - Problema
Publicado por: pakofer en 14 de Febrero de 2007, 07:19:23
Nocturno, a esto me refiero:

Mirad esto primero:

Y ahora esto: http://wiire.org/Wii/wiimote en concreto U3

maunix, si llevas razón gracias :). De entrada necesito al menos 5k muestras por segundo y canal, pero aun sigo investigando. Gracias por toda vuestra ayuda.

Sigo actualizando este sitio para comunicaros los avances que voy realizando.

Gracias.
Título: Re: Conversion A/D 3 canales - Problema
Publicado por: Nocturno en 14 de Febrero de 2007, 07:58:26
Suerte con tu proyecto. Nada más lejos de mi intención que desanimarte, pero creo que no tienen nada que ver los movimientos de la Wii que los de un bolígrafo al escribir.

De todas formas te animo a que lo intentes y ojalá consigas rebatir mi argumento con un tortazo de realidad en plena cara demostrando que funciona.
Título: Re: Conversion A/D 3 canales - Problema
Publicado por: pakofer en 14 de Febrero de 2007, 08:00:05
Lo se, lo se y ahí es donde esta el principal problema del proyecto, aunque espero conseguirlo :D

saludos
Título: Re: Conversion A/D 3 canales - Problema
Publicado por: pakofer en 14 de Febrero de 2007, 11:04:05
una preguntilla, pensais que este es un buen producto para realizar mis mediciones?

http://www.sparkfun.com/commerce/product_info.php?products_id=752

Gracias!


EDITO: creo que tiene un sampleo muy bajo
Título: Re: Conversion A/D 3 canales - Problema
Publicado por: maunix en 14 de Febrero de 2007, 15:31:41
EDITO: creo que tiene un sampleo muy bajo

Exactamente esto te iba a postear, pero me ganaste de mano. :)

En 1 canal registra a 1500 muestras por segundo, en 3 canales 500 muestras por segundo.

Saludos
Título: Re: Conversion A/D 3 canales - Problema
Publicado por: pakofer en 16 de Febrero de 2007, 10:51:16
Tras hablar con mi profesor de laboratorio (la pega esque me habla como si fuese un colega suyo y llevo con el aleman 4 meses) al final vamos a utilizar el ADC MCP3421 de microchip http://ww1.microchip.com/downloads/en/DeviceDoc/22003b.pdf

Ahora lo que me tengo que concentrar es en el analisis de la onda, que si os soy sincero no se por donde cogerlo. Tambien me ha comentado la posibilidad de utilizar un instrumentation amplifier...

A ver que tal sale todo esto, pero esto de analisis de ondas PRACTICO es casi nuevo para mi y supongo que me llevare todos los palos del mundo por ser la primera vez...

...si teneis alguna sugerencia... :mrgreen: :mrgreen: :mrgreen: :D
Título: Re: Proyecto: Boligrafo con acelerometro
Publicado por: Marioguillote en 16 de Febrero de 2007, 16:34:20
Hola a todos !  :)

pakofer, lamentablemente mis conocimientos generales en esa área, son muy escasos como para sumar información útil al proyecto, pero te deseo éxito con el mismo, al igual que a todos los foreros que apoyen este desarollo.

Lo que no alcanzo a entender aún, es acerca de : si es un proyecto teórico, ó si se trata de un proyecto realizable físicamente.
Si se trata de la segunda opción, voy a estar muy atento para aprender lo que más pueda acerca de :


- N5 mW de consumo
- N6 V de alimentación


y cómo se resolverá la alimentación del sistema.

El mejor de los éxitos !!!  :)

Saludos
Mario
Título: Re: Proyecto: Boligrafo con acelerometro
Publicado por: pakofer en 26 de Febrero de 2007, 09:32:22
Es fisico.

Bueno, pues ya he encontrado un ADC

Es el siguiente:

http://www.analog.com/en/prod/0%2C2877%2CAD7793%2C00.html

Ahora tengo que buscar un amplificador de salida, pero no entiendo exactamente porqué ya que la salida es en digital, al menos eso dice el datasheet del aceelrometro, alguien podria explicarme porqué ??

gracias!
Título: Re: Proyecto: Boligrafo con acelerometro
Publicado por: maunix en 26 de Febrero de 2007, 16:36:31
Ahora tengo que buscar un amplificador de salida, pero no entiendo exactamente porqué ya que la salida es en digital, al menos eso dice el datasheet del aceelrometro, alguien podria explicarme porqué ??

¿Podes puntualizar en qué parte del datasheet menciona esto?

¿Acaso no estará hablando de un amplificador para la entrada?
Título: Re: Proyecto: Boligrafo con acelerometro
Publicado por: SavageChicken en 26 de Febrero de 2007, 23:50:48
   Justamente hoy vi algo similar a lo propuesto en NatGeo.
   La diferencia es que este usa una micro cámara para detectar los movimientos que se realizan, y hay que escribir en un papel especial que tiene unas marcas de referencia para que el soft sepa en que parte de la hoja se está escribiendo, y finalmente transmite la info pr bluethoot.

Pen-It (http://xataka.com/2007/01/16-boligrafo-digital-que-se-conecta-mediante-bluetooth)

   Pakofer, viendo los link que pusiste, veo complivado que un acelerómetro usado para esos movimientos mucho más amplios y bruscos, sea capaz de medir movimientos más suaves y sutiles como los de una mano escribiendo, en eso comparto con Nocturno. Pero hasta que no hagas pruebas nada está dicho.

   Desconozco si tienes opciones a usar otros medios para lograr el objetivo, porque si es así te aconsejo mires, busques y te plantees otras alternativas.

Suerte y Salud  8)
Título: Re: Proyecto: Boligrafo con acelerometro
Publicado por: pakofer en 27 de Febrero de 2007, 07:38:14
Yo hablaba del bloque funcional del acelerometro, que necesita un amplificador de entrada y otro de salida. Pero vamos que ya lo entiendo, es evidente, la salida del ADC es muy debil, de pocos mV y esa senhal necesita ser amplificada.

Ya mas o menos voy entendiendo todo. Pronto os ire poniendo el siguiente paso.
Título: Re: Proyecto: Boligrafo con acelerometro
Publicado por: maunix en 27 de Febrero de 2007, 08:57:23
la salida del ADC es muy debil, de pocos mV y esa senhal necesita ser amplificada.

Sigo sin entender  :? 

La salida del ADC acaso no es digital? no es un ADC SPI?  No estarás hablando de la entrada únicamente y/o de la salida de la muestra? que es precisamente lo que ingresa al A/D? osea para el A/D es una entrada?

Título: Re: Proyecto: Boligrafo con acelerometro
Publicado por: pakofer en 28 de Febrero de 2007, 07:45:26
navaismo al final utilizare el microcontrolador que me has propuesto tu, el PIC12f675. No esta nada pero nada mal :) http://ww1.microchip.com/downloads/en/DeviceDoc/70091a.pdf

Ahora procedo a documentarme sobre Transmision ASK/FSK y a ver si encuentro ejemplos de programacion en 433mghz para este microcontrolador.
Título: Re: Proyecto: Boligrafo con acelerometro
Publicado por: pakofer en 02 de Marzo de 2007, 08:16:08
Vale, se que parezco un poco inseguro en mis decisiones pero esque voy aprendiendo practicamente desde cero. Nunca he hecho nada practico, se que muchos de vosotros creeis imposible este proyecto pero bueno, a ver que saco en claro y por mi bien intentare hacerlo.

Alguien podria decirme donde puedo comprar un rfPIC12F675 ? existen otras alternativas mejores?

Creo que ese micro es un poco antiguo, alguien tiene experiencia con el?

Gracias!
Título: Re: Proyecto: Boligrafo con acelerometro
Publicado por: maunix en 02 de Marzo de 2007, 08:38:54
Alguien podria decirme donde puedo comprar un rfPIC12F675 ? existen otras alternativas mejores?

No lo he usado pero te puedo asegurar que en el foro hay mucho posteado de este tema.

Fijate arriba , haz click en el boton buscar y luego escribe rfpic.  Dale click en buscar (no hace falta entrar en las opciones avanzadas) y te apareceran muchos links en donde podrás consultar.

Saludos

PD: aún no me queda claro lo del amplificador de salida que comentas.
Título: Re: Proyecto: Boligrafo con acelerometro
Publicado por: jfmateos2 en 13 de Julio de 2007, 06:20:25
Perdonen que reviva este hilo, pero hoy encontré algo que me pareció interesante y decidí dejar constancia aquí.

Se trata de un informe realizado en 1995 (algo antiguo) en el que llegan a la conclusión de que podría crearse un bolígrafo/pluma dotado de un sistema de navegación inercial capaz de detectar su posición en un espacio normalizado (es decir, capaz de reconocer los caracteres escritos con él), pero no de reconocer su posición en el espacio absoluto.

http://xenia.media.mit.edu/~verp/projects/smartpen/ruff_drapht.html

Y en este PDF (http://www.hindawi.com/GetPDF.aspx?doi=10.1155/ASP/2006/86706) se analiza un sistema de posicionamiento combinado basado en señales Wi-Fi y un INS (sistema de navegación inercial). En una sala de 40x40 metros colocan un AP Wi-Fi en cada esquina y dotan al móvil de un sistema para captar la intensidad de estos AP y del INS. Logran ubicar al móvil con un error inferior a 2 metros.

Y un informe de la Cornell (http://instruct1.cit.cornell.edu/Courses/eceprojectsland/STUDENTPROJ/2005to2006/me53/report.pdf) para fabricar un sistema de navegación inercial basado en un DSPIC.
Título: Re: Proyecto: Boligrafo con acelerometro
Publicado por: jfmateos2 en 30 de Octubre de 2008, 13:55:46
Pues parece ser que el tema del bolígrafo con acelerómetro se ha colado en el concurso de diseño con PIC32 (http://www.mypic32.com/web/guest/contestantsprofiles?profileID=43097).


¿Lo conseguirá?
Título: Re: Proyecto: Boligrafo con acelerometro
Publicado por: Marttyn en 04 de Noviembre de 2008, 12:44:47
Interesante idea.


Aqui hay informacion muy interesante sobre el tema:
http://www.freescale.com/files/sensors/doc/app_note/AN3397.pdf

Salu2