改进了加速度计和陀螺仪的倾斜角和滚动角的计算

Improved calculation of Tilt and Roll angles for an accelerometer and gyroscope

我正在开发一个 2 轴陀螺仪稳定的 Gibmbal。我使用 10DOF 传感器 :

MPU6050(陀螺仪和加速度计) HMC5983(磁力计) MS5611-01BA(高度计)

我已经用THIS方法计算了倾斜角和滚动角

//Roll & Pitch Equations
roll  = (atan2(-fYg, fZg)*180.0)/M_PI;
pitch = (atan2(fXg, sqrt(fYg*fYg + fZg*fZg))*180.0)/M_PI;

这些公式仅使用加速度计的数据。计算工作正常。并且伺服电机对计算命令的响应非常好,直到传感器被推向任何线性方向(线性,我的意思是不是旋转),在这种情况下我们会得到暂时的错误结果。

通常情况下,当我们只得到线性运动或加速度而倾斜和滚动角度没有任何变化时,计算结果应该保持不变不是这种情况。

我想知道是否有任何增强的倾斜和滚动角度计算?也许是一个更复杂的计算,它还使用加速度计旁边的陀螺仪传感器

我找到了两个很好的教程:

http://www.starlino.com/imu_guide.html

http://theboredengineers.com/2012/09/the-quadcopter-get-its-orientation-from-sensors/