PID 参数整定完整指南:Kp Ki Kd 调节原理与试凑法
Kp 决定响应速度,Ki 消除稳态误差,Kd 抑制超调。本文讲清 Ziegler-Nichols 临界振荡法与经验试凑步骤,给出温度、位置、速度、压力四类回路的典型参数,附抗积分饱和与前馈进阶方法。
一、PID 到底在做什么
PID = 比例 P + 积分 I + 微分 D。误差 e(t) = 设定值 - 反馈值。控制输出:u(t) = Kp·e(t) + Ki·∫e(t)dt + Kd·de(t)/dt。
- 比例 Kp:误差越大输出越大。快速响应,但只用 P 有稳态误差(永远差一点点到不了目标)
- 积分 Ki:把历史误差累加。只要有误差就一直加,直到把稳态误差消掉。但反应慢,容易过冲
- 微分 Kd:反映误差变化速率。误差在变小时 D 起阻尼作用,抑制超调。但对噪声极敏感
二、Ziegler-Nichols 临界振荡法
1942 年 Ziegler 和 Nichols 提出的经典整定法,至今仍是入门首选。步骤:
- 把 Ki=0、Kd=0,只留 Kp
- 从小值开始逐渐加大 Kp,直到系统出现持续等幅振荡(不发散也不收敛)
- 记录此时的 Kp = Ku(临界增益),振荡周期 = Tu(临界周期)
- 按经验表:
P 控制:Kp = 0.5·Ku
PI 控制:Kp = 0.45·Ku,Ti = Tu/1.2
PID 控制:Kp = 0.6·Ku,Ti = 0.5·Tu,Td = 0.125·Tu
转换成实用形式:Ki = Kp/Ti,Kd = Kp·Td。Z-N 法给出的参数偏"激进"(振铃较大),实际再手动微调 Kp × 0.7-0.8 得到更平滑响应。
三、经验试凑法(工程师日常用)
如果不方便让系统振荡(如温度控制、危险负载),可以用经验试凑:
- 只保留 P,Kp 从小逐步加大,直到响应快但只有一次轻微超调(约 10-20%)
- 加 I:让 Ti 从大到小(Ki 从小到大)。响应达到稳态时的静差被消除后,若开始震荡就把 Ti 调大一点
- 加 D:Td 从 0 增加。看到超调减小、响应变平稳即可。噪声大的场合 Kd 一般不加或加低通滤波(一阶惯性 τ=0.1·Td)
四、典型控制回路参数经验值
温度控制:热惯性大,被控对象慢。Kp 中等(如 20),Ti 长(60-300s),Td 中等(10-60s)。
示例:加热炉 800°C,Kp=15、Ti=120s、Td=30s。
位置控制(伺服系统):响应快、无静差。位置环通常 P 控制或 PI,速度环 PI。
示例:伺服位置环 Kpp=50 rad/s,速度环 Kpv=100,Ki 视惯量。
速度控制:PI 主流。Kp 大、Ki 中等、Kd 一般不用。
示例:变频器速度环 Kp=1.0,Ti=200ms。
压力/流量控制:Kp 小、Ti 长、无微分(噪声大)。
示例:水泵变频恒压供水 Kp=0.3,Ti=30s。
五、进阶:积分抗饱和与前馈
积分饱和(Integral Windup):执行器输出限幅时(如阀门全开),积分项还在累加,等误差反向时来不及泄放,造成大过冲。解决:
- 输出限幅时冻结积分累加
- 反算式抗饱和(back-calculation):把输出饱和部分减到积分器
- 积分器本身设置上下限
前馈控制:对已知扰动直接补偿输出,PID 只处理未知扰动。例如加热炉根据物料进料量前馈加热功率,PID 只补偿温度偏差,响应速度和精度大幅提升。
六、常见坑与实操建议
坑 1:一上来就三个参数一起调。正确:先 P 再 I 再 D,顺序不能乱。
坑 2:Kd 过大放大噪声,输出震颤。正确:对反馈信号先做一阶低通滤波(截止频率 < 采样频率/10)。
坑 3:采样周期太长。PID 采样周期一般取被控对象时间常数的 1/10 以下,温度控制 100-500ms,伺服位置环 <1ms。
坑 4:忽略执行器死区。步进阀有 ±5% 死区,导致低频震荡,需要死区补偿或用增量式 PID。
坑 5:非线性对象直接线性 PID——变增益 PID 或分段 PID 在不同工况下用不同参数集,性能更好。
一句话:Kp 定速度、Ki 消静差、Kd 压超调;Z-N 起步、试凑微调;温度慢积分、伺服快比例。参数不唯一,超调 <5% 且满足调节时间就是好参数。
暂无评论。
继续阅读
同分类、同标签的相关工程干货