稳态误差与 PID 控制:练习题及分步解答

免费的稳态误差与 PID 控制练习题,附图示、提示和完整详细解答。每次数值都不同,分三个难度:系统型别与误差常数, 稳态误差与增益, P、PI 和 PD 设计。

免费练习题简单
R(s)+10(s + 3)s(s + 1)(s + 4)C(s)−

某单位负反馈回路的开环传递函数为 G(s) = 10(s + 3)/(s(s + 1)(s + 4))。求速度误差常数 Kv。

G(s) = 10(s + 3)/(s(s + 1)(s + 4))
下一题 →
免费练习稳态误差与 PID 控制立即练习稳态误差与 PID 控制每天 5 道免费题目,无需绑定银行卡。

练习内容

  1. 简单系统型别与误差常数
  2. 中等稳态误差与增益
  3. 困难P、PI 和 PD 设计

如何求解稳态误差与 PID 控制问题

  1. 数一数开环 C(s)·G(s) 在 s = 0 处的极点个数:这就是系统型别。
  2. 求出与输入相匹配的误差常数:阶跃用 Kp,斜坡用 Kv,抛物线用 Ka。
  3. 应用 ess = A/(1 + Kp)、A/Kv 或 A/Ka,或者反过来解出所需的增益。
  4. 对于阻尼或转速的指标,写出闭环特征多项式,并与 s² + 2ζω_n·s + ω_n² 匹配。

常见错误

  • 对阶跃输入用 A/Kp,而不是 A/(1 + Kp)。
  • 匹配系数时忘了对象增益:回路增益是 K 乘以对象增益。
  • 数系统型别时忽略了控制器中的积分环节。
  • 以为仅靠比例增益就能消除 0 型回路的阶跃误差。

关键公式

系统型别
G(s) 在 s = 0 处的极点个数
误差常数
Kp = lim G(s), Kv = lim s·G(s), Ka = lim s²·G(s) (s → 0)
阶跃 A
ess = A/(1 + Kp)
斜坡 A·t
ess = A/Kv
抛物线 A·t²/2
ess = A/Ka
PID 控制器
C(s) = Kp + Ki/s + Kd·s
二阶目标
s² + 2ζωns + ωn²
超调量与时间指标
%OS = 100·e−ζπ/√(1−ζ²), tp = π/ωd, ts ≈ 4/(ζωn)

从零开始学习稳态误差与 PID 控制

学习本课之前: 方框图, 阶跃响应

1跟踪指令

反馈回路把指令 r 与输出 y 相比较,并根据误差 e = r − y 作用。理想情况下,输出最终恰好等于指令。

但往往并非如此。瞬态消失后,可能仍留有一个差距:稳态误差 ess。

tyress​

ess 有多大,取决于输入的类型(阶跃、斜坡或抛物线)以及回路中含有多少个积分环节。

自测 某单位负反馈回路的输入为 r = 1,输出稳定在 y = 0.95。稳态误差是多少?
  1. 0.05
  2. 0.95
  3. 1.95
  4. −0.05

答案: 0.05. ess = r − y = 1 − 0.95 = 0.05。0.95 是输出本身;符号为正,是因为输出低于指令。

2系统型别与误差常数

系统型别是开环 G(s) 在 s = 0 处的极点个数,也就是积分环节的个数。G(s) = 10/(s(s + 5)) 有一个,所以是 1 型。

三个误差常数概括了 G(s) 在很低频率(s → 0)下的特性:

Kp = lim G(s), Kv = lim s·G(s), Ka = lim s²·G(s)

利用终值定理,它们给出各种输入的误差:

阶跃 A:A/(1 + Kp) 斜坡 A·t:A/Kv 抛物线 A·t²/2:A/Ka
  • 0 型:阶跃误差有限,斜坡误差为无穷大。
  • 1 型:阶跃误差为零,斜坡误差有限。
  • 2 型:阶跃和斜坡误差为零,抛物线误差有限。
自测 G(s) = 10/(s(s + 5)) 的速度误差常数 Kv 是多少?
  1. 0.5
  2. 10
  3. 2
  4. ∞

答案: 2. s·G(s) = 10/(s + 5),在 s = 0 时为 10/5 = 2。0.5 是斜坡误差 1/Kv,而不是该常数。

3分步方法

  1. 写出开环:控制器乘以对象,C(s)·G(s)。
  2. 数一数它在 s = 0 处的极点个数,得到系统型别。
  3. 选出与输入相匹配的误差常数:阶跃用 Kp,斜坡用 Kv,抛物线用 Ka。
  4. 计算极限:先约去因子 s,再在剩下的部分中令 s = 0。
  5. 应用误差公式,或者反过来解出满足所需误差的增益。

对于阻尼或转速的指标,写出闭环特征多项式,并与 s² + 2ζωns + ωn² 匹配。

4例题讲解

跟着每一步走。打开下一步之前,先试着预测它。

例题讲解

某单位负反馈回路的 G(s) = K/(s(s + 4))。它必须以 0.1 的稳态误差跟踪斜坡 r(t) = 2t。求 K 以及由此得到的阻尼比。

1

判断系统型别

r+eK1/(s(s + 4))y−

G(s) 在 s = 0 处有一个极点,所以回路为 1 型:斜坡给出有限误差。

2

速度误差常数

Kv = lim s·G(s) = K/4
3

所需的 Kv

斜坡斜率为 A = 2,所以 ess = 2/Kv = 0.1。

Kv = 2/0.1 = 20
4

增益

K = 4·Kv = 80
5

检查阻尼

特征多项式为 s² + 4s + 80,所以 ωn = √80 = 8.94 rad/s,ζ = 4/(2·8.94) = 0.22。

误差指标满足了,但阶跃响应的超调量约为 49 %。这种折中说明了为什么控制器不只是一个增益。

答案

K = 80,由此得到 ζ = 0.22。

5P、PI 和 PID 控制器

PID 控制器对误差结合了三种作用:

C(s) = Kp + Ki/s + Kd·s
  • 比例(Kp):回路更快,0 型对象的误差更小,但阶跃误差永远不会降到零。
  • 积分(Ki/s):增加一个 s = 0 处的极点,所以型别升高一级,阶跃输入可以被无误差地跟踪。
  • 微分(Kd·s):增加阻尼,减小超调量。

要选取增益,就匹配各项系数。对 G(s) = 2/(s + 3) 使用 PI 控制器,得到特征多项式 s² + (3 + 2Kp)s + 2Ki。对于 ωn = 5 rad/s 和 ζ = 0.8,目标多项式为 s² + 8s + 25:

3 + 2Kp = 8 → Kp = 2.5, 2Ki = 25 → Ki = 12.5
自测 给一个 0 型回路的控制器加上积分环节。单位阶跃的稳态误差会怎样?
  1. 变为无穷大
  2. 变为零
  3. 变大
  4. 变小,但不为零

答案: 变为零. 积分环节使回路成为 1 型,所以 Kp 为无穷大,A/(1 + Kp) = 0。仅仅增大比例增益只会使误差变小。

6常见错误

  • 对阶跃输入用 A/Kp,而不是 A/(1 + Kp)。
  • 匹配系数时忘了对象增益:回路增益是控制器增益乘以对象增益。
  • 只数了对象的积分环节,漏掉了 PI 控制器中的那一个。
  • 计算 Kv 时漏掉了零点:因子 (s + 3) 在 s = 0 时的值是 3。
自测 大小为 5 的阶跃加到 Kp = 9 的 0 型回路上。稳态误差是多少?
  1. 0.1
  2. 0.556
  3. 0.5
  4. 4.5

答案: 0.5. ess = 5/(1 + 9) = 0.5。只除以 Kp 得到 0.556,漏掉阶跃大小得到 0.1,而 4.5 是最终输出。

7考试题是什么样的

  • 简单:系统型别与误差常数。你要求传递函数的型别、Kp、Kv 或 Ka,阶跃误差,或采用 P 控制的回路的最终输出。
  • 中等:稳态误差与增益。你要求斜坡、抛物线或阶跃加斜坡的误差,或者满足所需误差的增益。
  • 困难:P、PI 和 PD 设计。你要选取 K 以满足阻尼比,求给定 K 下的超调量、峰值时间或调节时间,通过匹配系数选取 PI 或 PD 增益,或者求采用 PI 控制器时的斜坡误差。

在应用中一步一步地学在应用中一步一步地学

例题详解

例题 1简单
R(s)+2(s + 2)s²(s + 2)C(s)−

某单位负反馈回路的开环传递函数为 G(s) = 2(s + 2)/(s²(s + 2))。求加速度误差常数 Ka。

G(s) = 2(s + 2)/(s²(s + 2))

求: Ka

显示提示
  1. K_a = lim s²·G(s),s → 0。
  2. s² 约去了原点处的二重极点。
  3. Ka = 2·2/2.
显示答案和分步解答

稳态误差:在单位负反馈回路中,设开环传递函数为 G(s),则误差为 E(s) = R(s)/(1 + G(s)),由终值定理得 ess = lims→0 s·E(s)。系统型别是 G(s) 在 s = 0 处的极点个数。误差常数为 Kp = lim G(s)、Kv = lim s·G(s) 和 Ka = lim s²·G(s),均取 s → 0。大小为 A 的阶跃输入给出 ess = A/(1 + Kp),斜坡 A·t 给出 A/Kv,抛物线 A·t²/2 给出 A/Ka。0 型回路跟踪阶跃有有限误差,1 型回路能无误差跟踪阶跃,跟踪斜坡则有有限误差。

加速度误差常数

s²·G(s) = 2(s + 2)/(s + 2)
Ka = 2·2/2 = 2

答案

Ka = 2
例题 2中等
R(s)+K(s + 2)(s + 5)C(s)−

某单位负反馈回路的 G(s) = K/((s + 2)(s + 5))。求使阶跃输入的稳态误差为 2 % 的增益 K。

G(s) = K/((s + 2)(s + 5))ess = 2 %

求: K

显示提示
  1. 对单位阶跃,e_ss = 1/(1 + K_p)。
  2. Kp = G(0) = K/10.
  3. 1/(1 + K/10) = 0.02.
显示答案和分步解答

稳态误差:在单位负反馈回路中,设开环传递函数为 G(s),则误差为 E(s) = R(s)/(1 + G(s)),由终值定理得 ess = lims→0 s·E(s)。系统型别是 G(s) 在 s = 0 处的极点个数。误差常数为 Kp = lim G(s)、Kv = lim s·G(s) 和 Ka = lim s²·G(s),均取 s → 0。大小为 A 的阶跃输入给出 ess = A/(1 + Kp),斜坡 A·t 给出 A/Kv,抛物线 A·t²/2 给出 A/Ka。0 型回路跟踪阶跃有有限误差,1 型回路能无误差跟踪阶跃,跟踪斜坡则有有限误差。

所需误差常数

1/(1 + Kp) = 0.02 → Kp = 49

增益

K/10 = 49 → K = 490

答案

K = 490

还要检查闭环稳定性:对这个二阶回路,任何 K > 0 都是稳定的。

例题 3困难
R(s)+K = 85s(s + 2)C(s)−

比例控制器 K = 8 在单位负反馈回路中控制对象 G(s) = 5/(s(s + 2))。 用 ts ≈ 4/(ζωₙ),求阶跃响应的 2 % 调节时间 ts。

G(s) = 5/(s(s + 2))K = 8

求: ts (s)

显示提示
  1. 特征多项式为 s² + 2s + 40。
  2. ζωₙ 是 s 项系数的一半:2/2 = 1。
  3. ts ≈ 4/(ζωₙ).
显示答案和分步解答

P、PI 和 PID 控制:控制器 C(s) = Kp + Ki/s + Kd·s 作用于误差。比例增益使回路更快,并减小 0 型对象的误差,但无法将其消除。积分项增加一个 s = 0 处的极点:系统型别升高一级,阶跃输入可以被无误差地跟踪。微分项增加阻尼。选取增益时,写出闭环特征多项式,并与 s² + 2ζωns + ωn² 比较。然后 %OS = 100·e−ζπ/√(1−ζ²),tp = π/ωd,其中 ωd = ωn√(1 − ζ²),ts ≈ 4/(ζωn)。

特征多项式

s(s + 2) + 8·5 = s² + 2s + 40

ωₙ 和 ζ

ωₙ = √40 = 6.325 rad/s
ζ = 2/(2·6.325) = 0.1581

调节时间

ζωₙ = 2/2 = 1
ts ≈ 4/1 = 4 s

答案

ts = 4 s

这里调节时间与 K 无关:增大 K 只会使响应振荡得更快。

问与答

什么是稳态误差与 PID 控制?

反馈回路把指令 r 与输出 y 相比较,并根据误差 e = r − y 作用。理想情况下,输出最终恰好等于指令。

但往往并非如此。瞬态消失后,可能仍留有一个差距:稳态误差 ess。

稳态误差与 PID 控制题目如何一步步求解?
  1. 数一数开环 C(s)·G(s) 在 s = 0 处的极点个数:这就是系统型别。
  2. 求出与输入相匹配的误差常数:阶跃用 Kp,斜坡用 Kv,抛物线用 Ka。
  3. 应用 ess = A/(1 + Kp)、A/Kv 或 A/Ka,或者反过来解出所需的增益。
  4. 对于阻尼或转速的指标,写出闭环特征多项式,并与 s² + 2ζω_n·s + ω_n² 匹配。
稳态误差与 PID 控制有哪些常见错误?
  • 对阶跃输入用 A/Kp,而不是 A/(1 + Kp)。
  • 匹配系数时忘了对象增益:回路增益是 K 乘以对象增益。
  • 数系统型别时忽略了控制器中的积分环节。
  • 以为仅靠比例增益就能消除 0 型回路的阶跃误差。
稳态误差与 PID 控制练习包括哪些内容?
  • 简单: 系统型别与误差常数
  • 中等: 稳态误差与增益
  • 困难: P、PI 和 PD 设计

每道题的数值都不同,让你掌握方法,而不是记住答案。 卡住了?先打开一个小提示,需要时再查看完整解析。

练习方式

  • 每道题的数值都不同,让你掌握方法,而不是记住答案。
  • 卡住了?先打开一个小提示,需要时再查看完整解析。
  • 你的进度、错题和收藏的题目都会保留,方便考前复习。

本主题的前后主题

先学习

包含此主题的课程

电气中的更多主题

可打印练习卷

免费练习稳态误差与 PID 控制立即练习稳态误差与 PID 控制每天 5 道免费题目,无需绑定银行卡。