给定加速度计的加速度,如何对模块 space 中的位置进行建模?

Given acceleration from a accelerometer, how to modelize the position in space of the module?

我正在获取 Grove pi 模块的 3 维值, acc_vector = (accX, accY, accZ) 每 100 毫秒。 我想要的是,使用 java,显示我用模块所做的运动......但我的问题不是如何显示它:p

为此我需要计算仓位的价值 position_vector = (x,y,z) 对应于加速度值。但是我不知道该怎么做。

这是我试过的方法,但总是给出奇怪的结果(初始位置、速度和加速度为 (0,0,0) ):

这取决于你想如何插入加速度。最简单(但可能最不准确)的是假设样本之间的加速度恒定。在这种情况下,x 组件的代码应该类似于

position[0] += velocity[0] * timeStep + 0.5 * acceleration[0] * timeStep * timeStep;
velocity[0] += acceleration[0] * timeStep;

您必须对 yz 组件执行相同的操作。

要获得更准确的结果,您可能需要更复杂的技术。可以查Runge-Kutta.

等数值方法