如何设计数字回路
- 01输入对象。选一个预设——
1/(s+1)、1/(s(s+1))、1/(s²+0.6s+1)、1/(s+1)³——或输入系数;State Space 标签页显示其他标签页使用的实现。 - 02查看采样建议。Discretise 标签页报告最快极点幅值、Nyquist 极限和建议采样时间,并在 dt 对现有极点太慢时警告。
- 03选择离散化方法。采样数据实现用 ZOH,双线性近似用 Tustin,教学对比用 Euler 变体,模态匹配用 matched pole-zero。
- 04配置极点,再与 LQR 比较。Pole Placement 接受期望极点列表,LQR 接受 Q 和 R。决定前比较两者的闭环特征值。
- 05整定并评估。Tuning 标签页从阶跃响应估计一阶加纯滞后模型,并报告每组规则的超调、上升时间和整定时间。
计算读数
| 输入 |
读数 |
对象 1/(s(s+1)),Discretise ZOH,dt = 0.1 s |
H(z) 分子 0.00483742, 0.00467884;分母 1, −1.90483742, 0.90483742;采样建议推荐 0.0667 s,且未把 dt = 0.1 标记为太慢 |
对象 1/(s+1),ZOH 与 Tustin,dt = 0.1 s |
ZOH:0.09516258 / (z − 0.90483742);Tustin:0.04761905(z + 1) / (z − 0.9047619);ZOH 极点恰为 e^(−0.1) = 0.904837 |
对象 1/(s²+0.6s+1),Pole Placement 于 −2, −3 |
K = [4.4, 5.0],闭环特征值 −2, −3,配置误差 0 |
| 同一对象,LQR 取 Q = I, R = 1 |
K = [0.879333, 0.414214],闭环特征值 −0.73967 ± 0.93119j,7 次迭代后 Riccati 残差 0 |
对象 1/((s+1)(s+2)(s+3)),Tuning |
极限增益 60.0001,周期 1.8945 s;ZN PID (36.000, 38.006, 8.525) 超调 44.9441 %;IMC λ = 1 (6.049, 3.689, 1.533) 超调 0 % |
对象 1/(s(s+1)),闭环,K = 1 |
相位裕度 51.8273°,0.78615 rad/s,增益裕度可证明无穷;阶跃超调 16.3033 %,整定 8.08 s |
离散化实际做什么
z 域映射是 z = e^(sT),所以 T = 0.1 s 时稳定的连续极点 s = −1 落到 z = 0.904837——正是 1/(s+1) 一行所示。零阶保持器在边界处对连续响应采样,精确匹配阶跃响应;Tustin 代入 s = (2/T)·(z−1)/(z+1),把整个左半平面映射到单位圆内,但不做预畸变就会扭曲频率;matched pole-zero 把每个极点放到 e^(sT) 并匹配增益。前向 Euler 映射 s = (z−1)/T,T 过大时可能把快极点推出圆外;后向 Euler 总让稳定极点保持稳定,代价是额外失真。采样建议概括了规则:dt 低于约 1/(15·ω<sub>max</sub>) 比较舒适,超过 1/(5·ω<sub>max</sub>) 会被标记。
随后打开两条设计路线。极点配置直接选择闭环动态:对 1/(s²+0.6s+1),增益 [4.4, 5.0] 把两个特征值移到 −2 和 −3,残差误差为零,因为 Ackermann 公式对可控单输入系统是精确的。LQR 通过最小化二次代价替你选择动态;在相同惩罚下返回 [0.879333, 0.414214] 和 −0.74 ± 0.93j 的复共轭对——极点比配置慢,但有保证的裕度,也不必编造极点列表。两个增益都作用于 State Space 标签页的可控标准型 A = [[−0.6, −1], [1, 0]]、B = [1, 0]ᵀ,其状态排序为 x₁ = ẏ、x₂ = y,因此 K 乘以 [ẏ, y]ᵀ;把顺序反过来写成 [y, ẏ] 时,同样的增益读作 [5.0, 4.4] 和 [0.414214, 0.879333]。Tuning 覆盖工业捷径:读极限增益和周期,套用规则,再用仿真判断。Ziegler–Nichols 很激进——三阶对象上超调 44.9 %——而 λ = 1 的 IMC 平滑、超调 0 %,但上升要 2.66 s 而不是 0.43 s。
限制与边界
- 单输入、单输出、线性。
- 极点配置拒绝多输入系统而不是假装支持;状态空间检查是小型矩阵上的秩检验(12 个状态是特征值上限),非线性对象无法直接输入。
- 裕度描述的是采样后的回路。
- 相位裕度 51.83° 和无限增益裕度属于 K = 1 的 K·G(s);改变 K 或加上 PID 模块,卡片就会移动。Nichols M 等值线是视觉辅助,不是鲁棒性证书。
方法陷阱
同一个 z 极点并不意味着同一个控制器。ZOH 和 matched pole-zero 都把 1/(s+1) 的极点放在 0.90483742,但它们的分子一般不同,而 Tustin 把它放在 0.9047619——接近但不相同——因为它是同一连续系统的另一种近似。引用系数时要带上方法,否则之后的比较会把定义差异看成不一致。第二个陷阱是把采样建议当目标而不是上界:0.0667 s 由最快极点导出,dt = 0.1 s 未被标记只是因为它仅是建议的 1.5 倍,而不是因为它理想。第三个是把闭环阶跃当作对象的行为:16.3 % 的超调属于 K = 1 的单位反馈回路,同一对象在开环测试中不会显示任何超调。
它适合哪里
把连续控制器变成固件
在 s 域设计,然后按回路速率离散化并检查极点图:1/(s+1) 一行就是 z 极点等于 e^(sT) 的一行证明。把得到的系数粘进固件滤波器,双线性差分方程即告完整。
在极点配置与最优控制之间选择
对 1/(s²+0.6s+1),在 −2, −3 配置给出规格要求的快速、良阻尼响应;Q = I 的 LQR 给出 −0.74 ± 0.93j,是另一种折中,计算残差为 0。两种都跑一遍,选你能为之辩护的取舍。
隐私
所有矩阵、增益和仿真都在你的浏览器中计算;不会上传任何内容。
参考文献
- Wikipedia, Z-transform, en.wikipedia.org (访问日期:2026-10-07)——z = e^(sT) 与极点映射。
- Wikipedia, Discretization, en.wikipedia.org (访问日期:2026-10-07)——ZOH、双线性与 Euler 替换。
- Wikipedia, Pole–zero plot, en.wikipedia.org (访问日期:2026-10-07)——闭环极点配置。
- Wikipedia, Linear–quadratic regulator, en.wikipedia.org (访问日期:2026-10-07)——Riccati 方程与最优增益。
- Wikipedia, Ziegler–Nichols method, en.wikipedia.org (访问日期:2026-10-07)——极限增益整定规则。
本页计算器
精选工具,点开即用;小工具可直接试算,数值会带入完整计算器。