Actualmente estoy trabajando en un dispositivo que usa el acelerómetro 3D siempre activado (con escala + -2g) y el giroscopio 3D (con escala + -250g) -sensor.
Puedo leer todos los vectores posibles (X, Y, Z) y su aceleración (g) y velocidad angular (dps) y también el ángulo donde se encuentra el dispositivo actualmente. Pero mi problema es que cuando el dispositivo está en inclinación (0g cuando no hay inclinación) la aceleración está entre (abajo) 0g- > -1g o entre (arriba) 0g- > 1g dependiendo de qué ángulo es el dispositivo actualmente. A continuación se muestra una imagen que, con suerte, aclara la idea.
El dispositivo se ubicará en un automóvil y deberá medir la aceleración cuando el automóvil esté disminuyendo la velocidad (freno). Sin embargo, si el dispositivo ya está inclinado, el acelerómetro medirá cierta aceleración que causa la inclinación, lo que hace que sea difícil saber si el dispositivo tiene realmente cierta aceleración o si es la inclinación la que causa la aceleración.
X e Y: los ejes producen 0g y el eje Z es 1g cuando el dispositivo no tiene inclinación y está en una superficie plana. La inclinación hace que la lectura del eje X vaya hacia 1g si la inclinación es hacia arriba y hacia -1g cuando está hacia abajo. Se alcanza el + -1g cuando el dispositivo está encendido a 90 * grados desde la posición original
He estado pensando muy bien cómo eliminar esa aceleración que causa la inclinación y solo medir la aceleración real del dispositivo, pero no puedo pensar en salir de este problema con los siguientes datos que puedo producir.
Básicamente, creo que si solo pudiera medir la aceleración del eje X (imagen) incluso si el sensor está en inclinación como en la imagen.
Espero que este mensaje no sea demasiado difícil de entender, debido a mis habilidades en inglés y la forma en que estoy tratando de explicar mi problema.