4

如何使用来自陀螺仪的数据来计算 x、y 和 z 方向的旋转角度。我在 WiiMotion 加上 amd Brian Peek 的 Wiimotelib 1.8 beta 库中使用陀螺仪。

任何帮助是极大的赞赏。

4

1 回答 1

0

请参阅Deriving Angle Of Rotation From A MEMS Gyroscope,其中包括示例代码片段。您还可以查看 Yahoo! 上的通用公式!答案:如何使用速率陀螺仪确定旋转角度?

来自 Yahoo Answers 帖子的内容:

速率乘以时间等于距离。如果您以 50 英里/小时的速度行驶,您在 1/2 小时内行驶了多远。(25 英里)

同类型的问题。如果你以 10 度/秒的速度移动 3 秒,你应该总共移动了 30 度。当然,这假设您在整个三秒期间保持统一的速率。现在假设您以 1/10 秒的间隔测量了 30 个读数,并且每个读数都表示相同的 10 度/秒速率。答案将是相同的 30 度

这两种方法之间的区别在于能够检测较短时间段内的速率变化。您查询费率信息的速度越快,整体读数就越准确。

速率读数也应该有正值和负值。例如,向左移动它的负数,向右移动它的正数。然后,您将添加所有读数并得出一个应该非常接近从初始位置移动的实际总角度的净结果。

这种方法的问题是错误会随着时间的推移而复杂化,除非它们定期针对已知点或参考进行归零。以更快的速度轮询速率信息通过在单元经历较大的速率变化之前捕获速率信息来最小化错误累积的速率。然而,变化仍然会发生并最终累积到计算角度错误的程度。这就是为什么要定期将角度与已知参考点进行比较,并在总误差大到足以成为问题之前将其归零。

于 2012-04-04T18:43:42.223 回答