22

Android中的重力和加速度传感器有什么区别?从我的角度来看,两种情况下的物理价值是相同的。

哪一项测量作用在设备内部单位质量上的力?

添加

问题是:这些传感器测量的是什么物理量?根据等效原理,加速度和重力是无法区分的,测量两者的唯一方法是通过通常的(但 3d)弹簧平衡。

4

2 回答 2

12

加速度传感器为您返回施加在设备上的所有力的总和,而重力传感器仅返回重力的影响。如果您想从加速度中排除重力,您可以使用高通滤波器或只是从加速度传感器值中减去重力传感器值 - 不确定哪种方法可以提供更好的精度。

另一种方法可能是使用 Sensor.TYPE_LINEAR_ACCELERATION,它准确地给出(加速度 - 重力),但是您应该检查它是否在设备上可用。我发现了一些设备,它们有 ACCELERATION 传感器工作,但 GRAVITY 或 LINEAR_ACCELERATION 传感器没有响应。

于 2012-05-04T10:43:59.603 回答
3

此链接可能会有所帮助:http ://www.sensorplatforms.com/which-sensors-in-android-gets-direct-input-what-are-virtual-sensors

以下摘录总结了您问题的答案:

“列表......包括物理传感器和传感器类型,其值来自物理传感器,有时这些被称为虚拟传感器......虚拟传感器类型(重力、线性加速度和旋转矢量)提供通过组合结果得出的值智能地从物理传感器...旋转矢量是加速度计、磁力计、有时是陀螺仪的组合,用于确定 Android 设备相对于地球框架坐标的三维角度。通过了解旋转矢量在设备中,加速度计数据可以分为重力加速度和线性加速度。”

这个链接https://stackoverflow.com/a/8238389/604964还说重力值是使用巴特沃斯滤波器计算的。

于 2012-08-15T23:38:08.183 回答