两轮自平衡小车,mpu6050陀螺仪数据处理,角度转换问题
这几天光研究这个了,可是进展缓慢,在网上看了好多帖子,但是应用的自己的制作中就没那个效果。说我的问题吧:#define Gyr_Gain 0.061 // 满量程2000dps时灵敏度(dps/digital)
这是对mpu6050采集的陀螺仪数据进行积分
float gyro()
{
uchar dtt = 11; // 微分时间/ms
angleG_1 += Gyr_Gain*(GetData(GYRO_YOUT_H) -11)*dtt/1000;
return angleG;
}
但是用串口显示出来的角度与加速度算出来的相差很多,但是,要是把Gyr_Gain改成0.61的时候就和加速度算出来的比较接近,并且和实际的也比较接近。我就不明白了。。。Gyr_Gain是根据手册算出来的Gyr_Gain=1/16.4= 0.06975...
就我个人看了产品资料理解为 Gyr_Gain=16.4直接就是这个不用再算 我也正在用mpu6050做平衡车,楼主的调出来了吗? 不急,慢慢来,有些东西要慢慢肯。 楼主有没有搞出来啊?求经验啊! Gyro_y = GetData(GYRO_YOUT_H); //静止时角速度Y轴输出为-30左右
Gyro_y = -(Gyro_y + 30)/16.4; //去除零点偏移,计算角速度值,负 {:soso_e179:}一个,支持。
页:
[1]