Pregunta

Mi pregunta probablemente sea muy simple, pero también podría ser el caso de que estoy completamente equivocado, por lo tanto, decidí preguntar. Al final, calcularé la orientación de mi teléfono con la ayuda de datos del sensor de giroscopio. Sé que debería usar algo como el filtro Kalman o el filtro complementario para hacer frente a la deriva giroscópica. Haré esto en un segundo paso, pero el problema que pregunto aquí es el mismo para ambos enfoques. Entonces, la verdadera pregunta es la siguiente:

Desde el giroscopio solo obtengo cambios angulares (después de la integración). Entonces, lo que necesito es un valor inicial, puedo agregar el cambio actualmente medido. Pero, ¿cómo obtengo este punto de partida? ¿Utilizo acelerómetro y magnetómetro para determinar la orientación del teléfono? ¿O esto hay una mejor manera?

Si es importante, uso Android para esto y tengo una implementación para determinar la orientación del teléfono con la ayuda del acelerómetro y el magnetómetro, pero es muy inexacta.

¿Fue útil?

Solución

Use una orientación arbitraria como oritación inital.

Cualquier filtro razonable tiene que Recuperarse de eso y converger rápidamente a la orientación real.

Usé el filtro descrito en el Direction Cosine Matrix IMU: Teoría. Me ocupé del bufanda integral Al limitar el TotalCorrection (Página 27). ¡Funciona de maravilla!

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top