3

我进行了搜索,但找不到答案;在解释 android 加速度计值时,如何将这些值转换为沿 X/Y/Z 轴的真实世界手机平移?

我希望这是有道理的——我只是无法确切地了解我们如何摆脱重力?我们需要吗?

我在想如果我们取加速度计返回的 3D 矢量的大小——它将是 9.8 或更大,然后我们减去重力以获得实际的加速度大小。但是由于手机的运动+分布在所有3个轴上的重力方向,加速度计事件返回的矢量是否会不准确......

请帮忙!

谢谢

4

1 回答 1

4

免责声明:我不知道任何 Android 细节,它也可能是特定于手机的。我只是从物理背景说的。

您需要将加速度整合到速度,并将速度整合到位移(位置)。

您将遭受积分漂移。每次积分时,都会引入一个积分常数。多重集成加剧了这个错误。

您还需要担心角加速度。IE。当手机旋转但仍处于相同的物理位置时会发生什么?

有一些方法可以帮助减少这些错误来源。

如果有多个加速度计,您可以比较它们,以尝试确定任何角度分量。

如果有陀螺仪,您可以使用陀螺仪来帮助抵消角度分量。

如果指南针足够准确,您可以尝试至少取消水平面中的组件。

GPS 可用于尝试消除位移积分误差。当 GPS 提示您停止时,将积分常数归零。

您将需要开始研究数值积分和过滤算法。如果没有硬件加速,这在计算上可能会很昂贵。

在这一点上,您真的需要开始问自己,您的问题真的需要精确的位移测量吗?GPS位移是否足够?只用加速能达到同样的效果吗?

您应该尝试阅读以下内容:

http://en.wikipedia.org/wiki/Inertial_navigation_system

于 2011-02-15T03:31:34.600 回答