跳到内容

课程笔记

第5章 P/I/D 控制与时域性能

从闭环特征方程出发分析 P、I、D、PI、PD、PID 对稳态误差、响应速度、超调和稳定性的影响。

学习目标

学完本章后,你应该能够:

  1. 写出 P、I、D、PI、PD、PID 的时域公式和传递函数。
  2. 1+Gc(s)Gp(s)H(s)=01+G_c(s)G_p(s)H(s)=0 写出闭环特征方程。
  3. 用终值定理计算 reference tracking 的稳态误差。
  4. 区分参考输入误差和扰动输入误差。
  5. 根据稳态误差、非振荡条件、ζ\zetatst_s 反推控制器参数。
  6. 用一句话说明每种控制作用的收益和代价。

本章考试会怎么考

题型固定做法
P 控制求 KpK_pE/R=1/(1+KpG)E/R=1/(1+K_pG),用终值定理
I/PI 消除稳态误差看开环是否增加积分环节
非振荡条件写闭环特征方程,要求实根或 ζ1\zeta \ge 1
PID 参数设计与目标特征多项式逐项匹配
扰动抑制R=0R=0,单独求扰动到误差/输出通道
控制作用解释P 快但有余差,I 消余差但易振荡,D 增阻尼但不改稳态误差

先用人话理解本章在讲什么

前面几章把系统写成传递函数,并判断它稳不稳定。这一章开始真正“控制”它:往前向通道里加一个控制器 Gc(s)G_c(s),让闭环极点和稳态误差变成我们想要的样子。

不要把 PID 学成一堆孤立公式。所有题的起点都一样:

C(s)R(s)=Gc(s)Gp(s)1+Gc(s)Gp(s)H(s)\frac{C(s)}{R(s)}=\frac{G_c(s)G_p(s)}{1+G_c(s)G_p(s)H(s)}

真正决定稳定性和瞬态响应的是分母:

1+Gc(s)Gp(s)H(s)=01+G_c(s)G_p(s)H(s)=0

所以做 PID 题的第一反应应该是:先写闭环特征方程。

公式速查

控制器时域公式传递函数
Pu=Kpeu=K_peGc=KpG_c=K_p
Iu=Kie(t)dtu=K_i\int e(t)dtGc=Ki/sG_c=K_i/s
Du=Kde˙u=K_d\dot{e}Gc=KdsG_c=K_ds
PIu=Kpe+Kie(t)dtu=K_pe+K_i\int e(t)dtGc=Kp+Ki/sG_c=K_p+K_i/s
PDu=Kpe+Kde˙u=K_pe+K_d\dot{e}Gc=Kp+KdsG_c=K_p+K_ds
PIDu=Kpe+Kie(t)dt+Kde˙u=K_pe+K_i\int e(t)dt+K_d\dot{e}Gc=Kp+Ki/s+KdsG_c=K_p+K_i/s+K_ds

误差传递函数(单位负反馈):

E(s)R(s)=11+Gc(s)Gp(s)\frac{E(s)}{R(s)}=\frac{1}{1+G_c(s)G_p(s)}

终值定理:

ess=lims0sE(s)e_{ss}=\lim_{s \to 0}sE(s)

常用二阶指标:

ts3ζωnt_s \approx \frac{3}{\zeta\omega_n}

这里采用本课程课件中常见的 2% settling time 近似。若题目给出不同准则,以题目为准。

核心概念

1. P 控制

P 控制输出与误差成正比:

u=Kpeu=K_pe

它能让响应更快、稳态误差更小,但通常不能完全消除稳态误差。直觉是:如果误差为零,P 控制器输出也为零;若系统需要非零控制力才能维持稳态,就必须保留一点误差。

2. I 控制

I 控制对误差积分:

u=Kie(t)dtu=K_i\int e(t)dt

只要误差存在,积分项就继续累积,直到误差被推到零。因此 I 控制能消除阶跃稳态误差。代价是增加一个原点极点,使系统阶数升高,更容易振荡。

3. D 控制

D 控制看误差变化率:

u=Kde˙u=K_d\dot{e}

它像提前刹车,能增加阻尼、减少超调。D 项在 s0s \to 0 时趋于 0,所以它不改变阶跃稳态误差。实际系统中 D 对噪声敏感,通常不单独使用。

标准解题模板

模板 A:P 控制按稳态误差求 KpK_p

  1. 写开环 L(s)=KpGp(s)L(s)=K_pG_p(s)
  2. 写误差传递函数:
ER=11+L(s)\frac{E}{R}=\frac{1}{1+L(s)}
  1. 对单位阶跃 R(s)=1/sR(s)=1/s
ess=lims0s1s11+KpGp(s)e_{ss}=\lim_{s \to 0}s\frac{1}{s}\frac{1}{1+K_pG_p(s)}
  1. esse_{ss} 等于题目要求,解 KpK_p

模板 B:非振荡条件

如果闭环是二阶:

s2+2ζωns+ωn2=0s^2+2\zeta\omega_n s+\omega_n^2=0

非振荡通常要求:

ζ1\zeta \ge 1

等价地,对 as2+bs+c=0as^2+bs+c=0,要求判别式:

b24ac0b^2-4ac \ge 0

同时还要满足稳定性条件 a,b,c>0a,b,c>0

模板 C:PID 按指标匹配参数

  1. 写控制器:
Gc=Kp+Kis+Kds=Kds2+Kps+KisG_c=K_p+\frac{K_i}{s}+K_ds=\frac{K_ds^2+K_ps+K_i}{s}
  1. 写闭环特征方程。
  2. 用题目给的 ζ,ts\zeta,t_s 求目标 ωn\omega_n
ωn=3ζts\omega_n=\frac{3}{\zeta t_s}
  1. 写目标二阶或三阶特征多项式。
  2. 逐项匹配系数,解 Kp,Ki,KdK_p,K_i,K_d
  3. 最后检查 Routh 稳定性。

配套例题

例题 1:P 控制指定稳态误差

Plant 为:

Gp(s)=2s+2G_p(s)=\frac{2}{s+2}

单位负反馈,P 控制 Gc=KpG_c=K_p。要求单位阶跃稳态误差为 5%,求 KpK_p

误差传递函数:

ER=11+Kp2s+2\frac{E}{R}=\frac{1}{1+K_p\frac{2}{s+2}}

单位阶跃:

ess=lims0s1s11+2Kps+2e_{ss}=\lim_{s \to 0}s\frac{1}{s}\frac{1}{1+\frac{2K_p}{s+2}}

s=0s=0

ess=11+Kpe_{ss}=\frac{1}{1+K_p}

要求 ess=0.05e_{ss}=0.05

11+Kp=0.05\frac{1}{1+K_p}=0.05 1+Kp=20,Kp=191+K_p=20,\qquad K_p=19

检查: P 控制只能把误差压小。若题目要求误差为 0,单靠这个 Type 0 plant 的 P 控制做不到。

例题 2:I 控制非振荡条件

Plant 为:

Gp(s)=1τs+1G_p(s)=\frac{1}{\tau s+1}

I 控制 Gc=Ki/sG_c=K_i/s,单位负反馈。求非振荡响应对 KiK_i 的要求。

闭环特征方程:

1+Kis(τs+1)=01+\frac{K_i}{s(\tau s+1)}=0 τs2+s+Ki=0\tau s^2+s+K_i=0

这是二阶系统。非振荡要求判别式非负:

124τKi01^2-4\tau K_i \ge 0

所以:

Ki14τK_i \le \frac{1}{4\tau}

稳定还要求 Ki>0K_i>0,因此:

0<Ki14τ0<K_i \le \frac{1}{4\tau}

解释: KiK_i 太大响应会快,但阻尼不足,会振荡。

例题 3:PID 按 ζ,ts,Ki\zeta,t_s,K_i 反求参数

Plant 为:

Gp(s)=1s+1G_p(s)=\frac{1}{s+1}

PID 控制:

Gc(s)=Kp+Kis+KdsG_c(s)=K_p+\frac{K_i}{s}+K_ds

已知 Ki=20K_i=20,目标 ζ=0.8\zeta=0.8ts=1.5st_s=1.5s。用 ts=3/(ζωn)t_s=3/(\zeta\omega_n)Kp,KdK_p,K_d

闭环特征方程:

1+Kds2+Kps+Kis(s+1)=01+\frac{K_ds^2+K_ps+K_i}{s(s+1)}=0 s(s+1)+Kds2+Kps+Ki=0s(s+1)+K_ds^2+K_ps+K_i=0 (1+Kd)s2+(1+Kp)s+Ki=0(1+K_d)s^2+(1+K_p)s+K_i=0

目标自然频率:

ωn=3ζts=30.8×1.5=2.5\omega_n=\frac{3}{\zeta t_s}=\frac{3}{0.8\times1.5}=2.5

目标二阶方程可写成比例形式:

s2+2ζωns+ωn2=s2+4s+6.25s^2+2\zeta\omega_n s+\omega_n^2=s^2+4s+6.25

将实际方程除以 1+Kd1+K_d

s2+1+Kp1+Kds+Ki1+Kd=0s^2+\frac{1+K_p}{1+K_d}s+\frac{K_i}{1+K_d}=0

匹配常数项:

201+Kd=6.25\frac{20}{1+K_d}=6.25 1+Kd=3.2,Kd=2.21+K_d=3.2,\qquad K_d=2.2

再匹配一次项:

1+Kp3.2=4\frac{1+K_p}{3.2}=4 1+Kp=12.8,Kp=11.81+K_p=12.8,\qquad K_p=11.8

检查: 两个参数都是正数,且闭环特征方程归一化后确实是 s2+4s+6.25s^2+4s+6.25。如果某道题按同样步骤算出负的 KdK_dKpK_p,不要硬改答案;那说明给定指标和约束在这个 plant 下不可实现。

例题 4:扰动 step 下 P 与 PI 的区别

设输出速度受到负载扰动 N(s)N(s),简化扰动到输出通道为:

C(s)N(s)=Gp(s)1+Gc(s)Gp(s)\frac{C(s)}{N(s)}=\frac{G_p(s)}{1+G_c(s)G_p(s)}

Plant 为 Gp(s)=1/(s+1)G_p(s)=1/(s+1)

P 控制

Gc=KpG_c=K_p

CN=1/(s+1)1+Kp/(s+1)=1s+1+Kp\frac{C}{N}=\frac{1/(s+1)}{1+K_p/(s+1)}=\frac{1}{s+1+K_p}

单位阶跃扰动 N=1/sN=1/s

css,N=lims0s1s1s+1+Kp=11+Kpc_{ss,N}=\lim_{s \to 0}s\frac{1}{s}\frac{1}{s+1+K_p}=\frac{1}{1+K_p}

P 控制只能减小扰动造成的稳态偏差。

PI 控制

Gc=Kp+Ki/sG_c=K_p+K_i/s

CN=1/(s+1)1+Kps+Kis(s+1)\frac{C}{N}=\frac{1/(s+1)}{1+\frac{K_ps+K_i}{s(s+1)}} CN=ss(s+1)+Kps+Ki\frac{C}{N}=\frac{s}{s(s+1)+K_ps+K_i}

单位阶跃扰动下:

css,N=lims0s1sss(s+1)+Kps+Ki=0c_{ss,N}=\lim_{s \to 0}s\frac{1}{s}\frac{s}{s(s+1)+K_ps+K_i}=0

积分作用能消除 step disturbance 的稳态影响,但要检查闭环稳定性。

控制作用速查表

控制作用响应速度稳态误差超调/振荡稳定性影响
P通常变快减小但不一定为零二阶中可能增大增益过大可能不稳
I可能变慢或振荡可消除阶跃误差增大降低稳定裕度
D改善瞬态不改变阶跃稳态误差减小增加阻尼
PI兼顾速度和零误差可消除可能有振荡需调参
PD快且阻尼较好仍有余差减小改善
PID最灵活可消除可调参数不当仍会不稳

易错点与扣分点

  1. Ki/sK_i/s 写成 KisK_is 积分是除以 ss,微分才是乘以 ss
  2. 不写闭环特征方程。 PID 题只写结论,通常拿不到关键步骤分。
  3. 把 reference error 和 disturbance error 混用。 扰动题要令 R=0R=0 单独分析。
  4. 以为 D 能消除稳态误差。 s0s \to 0 时 D 项消失。
  5. 看到积分就说一定稳定。 积分能消除误差,但会升阶,可能让系统振荡或不稳定。
  6. 直接套二阶公式到三阶系统。 二阶 plant 加 I/PID 后可能变三阶,需要 Routh 判断。

自测题与答案

题 1

Plant 为 Gp=1/(2s+1)G_p=1/(2s+1),P 控制 Kp=4K_p=4,单位负反馈。求单位阶跃稳态误差。

答案:

ess=11+KpGp(0)=11+4=0.2e_{ss}=\frac{1}{1+K_pG_p(0)}=\frac{1}{1+4}=0.2

题 2

Plant 为 1/(3s+1)1/(3s+1),I 控制 KiK_i,求非振荡条件。

答案:

闭环特征方程:

3s2+s+Ki=03s^2+s+K_i=0

非振荡:

112Ki01-12K_i \ge 0

所以:

0<Ki1120<K_i \le \frac{1}{12}

题 3

为什么 PI 能消除阶跃稳态误差,而 PD 不能?

答案: PI 有积分环节 Ki/sK_i/s,在开环中增加一个原点极点,提高系统型别;只要闭环稳定,单位阶跃误差可被压到 0。PD 的 KdsK_ds 在低频 s0s \to 0 时为 0,不改变 DC loop gain 的本质阶次,所以不能消除阶跃稳态误差。

题 4

PID 题中算出 Kd<0K_d<0,应该怎么办?

答案: 不能硬说“微分增益为负也可以”。负 KdK_d 代表负阻尼,通常会恶化稳定性。应说明:在给定 plant、KiK_i 和目标指标下,无法用正的 PID 参数满足要求,题目条件需要调整或采用更高阶设计。

学习路线

先把六种控制器的 Gc(s)G_c(s) 写熟,再练“控制器 + plant → 闭环特征方程”。稳态误差题、非振荡题、PID 参数题都从这个动作开始。

和后续章节的关系

第 6 章 root locus 会把“增益变化如何移动闭环极点”画出来;第 8 章 Bode 和第 9 章补偿器会把 PID 的相位、增益作用放到频域里解释。PID 是补偿器设计的入门版本。