您的位置:首页 > 其它

增量式pid分析 及 参数整定

2017-01-16 14:19 120 查看
/**************************************************************************
函数功能:增量PI控制器
1.入口参数:编码器测量值,目标速度
2.入口参数:编码器位置 ,目标位置
返回 值:电机PWM
根据增量式离散PID公式

pwm+=Kp[e(k)-e(k-1)]+Ki*e(k)+Kd[e(k)-2e(k-1)+e(k-2)]
e(k)代表本次偏差
e(k-1)代表上一次的偏差 以此类推

pwm代表增量输出
在我们的速度控制闭环系统里面,只使用PI控制
pwm+=Kp[e(k)-e(k-1)]+Ki*e(k)
**************************************************************************/
int Incremental_PI (int Encoder,int Target)
{
static float Bias,Pwm,Last_bias;
Bias=Encoder-Target; //计算偏差
Pwm+=Velocity_KP*(Bias-Last_bias)+Velocity_KI*Bias; //增量式PI控制器
Last_bias=Bias; //保存上一次偏差

return Pwm; //增量输出
}

首先先要明确,增量式pid和位置式pid本质是一样的,本次增量式pid的输出是由本次位置式pid的输出减去上次位置式的输出得到的。对比一下:
增量式:pwm+=Kp[e(k)-e(k-1)]+Ki*e(k)+Kd[e(k)-2e(k-1)+e(k-2)]
位置式:pwm =Kp*e(k)
+ Ki*∑e(k) + Kd[e(k)-e(k-1)]
可以看出增量式的KP和位置式的kd一样,增量式的ki和位置式的kp一样。所以对于增量式的参数整定,应该先整定KI,它反映了响应的速度,再整定KP,它反映了对超调量的限制,也就是缓减增量式KI参数过大时候的抖动。

增量式pid调节目标速度时候参数整定:
先加大KI,这时候会越来越接近实际速度,当KI过大的时候,在切换目标速度的时候,就会抖动,这时候就是KI大了响应速度高了,但导致超调量增加,这时候就加大增量式的KP,来缓减抖动,减小超调量。

增量式pid调节目标位置时候参数整定:
经过我自己的实验,增量式pid的位置控制,只用比例参数就够了,把kp从小往大了调,过小响应慢,过大反应会来回摆动。而如果加上积分参数的话,会来回转的很厉害,可能正是因为它和位置式的p很相似,并且他是一直在+=,以至于他越转误差越大,如果大家有比我好的想法可以评论在下方哦 欢迎指正!!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: