参数设置
重置
第二时间常数 T_2 = 0.5 s 固定。频率范围 omega ∈ [0.01, 100] rad/s(对数刻度)。
开环伯德图 L(jω)
上=幅值 |L| (dB),下=相位 ∠L (°),横轴=ω (rad/s) 对数;黄线=ω_c,红线=ω_180。
理论与主要公式
将过程 $G_p(s) = K_p/((T_1 s+1)(T_2 s+1))$ 与 PI 补偿器 $C(s) = K_c(1+1/(T_i s))$ 串联,得到开环传递函数:
$$L(s) = C(s)\,G_p(s) = K_c\!\left(1+\frac{1}{T_i s}\right)\!\frac{K_p}{(T_1 s+1)(T_2 s+1)}$$
增益穿越频率 ω_c 满足 $|L(j\omega_c)|=1$,相位裕度定义为:
$$\mathrm{PM} = \angle L(j\omega_c) + 180^\circ$$
相位穿越频率 ω_180 处的增益裕度:
$$\mathrm{GM} = -20\log_{10}|L(j\omega_{180})|\ [\mathrm{dB}]$$
默认值 (K_p=1, T_1=1, T_2=0.5, K_c=5, T_i=2) 下 PM 与 GM 均为正,构成稳定设计。带宽以经验式 ω_BW ≈ 1.5 ω_c 估计。
环路成形设计模拟器是什么
🙋
老师在控制课上一直提到「环路成形」,到底是把什么「整形」啊?
🎓
简单来说,就是把开环传递函数 $L(s) = C(s)\,G_p(s)$ 的伯德图(幅频与相频曲线)整成「理想形状」。低频处增益足够高以保证跟踪和零稳态偏差;在增益穿越频率 omega_c 附近保留 40~60° 的相位裕度以保证稳定;高频处充分衰减以抑制噪声。看上面的伯德图:蓝色幅频曲线穿过 0 dB 的位置就是 omega_c,那里绿色相频曲线距离 −180° 多远,就是相位裕度 PM。
🙋
把 PI 比例增益 K_c 调大,omega_c 就向右移。那要快速响应直接把 K_c 拉大就行了?
🎓
想法没错,但有上限。K_c 越大,omega_c 越往高频走,响应也确实更快。但实际过程的相位会随频率不断滞后,一旦 omega_c 太高,PM 就会急剧变小,最后变成负值导致振荡。模拟器里把 K_c 调到 20、30、50 试试——PM 卡片会逐步缩小,最终显示「no crossover」或负值。经验规则是 PM 40~60°、GM 6~12 dB。
🎓
PI 控制器中的积分项把低频增益拉到无穷大,从而消除稳态偏差。T_i 越小积分作用越强,低频处 |L| 更高,但同时会让 omega_c 附近的相位进一步滞后,蚕食 PM。把 T_i 从 2 降到 0.5 试试——低频幅频明显抬升,但相位在低频处更长时间贴近 −90°。实务上一个稳妥起点是「T_i 与主导过程时间常数 T_1 同量级」。
🎓
是的。T_1 大,幅频曲线就更早开始衰减,结果是 omega_c 变小,闭环带宽 omega_BW 也跟着变窄。把 T_1 从 1 提高到 5,可以看到 omega_c 明显左移、响应变慢。经典控制中常用 omega_BW ≈ 1.3~1.7 倍 omega_c 来估算闭环带宽——这里显示 1.5 倍。严格的带宽需要单独看闭环响应,但环路成形的魅力就在于:一张伯德图就能同时讨论「速度、稳定性、误差」。
常见问题
为什么默认值 K_c=5、T_i=2 是稳定的设计?
对于过程时间常数 T_1=1 s、T_2=0.5 s 的二阶系统,选择让 omega_c 落在 2~4 rad/s 的 K_c,正好把 PM 推入 40~60° 的安全区间。T_i=2 s 与 T_1 同量级,在低频积分作用与 omega_c 附近的相位滞后之间取得平衡。拖动 K_c、T_i 即可观察 PM 与 GM 卡片的变化。
什么情况下会显示「no crossover」?
当 |L(jω)| 在显示范围 [0.01, 100] rad/s 内始终不跨过 0 dB 时,增益穿越频率 omega_c 不存在,工具会发出警告。通常出现在 K_c 或 K_p 过大使整体增益始终高于 0 dB,或者过小使其始终低于 0 dB 的场合。请把增益恢复到合理范围(PI 增益 0.1~30 左右)。
增益裕度 GM 会是无穷大吗?
会。本工具的开环由 PI(−90°)与二阶过程(合计 −180°)构成,最大相位滞后渐近趋近 −180° 但任意有限 ω 都不会真正达到 −180°。因此相位穿越频率 omega_180 落在显示范围之外,GM 在理论上为无穷大,工具会显示「∞」。实机存在测量延迟与高频极点,实际 GM 是有限值。
如何与 H∞ 设计或灵敏度函数设计衔接?
环路成形其实在间接地整形灵敏度 S=1/(1+L) 与互补灵敏度 T=L/(1+L)。低频 |L|≫1 时 S≈1/|L|(抗扰),高频 |L|≪1 时 T≈|L|(抗噪)。H∞ 设计选取权函数 W_S(s)、W_T(s) 并直接最小化 ‖[W_S S; W_T T]‖∞。在本工具中习得的「L 的理想形状」就是设定这些权函数的良好起点。
实际应用
过程控制中的 PID 整定: 化工厂的温度、流量、液位回路常用 FOPDT(一阶加纯滞后)模型并加 PI/PID 控制。工程师先用 Ziegler-Nichols 等方法粗调,再在伯德图上检查相位裕度与增益裕度并精调。本工具的开环可视化非常适合培养这种「调参→检查→再调」的直觉。
伺服与电机控制: 伺服电机的位置环、速度环通常套在电流环之上。每一级都用环路成形单独设计,内环带宽往往比外环高一个数量级,以维持清晰的级联层次。机械谐振与惯量比会蚕食相位裕度,使得基于伯德图的检查成为伺服调试的主力工具。
开关电源: DC-DC 变换器的电压环需要 Type II 或 Type III 补偿器来处理输出 LC 双极点并保持足够的相位裕度。设计过程与本工具一致:在伯德图上直接观察 omega_c 与 PM。Erickson 的《Fundamentals of Power Electronics》等教材也以此为核心内容。
机器人与汽车运动控制: 机械臂关节、车辆转向、制动以及无人机姿态等运动控制系统,内层几乎都使用经环路成形整定的 PI/PID。即使外层换用 MPC 或强化学习,内层的稳定性仍然依赖经典环路成形。
常见误区与注意事项
最常见的误解是「只要 K_c 不断加大,响应就一定更快」 。omega_c 的确大致与 K_c 成正比上升,但 omega_c 越往高频,过程的相位滞后累积越严重,PM 会迅速下降,超过某个阈值后 PM 会变为负值并导致闭环不稳。把 K_c 依次设为 5、10、30、100,可以看到 PM 从约 60° 跌到 30°、10°,最后变成「负」。速度与稳定性是权衡,PM 40~60° 的经验值正是其折中点。
第二种常见误解是「只要相位裕度足够,闭环就不会振荡」 。PM 仅检查增益穿越频率这一点;当系统存在多个穿越或强谐振时,即便 PM 为正,奈奎斯特曲线也可能从「危险方向」绕过 −1 点。实务上还需要检查奈奎斯特图、灵敏度 |S(jω)| 的峰值 M_S(一般目标 M_S ≤ 2,即 ≤ 6 dB)。本工具的简单系统极点都在实轴上,PM 是可靠指标;但弱阻尼系统需更小心。
最后,不要把 ω_BW ≈ 1.5 ω_c 当作严格公式 。它只是 PM 60° 附近的经验近似。对 PM 较小(偏谐振)的设计,ω_BW/ω_c 可超过 2;对 PM 很大(过阻尼)的设计,比值可小于 1。本工具仅以 1.5 倍作为粗略估算。需要精确的闭环带宽时,应直接计算闭环传递函数 T(jω) = L(jω)/(1+L(jω)),并求其幅值衰减到 −3 dB 的频率。