速度环与位置环
几乎没有人真正需要电流,他们需要的是速度或位置。电流环是级联控制中最内层的一环——三个嵌套的环路,每一个都围绕着内部的环路进行闭环。
每个环路都对内层环路进行控制,并将其视为理想的执行器。这一假设使设计变得可行,但只有当内环的速度远高于外环时才成立。本页的所有内容都由此推导而来。
为什么要采用级联结构
仅用一个控制器将位置误差映射到电压是可行的,但没有人会这样做。原因有三:
限幅处于恰当的位置。 电流限幅是一项物理硬约束——用于保护逆变桥和永磁体。在级联结构中,它就是速度环的输出限幅,单位直接就是安培。而在单一整体式控制器中,内部根本没有一个代表电流的信号,因此限幅无处安放。
每个环路可以逐级独立调试。 先整定并验证电流环;然后在已知可靠的内环之上闭合速度环;最后闭合位置环。任何一个阶段出现问题,原因都很单一明确。反之,面对一台随时可能失控损坏的电机,同时去调三个相互耦合的环路增益,则是完全不同的体验。
扰动在进入系统的位置即被抑制。 负载转矩扰动直接作用于转速,由速度环直接感知并抑制;反电动势的变化则由电流环就地抑制,速度环甚至无需感知。
速度环
从 q 轴电流到机械转速的传递函数是一阶的,与电气部分完全一致:
对于参考电机, N·m/A。同样的零极点对消原理给出 和 。
只不过这次不应使用它。
在实验台上 机械极点 极小——对于几乎所有实际电机而言都只有零点几赫兹,而对于带典型负载的基准电机更是只有 0.0004 Hz。若照搬零极点对消,算出的积分增益将小到需要好几秒钟才能抑制住一次负载阶跃。
因此,速度环的零点必须人为刻意配置(通常设在穿越频率的五分之一处),设计方法也不再是零极点对消。这在实际工程中是常态:电流环里那套干净利落的对消法,一旦遇到极点几乎在直流(DC)处的被控对象便不再适用。
带宽分离是核心设计准则
外环控制器假定内环是瞬时响应的。在实际的串级系统中进行测量——50 Hz 的速度环套在带宽各异的电流环之上,阶跃输入较小以避免饱和:
| 电流带宽 | 带宽比 | 转速超调 |
|---|---|---|
| 1500 Hz | 30× | 12.4% |
| 500 Hz | 10× | 12.4% |
| 250 Hz | 5× | 13.5% |
| 150 Hz | 3× | 16.5% |
| 100 Hz | 2× | 22.9% |
| 75 Hz | 1.5× | 29.8% |
带宽比达到十倍及以上时几乎没有任何代价——内环确实形同透明。降到五倍时开始付出代价。低于三倍时,内环自身的动态延迟已侵入外环穿越频率之内,导致转速超调量翻倍不止。
每级带宽相差五到十倍就是级联设计的黄金法则,其依据正在于此。以 1 kHz 的电流环为基础,速度环带宽大约可设为 100–200 Hz,而位置环则在 20 Hz 以下。
速度环在每次启动时都会饱和
这就是速度环与电流环之间的差异,也是最容易让人困惑的地方。
电流环只是偶尔饱和——例如在大阶跃或接近基速时。而速度环在每一次显著的转速变化过程中都会饱和,因为正是电流限幅决定了最大加速度的物理上限。一旦给定 1500 rpm 的阶跃指令,速度环会立即请求极大的电流,撞上电流限幅,并在整个加速阶段一直顶着限幅运行。
因此,这里的抗积分饱和并非一种改进,而是能否正常工作的分界线:
| 超调 | 调节时间 | |
|---|---|---|
| 采用抗积分饱和 | 6.9% | 140 ms |
| 无抗积分饱和 | 57.8% | 228 ms |
速度指令的超调量达到 58% 并不是通过降低增益就能解决的整定问题——这是积分器在 74 ms 内积累了大量无法消除的误差所致。解决方法与 电流环 所采用的反向计算相同。
在实验台上 这里还有同一陷阱的第二种更隐蔽的形式。当内环饱和(即电流环达到电压限幅)时,速度环所请求的电流实际上已无法兑现,但没有任何机制告知速度环。由于速度环自身的输出并未触及电流限幅,它自己的抗积分饱和永远不会触发,积分器照样发生饱和。
稳健的级联系统会将内环的饱和标志向外传递,使得当下一级环路已失去调节能力时,本级环路即停止积分。这正是图中下方所示的内容:当“请求”与“实际输出”一致时,假设成立;当两者出现偏差时,速度环正在调节一个并未真正发生的现象。
前馈零代价,却常被忽略
反馈仅作用于误差,因此跟踪斜坡信号的闭环总是存在滞后——这就是“误差驱动”的含义。如果加速度已预先知道(在由运动轨迹生成指令时总是如此),则可以直接将所需的电流叠加到目标值上:
这不会改变环路的传递函数,因此也不会引起任何不稳定。它只是让反馈路径的工作量减少。这是串级控制中成本最低、却最常被忽视的性能提升手段。
位置环只需要比例控制
在内含正常工作的速度环路的情况下,从速度给定到位置的系统可视为一个纯积分环节。因此,仅采用比例控制即可构成一阶闭环,且无超调,同时 。
在此处引入积分作用通常是错误的。被控对象本身已经具有积分特性,因此不存在需要 积分器消除的稳态位置误差;而再增加一个积分环节则会额外引入90°相位滞后,并 极易引发伺服驱动器所常见的持续振荡现象。
在实验台上 唯一的例外是存在恒定负载转矩(例如垂直Z轴受重力作用),此时纯比例控制确实会产生稳态位置静差。但即便如此,更好的办法通常也是加入负载转矩前馈,而非引入积分项去慢慢消除它,因为前馈不会牺牲任何相位裕度。
速度的来源
速度环需要转速反馈,但编码器测量的是位置。对量化信号求导,带来的麻烦正如听起来一样棘手。
在固定时间窗口内对脉冲边沿计数(M 法测速),算出的转速必然以固定步长发生量化:
这一量化步长与转速高低完全无关。因此,随着电机转速降低,量化步长占实际转速的比例会越来越恶劣:
| 编码器 | 量化步长(1 ms 窗口) | 达到 1% 精度的最低转速 |
|---|---|---|
| 500 CPR | 120 rpm | 12000 rpm |
| 1000 CPR | 60 rpm | 6000 rpm |
| 4000 CPR | 15 rpm | 1500 rpm |
一个每毫秒采样一次的 1000 CPR 编码器,其测速分辨率只有 60 rpm。在 100 rpm 下,该转速估计值已几乎不可用,而且任何后端滤波都无法凭空恢复根本未曾采集到的信息。
标准方案是切换测速方法:高速时对脉冲边沿计数(M 法),低速时则改为测量相邻边沿之间的时间间隔(T 法),此时量化变量与连续变量的角色互换。如何妥善处理两种方法之间的切换过渡——以及切换点处噪声特性的不连续跳变——是一项实打实的工程课题,绝非可有可无的注脚。
在实验台上 对转速估计值加低通滤波是最常见的本能反应,但绝非没有代价:任何加在反馈通道上的滤波器都处于闭环回路之内,其相位滞后会直接扣减速度环的相位裕度。一台必须靠重度速度滤波才能压住噪声的驱动器,实际上已经把大部分动态带宽拱手让出了。与其加滤波,不如换更高线数的编码器。
要点回顾
- 采用串级控制是因为它能将限制放在合适的位置,允许逐个回路进行调试,并在扰动进入的地方予以抑制。
- 速度环节是一阶系统,但其极点位于直流处。应主动设置控制器零点,而非试图将其抵消。
- 每级之间应使带宽相差五到十倍。十倍并无额外成本;若低于三倍,超调量将加倍。
- 速度环在每次启动时都会饱和,因此抗积分饱和是结构性措施,而非后期优化——开启抗积分饱和时超调为 6.9%,关闭时为 57.8%。
- 将内环的饱和状态向外环传递,否则当内环受限时,外环积分器仍会继续累积饱和。
- 将加速度和负载前馈引入系统。这不会影响稳定性,并消除了反馈无法消除的滞后。
- 位置环需要比例控制,而不是比例积分控制。被控对象本身已经具有积分特性。
- 脉冲计数式编码器以固定步长量化转速,因此在低速区必然失效。滤波无法恢复丢失的分辨率,提高编码器线数(或改用测周期法)才可以。