3

背景:我的目标是计算出手机的倾斜角度,例如在游戏中,向后倾斜手机意味着“踩油门”,左右倾斜意味着左右转动方向盘。

我正在观看有关不同 Android 传感器之间传感器融合的讨论。

根据演讲的最后,看来我可以使用“来自旋转矩阵的向量来确定我指向的方向”。

问题:他们是否暗示获得这些角度的正确方法是“使用旋转矢量传感器”/TYPE_ROTATION_VECTOR

如果是,我现在的问题是具体的:设备需要哪些传感器才能使用传感器TYPE_ROTATION_VECTOR?我的猜测是用于初始值的加速度计和用于校正的陀螺仪(以及用于额外校正的可选罗盘)?

额外的信用问题:我可以在任何地方找到符合该标准的设备列表吗?和/或有人对具有所需传感器的超便宜设备有建议吗?

4

1 回答 1

3

简短的回答:

旋转矢量传感器:加速度计、陀螺仪和地磁场。

游戏旋转矢量传感器:加速度计和陀螺仪。

地磁旋转矢量传感器:加速度计和地磁场。

长答案:

根据传感器文档,旋转矢量传感器使用加速度计,同时使用陀螺仪和地磁场进行绝对旋转校准。

他们还提供了游戏旋转矢量传感器地磁旋转矢量传感器,它们与它非常相似,但又有所不同,通常用于其他用途。

游戏旋转矢量传感器仅使用陀螺仪进行校准,更擅长测量相对旋转,不受磁场变化的影响。

地磁旋转矢量传感器使用磁力计代替陀螺仪进行校准,因此降低了功耗。并且建议在后台使用,并与批处理结合使用。

现在,大多数设备都有 9 轴 IMU,其中包括加速度计、陀螺仪和磁力计 x 3 轴。所以你应该没问题使用那个传感器。唯一需要担心的是,可能某些设备不提供上述“软件传感器”实现,因此您可能需要自己进行传感器融合。

希望这可以帮助!

于 2015-06-10T22:15:37.050 回答