【#第一文档网# 导语】以下是®第一文档网的小编为您整理的《增量式PID算法小结》,欢迎阅读!

增量式PID算法小结
一、PID算法简介
顾名思义,P指是比例(Proportion),I指是积分(Integral),D指微分(Differential)。比例P:比例控制是一种最简单的控制方式。其控制器的输出与输入误差信号成比例关系。偏差一旦产生,控制器立即就发生作用即调节控制输出,使被控量朝着减小偏差的方向变化,偏差减小的速度取决于比例系数Kp,Kp越大偏差减小的越快,但是很容易引起振荡,尤其是在迟滞环节比较大的情况下,Kp减小,发生振荡的可能性减小但是调节速度变慢。但单纯的比例控制存在稳态误差不能消除的缺点。这里就需要积分控制。
积分I:在积分控制中,控制器的输出与输入误差信号的积分成正比关系。对一个自动控制系统,如果在进入稳态后存在稳态误差,则称这个控制系统是有稳态误差的或简称有差系统。为了消除稳态误差,在控制器中必须引入“积分项”。积分项对误差取决于时间的积分,随着时间的增加,积分项会增大。这样,即便误差很小,积分项也会随着时间的增加而加大,它推动控制器的输出增大使稳态误差进一步减小,直到等于零。因此,比例+积分(PI)控制器,可以使系统在进入稳态后无稳态误差。实质就是对偏差累积进行控制,直至偏差为零。积分控制作用始终施加指向给定值的作用力,有利于消除静差,其效果不仅与偏差大小有关,而且还与偏差持续的时间有关。简单来说就是把偏差积累起来,一起算总帐。
微分D:在微分控制中,控制器的输出与输入误差信号的微分(即误差的变化率)成正比关系。自动控制系统在克服误差的调节过程中可能会出现振荡甚至失稳。其原因是由于存在有较大惯性组件(环节)或有滞后组件,具有抑制误差的作用,其变化总是落后于误差的变化。解决的办法
是使抑制误差的作用的变化“超前”,即在误差接近零时,抑制误差的作用就应该是零。这就是说,在控制器中仅引入“比例”项往往是不够的,比例项的作用仅是放大误差的幅值,而目前需要增加的是“微分项”,它能预测误差变化的趋势,这样,具有比例+微分的控制器,就能够提前使抑制误差的控制作用等于零,甚至为负值,从而避免了被控量的严重超调。所以对有较大惯性或滞后的被控对象,比例+微分(PD)控制器能改善系统在调节过程中的动态特性。
它能敏感出误差的变化趋势,可在误差信号出现之前就起到修正误差的作用,有利于提高输出响应的快速性,减小被控量的超调和增加系统的稳定性。但微分作用很容易放大高频噪声,降低系统的信噪比,从而使系统抑制干扰的能力下降。
Ki=Kp某T/Ti;Kd=Kp某Td/T;
Kp为比例项系数;Ki为积分项系数;Kd为微分项系数;Ti为积分时间常数;Td为微分时间常数;T为采样周期常数上述公式进一步推倒:
Δu(k)=Ka某e(k)+Kb某e(k-1)+Kc某e(k-2);Ka=Kp某(1+T/Ti+Td/T)Kb=(-1)某(Kp)某(1+2Td/TS)Kc=Kp某(Td/TS) 代码如下:
floatPID_Dipoe(flaotD_value){
taticflaotEk=0;taticflaotEk_1=0;taticflaotEk_2=0; Ek_2=Ek_1;Ek_1=Ek;Ek=D_value;
return((float)(Ka某Ek+Kb某Ek_1+Kc某Ek_2));}
本文来源:https://www.dy1993.cn/L9AK.html