Lecturas extrañas del giroscopio ITG3200?

1

Estoy teniendo problemas para hacer que este giroscopio funcione. Puedo obtener lecturas del eje Z de este tipo. Si no lo muevo, los ejes X e Y muestran constantemente -1. Cuando muevo el giro, la X y la Y saltan un poco (unos cientos), pero tan pronto como me detengo, vuelven a -1. Cualquier sugerencia es apreciada. Gracias !!

    
pregunta Josh

2 respuestas

3

He tenido problemas con los sensores I2C y las implementaciones de bibliotecas dañadas. En mi experiencia, la forma más rápida de depurar el problema es capturar un rastreo y asegurarse de que se vea correctamente.

Hay muchas maneras comunes de joder con I2C:

  • Sin flexiones o flexiones demasiado débiles
  • Confundir direcciones I2C de 7 y 8 bits
  • Implementación de software rota omitiendo el NACK al final de una lectura
  • No se utilizan inicios repetidos cuando son necesarios
  • Se intercambian SDA y SCL

Consulte mi tutorial de I2C con más consejos de depuración .

Para el ITG3200 me aseguraría de que la lectura del registro WHO_AM_I sea exitosa antes de intentar leer los valores. También vea esta pregunta que detalla la rareza del Vlogic con que gyro .

    
respondido por el Mikko Virkkilä
0

Intenta leer primero el registro de WHO_AM_I que devolvería 0x69 o 0x68 dependiendo de tu circuito. Después de eso, asegúrese de realizar la configuración correcta que requiere escribir 9 en el registro DLPF_FS y 25 en SMPLRT_DIV (estas configuraciones son predeterminadas, es posible que necesite un separador diferente y que elimine el filtro de paso bajo, etc.). Si todo está bien y aún obtienes el mismo resultado, estaría funcionando correctamente. Los giroscopios funcionan con la regla de cambio de movimiento. No calcula su ángulo, pero calcula el cambio de ángulo en el tiempo. Volviendo -1 y cambio en el movimiento me parece bien. También debe tener en cuenta que estos son los valores de ADC e ITG-3200 tiene valores de adc internos. Debe mantenerlo quieto y probar los resultados para obtener el mejor resultado.

    
respondido por el Barışcan Kayaoğlu

Lea otras preguntas en las etiquetas