2016-06-19 7 views
0

Я знаю, что на эту тему было несколько вопросов и ответов, но ни один из них не помог мне понять, как подойти к проблеме. Итак, моя настройка: у меня есть данные акселерометра (чистые от гравитационной части), и я бы хотел рассчитать по заданной скорости и расстоянию. Данные дискретны, скажем, dt = 20ms, а acc = [...] - это массив с образцами. Я понимаю, что мне нужно интегрировать массив для получения скорости, но интеграция дает мне одно значение, не так ли?Получите расстояние и скорость от данных дискретного акселерометра

velocity = scipy.integrate.simps(acc, dx=dt) 

Как использовать это значение, чтобы получить расстояние после этого?

ответ

1
a = dv/dt 

т.е.

a x dt = dv 

Интеграция:

a[i](t[i+1] - t[i]) = v[i+1] - v[i] 

т.е.

v[i+1] = a[i](t[i+1] - t[i]) + v[i] 

После вычисления V, можно вычислить х:

x[i+1] = v[i](t[i+1] - t[i]) + x[i]