3. 三环控制基础:电流环、速度环、位置环的基本结构与传递函数

做电机控制这些年,我见过不少工程师一上来就调弱磁,结果电流震荡、速度抖得跟筛子似的。为什么?说白了,三环都没吃透,地基没打牢就想盖二楼。

这一章咱们把三环的基本结构捋清楚。你想想看,三环控制就像三级火箭——电流环是底层的推力,速度环是中间的巡航,位置环是顶端的导航。每一级都有自己的脾气,调参的思路也完全不同。

3.1 三环的层级关系

先看一张整体框架图,我习惯用这张图给新人讲三环的协作关系:

三环控制层级结构图 位置环(外环) 带宽:5~20 Hz 速度环(中环) 带宽:50~200 Hz 电流环(内环) 带宽:500~2000 Hz 关键原则: 内环带宽 ≥ 5× 外环带宽,否则系统响应会打架。 调参顺序:先电流环 → 再速度环 → 最后位置环,别跳级。

这张图我每次培训都会放。注意看带宽的倍数关系——内环比外环快一个数量级,这是三环能稳定工作的前提。我在项目里见过有人把速度环带宽设到 500 Hz,电流环才 800 Hz,结果电机一加速就啸叫,根本没法用。

3.2 电流环:最底层的推力

电流环是离电机最近的一环。它的任务很简单:你给个电流目标,它让实际电流跟上。但简单不代表容易,尤其是在弱磁区,电流环的响应速度直接决定了整个系统的上限。

3.2.1 电流环的结构

典型的电流环包含 PI 控制器和电机电枢模型。传递函数可以写成:

电流环开环传递函数:G_i(s) = Kp_i * (1 + 1/(Ti_i * s)) * (1/(R + L*s))

其中:
Kp_i —— 电流环比例增益
Ti_i —— 电流环积分时间常数
R    —— 电机相电阻
L    —— 电机相电感(注意:弱磁区 L 会变化!)

嗯,这里要注意。弱磁区里电感 L 不是常数,它会随着电流和磁链变化。我刚开始做弱磁时没注意这个,按额定电感算的 PI 参数,结果一进弱磁区电流就开始震荡。后来才明白,电感变了,零极点位置也跟着漂了。

电流环调参口诀:

  • 比例增益 Kp_i 决定响应速度,但太大会导致电流超调
  • 积分时间 Ti_i 消除稳态误差,但太小会引入低频振荡
  • 弱磁区建议 Kp_i 适当降低 10%~20%,补偿电感变化

3.2.2 电流环的带宽限制

电流环的带宽受 PWM 开关频率和采样延迟限制。一般经验是:

PWM 频率 电流环最大可用带宽 实际推荐带宽
10 kHz ~2 kHz 800~1200 Hz
20 kHz ~4 kHz 1500~2500 Hz
40 kHz ~8 kHz 3000~5000 Hz

我曾经在一个项目里把电流环带宽推到理论极限,结果电流波形上全是毛刺。后来发现是采样延迟没算进去——你想想看,ADC 采样要时间,PWM 更新要时间,这些延迟加起来,实际带宽至少打七折。

3.3 速度环:中间的巡航

速度环坐在电流环上面。它给电流环发指令,电流环去执行。速度环的输入是速度误差,输出是电流参考值。

3.3.1 速度环的传递函数

速度环的模型比电流环复杂一些,因为它要经过电流环这个「下级」才能控制电机:

速度环开环传递函数:G_v(s) = Kp_v * (1 + 1/(Tv_v * s)) * G_i_cl(s) * (Kt / (J * s))

其中:
Kp_v —— 速度环比例增益
Tv_v —— 速度环积分时间常数
G_i_cl(s) —— 电流环闭环传递函数(简化为一阶惯性:1/(τ_i * s + 1))
Kt   —— 电机转矩常数
J    —— 转动惯量

这里有个坑:电流环闭环传递函数 G_i_cl(s) 不是理想的 1。我见过有人直接把它当 1 来算速度环参数,结果实际系统响应比设计值慢了一倍。正确的做法是把电流环等效成一阶惯性环节,时间常数 τ_i 取电流环带宽的倒数。

我的经验:速度环的积分时间常数 Tv_v 一般取电流环等效时间常数 τ_i 的 5~10 倍。这样既能保证速度环的响应,又不会和电流环产生谐振。

3.3.2 速度环的调参要点

速度环调参有个经典方法——先调比例,再加积分。具体步骤:

  1. 纯比例控制:把积分时间设到最大(相当于关掉积分),逐渐增大 Kp_v 直到速度出现轻微振荡
  2. 退半步:把 Kp_v 回调到振荡点的 60%~70%
  3. 加积分:逐渐减小 Tv_v,观察速度稳态误差的消除速度
  4. 微调:在弱磁区,速度环的 Kp_v 可能需要再降 5%~10%

这个方法我用了十年,基本没翻过车。但要注意,弱磁区里电机的反电动势会变化,速度环的负载扰动响应会变差。这时候可以考虑加个前馈补偿,不过那是后面章节的内容了。

3.4 位置环:顶端的导航

位置环是最外环,也是最慢的一环。它的输入是位置误差,输出是速度参考值。位置环的带宽通常只有 5~20 Hz,比速度环慢一个数量级。

3.4.1 位置环的传递函数

位置环开环传递函数:G_p(s) = Kp_p * G_v_cl(s) * (1/s)

其中:
Kp_p —— 位置环比例增益(位置环通常只用 P 控制,不加积分)
G_v_cl(s) —— 速度环闭环传递函数(简化为一阶惯性:1/(τ_v * s + 1))

为什么位置环不加积分?因为位置本身就是速度的积分,再加积分会引入额外的相位滞后,容易导致超调和振荡。我见过有人给位置环加了个 PI,结果系统响应慢得像蜗牛,位置跟踪误差反而更大了。

注意:位置环的 Kp_p 不能太大。如果 Kp_p 超过速度环带宽的 1/5,位置环就会和速度环「抢带宽」,系统会变得不稳定。我曾经吃过这个亏,调了半天电流环和速度环,最后发现是位置环的 Kp_p 设得太高了。

3.4.2 位置环的调参逻辑

位置环调参其实很简单,因为只有一个参数 Kp_p:

  • Kp_p 太小:位置跟踪慢,有稳态误差(但不会超调)
  • Kp_p 太大:位置响应快,但容易超调,甚至振荡
  • 理想值:Kp_p ≈ 速度环带宽的 1/10 ~ 1/5

举个例子,如果速度环带宽是 100 Hz(约 628 rad/s),那位置环的 Kp_p 大概在 60~120 之间。具体多少,还得看负载惯量和机械刚度。

3.5 三环的带宽分配原则

最后总结一下三环带宽的分配原则。这个原则我每次做项目都会贴在工位上:

环 带宽范围 与下一环的倍数关系 调参优先级
电流环 500~2000 Hz —— 第 1 步
速度环 50~200 Hz 电流环带宽的 1/5 ~ 1/10 第 2 步
位置环 5~20 Hz 速度环带宽的 1/5 ~ 1/10 第 3 步

这个倍数关系不是拍脑袋定的。它来自控制理论里的「时间尺度分离」原则——外环的响应速度必须比内环慢,否则内外环会互相干扰。说白了,就是内环已经稳定了,外环才开始动作,这样系统才能各司其职。

本章核心要点:

  • 三环结构:电流环(内)→ 速度环(中)→ 位置环(外),带宽逐级降低
  • 电流环传递函数含电机电枢模型,弱磁区电感变化会影响零极点
  • 速度环通过电流环控制电机,调参先比例后积分
  • 位置环只用 P 控制,Kp_p 取速度环带宽的 1/10 ~ 1/5
  • 带宽分配遵循 5~10 倍关系,这是系统稳定的前提