Esta columna presenta la física y las matemáticas básicas utilizadas para estimar el balanceo y el cabeceo en condiciones dinámicas utilizando una IMU.
La medición de los ángulos dinámicos de balanceo y cabeceo de una plataforma es útil para una variedad de aplicaciones. Un ejemplo clásico es el giroscopio vertical o indicador de actitud de una aeronave, que proporciona una referencia de horizonte para los pilotos que vuelan a través de las nubes. Recientemente, han surgido muchas aplicaciones de inclinación dinámica en drones, robótica y sistemas de vehículos autónomos.
Esta columna presenta la física y las matemáticas básicas que se utilizan para estimar el balanceo y el cabeceo en condiciones dinámicas utilizando una unidad de medida inercial (IMU). También se proporciona un enlace al código fuente abierto que implementa esta matemática en la plataforma OpenIMU de ACEINNA.
¡No te caigas!
El primer y más básico método para medir la pendiente es considerar una medida de nivel de líquido como el nivel de un carpintero. Si lo piensas, esta es solo una simple medida de aceleración de la gravedad de la Tierra.
El nivel de líquido es una medida simple de la aceleración gravitatoria estática. (Fuente: ACEINNA)
El acelerómetro de 3 ejes de la IMU puede medir directamente esta respuesta en condiciones estáticas. La precisión estática de tales mediciones generalmente se ve más afectada por la precisión general del sesgo del acelerómetro, incluidos los efectos de la temperatura.
A continuación se muestran los cálculos completos para las mediciones estáticas de cabeceo y balanceo. Este cálculo se implementa en una sencilla aplicación OpenIMU de ACEINNA denominada ‘Leveler’. Este código se puede descargar e instalar desde ACEINNA OpenIMU. salsa Alternativamente, puede cargar a OpenIMU usando: Sitio web para desarrolladores de ACEINNA y el codigo compilado.

Resumen de fórmulas de inclinación estática utilizando IMU (Fuente: ACEINNA)
El problema, por supuesto, es que el acelerómetro responde a ambas inclinaciones de la plataforma. y Aceleración lineal de la plataforma como se muestra a continuación. Además, es imposible distinguir entre los dos con solo el acelerómetro.

Error de medición de inclinación basado en la aceleración en condiciones dinámicas (Fuente: ACEINNA)
Afortunadamente, la IMU también tiene un giroscopio (o giroscopio) de velocidad de 3 ejes en el interior, que responde a los cambios en la velocidad angular en cada uno de los tres ejes. A continuación se muestra un ejemplo simple de velocidad de guiñada. Lo bueno de los giroscopios de velocidad angular es que no reaccionan directamente a la aceleración o al movimiento lineal. La mala noticia es que el proceso de convertir la velocidad angular en ángulo implica una integral, que se desvía con el tiempo debido al sesgo y el ruido del giroscopio. Además, los giroscopios no tienen una medición de nivel precisa, por lo que los niveles absolutos no se pueden determinar como el nivel de burbuja o las mediciones de gravedad basadas en la aceleración.

Los giroscopios de velocidad angular miden la velocidad de cambio angular. (Fuente: ACEINNA)
El siguiente paso, por supuesto, es combinar los dos formatos de medición en una sola solución. Se utiliza un acelerómetro como referencia a largo plazo para los niveles estáticos. Es decir, “verticales”. Estos datos se fusionan con mediciones ‘giroscópicas’ de cambios de actitud para brindar una respuesta dinámica general precisa y sin desvíos. Esta clásica fusión de sensor de “vertical + giroscopio” es el origen del término aeronáutico “vertical gyro”. Una buena manera de implementar esta medida es usar actualizaciones de cuaterniones para propagar la velocidad angular a la pose junto con un filtro de Kalman. He aquí un resumen de este cálculo:

Resumen de la ecuación del filtro de Kalman para actitud dinámica usando IMU (Fuente: ACEINNA)
Similar al código del nivelador estático, la plataforma OpenIMU de código abierto de ACEINNA proporciona una implementación ajustada de alto rendimiento de las matemáticas anteriores.solo instala Extensión ACEINNA para Visual Studio CodeHacer clic[カスタム IMU の例]Hacer clic. Una aplicación de inclinación dinámica denominada “VG_AHRS” incluye además una medición de rumbo estabilizada dinámicamente mediante un magnetómetro incorporado y compensación de hierro duro/blando.
Por último, no dude en echar un vistazo Este vídeo de ACEINNA Esto demuestra los conceptos en esta columna con más detalle.
Como siempre, los comentarios y preguntas son bienvenidos.