MPU6050读取有误,上位机姿态和实际姿态不同。

2019-07-25 12:07发布

刚入四轴,找了块GY86,比着恒拓的写了一个战舰F1的mpu6050加地磁加姿态解算,可是在上位机显示的姿态和数据和实际的并不相同,用的匿名上位机4.00,搞了很长时间,求高手指点。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
12条回答
a4801841
1楼-- · 2019-07-25 14:45
 精彩回答 2  元偷偷看……
a4801841
2楼-- · 2019-07-25 18:08
从mpu6050读取的数据都不对,可是寄存器是对的,用的卡尔曼滤波。
a4801841
3楼-- · 2019-07-25 20:17
我把gy86倒放,上位机显示姿态是正方的,有人遇到过这种情况吗?
a4801841
4楼-- · 2019-07-25 21:53
这个.......没人知道吗?
a4801841
5楼-- · 2019-07-26 01:40
void TIM3_IRQHandler(void)
{
        if( TIM_GetITStatus(TIM3 ,TIM_IT_Update)==SET)
        {
                                        qingling();
                                Get_Attitude();
                                                mpu6050_send_data(
                                                                                                        sensor.acc.averag.x,
                                                                                                        sensor.acc.averag.y,
                                                                                                        sensor.acc.averag.z,
                                                                                                        sensor.gyro.radian.x,
                                                                                                        sensor.gyro.radian.y,
                                                                                                        sensor.gyro.radian.z);
                                usart1_report_imu(               
                                                                                                        sensor.acc.averag.x,
                                                                                                        sensor.acc.averag.y,
                                                                                                        sensor.acc.averag.z,
                                                                                                        sensor.gyro.radian.x,
                                                                                                        sensor.gyro.radian.y,
                                                                                                        sensor.gyro.radian.z,
                                                                                                        angle.roll,
                                                                                                        angle.pitch,
                                                                                                        angle.yaw);
//                 SampleANDExchange();
        }
        TIM_ClearITPendingBit(TIM3,TIM_IT_Update);
}
上位机上的陀螺仪值发错了,我改了,但是还是不行。
正点原子
6楼-- · 2019-07-26 02:05
 精彩回答 2  元偷偷看……

一周热门 更多>