Necesito agregar algo más a esa pregunta.
Estoy trabajando en un pequeño firmware de quadcopter. Decidí usar AltIMU v5 de Pololu.
Consistía en giroscopio, acelerómetro y magnetómetro, todos fusionados deberían darme ángulos de inclinación, balanceo y guiñada agradables y constantes que luego se usaban en la computadora para corregir los ángulos necesarios para otros motores.
Me refiero a la serie de videos Brooking Net YMFC, en la que se describe fácilmente la construcción de un quadcopter.
Sin embargo, no puedo obtener ángulos razonables de mi sensor.
- ¿Cómo son útiles los valores propios de una matriz de covarianza?
- ¿Qué es más rápido hacer, 100 borrados en std:: vector (en un tamaño de 1000) o para hacer un nuevo vector e insertar los elementos deseados en él?
- ¿Son todos los cursos de álgebra lineal tan poco intuitivos?
- ¿Cómo podemos pensar en la descomposición de valores singulares?
- ¿Deberían las entradas de los vectores en un espacio vectorial ser del mismo campo de sus escalares?
Estoy usando arduino mega 2560 con ese código:
#include largo G [3], A [3], C [6]; unsigned long loop_timer; // bool – Pastebin.com
Después de arrancar, los ángulos son bastante oscuros, pero después de un corto período de tiempo tienden a desviarse mucho, y por mucho quiero decir que el error estimado es de + – 80 grados.
Estaba leyendo sobre EKF y otras fórmulas discretas de estimación matemática, pero quería comenzar de manera simple y no sé si el problema está en mis matemáticas o en la forma en que configuré el sensor.