我现在正在玩加速度计。主要思想是使用手机移动光标。我只是累积值(增量值),加速度计给我每个滴答到x和y位置。
问题是当我停止移动手机时,加速度计会发送寄生虫值。例如: 当我向右移动电话时,我的序列如下:
1,2,5,3,5,
然后我停止了移动。加速度计仍然会产生值,但方向相反,如:
-3,-2,-2,-1
比它生成零。 我怎样才能避免价值观,让我转向反方向,没有任何电话动作?
答案 0 :(得分:0)
加速度计的工作方式......
不要直接使用这些值。 整合(=总和)它们,你会得到一个速度。 整合速度,您将获得职位。
它需要经过严格过滤,因为漂移,并且由于恒定的-9.8m / s ^ -2的重力(加速度计报告"手动"加速度和"地球加速,并且离开它们并不容易)
编辑:
通过检测静止位置并手动停止移动(低速 - >力0速度)可以纠正漂移
通过检测静止时的重力方向,然后从下一个矢量中移除该矢量,可以消除重力。这仅适用于手机未旋转太多的情况。使用陀螺仪可以是正确的,但你必须确保陀螺仪的值不是像某些手机那样从加速度计算出来的。