我一直在使用mpu6050,显然它的陀螺仪刚刚停止工作。
2天前,它完美地给出了俯仰/偏航/侧倾值,而现在,只要我移动传感器甚至不移动传感器,这些值就会变得疯狂。
我也尝试过在线使用应该有效的代码,我得到的结果相同。
我想知道我的传感器是否坏了。
这是我的代码:
// Get new values
// m_vAngularSpeed = m_sensors.GetFilteredAngularSpeed();
m_vAngularSpeed = m_sensors.GetNormalizedAngularSpeed();
m_vAcceleration = m_sensors.GetNormalizedAcceleration(); // We know the filter for the acceleration works, so we can use it
// Calculate the angles from acceleration
GetRollPitch(m_vAcceleration, m_vAccAngles);
// Calculate angles from angular speed
m_vAngSpeedAngles.x = m_vAngles.x + m_vAngularSpeed.x * delta;
m_vAngSpeedAngles.y = m_vAngles.y + m_vAngularSpeed.y * delta;
// We use the complimentary filter to get a better precision
m_vAngles.x = 0.98 * m_vAngSpeedAngles.x + 0.02 * m_vAccAngles.x;
m_vAngles.y = 0.98 * m_vAngSpeedAngles.y + 0.02 * m_vAccAngles.y;
我监视了根据加速度计算出的角度,这是可以的,但陀螺仪的角度不是。