PID控制器

前言:PID是一种很常用的控制器了,笔者在校期间也曾调过该控制器,但是没有研究过这神奇的控制器的理论原理。恰巧这次疫情,让笔者有机会闭关在家深入研究。PID控制器诞生已有80年左右,优质的论文非常多,笔者将仅使用《信号与系统》课程中的基础知识进行分析

PID控制器目录

  • 控制器形式及主要参数
  • 控制器调试原则
  • 控制器的传递函数
  • 控制器加受控对象的总体传递函数

控制器形式及主要参数

  • 控制器框图

PID.png

  • 主要参数如图中所示,共有3个系数(及对阶跃响应的影响)
    • 比例系数
      $$ K_p $$
      • 过冲量:增大
      • 响应时间:变小
      • 稳态误差:减小
    • 积分系数
      $$ K_i $$
      • 过冲量:增大
      • 响应时间:增大
      • 稳态误差:稳态误差为0
    • 微分系数
      $$ K_d $$
      • 过冲量:减小
      • 响应时间:变小
      • 稳态误差:没有影响

对于稳态时的影响,可以很容易从时域上肉眼直接看出,当然下面也通过数学来解释

控制器调试原则

调试目标和准则:输出不震荡

  • 增大比例系数

    一般都先不要微分和积分,先做纯比例调节

    逐渐调大P参数,直到震荡,记录下;再逐渐调小到不震荡,记录下

    将P调为目前的60%~70%

  • 减小积分系数

    将I参数逐渐减小,直到震荡,记录下;再增加直到不震荡,记录下

    将I调为目前的150%~180%

  • 增大微分系数

    取不震荡时的30%

控制器的传递函数

以上的调试原则都是经验之谈,下面将从数学的角度解释

  • PID控制器输出的时域表达式
    $$
    PIDer(t) = K_p e(t)+K_i \int e(\tau) d\tau + K_d \frac{de(t)}{dt}
    $$

    注意:此时,若已经达到稳态,对3个参数做独立简要分析如下:

    • 比例参数(若没有积分和微分):回忆使用运算放大器的负反馈做信号的放大,所以,若此时比例系数无穷大,则可以达到误差非常小,但是仍然且必定会有误差存在
    • 积分系数:由于积分器的稳态,必须要求输入误差信号为0,所以加入积分器可以使得稳态误差为0
    • 微分器:显然稳态情况下,常数微分为0
  • PID控制器输出的Laplace变换式

$$
\because E(s)= \mathcal{L} [e(t)]
\ \therefore
C(s)=\mathcal{L} [PIDer(t)] = K_p\cdot E(s) + K_i\cdot \frac{E(s)}{s} + K_d \cdot s E(s)
\ \therefore \frac{C(s)}{E(s)}=K_p+\frac{K_i}{s}+K_d\cdot s
$$
注意:将上式合并,将在原点有一个极点,且在s左半平面有两个可以任意配置的零点!
$$
\frac{C(s)}{E(s)}= \frac{K_d(s+z_1)(s+z_2)}{s}
$$

仅将PID控制器与受控对象级联,就已经可以通过这两个零点很好地调整整体响应,下面将继续讨论整体闭环系统

控制器加受控对象的总体传递函数

  1. 首先,对于误差信号,是输入信号和输出的执行结果量之差
    $$
    e(t) = x(t) - y(t)
    $$
    将误差信号做Laplace变换
    $$
    E(s) = X(s)-Y(s)
    $$
  2. 已知输出信号和PID控制器的输出间的关系为
    $$
    \because 假设受控对象传函数为H(s)
    \ \therefore
    Y(s)=C(s)\cdot H(s)
    $$
    则误差信号为
    $$
    E(s)=X(s)-C(s)\cdot H(s)
    $$
  3. 联立上各式得:
    $$
    Y(s)=[X(s)-Y(s)][K_p+K_i\frac{1}{s}+K_d\cdot s]H(s)
    $$

    $$
    \frac{Y(s)}{X(s)}=\frac{[K_p+K_i\frac{1}{s}+K_d\cdot s]H(s)}{1+[K_p+K_i\frac{1}{s}+K_d\cdot s]H(s)}
    $$
  4. 这时考虑一个有两个零点的受控对象

    此论述借用了《现代控制系统-第12版》中7.6中的例子
    $$
    H(s)=\frac{1}{(s+2)(s+3)}
    $$
    采取的PID控制器假设为有两个零点为:
    $$
    -z_1=-3+j,-z_2=-\hat z_1
    $$
    则系统的整体响应(代入化简省略)
    $$
    \frac{Y(s)}{X(s)}=\frac{K_d(s+z_1)(s+\hat{z_1})}{(s+r_2)(s+\hat r_1)(s+\hat r_1)}
    $$

显然,从上面的论述可以发现,PID对线性系统的控制可以通过对零极点的控制很好地达到任意想要的效果。当然,对于非线性系统就是另一回事了

s平面上不同极点带来的响应

不同极点影响

Donate
  • Copyright: Copyright is owned by the author. For commercial reprints, please contact the author for authorization. For non-commercial reprints, please indicate the source.
  • Copyrights © 2022-2023 RY.J
  • Visitors: | Views:

请我喝杯咖啡吧~

支付宝
微信