PID算法随笔

  • pid algorithm

PID是比例、积分、微分的简称,PID控制的难点不是编程,而是控制器的参数整定。

  •  sensor 采样序列:

    x1、x2、x3 ... ... ... x[k-2]、x[k-1]、x[k]

1. 分析比例 P :

    E[k] = Sv - x[k];

  1. E[k] > 0 : 未达标
  2. E[k] = 0 : 刚好达标
  3. E[k] < 0 : 超标

    Pout = Kp * E[k] + C     .............. 比例控制算法

     C: 当E[k] = 0 时,为避免系统失控,需额外增加常数C

2. 分析积分 I :

  • 历史偏差序列: E[k] = Sv - x[k]

E1, E2, E3 ... ... ... E[k-2], E[k-1], E[k]

S[k] = E1 + E2 +  E3 ... ... ... E[k-2] +  E[k-1] + E[k]

  1. S[k] > 0 : 过去这段时间里 多数未达标
  2. S[k] = 0 : 刚好达标
  3. S[k] < 0 : 过去这段时间里 多数超标

     Iout = Kp * S[k] + C     .............. 积分控制算法

3. 分析微分 D :

  • 最近两次偏差相减: D[k] = E[k] - E[k-1]
  1. D[k] > 0 : 偏差有增加趋势
  2. D[k] = 0 : 
  3. D[k] < 0 : 偏差正在减小

    Dout = Kp * D[k] + C     .............. 微分控制算法

注意:微分算法只是确定偏差有没有变化,而不是有没有偏差

  • 位置式pid

OUT = (K_{p}*E_{k})+(K_{p}*\frac{T}{Ti}* \sum_{k=0}^{n}E_{k}) + (Kp*\frac{Td}{T}*(E_{k}- E_{k-1})) + OUT_{0}

Tsensor 采样有效值的周期,例如:50ms采样周期,T=50

Ti积分时间, 消除稳态误差,提高控制精度;

       主要用在系统接近稳定了以后,用来微调精确度,时间越长,精度越高。

        根据实际情况选择,如温控选择3000-5000左右。

Td微分时间,取值越小,提前预调的时间越短,如流量控制,一般取值几十至上百,

        而温控一般取值几千不等

  • 增量式pid

  • 调试经验

        开始调节Pid算法时,千万不要讲pid这三项全部加上一起调。要先调其中1项或者2项。例如先调P或者PD。

最后再加I(积分)。

  • Kp选取经验:

       一般,刚开始时,求稳一些,可以将Kp从0.1开始取,然后一点点累加上去调节。

Kp的值越大,越容易使系统振荡,并产生超调,但是Kp太小,调节速度又会很慢,所以需要多次试验,

并折中去一个合适的值。

  •  Td 选取经验

       Td是微分系数,可以减小调整时间,从而改变系统的动态性能.    调微分时,一般建议是将P和D放在一起去调,Td值的意义是:提前多久进行预调节。 刚开始调,不确定值取多少时,可以先从小值一点点累加,例如先给10,然后给50,然后100,200,500,1000,2000这样去试。一般反应较快的系统,取值越小。而反应较慢的系统,取值就要很大。

只有时间滞后的系统才需要附加微分参数。如果画蛇添足加上这个参数反而会使系统的控制受到影响。

  •  Ti 选取经验

      Ti 是积分系数, 它主要用来 消除稳态误差,提高控制精度。只要有足够的时间,积分控制将能完全消除误差,但积分作用太强会使系统超调加大,甚至使系统出现振荡。在系统控制到非常接近目标值时,才起作用。用来消除非常微小的误差。

2021-09-10 Suzhou Debug PID 经验记录:

调试对象:伴热管

目标温度:150°C左右

调试心得:一开始盲目的该P,I和D的参数,还有period,完全没头绪,调了一上午,依然没效果。

解决方法:将 PID公式里的3段计算出来的数值分别打印出来,观察数值变化情况,然后决定修改哪段里面的参数;

截图如下:

 

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值