如何用陀螺仪计算初始方向?

时间:2012-01-15 23:43:16

标签: android orientation accelerometer sensor gyroscope

我的问题可能很简单,但也可能是我完全错了 - 所以我决定问一下。最后,我将借助陀螺仪传感器的数据计算手机的方向。我知道我应该使用像卡尔曼滤波器或互补滤波器这样的东西来应对陀螺漂移。我将在第二步中执行此操作,但我在这里要求的问题对于两种方法都是相同的。所以,真正的问题如下:

从陀螺仪我只得到角度变化(积分后)。所以我需要的是一些初始值,我可以将当​​前测量的变化添加到。但是我如何得到这个起点呢?我是否使用加速度计和磁力计来确定手机的方向?或者这有更好的方法吗?

如果重要的话,我会使用Android进行此操作,并在加速度计和磁力计的帮助下确定手机的方向,但这是非常不准确的。

1 个答案:

答案 0 :(得分:1)

使用任意方向作为初始oritentation。

任何合理的过滤器必须从中恢复并快速收敛到实际方向。

我使用了Direction Cosine Matrix IMU: Theory中描述的过滤器。我通过限制TotalCorrection(第27页)来处理integral windup。像魅力一样工作!