外观
踩坑Robotics Stack Exchange2017-08-04
MPU6050 滤波计算 Y 角度值异常
本文由 AI 根据公开内容整理,可能有误,请以原文为准:Complementary and Kalman filter don't work for Y angle(Robotics Stack Exchange #7831)
状态:已解决
问题
Python 读取 MPU6050 IMU 数据并用 Kalman、Complementary filter 计算角度时,X 角正常,但 Y 角输出值不合理,两个滤波器都不工作。
环境
状态估计 / EKF 滤波器
解决办法
- 将 Y 轴陀螺仪速度计算改为
gyro_y_scaled = - (self.result_list[5] / self.gyro_scale)。 - 原因是 Y 轴速度与角度符号相反;原实现中
acc_y_angle没有负号,而self.gyro_y_angle -= gyro_y_scaled * dt使用了减号,导致滤波输入方向不一致。
原问题作者:Alex;采纳答案作者:Alex。原内容依 CC BY-SA 4.0 授权,本页摘要同样依 CC BY-SA 4.0 授权。
来源
本页事实对应的公开页面,以原文为准。