Autor Tema: mouse USB con pic18f4550 y acelerometro MMA7260QT  (Leído 48753 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado jgpeiro06

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 276
Re: mouse USB con pic18f4550 y acelerometro MMA7260QT
« Respuesta #30 en: 26 de Mayo de 2009, 17:05:18 »
Citar
Quisiera tomar muchas mas muestras a la hora de la calibracion
El algoritmo ya toma 128 muestras, que ya son suficientes para el promedio. Para obtener más muestras sin "desbordar" lo más facil es que declares las variables sstatex y sstatey como unsigned long long. También puedes probar a declarar todas las variables de la función calibrate como float y hacer la conversión a entero después de la división.
 
Otra manera de eliminar la componente continua es añadir un filtro paso alto, de esta manera "siempre este quieto estará calibrado" aunque en distinta posición.
Yo más o menos probé las siguientes etapas:

MMA7260---> 1pole Hardware LPF---> 10bit ADC ---> IIR HPF ---> Integrate ---> IIR HPF ---> integral ---> IIR HPF
También probé con filtros FIR, de todas las "formas" y "colores" que pude, pero no conseguí que la señal de salida correspondiese a la posición del aparato...

« Última modificación: 27 de Mayo de 2009, 09:41:16 por jgpeiro06 »

Desconectado gera

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2188
Re: mouse USB con pic18f4550 y acelerometro MMA7260QT
« Respuesta #31 en: 02 de Junio de 2009, 12:34:36 »
Gracias por los consejos jgpeiro!!
Lo q hice fue aplicar un pasabandas q elimine la continua y el ruido de alta frecuencia, pero se vuelve muy inestable. Y con el tema de la calibracion sinceramente no se q pasa. Por mas muestras q tome, siempre me da un valor un poco menor q el real.
Esto ya me esta dando dolores de cabeza.. pero vamos a seguir probando a ver si tengo exito.
saludos!!

"conozco dos cosas infinitas: el universo y la estupidez humana. Y no estoy muy seguro del primero." A.Einstein

Desconectado jgpeiro06

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 276
Re: mouse USB con pic18f4550 y acelerometro MMA7260QT
« Respuesta #32 en: 03 de Junio de 2009, 07:25:06 »
Citar
Por mas muestras q tome, siempre me da un valor un poco menor q el real.
Si tu código es como este...:
Código: C
  1. void Calibrate(void)
  2. {
  3.     unsigned int count1;
  4.     count1 = 0;
  5.    
  6.     do{  
  7.         ADC_GetAllAxis();
  8.         sstatex = sstatex + Sample_X;      // Accumulate Samples
  9.         sstatey = sstatey + Sample_Y;
  10.         count1++;
  11.     }while(count1!=0x0400);                // 1024 times
  12.    
  13.     sstatex=sstatex>>10;                   // division between 1024
  14.     sstatey=sstatey>>10;
  15. }

Lo único que tienes que tener en cuenta es que sstatex y sstatey no tienen que desbordar, para evitar esto puedes cambiar su tipo. También ten en cuenta que si tomas N muestras luego tienes que dividir entre N. No tiene mas misterio.
No se si estos consejos son lo que buscas o no, ya me dirás...
Cuelga el código de la función calibrate si has modificado algo.

Desconectado gera

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2188
Re: mouse USB con pic18f4550 y acelerometro MMA7260QT
« Respuesta #33 en: 03 de Junio de 2009, 12:58:04 »
Si, tuve en cuenta todo eso. Adjunto el codigo q estoy usando para ver la señal en matlab. Todo lo importante esta en funciones.c
Fijate q en donde calculo la aceleracion absoluta tengo q sumar 4 para q quede bien calibrado, ademas divido por dos por un tema de sensibilidad:
Código: C
  1. accelerationx[1] = (accelerationx[1]-(sstatex+4))/2;
  2.  
  3.    accelerationy[1] = (accelerationx[1]-(sstatey+4))/2;

Muchas gracias!!

"conozco dos cosas infinitas: el universo y la estupidez humana. Y no estoy muy seguro del primero." A.Einstein

Desconectado jgpeiro06

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 276
Re: mouse USB con pic18f4550 y acelerometro MMA7260QT
« Respuesta #34 en: 03 de Junio de 2009, 13:59:19 »
Bueno, no veo nada que me haga pensar que estas haciendo mal la calibración. Prueba a depurar el programa, sin mover el acelerometro observa los valores que lee el ADC y el valor final de sstatex, seguro que el calibrado es correcto...

Luego alguna cosa que no se si habrás visto:
Citar
   accelerationx[1] = (accelerationx[1]-(sstatex+4))/2;
   accelerationy[1] = (accelerationX[1]-(sstatey+4))/2; accelerationX!!!
Desde luego si solo tenias errores en el eje Y, esa puede ser la causa.
Creo también que puedes eliminar la división por dos mejor, ¿no?,Si lo que tienes es ruido, puedes añadir un filtro o ampliar el rango de la ventana de discriminación.

Solo aplicas el filtro IIR "void filter()" al canal X, ¿Qué pasa con el canal Y?
No se me ocurre nada más que pueda provocar un mal funcionamiento...

Desconectado gera

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2188
Re: mouse USB con pic18f4550 y acelerometro MMA7260QT
« Respuesta #35 en: 03 de Junio de 2009, 15:12:57 »
Perdon, lo del canal Y se me escapo. Por el momento solo estoy trabajando sobre el X, cuando lo haga funcionar bien, aplico lo mismo al Y. La division por dos solo la aplique para q la velocidad no desborde, pero si la elimino igual obtengo valores desplazados con respecto al de la calibracion.
Creo q el problema esta en q los valores de la calibracion no los paso por el LPF.
La verdad q esto de la calibracion me tiene muy mal. Voy a hacer una cuantas pruebas mas, y si no lo puedo arreglar, voy a seguir peleando un rato con los filtros asi me libero de la calibracion.
Muchas gracias por tu ayuda jgpeiro!!

"conozco dos cosas infinitas: el universo y la estupidez humana. Y no estoy muy seguro del primero." A.Einstein

Desconectado jvl

  • PIC10
  • *
  • Mensajes: 1
Re: mouse USB con pic18f4550 y acelerometro MMA7260QT
« Respuesta #36 en: 06 de Junio de 2009, 06:58:18 »
Hola a todos.

Menos mal que encontre este hilo. Yo tambien estoy trabajando con un acelerometro, en concreto con el ADXL330. Estoy medio loco ya, porque no se como utilizar la variacion de voltaje que me ofrecen sus tres ejes. El proyecto que quiero realizar es un detector de caidas para personas. De momento deciros que no tengo ningun filtro puesto, ya que no se mucho sobre ese tema, asi que si me pudieseis ayudar por ahi. Os cuento como creo que puedo detectar la caida a ver que os parece. Creo que si detecto un cambio en la posicion de pie a tumbado que ocurre justo despues de un gran pico de aceleracion negativa, debida al impacto, podria saber que se a caido la persona. Esta teoria no es mia, es de Williams y Doughty y es la que creo que debo de utilizar, pero no se como.

Se que no es el mismo proyecto que el del raton, pero he pensado que me podriais ayudar un poco ya que se utiliza un acelerometro igual que el raton.

Nada mas, solo daros las gracias de ante mano.

Desconectado miguel87

  • PIC10
  • *
  • Mensajes: 5
Re: mouse USB con pic18f4550 y acelerometro MMA7260QT
« Respuesta #37 en: 08 de Junio de 2009, 21:57:23 »
Hola me eh registrado en el foro  :P, siento como que los conozco ya que los vengo siguiendo hace rato a todos sus comentarios e ideas , que desde ya son buenisimass,y me dio muchas ganas de participar.
Por otra parte ya me encargue unos modelitos de acelerometros en freescale ,por suerte sin costo, espero que lleguen pronto asi me uno con algun proyectoo!!
saludos a todo el foro
« Última modificación: 11 de Junio de 2009, 14:15:11 por miguel87 »

Desconectado ema

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1078
Re: mouse USB con pic18f4550 y acelerometro MMA7260QT
« Respuesta #38 en: 12 de Junio de 2009, 15:11:29 »
Les tengo la solución para el ruido.... Freescale saco un sensor muy similar al MMA7260 pero con salida digital... chau ruido :D :D

El modelo es MMA7660FC

Saludos

Desconectado miguel87

  • PIC10
  • *
  • Mensajes: 5
Re: mouse USB con pic18f4550 y acelerometro MMA7260QT
« Respuesta #39 en: 17 de Junio de 2009, 23:48:48 »
Me llegaron las muestras de freescale :-/ :-/ me llegaron 2 MMA7260qt  y 5 MMA7660FC , el problema es q estos ultimos que como bien dice ema son digitales,son muy pequeños,son la cuarta parte q los MMA7260qt asi que imaginense soldar eso, alguna idea de como soladarlos?  :(

Desconectado gera

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2188
Re: mouse USB con pic18f4550 y acelerometro MMA7260QT
« Respuesta #40 en: 18 de Junio de 2009, 00:18:01 »
La cuarta parte!?? Q locura! de por si los MMA7260 son diminutos. Mucha suerte con el soldado!!! Si lo logras decinos como lo hiciste jeje.

"conozco dos cosas infinitas: el universo y la estupidez humana. Y no estoy muy seguro del primero." A.Einstein

Desconectado miguel87

  • PIC10
  • *
  • Mensajes: 5
Re: mouse USB con pic18f4550 y acelerometro MMA7260QT
« Respuesta #41 en: 18 de Junio de 2009, 04:12:38 »
Gracias gera por la suerte  :) , ya tengo el diseño del impreso hecho en el proteus vamos a ver que pasa  :? , por otra parte este modelito es muy bueno apesar de su tamaño,echenle un vistazo al datasheet realmente esta bueno, http://www.freescale.com/files/sensors/doc/data_sheet/MMA7660FC.pdf?fpsp=1
saludos!!
« Última modificación: 18 de Junio de 2009, 04:47:00 por miguel87 »

Desconectado gera

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2188
Re: mouse USB con pic18f4550 y acelerometro MMA7260QT
« Respuesta #42 en: 18 de Junio de 2009, 12:52:26 »
Genial!!! Yo creo q me voy a ir pidiendo unas muestras, creo q va a ser de mucha ayuda en mi batalla contra el ruido jeje.
Saludos!!

"conozco dos cosas infinitas: el universo y la estupidez humana. Y no estoy muy seguro del primero." A.Einstein

Desconectado miguel87

  • PIC10
  • *
  • Mensajes: 5
Re: mouse USB con pic18f4550 y acelerometro MMA7260QT
« Respuesta #43 en: 18 de Junio de 2009, 14:28:00 »
este modelito te viene anillo al dedo!,si freescale no te manda nuevamente avisame yo te puedo mandar tengo 5  :mrgreen:,  saludos!!

Desconectado gera

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2188
Re: mouse USB con pic18f4550 y acelerometro MMA7260QT
« Respuesta #44 en: 18 de Junio de 2009, 15:12:34 »
este modelito te viene anillo al dedo!,si freescale no te manda nuevamente avisame yo te puedo mandar tengo 5  :mrgreen:,  saludos!!

Muchas gracias Miguel!!! No creo q haya problema, freescale se porta bien conmigo jaja. Lo q si te voy a pedir, si no te molesta, es el impreso para montar el integrado.
Gracias!!

"conozco dos cosas infinitas: el universo y la estupidez humana. Y no estoy muy seguro del primero." A.Einstein


 

anything