PID算法原理、实现及Tuning

    xiaoxiao2022-07-14  152

    一文读懂PID控制算法(抛弃公式,从原理上真正理解PID控制)

    https://blog.csdn.net/qq_25352981/article/details/81007075

    PID算法的理解及实现

    https://blog.csdn.net/u011403063/article/details/79495427

           

             Kp为比例系数,Ti为积分时间常量,Td为积分时间常量

    PID算法离散化:

    位置式PID:

    假设采样时间间隔为T,则在k时刻:

            偏差为e(k);

            积分为e(k)+e(k-1)+e(k-2)+...+e(0);

            微分为(e(k)-e(k-1))/T;

            从而公式离散化后如下:

            比例系数:Kp,

            积分系数:Kp*T/Ti,可以用Ki表示;

            微分系数:Kp*Td/T,可以用Kd表示;

            则公式可以写成如下形式:

    这样看就清晰很多了,且比例,微分,积分每个项前面都有一个系数,且离散化的公式,很适合编程实现;

     

    增量式PID:

    根据上面公式我们可以求得:

    这就是增量式PID的表现形式,计算出来的增量只跟最近三次的偏差值有关。注意这里计算出来的是增量值,也就是说如果我们要求u(k)的话应该是:

    PID的离散化差不多就是这样了,接下来看看PID的程序实现。

     

     

    位置式和增量式三个参数的作用:

      1. Kp参数:能迅速反映误差,从而减小误差,但他不能消除稳态误差,加大Kp还会引起系统的不稳定。

      2. Ki参数:只要有足够的时间,积分作用将能完全消除误差。但其缺点积分控制是偏差累积控制,控制作业缓慢,但是如果积分作用太强会使系统的超调量加大,甚至出现振荡

      3. Kd参数:预测误差变化趋势,减小超调量,克服振荡,使系统的稳定性提高,还能加快系统的动态响应速度,减小调整时间,从而改善系统的动态性能。类似于“阻尼”的作用;

    - - - 实际tuning时,根据三个参数对输出量的影响效果,进行调整;多试、多分析;

    - - -实际tuning时,也要考虑稳态误差,阻尼,控制频率等因素的影响。

     

    小结:

            单单的比例控制存在着一些不足,其中一点就是  稳态误差(当补偿量和消耗量相等时,误差将稳定在一个定值)。

            Ti叫做积分时间常数 ,其实就是我们的加权平均数里面的权值 ,Ti太大则会稀释积分环节的作用效果 ,而Ti太小 又会使积分作用被放大 ,这两种极端情况都不可取 ,所以需要合理调参。

             微分的作用:跟误差e(t)的变化率有关;当误差e(t)在增大时,微分起到正向作用;当误差e(t)在减小时,微分起到压抑作用,以防止超调;由误差导数的正负确定。

     

    PID控制器的传递函数推导

    https://blog.csdn.net/u011031257/article/details/80953285

    PID:从入门到放弃

    https://blog.csdn.net/ns2942826077/article/details/84895001

    pid建立模型

    https://blog.csdn.net/juhou/article/details/89060129

    PID控制算法的C语言实现

    https://wenku.baidu.com/view/827c5423647d27284a735105.html

    https://blog.csdn.net/u010256153/article/details/54928039

    https://blog.csdn.net/qq_41673920/article/details/86493655

     

    积分饱和现象与抗积分饱和的措施

    PID的TRICK(一)简述五种PID积分抗饱和(ANTI-Windup)方法

    积分饱和,会导致系统超调与迟钝

    https://zhuanlan.zhihu.com/p/49572763

    https://wenku.baidu.com/view/74d8f842b307e87100f69605.html

    积分饱和

    https://baike.baidu.com/item/积分饱和/5677641?fr=aladdin

     

    一、参数调整一般规则:

    由各个参数的控制规律可知,比例P使反zhi应变快,微分D使反应提前,积分I使反应滞后。在一定范围内,P,D值越大,调节的效果越好。各个参数的调节原则如下:

    1、在输出不振荡时,增大比例增益P。

    2、在输出不振荡时,减小积分时间常数Ti。

    3、输出不振荡时,增大微分时间常数Td。

    二、PID控制器参数整定的方法:

    1、理论计算整定法。它主要是依据系统的数学模型,经过理论计算确定控制器参数。这种方法所得到的计算数据未必可以直接用,还必须通过工程实际进行调整和修改。

    2、工程整定方法,它主要依赖工程经验,直接在控制系统的试验中进行,且方法简单、易于掌握,在工程实际中被广泛采用。

    PID控制器参数的工程整定方法,主要有临界比例法、反应曲线法和衰减法。三种方法各有其特点,其共同点都是通过试验,然后按照工程经验公式对控制器参数进行整定。现在一般采用的是临界比例法。

    利用该方法进行PID控制器参数的整定步骤如下

    (1)首先预选择一个足够短的采样周期让系统工作。

    (2)仅加入比例控制环节,直到系统对输入的阶跃响应出现临界振荡,记下这时的比例放大系数和临界振荡周期。

    (3)在一定的控制度下通过公式计算得到PID控制器的参数。 

    三、参数调整一般步骤:

    1、确定比例增益。

    P确定比例增益P时,首先去掉PID的积分项和微分项,一般是令Ti=0、Td=0,PID为纯比例调节。

    输入设定为系统允许的最大值的60%~70%,由0逐渐加大比例增益P,直至系统出现振荡。

    再反过来,从此时的比例增益P逐渐减小,直至系统振荡消失,记录此时的比例增益P,设定PID的比例增益P为当前值的60%~70%。比例增益P调试完成。

    2、确定积分时间常数Ti。

    比例增益P确定后,设定一个较大的积分时间常数Ti的初值,然后逐渐减小Ti,直至系统出现振荡,之后在反过来,逐渐加大Ti,直至系统振荡消失。记录此时的Ti,设定PID的积分时间常数Ti为当前值的150%~180%。积分时间常数Ti调试完成。

    3、确定微分时间常数Td。

    微分时间常数Td一般不用设定,为0即可。若要设定,与确定P和Ti的方法相同,取不振荡时的30%。

    4、系统空载、带载联调,再对PID参数进行微调,直至满足要求。

     

    pid常用口诀:

    参数整定找最佳,从小到大顺序查。

    先是比例后积分,最后再把微分加。

    曲线振荡很频繁,比例度盘要放大。

    曲线漂浮绕大湾,比例度盘往小扳。

    曲线偏离回复慢,积分时间往下降。

    曲线波动周期长,积分时间再加长。

    曲线振荡频率快,先把微分降下来

    动差大来波动慢。微分时间应加长。

    理想曲线两个波,前高后低4比1。

    一看二调多分析,调节质量不会低。

     

     

    P、I、D系数对控制效果的影响

     

     

    实例分析:

     

     

     

    局限

    由于实际对象通常具有非线性、时变不确定性、强干扰等特性,应用常规PID控制器难以达到理想的控制效果;在生产现场,由于参数整定方法繁杂,常规PID控制器参数往往整定不良、性能欠佳。这些因素使得PID控制在复杂系统和高性能要求系统中的应用受到了限制。

     

    最新回复(0)