智能车制作

标题: 调试增量式PID遇到的问题 [打印本页]

作者: bobo_12300    时间: 2012-11-10 16:59
标题: 调试增量式PID遇到的问题
我在调增量式PID的时候遇到一个问题好奇怪,先纯比例控制,当比例系数过大时,速度最后会越来越快,当较小时,就会衰减,调整不到出现震荡的波形,10ms采样一次速度之,并进行控制,即在采集速度后调用下面这个函数,这个现象好奇怪,不知道大家有没有遇到过,指点一下~~

//增量式PID
/* 增量 U(k)-U(k-1)=kp*{e(k)-e(k-1)}    比例           Ts为采样周期
//                 + Kp*Ts/Ti*e(k)        积分             ki= Kp*Ts/Ti
//                 + kp*Td/Ts*{e(k)-2e(k-1)+e(k-2)}  微分  kd=kp*Td/Ts
*/
void increase_pid(float kp,float kd,float ki)
{
   nowspeed = g_pulsenum;        //得到当前速度采样值   
   er=gspeed-nowspeed;           //本次误差量
   pvalue=er-er1;               // 比例控制量
   ivalue=er;                   //积分控制量
   dvalue=er-2*er1+er2;         //微分控制量


   outpwm= outpwm+kp*pvalue+ki*er+kd*dvalue;    //增量式PID公式
   
   er2=er1;  //误差更新
   er1=er;   //
   
   if(outpwm>500) outpwm=500;  //限幅
   if(outpwm<0) outpwm=0;
   
   left_motorpwm(0,outpwm);   //给定控制电机PWM
   right_motorpwm(0,outpwm);  
}


作者: zyj    时间: 2013-3-22 14:37
我也遇到==楼主有没有解决好
作者: ivebeenready    时间: 2013-3-30 20:37
你再看看,到底哪个参数是P,哪个参数是I,哪个参数是D
作者: fsrchxm    时间: 2013-4-5 22:14

作者: 有熊出没    时间: 2013-7-5 10:50
求解~~
作者: linianzhenzi    时间: 2014-4-15 22:07
我也遇到这个问题,都快哭了,求解答啊
作者: 小猪猪    时间: 2014-5-11 12:17
解决了么??楼主




欢迎光临 智能车制作 (http://dns.znczz.com/) Powered by Discuz! X3.2