请选择 进入手机版 | 继续访问电脑版

 找回密码
 立即注册
搜索
查看: 3077|回复: 1

关于直立小车代码的问题,零基础菜鸟问题,求解答,万分感谢。

[复制链接]

1

主题

1

帖子

5

积分

新手上路

Rank: 1

积分
5
发表于 2017-7-26 19:10:58 | 显示全部楼层 |阅读模式
mpu6050.c函数里pitch应该是我们balance函数里的angle,但是并没有找到将pitch定义成angle的赋值语句,main函数里又莫名其妙的出现了angle_balance,请问这是什么情况,怎么将pitch对应到balance的?
1.main函数里:       
Balance_Pwm =balance(Angle_Balance,Gyro_Balance);  
2.control.c函数里pid直立控制:
int balance(float Angle,float Gyro)
{  
   float Bias;
         int balance;
         Bias=Angle-Zhongzhi;                       //===求出平衡的角度中值 和机械相关
         balance=Balance_Kp*Bias+Gyro*Balance_Kd;   //===计算平衡控制的电机PWM  PD控制   kp是P系数 kd是D系数
         return balance;
}
3.mpu6050.c函数里:
/**************************************************************************
函数功能:读取MPU6050内置DMP的姿态信息
入口参数:无
返回  值:无
作    者:平衡小车之家
**************************************************************************/
void Read_DMP(void)
{       
          unsigned long sensor_timestamp;
                unsigned char more;
                long quat[4];

                                dmp_read_fifo(gyro, accel, quat, &sensor_timestamp, &sensors, &more);               
                                if (sensors & INV_WXYZ_QUAT )
                                {   
                                         q0=quat[0] / q30;
                                         q1=quat[1] / q30;
                                         q2=quat[2] / q30;
                                         q3=quat[3] / q30;
                                         Pitch = asin(-2 * q1 * q3 + 2 * q0* q2)* 57.3;        
                                         Roll= atan2(2 * q2 * q3 + 2 * q0 * q1, -2 * q1 * q1 - 2 * q2* q2 + 1)* 57.3; // roll
                                }

}


回复

使用道具 举报

4

主题

198

帖子

523

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
523
发表于 2017-7-27 23:16:54 | 显示全部楼层
在control.c文件夹里面有一个读取角度的函数
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|东莞市微宏智能科技有限公司  

GMT+8, 2021-2-27 11:25 , Processed in 0.066768 second(s), 23 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表