4. PI参数对跟踪性能的影响

做 Lane 校准好几年了,我最大的一个体会就是——PI 参数调好了,系统就像驯服的马;调不好,那就是一匹野马,拉都拉不住。这一章咱们专门聊聊 Kp 和 Ki 到底怎么影响跟踪性能的。

4.1 比例系数 Kp:响应速度的油门

Kp 的作用说白了就是放大误差。误差大了,控制量也大,系统动得快。

  • Kp 过小:响应慢得像蜗牛爬。我曾经在一条高速生产线上试过把 Kp 设得太保守,结果 Lane 收敛花了十几秒,后面工序直接堆料报警。
  • Kp 过大:系统容易超调,甚至震荡。有一次我把 Kp 调大到 2.5,结果 Lane 左右来回甩,跟摇头扇似的。
  • 合适值:响应快、不超调、稳态误差能接受。通常先从小到大试,观察阶跃响应曲线。
实践经验: 先给 Ki=0 只调 Kp,找到临界震荡点,再把 Kp 折扣到 0.6 倍左右。这是个经典套路。

4.2 积分系数 Ki:消除稳态误差的利器

Ki 负责累积历史误差,专门对付那些 Kp 搞不定的残差。但 Ki 用不好,麻烦更大。

  • Ki 过小:稳态误差消得慢,系统拖着一条小尾巴。
  • Ki 过大:积分饱和,超调猛增,甚至低频振荡。我记得有个项目,Ki 从 0.2 提到 0.6,原本稳定的 Lane 直接开始周期性的摆动,怎么都压不下去。
  • Ki 为零:系统永远是带静差的,Lane 校准无法满足精度要求。
⚠ 常见坑: 积分饱和是工程中头疼的问题。系统长时间在饱和区时,积分项会积攒非常大的值,一旦退出饱和,控制器会过冲。建议加积分限幅或者采用抗积分饱和算法。

4.3 Kp 和 Ki 的耦合关系

这两家伙不是独立工作的。Kp 提供主要驱动力,Ki 负责磨细节。我习惯用一个比喻:Kp 是油门,Ki 是微调方向盘。油门踩太猛,方向盘一抖就容易翻车。

参数调整 响应速度 超调量 稳态误差 稳定性
Kp ↑ 加快 增大 减小(有限度) 下降
Kp ↓ 减慢 减小 增大 提高
Ki ↑ 稍快(延迟) 显著增大 快速消除 大幅下降
Ki ↓ 稍慢 减小 消除慢 提高

从表里能看出来,同时增大 Kp 和 Ki 几乎总会导致超调和稳定性问题。实际工程中我会先调 Kp 让系统稳定且有一定响应速度,再切入 Ki 一点点加,直到稳态误差达到要求。

4.4 工程调试我的习惯步骤

  1. 置零法:Ki=0,Kp 从小往大加,直到系统出现等幅振荡。记录临界 Kp (Kpc) 和振荡周期 Tc。
  2. 经典参数:如果是通用系统,直接取 Kp = 0.6×Kpc,Ti = 0.5×Tc,Ki = Kp / Ti。这是 Ziegler-Nichols 的整定公式。
  3. 微调:根据实际 Lane 校准工况,手动微调。我曾经在一条柔版印刷线上,因为材料张力变化大,把 Ki 再降了 20% 才稳定。
  4. 限制输出:给控制器输出加饱和限幅,一般设为执行器最大行程的 80%。
  5. 验证:给一个阶跃偏差(比如 5mm),观察 Lane 恢复时间和稳态精度。

4.5 一个典型曲线对比

下面这张图是我手绘的,展示不同 PI 参数组合下的阶跃响应效果。图上标了四组典型状态。

不同 PI 参数下的阶跃响应对比 时间 t 偏差 Kp小,无Ki Kp适中,Ki适中 Kp大,Ki大(振荡) Kp适中,Ki过小(有静差) 目标值 注:蓝线响应慢且稳;绿线快又准;红线超调大;橙线有静差。

4.6 避坑清单

  • 积分限幅不能省:我曾经在一条涂布线上没加限幅,系统饱和后积分积到 2000,退饱和后直接冲出轨道。
  • Kp 和 Ki 不要同时猛加:先粗调 Kp,再细调 Ki。一起动容易陷入死循环。
  • 考虑执行器死区:如果执行器有死区(比如电机低速不转),Ki 要加得比理论值大一点才能克服。
  • 采样周期匹配:Ki 是离散积分,采样周期如果和积分时间常数不匹配,数值会差很大。统一用毫秒级单位。

核心总结:Kp 决定响应速度,Ki 决定静差消除能力。两者相互制约。调试时先隔离 Ki,再用经典 Z-N 计算初始值,最后根据实际 Lane 校准精度微调。记住一句话——宁慢勿振,宁有静差勿过冲。因为 Lane 校准一旦振荡,对后端工序是灾难性的。