Estoy leyendo datos del acelerómetro y quiero determinar la distancia que se mueve el acelerómetro. (Mi pregunta es similar a la que se colocó aquí, Calcular la velocidad a partir del acelerómetro . Siento que me falta formular un ejemplo completo para que lo use)
Cómo se ve la salida de mi acelerómetro:
x,y,time
-1.046700,0.120410,2015-02-02 07:22:33.609
Cómo se mueve mi acelerómetro:
Mi acelerómetro se coloca en el tobillo de una persona. A medida que la posición cambia de a , los valores x e y del acelerómetro se mueven del segundo cuadrante al primer cuadrante. La siguiente imagen muestra este escenario:
Tenga en cuenta que, aunque no se muestra, la pierna de la persona puede ir hacia adelante y hacia atrás, por lo que eje incurriría en algún cambio. No quiero "lo que pasa en el eje" para interferir con las estimaciones de distancia utilizando y .
Lo que (creo) sé y lo que sé:
Hasta ahora sé que la aceleración estará presente en ambos ejes, y . Por lo tanto, creo que sé que la aceleración total entre los dos ejes se puede representar con esta fórmula:
Dado , tendría sentido para mí convertir las mediciones de datos del acelerómetro a , y restarle la gravedad estándar. Por lo tanto, creo que sé que mi fórmula anterior sería la siguiente:
Sé que puedo obtener velocidad de tomando la primera integral. Puedo hacer esto en matlab usando esta función, trapz . Y luego, puedo resolver la distancia, usando , dónde es mi primera integral de (velocidad), y la cantidad de tiempo transcurrido que la pierna se movió.
Mi pregunta:
¿Mi lógica aquí es correcta?
Pregunto porque cuando pruebo este método, obtengo un error muy grave, casi de la distancia real. Entiendo que el error acumulado puede ser malo, pero es tan grande que me pregunto si lo estoy haciendo bien.
ACTUALIZAR:
Esta publicación, Cálculo instantáneo de la velocidad a partir del acelerómetro , realmente explica por qué la deriva eventual y la acumulación de errores destruirán la forma de estimación de la velocidad y la distancia en el ejemplo anterior. (Especialmente a medida que pasa el tiempo)
La lógica es, creo, incorrecta. No puedes restar la aceleración de la gravedad de tus lecturas tan fácilmente.
El principal problema es que el marco de referencia de la medición de datos está cambiando: el acelerómetro gira a medida que la pierna se balancea hacia afuera y hacia atrás. En este marco, la aceleración de la gravedad cambia constantemente de dirección.
Para trabajar en el marco del laboratorio, necesitaría:
Luego integre numéricamente en ambas direcciones x e y a lo largo del tiempo para obtener las velocidades. Integre en ambas direcciones con el tiempo nuevamente para mover la distancia.
Considere usar una cámara digital y una luz estroboscópica... Google Harold Edgerton
usuario93237
enojadoip