【问题标题】:Reducing wiimote pitch/roll variations减少 wiimote 俯仰/滚动变化
【发布时间】:2011-06-28 00:19:56
【问题描述】:

我想使用 wiimote 来控制没有红外线感应条的光标。我为此使用了俯仰和滚动值。 问题是俯仰接近0度的时候,横滚很不稳定,俯仰接近90度的时候,它本身就很不稳定,但是横滚很好。 我非常频繁地轮询 wiimote,所以我平均了最后 20 个俯仰和滚动的值,我可以让光标移动到我想要的位置。唯一的问题是仍然有很多无法控制的晃动。 关于如何减少它的任何想法? (或者甚至在没有红外传感器条的情况下获得更精确的位置?)

谢谢!

戴夫

【问题讨论】:

  • 不知道这是否有帮助,但你有没有看过 wii 动作加上添加(事实上你现在可以用它内置 wiimotes)

标签: c++ noise wiimote wii vibration


【解决方案1】:

这是俯仰和横滚的常见问题。您可以减少这种烦人的影响,但只要您使用俯仰和滚动(欧拉角),就无法摆脱它。看 38:25

http://www.youtube.com/watch?v=C7JQ7Rpwn2k

我在我的运动感应应用程序中使用旋转矩阵而不是欧拉角。关于旋转矩阵的介绍,我推荐:

Direction Cosine Matrix IMU: Theory

四元数也很流行,据说是最稳定的。

【讨论】:

  • 谢谢,我看看这些,然后回来看看结果!
  • 我最终使用了您建议的旋转矩阵。加上我补偿了加速度计,跟踪实际上还不错!此外,我在单独的线程上尽可能快地轮询 wiimote,并平均最后 100 个值。谢谢!
  • 是的,旋转矩阵很容易理解和使用。祝你好运!
【解决方案2】:

一个简单的(有时简单是最好的)解决方案是平均你的读数。

缓冲最后一个读数,比如五个读数,然后将这些读数的平均值作为您的值。它们在平坦和快速旋转之间会有轻微的延迟,但是对于光标来说会产生轻微的摩擦,几乎可以抵抗突然的变化。

【讨论】:

  • 如果你阅读了这个问题,我提到我平均了最后 20 个值
  • 哦耶。不知道我怎么错过了,对不起
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-01-04
  • 2012-08-02
  • 1970-01-01
  • 1970-01-01
  • 2015-03-03
相关资源
最近更新 更多