陀螺仪传感器漂移和正确的角度估计
我使用 LG Optimus 2x 智能手机(陀螺仪和加速计传感器)进行定位。
我想从陀螺仪获得正确的旋转角度,以便稍后用于身体到地球坐标转换。我的问题是
如何测量和消除陀螺仪传感器中的漂移。
一种方法是取一段时间内陀螺仪样本(当移动设备处于静态状态时)的平均值并从当前样本中减去,这不是好方法。
当移动设备旋转/运动时如何获得自由漂移角度?
I am using LG Optimus 2x smartphone(Gyroscope and Accelerometer sensor) for positioning.
I want to get correct rotation angles from gyroscope that can be used later on for body to earth coordinate transformation. My question is that
How I can measure and remove the drift in gyro sensor.
The one way is to take the average of gyro samples (when mobile is in static condition) for some time and subtracting from current sample, which is not good way.
When the mobile is in rotation/motion how to get the drift free angles?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
据我所知,卡尔曼滤波器或类似的东西是在 SensorManager 中实现的。请查看Android 设备上的传感器融合:运动处理的革命。
你正试图解决一个已经解决的问题。
As far as I know, either the Kalman filter or something similar is implemented in the SensorManager. Check out Sensor Fusion on Android Devices: A Revolution in Motion Processing.
You are trying to solve a problem that is already solved.
我是一个指南针应用程序的作者,该应用程序集成了来自磁性和陀螺仪传感器的数据(稳定的指南针)。我主要在运行 Android 2.2 的 LG Optimus black(您可以在视频中看到的设备)上测试了该应用程序,因此我将分享我的经验:
请注意 LG 手机:根据 Android API,陀螺仪将以 rad/s 为单位返回数据。 LG Optimus Black with Froyo 给出的读数以度/秒为单位。此类手机的 Android 2.3 更新刚刚发布。我必须测试新版本是否符合规范。
您的手机的 Android 版本是什么?您是否使用陀螺仪测试过任何应用程序?你得到了预期的结果吗?
I am the author of a compass application that integrates data from magnetic and gyroscope sensors (steady compass). I have tested this application mostly on a LG Optimus black (the device that you can see on the video) running Android 2.2, so I am going to share my experiences:
Be careful with LG phones: According to the Android API, gyroscope will return data in rad/s. The LG Optimus Black with Froyo gives readings in degrees/s. The update to Android 2.3 has just been released for such phone. I have to test whether the new version behaves according to the specifications.
What Android version does your phone have? Have you tested any application using gyroscope? Did you get the expected results?
基本上陀螺仪会在很长一段时间内发生漂移。而加速度计没有漂移,但往往不稳定。通过使用卡尔曼滤波器组合来自两个传感器的信息,您可以获得准确的姿态。对于一些不太复杂的情况,您还可以使用互补过滤器。
请参阅这篇文章了解更多信息:
组合陀螺仪和加速度计数据
Basically gyros drift over long time periods. Whereas accelerometers have no drift but tend to be unstable. By combining information from both sensors using a Kalman filter you can obtain a accurate attitude. For some this less complex you could also use a Complementary Filter.
See this post for more info:
Combine Gyroscope and Accelerometer Data