如何从陀螺仪传感器事件中获取android的方向?

时间:2011-03-13 15:51:21

标签: android orientation sensor android-sdk-2.3 gyroscope

我在Nexus S上使用android 2.3并希望从陀螺仪传感器事件中获取方向。陀螺仪提供角速度如何使用它来获取设备方向?

还有什么方法可以在没有重力矢量的情况下在手机轴上获得纯线性加速度。我从线性加速度传感器事件中得到了这个预期,但刚刚发现了一个帖子并且引用了安卓的源代码,目前只使用加速度计。

那么,在没有重力包含的情况下,将两个硬件的读数结合起来获得纯加速度的最佳方法是什么?

感谢。

1 个答案:

答案 0 :(得分:0)

为什么你特别希望使用陀螺仪获得方向,在[2.2+] API中提供的getOrientation()或getRotation()应该是一种更简单的方法。在任何情况下,陀螺仪仅用于检测角度方向的变化,因此它不能告诉您哪个方向上升,如果这是“方向”的意思。

但是你可以从角速度获得角度的近似变化,就像从线速度获得位置变化一样:角度变化=时间间隔x角速度。

重力是加速度的equivalent,因此无法将它们与“手机内部”区分开来,您只需按照文档中描述的方式将其减去。