Cálculo de la velocidad a partir de los datos del acelerómetro

Estoy tratando de usar mi acelerómetro en la banda de ejercicios de mi dispositivo móvil para encontrar la velocidad al caminar y correr.

Realicé mi experimento de caminar y correr en una cinta rodante donde le pedí a una persona que caminara y corriera a la misma velocidad. (La velocidad era de 3 km/hora)

Creé un modelo para encontrar la velocidad usando el método de integración numérica. (Usé el método trapezoidal de integración). Pero el modelo no está prediciendo correctamente el resultado. Incluso la velocidad al caminar es muy diferente de la velocidad al correr.

Los datos devueltos por el acelerómetro están en m/s2. Estoy obteniendo datos de aceleración de los ejes X, Y y Z.

Agradecería si alguien puede ayudarme o decirme un modelo para encontrar la velocidad a partir de los datos de aceleración. Mi dispositivo registra la señal a una frecuencia de 50 Hz.

La integración numérica a través del método trapezoidal debería estar bien; es probable que haya algún error en su implementación. Tenga en cuenta que Physics SE trata cuestiones conceptuales y no ayuda con el código de depuración.
@GodotMisogi, por casualidad en realidad es una pregunta conceptual, porque tiene dos problemas conceptuales.

Respuestas (1)

  1. Para hacer la navegación a estima adecuada , necesita un acelerómetro y un giroscopio , porque además de moverse, el dispositivo también gira y debe poder asignar las coordenadas del dispositivo a las coordenadas mundiales para integrar la velocidad.
    • Además, en un molino de roscas es el molino de roscas, y no el dispositivo, el que se mueve en relación con la condición inicial, por lo que debería obtener una velocidad promedio de 0 de todos modos.
    • Esto se hace comúnmente en aviones, consulte sistema de navegación inercial . Esos tienen mejores giroscopios y acelerómetros, pero recuerdo haber visto un libro blanco sobre alguien que intentaba con un teléfono móvil y obtenía resultados útiles, por lo que debería ser posible con los dispositivos de gama alta.
    • Probablemente debería realizar una correlación cruzada con el GPS para compensar la desviación. Por supuesto, en threadmill que también mostrará 0.
  2. O podría hacer una estimación basada en el hecho de que los humanos tienden a mover las manos en cada paso al correlacionar la frecuencia y la amplitud de los picos de aceleración con la velocidad. Pero tienes que emparejarlo experimentalmente para cada persona, porque todos tienen una longitud de paso diferente y mueven sus manos con diferente fuerza. En este caso, no integrará nada, solo encontrará alguna frecuencia en los datos (probablemente usando la transformada de Fourier) y creará una tabla de frecuencia y amplitud máxima para caminar o correr.