En general, usted determina el ángulo usando las lecturas del acelerómetro. Esto solo funciona si la unidad no está acelerando en ese momento, pero puede hacer una comprobación rápida de que sqrt (x * x + y * y + z * z) = 1g +/- un margen de error. Si eso es cierto, entonces probablemente no estés acelerando.
Para cualquier eje dado, la cantidad que está alejada de apuntar hacia arriba estará dada por angle = cos -1 (leyendo en g).
Si sabes qué tan lejos está cada eje de la vertical, puedes calcular tu orientación con respecto al suelo.
Si está acelerando, suponiendo que conocía su orientación antes de tiempo, puede calcular su orientación actual utilizando las lecturas del giroscopio para medir el cambio de orientación. Sin embargo, cualquier cosa calculada de esta manera se desviará de la respuesta correcta, por lo que deberá corregirla una vez que deje de acelerar.
Puede usar el magnetómetro como un control de cordura y un método para rastrear la rotación, pero no es muy confiable para calcular el rumbo absoluto sin ser calibrado primero para su entorno actual.
Todas las lecturas de una IMU serán muy ruidosas a menos que esté usando una muy costosa, espere tener que promediar y filtrar mucho para obtener resultados sin problemas. En esta situación, caro significa que el precio tiene al menos 4 dígitos antes del punto decimal.