18.9 平均电流模式控制
上一节我们聊了 DCM 下的 CPM。那是种「怎么干都对」的轻松模式,因为电感电流在每个周期都会归零,扰动没法积累到下一个周期。
但如果你工作在 CCM 模式下,或者你的应用场景对「平均电流」有着严苛的要求——比如给电池充电、驱动 LED、或者做低谐波整流——仅仅控制峰值电流(CPM)就显得有点不够用了。你需要更精细的手术刀。
这一节的主角就是这把手术刀:平均电流模式控制(ACM)。
概念层:从「峰值」到「平均值」的视角切换
我们前面花了大量篇幅讨论的 Current-Programmed Control(CPM),本质上是在玩一个「看谁先撞线」的游戏:每个周期开始,让电感电流往上爬,一旦撞到控制信号
这意味着我们控制的是峰值。而在 CCM 下,峰值和平均值之间差了一个随占空比变化的三角波尾巴(虽然加上斜坡补偿后近似线性能算出来,但这毕竟是近似)。
ACM 的思路完全不同。它不再直接去抓那个转瞬即逝的「峰值」,而是构建一个完整的负反馈系统(Inner Current Loop),硬性地把电感电流的平均值死死按在控制信号
类比:从「弹珠台」到「定速巡航」
你可以把 CPM(峰值控制)想象成玩弹珠台:你设定一个高度,让弹珠(电感电流)往上冲,冲到那个高度挡板就把它弹回去。你控制的是最高点,而弹珠的平均速度取决于挡板的高度和重力的博弈。
而 ACM 则像汽车的定速巡航:里面有一个速度控制器(Current Loop Compensator),它盯着速度表(采样的电流信号),发现慢了就踩油门(加大占空比),快了就松油门。不管路面(输入电压或负载)怎么起伏,它都想方设法把速度(平均电流)锁死在你设定的那个数值上。
真实情况是……
但「定速巡航」这个比喻有一点不精确。在 ACM 里,我们控制的是「平均电流」,而不是瞬时电流。控制环路里通常会有低通滤波器,或者补偿器本身具有积分性质,这意味着它会自动忽略开关频率上的高频纹波,只盯着波形的重心(直流平均值)。
这在噪声巨大的环境里(比如开关电源)是个巨大的优势——CPM 那种对峰值极其敏感的机制,稍微有点噪声就容易误触发,而 ACM 则要淡定得多。
机制拆解:ACM 的系统模型
让我们把这套 ACM 系统拆开来看。这里的核心变化在于,PWM 调制器不再直接受控于
信号流是这样的:
- 感知(Sensing):电流传感器(比如一个电阻或霍尔传感器)把电感电流
变成电压信号 。 - 求和(Error):这个信号和控制参考
相减。注意这里的定义,参考电压 其实已经被电阻 折算过了,所以它和反馈信号单位一致。 - 补偿(Compensation):误差信号送进
。这是整个 ACM 的灵魂。它通常是一个 PI 或 PID 控制器。它的任务是把那个摇摆不定的电感电流误差,变成一个稳定的调制电压 。 - 调制(PWM):
进去 PWM,跟锯齿波比大小,吐出占空比 。
理想情况下,如果环路增益无穷大,电感电流的平均值
这就是 ACM 的目标。它让变换器看起来像一个理想的电流源。
为什么这东西比 CPM 好?
还记得 CPM 那个让人头疼的次谐波振荡吗?那是峰值的死穴。在 ACM 里,因为我们通常在补偿环节加入了极点进行低通滤波,高频的开关纹波被大大衰减了,那个导致不稳定的扰动在到达比较器之前就已经被滤波器吃掉了。
这意味着:
- 不需要斜坡补偿:只要环路设计得当,任何占空比下都稳如泰山。
- 抗噪:因为 averaging,开关那点毛刺不算事儿。
- 精确的平均值控制:这对电池充电器来说太重要了——电池寿命看的是平均充电电流,不是峰值。
但也有代价:你需要设计一个补偿器
实践层(1):设计内电流环
要把这个电流环路跑起来,我们需要画出它的小信号模型,也就是一个标准的反馈框图。
这里的核心公式是反馈定理(Feedback Theorem)。闭环后的电流响应
这里的
:采样电阻,把电流变电压。 :我们要设计的补偿器。 :PWM 调制器的增益(锯齿波峰值 越大,增益越小)。 :功率级的控制-电流传递函数(占空比变电感电流)。
目标很明确:设计
一旦环路闭合,闭环传递函数
这里的
实践层(2):双环系统的外层——电压环
通常,我们控制电流是为了控制电压。我们会在 ACM 的外面再套一个电压环。
现在的层级关系是:
- 外环(电压环):电压误差
电压补偿器 输出 。 - 内环(电流环):把上面的
当作电流参考指令,迫使电感电流跟随它。
这是一个经典的级联控制结构。设计方法遵循「内先外后」的原则:
- 先把内环
搞定。 - 把内环闭合,看作整个功率级的一部分,算出此时的控制-输出电压传递函数
。 - 基于
设计外环 。
公式长得很直观,从反馈框图可以直接推出来:
我们要的是前半部分,也就是
18.9.2 实战演练:ACM 控制的 Boost 变换器
光看公式容易晕,我们来上板子。
拿一个 Boost 变换器来开刀,我们要把它改成 ACM 控制。参数如下:
- 输入:
- 输出:
,功率 - 频率:
- PWM:锯齿波幅度
- 采样:
- 参考:
(分压增益 )
设计指标:
- 内环:电流环带宽
(开关频率的 1/10)。 - 外环:电压环带宽
。
第一步:搞定工作点
先把直流工作点算出来,这是所有小信号模型的地基。
第二步:设计内环补偿器
Boost 的小信号模型告诉我们,未补偿的环路增益
我们需要知道 Boost 的
带入数值:
(低频增益很大)- 零点
- 谐振频率
- 品质因数
(非常尖的峰)
看看它的波特图。因为
这意味着我们不需要复杂的补偿器。一个简单的 PI(或者叫 Lag)补偿就够了。公式如下:
- 零点
:放在 之前,提供相位提升。选 。 - 极点
:放在 之后,衰减高频开关噪声。选 。 - 中频增益
:用来把幅值拉到 0dB。
怎么算
验证相位裕度: 用经验公式(18.212)算一下,大概有 46 度的相位裕度(18.213)。虽然不算非常奢侈,但对于电流环来说绝对够用了。
补偿后的波形完美达标。 闭环后的
第三步:设计外环补偿器
内环搞定了,现在把它包进黑盒子里。我们需要找出这个黑盒子的输入输出特性,也就是
既然
对于 Boost 变换器,当电压环带宽远小于电流环带宽时(
- 极点
(跟 有关)。 - 还有一个讨厌的 RHP 零点
。
但别慌,我们的电压环带宽只有
这就好办了。对付单极点系统,PI 补偿器是绝配。
- 增益
:把 处的幅值顶到 0dB。公式 (18.216) 算出来是 16.4。 - 零点
:选在 。
结果呢?相位裕度高达 72 度(18.218)。最终的响应非常漂亮。
总结
这一节其实是在告诉你一个分层设计的故事。
如果你面对的是一个复杂的双环系统(比如 ACM 控制),千万不要试图一锅端。剥洋葱是最好的办法:
- 先盯着最里面的核心(电感电流),把它伺候好,让它在任何指令下都能精准响应。
- 然后,把这块已经驯服的肌肉封装起来,当作整体执行机构,再去设计外面的控制逻辑(输出电压)。
ACM 的代价是你需要多设计一个环路,多几个运放。但换来的是极低的噪声敏感度、对平均电流的绝对控制权,以及再也不用担心斜坡补偿的烦心事。在 Buck、Boost 这种拓扑上,ACM 往往是比 CPM 更稳健的选择。
上一节提到的 DCM 那种「天然稳定」的特性固然好,但 ACM 让我们意识到:只要环路设计得当,CCM 也可以被驯服得一样温顺。
踩坑提醒:ACM 的电流环补偿器
里那个极点(用来衰减开关纹波)的位置很讲究——放太高,开关频率上的纹波会漏进比较器,导致占空比抖动;放太低,电流环带宽被自己掐死,瞬态响应变肉。经验法则是把极点放在开关频率的 附近。还有一个隐藏坑:如果你用纯 PI(没有这个极点),积分器会把开关纹波当成稳态误差不断累积,最终产生所谓的「次谐波纹波注入」——电流看起来在跟随,但叠加了一个开关频率的低频包络。所以 ACM 的补偿器几乎一定要带极点,不能是裸 PI。
参考说明:参考自 geqianQWQ 同学阅读《Fundamentals of Power Electronics》的笔记,仅作理解线索;本文为结合自己理解重新整理的学习笔记,不涉及对原书的复制或翻译。