2. PID控制基础回顾:比例P、积分I、微分D的作用、PID参数对系统的影响、位置环与速度环

各位工程师朋友,咱们开始聊PID。说实话,我做了十几年运动控制,PID这东西就像老朋友一样。你越了解它,它就越听话。今天咱们就把这老朋友的脾气摸透。

2.1 比例P:最直接的“推手”

比例控制,说白了就是“有多大错,使多大劲”。

公式很简单:P_out = Kp × e(t)。其中e(t)是当前误差,Kp是比例增益。

我刚开始调伺服时,总喜欢把Kp往大了拧。觉得越大响应越快嘛。结果呢?电机嗡嗡响,跟得了帕金森似的。后来才明白,比例太大,系统会震荡,甚至发散。

核心要点:

  • Kp越大,响应越快,但超调也越大
  • Kp太小,系统反应迟钝,像没睡醒
  • 纯比例控制必然存在稳态误差——这是它的“胎里毛病”

举个例子。你让电机转到1000转,比例控制下它可能只到980转。为什么?因为误差小了,输出的力也小了,刚好跟负载平衡。这20转的误差,就是稳态误差。

2.2 积分I:专治“老油条”误差

积分的作用,就是消除那个甩不掉的稳态误差。

公式:I_out = Ki × ∫e(t)dt

积分项会不断累积过去的误差。哪怕误差只有一点点,时间长了,积分值也会变大,最终把误差吃掉。

我的经验:

调积分时,我习惯先给一个很小的Ki值,比如0.01。然后慢慢往上加。为什么?因为积分太强,系统会“过冲”,然后来回震荡,这叫“积分饱和”。我曾经在一个龙门同步项目上吃过这个亏,两个轴因为积分饱和打架,差点把机械结构扭坏。

积分还有个副作用——它会降低系统的响应速度。你想想看,积分要慢慢累积,反应自然慢半拍。所以有些场合,比如快速定位,积分不能太大。

2.3 微分D:给系统装个“刹车”

微分看的是误差的变化趋势。误差在变大,它就输出负值,阻止它继续变大。误差在变小,它就收力,防止过冲。

公式:D_out = Kd × de(t)/dt

说白了,微分就是“预判”。它不关心你现在错多少,关心的是你下一步要错多少。

注意:

微分对噪声极其敏感。信号稍微抖一下,微分值就会剧烈跳动。我见过有人把Kd调得很大,结果电机高频抖动,比没调还糟糕。所以,如果你的反馈信号有毛刺,先滤波,再谈微分。

实际项目中,我很少单独用微分。它通常是跟P和I搭配使用,用来抑制超调,提高系统的稳定性。

2.4 PID参数对系统的影响

咱们用一张表来总结,这样更直观:

参数 响应速度 超调量 稳态误差 稳定性
Kp ↑ 加快 增大 减小(但不消除) 降低
Ki ↑ 减慢 增大 消除 降低
Kd ↑ 加快(有限度) 减小 无影响 提高(有限度)

调参时,我个人的习惯是:先调P,让系统动起来;再加D,把超调压下去;最后加I,消除稳态误差。这个顺序,我用了十几年,基本没翻过车。

2.5 位置环与速度环

在伺服系统里,PID不是只有一个。通常有两个环:位置环和速度环。

位置环在外层,速度环在内层。位置环的输出,就是速度环的给定。速度环的输出,直接驱动电机。

为什么要搞两个环?

  • 速度环:响应快,负责把电机转速稳住。它抗干扰能力强,负载突变时能快速恢复。
  • 位置环:响应慢,负责最终的位置精度。它不直接跟电机打交道,而是通过速度环间接控制。

我画个图,你一看就明白:

双环控制结构图 位置给定 位置环PID 速度环PID 电机 速度反馈 位置反馈 位置环输出 = 速度环给定

调参时,有个原则:先内后外。先调速度环,再调位置环。速度环调好了,位置环就轻松多了。

实战建议:

调速度环时,我习惯给一个阶跃信号,看速度响应曲线。调位置环时,给一个位置阶跃,看位置跟踪误差。两个环的带宽要拉开差距,速度环带宽通常是位置环的5-10倍。这样内外环才不会“打架”。

2.6 避坑指南

最后,分享几个我踩过的坑:

  • 积分饱和:我曾经在一个长行程定位项目上,积分累积太大,电机冲过了头。后来加了积分限幅和抗饱和处理,问题解决。
  • 微分噪声:有一次编码器信号有毛刺,微分项疯狂输出,电机高频抖动。加了个低通滤波器,世界安静了。
  • 位置环增益过高:位置环Kp太大,速度环跟不上,系统会震荡。记住,位置环的输出不能超过速度环的承受能力。

嗯,PID基础就聊到这儿。这些概念虽然基础,但真到了现场,你会发现它们比想象中更实用。下次咱们直接上手,讲整定步骤和实战案例。

专注资料整理