3. 速度环的数学模型:传递函数与框图,PI控制器的标准形式

好,咱们今天来聊聊速度环的数学模型。说实话,很多工程师调了几年参数,对PI控制器还是停留在“P调比例、I消静差”这个层面。我个人觉得,要想真正把速度环调好,必须把它的数学模型吃透。

为什么?因为数学模型就是控制系统的“语言”。你听不懂它说什么,参数调起来就只能靠蒙。我刚开始做伺服驱动那会儿,也是瞎调,有一次把一台750W的电机调得嗡嗡响,差点烧了驱动器。后来老老实实把传递函数推导了一遍,才明白问题出在哪。

3.1 速度环的典型框图结构

先看一个典型的速度环控制框图。嗯,这里我画了一个,大家跟着我走一遍信号流:

速度环控制框图(典型结构) ω* e PI控制器 Kp + Ki/s i* 电流环 Gc(s) ω ωfb 说明:ω*为速度给定,e为误差,i*为电流给定,ω为实际速度,ωfb为反馈速度

这个框图其实不复杂。从左到右:给定速度 ω* 减去反馈速度 ωfb,得到误差 e。误差进入 PI 控制器,输出电流给定 i*。电流给定再经过电流环,最终驱动电机输出实际速度 ω。

你可能会问:为什么要把电流环单独画出来?因为电流环的响应速度比速度环快得多,通常快一个数量级。我在调试高速主轴时,电流环带宽做到 2kHz,速度环带宽只能做到 200Hz 左右。所以很多时候,我们简化分析时会把电流环近似成一个一阶惯性环节,甚至直接当成 1。

3.2 传递函数的推导

好,咱们来写传递函数。先从 PI 控制器开始:

G_PI(s) = Kp + Ki/s

其中:
Kp —— 比例增益
Ki —— 积分增益
s  —— 拉普拉斯算子

这个形式大家应该都见过。但我要提醒一点:Ki 的单位是 1/s,不是无量纲的。很多新手在这里栽跟头,把 Ki 设得特别大,结果系统振荡得一塌糊涂。

把电流环简化成一阶惯性环节:

G_c(s) = 1 / (T_c * s + 1)

其中 T_c 是电流环等效时间常数,通常取 0.5~2ms

电机本身的传递函数呢?对于永磁同步电机,在忽略反电动势影响的前提下:

G_m(s) = Kt / (J * s)

其中:
Kt —— 转矩常数 (Nm/A)
J  —— 转动惯量 (kg·m²)

把这三部分串起来,速度环的开环传递函数就是:

G_open(s) = (Kp + Ki/s) * [1 / (T_c * s + 1)] * (Kt / (J * s))

嗯,看着有点长。但别怕,我们把它整理一下:

G_open(s) = (Kp * s + Ki) / s * [1 / (T_c * s + 1)] * (Kt / (J * s))

         = (Kp * s + Ki) * Kt / [J * s² * (T_c * s + 1)]

核心结论:速度环开环传递函数是一个 II 型系统(分母有 s² 项),理论上对阶跃速度指令可以实现无静差跟踪。这就是 PI 控制器的功劳——积分项把系统型别提高了一阶。

3.3 PI控制器的标准形式

PI 控制器在实际工程中有两种常见写法。我见过不少工程师在这上面搞混,咱们得说清楚。

形式 表达式 特点 适用场景
并联式 G(s) = Kp + Ki/s Kp 和 Ki 独立调节,互不影响 通用场合,调试直观
串联式 G(s) = Kp * (1 + 1/(Ti * s)) Ti = Kp/Ki,积分时间常数 与模拟控制器兼容,物理意义明确

我个人习惯用并联式。为什么?因为调试的时候,Kp 和 Ki 各管各的,互不干扰。你调 Kp 只影响响应速度,调 Ki 只影响低频增益,思路清晰。

但串联式也有它的好处。Ti 的物理意义很直观——它表示积分作用需要多长时间才能追上比例作用。Ti 越小,积分作用越强。我记得有一次帮客户调试一台印刷机,对方工程师坚持用串联式,说他们老一代的模拟控制器就是这么标的,改不了。那就顺着来呗,只要换算清楚就行。

换算关系:如果你拿到的是串联式参数 (Kp, Ti),想转成并联式:Ki = Kp / Ti。反过来,并联式转串联式:Ti = Kp / Ki。

3.4 闭环传递函数与系统特性

有了开环传递函数,闭环传递函数就好办了:

G_close(s) = G_open(s) / [1 + G_open(s) * H(s)]

其中 H(s) 是反馈通道传递函数,通常 H(s) = 1(单位反馈)

代入前面推导的开环传递函数:

G_close(s) = [(Kp * s + Ki) * Kt] / [J * s² * (T_c * s + 1) + (Kp * s + Ki) * Kt]

这个式子看着复杂,但我们可以从中读出几个关键信息:

  • 分母是三次方程(s³ 项来自 T_c),所以速度环本质上是三阶系统。三阶系统就可能出现振荡甚至不稳定。
  • 分子有零点(s 项来自 Kp),这个零点会影响系统的超调量。零点越靠近虚轴,超调越大。
  • 稳态增益为 1(令 s→0),说明理论上对阶跃指令无静差。这就是积分项的功劳。

我曾经踩过的坑:有一次调试一台大惯量转台,负载惯量是电机惯量的 50 倍。我按常规方法整定 PI 参数,结果速度环带宽怎么也上不去,一超过 30Hz 就振荡。后来分析传递函数才发现,大惯量下 J 很大,导致开环增益很低,必须大幅提高 Kp 才能补偿。但 Kp 提上去之后,零点又太靠近虚轴,超调量飙升。最后不得不引入前馈补偿才解决问题。

3.5 参数对系统性能的影响

咱们用一张表总结一下 Kp 和 Ki 对系统性能的影响:

参数 增大时的影响 减小时的影响
Kp 响应加快,带宽提高,超调增大,可能振荡 响应变慢,带宽降低,系统变“软”
Ki 消除静差更快,低频增益提高,相位裕度降低 消除静差变慢,低频刚度下降

这里有个经验值,我一般用来做初始设定:

Kp_initial ≈ 0.5 * J * ω_bw
Ki_initial ≈ 0.2 * Kp_initial * ω_bw

其中 ω_bw 是期望的速度环带宽 (rad/s)

举个例子,如果电机惯量 J = 0.001 kg·m²,期望带宽 100 Hz(约 628 rad/s):

Kp_initial ≈ 0.5 * 0.001 * 628 = 0.314
Ki_initial ≈ 0.2 * 0.314 * 628 ≈ 39.4

当然,这只是初始值。实际调试时还要根据负载情况、机械共振点等因素微调。但有了这个起点,至少不会把系统调得飞起来。

一句话总结本章:速度环的数学模型就是 PI 控制器 + 电流环 + 电机惯量三者的串联组合。理解了这个模型,你调参数就不再是盲人摸象,而是有的放矢。