你的代码我看过了,IMUupdate那个算法不是那么用的,请参考我代码里IMUupdata最下面那几行四元数转欧拉角的代码,我在这给你贴出来如下:
//// Yaw = -(0.9 * (-Yaw + init_gz*2*halfT) + 5.73 * atan2(init_mx*cos(Roll) + init_my*sin(Roll)*sin(Pitch) + init_mz*sin(Roll)*cos(Pitch), init_my*cos(Pitch) - init_mz*sin(Pitch)));
//// Pitch = Pitch * 57.3;
//// Roll = Roll * 57.3;
重点是上面yaw这个公式。 |