Skip to content

18.2 当 D > 0.5 时:失控的振荡与人工斜坡的救赎

上一节结束时,我们建立了一个基于 iLic 的「简单一阶模型」。这个模型非常漂亮,它把复杂的二阶系统变成了易于控制的一阶系统,还顺便展示了负阻抗和前馈特性。

但模型里藏着一个我们当时故意跳过的陷阱。

如果你真的拿着这个模型去搭电路,占空比 D 一旦超过 0.5,你会惊讶地发现——系统炸了。电感电流开始剧烈振荡,完全不受控制。

这是电流程序控制(CPM)最著名的「先天缺陷」。本节的任务,就是捅破这张窗户纸,看看为什么 D > 0.5 时会发生「次谐波振荡」,以及如何用一个简单的「人工斜坡」来彻底根治它。


18.2.1 失控的阈值:当 D 跨越 0.5

让我们把目光聚焦到电感电流 iL(t) 的波形上。为了看清本质,我们暂时忽略电压环,假设控制信号 ic 是恒定的,只关注电流内环本身发生了什么。

在连续导通模式(CCM)下,电感电流的波形是大家熟悉的三角波:在开关周期的第一阶段,电流以斜率 m1 上升;在第二阶段,电流以斜率 m2 下降。对于三种基本拓扑,这些斜率如下(注意这里的定义是斜率的绝对值):

Buck 变换器

m1=vgvL,m2=vL

Boost 变换器

m1=vgL,m2=vgvL

Buck-Boost 变换器

m1=vgL,m2=vL

掌握了斜率,我们就能建立 iL(0)、控制阈值 ic、周期末电流 iL(Ts) 和占空比 d 之间的数学关系。

当开关导通时,电流 iL(t) 从初始值 iL(0) 开始以斜率 m1 攀升,直到撞上控制信号 ic。这一刻,控制器动作,关断开关。用公式写出来就是:

iL(dTs)=ic=iL(0)+m1dTsd=iciL(0)m1Ts(18.31,18.32)

紧接着,开关关断,电流以斜率 m2 下降,直到周期结束:

iL(Ts)=iL(dTs)m2dTs=iL(0)+m1dTsm2dTs(18.33)

在稳态下,周期开始和结束的电流是相等的,即 iL(0)=iL(Ts),且 d=D,斜率为稳态值 M1,M2。代入上式:

0=M1DTsM2DTsM2M1=DD(18.35)

这个式子其实只是电感伏秒平衡原则的另一种说法,但它将是接下来推导的关键。

扰动是如何演变的?

现在,让我们在稳态上叠加一个小扰动 i^L(0)

iL(0)=IL0+i^L(0)

其中 |i^L(0)||IL0|

我们要问一个关键问题:这个扰动会随着时间衰减,还是会像滚雪球一样越来越大?

为了看清楚原理,我们把扰动幅度刻意夸大一点来想:实线是稳态波形,虚线是加了扰动后的波形。

假设 i^L(0) 是正的(起始电流偏高),那么为了达到同样的控制阈值 ic,所需的导通时间就会变短,意味着占空比扰动 d^ 是负的(dTs 变短了)。

把关键部分放大:在 (D+d^)TsDTs 这个微小的时间差里,我们可以用几何关系算出 i^L(0) 和周期末扰动 i^L(Ts) 的关系。

利用稳态波形的斜边三角形:

i^L(0)=m1d^Ts(18.38)

(注意:d^ 是负的,所以右边是正的,这与图示一致)。

利用扰动波形在关断时刻的斜边三角形:

i^L(Ts)=m2d^Ts(18.39)

(注意:这里 d^Ts 是时间差,m2 下降斜率产生的电流差是负的,但这里取的是差值的绝对值关系,实际上 i^L(Ts) 相对于稳态是负向偏移的)。

把这两个式子联立,消去中间变量 d^

i^L(Ts)=i^L(0)(m2m1)(18.40)

这行公式揭示了令人不安的真相:在一个开关周期内,扰动的符号翻转了,幅度乘以了一个系数 m2/m1

如果我们把稳态关系 M2/M1=D/D 代进去,这个系数就变成了:

m2m1DD

这意味着,经过 n 个开关周期后,扰动变成了:

i^L(nTs)=i^L(0)(DD)n(18.43)

现在请盯着这个特征值(Characteristic Value):

α=DD

如果 |α|<1,扰动随 n 趋于零,系统稳定。 如果 |α|>1,扰动发散,系统振荡。

什么时候 |α|>1

|DD|>1D>0.5

结论是残酷的:一旦占空比超过 50%,内环电流控制就天然不稳定。

这不仅仅是一个数学游戏。拿一个 Boost 变换器来想:输入 20V,输出 50V,对应的 D=0.6。此时特征值 α=1.5。 第一周期,误差变 -1.5 倍;第二周期,变 +2.25 倍;第三周期,变 -3.375 倍。短短几个周期,波形就面目全非,甚至会导致开关管在某个周期里完全不关断(饱和)。这叫次谐波振荡

反观把输出电压降到 30V 的情况,此时 D=1/3,特征值 α=0.5。扰动每半个周期就减半,系统非常健康。

回到那个「负反馈」的直觉

你可能会觉得奇怪:既然是负反馈控制,为什么不稳定?

这里有一个微妙的时间错位。我们在第 k 个周期采样电流误差 i^L(k),并在第 k+1 个周期通过调整占空比来修正它。如果系统的增益太高(α 绝对值大于 1),修正会过度,导致第 k+1 周期的误差反而更大且符号相反。下一个周期又试图「用力修正」,结果再次过头。这种「修正过度」在每个周期交替发生,且幅度不断攀升,就是次谐波振荡的本质。

这和我们上一节提到的那个「一阶模型」并不矛盾——一阶模型假设了我们忽略了这种高频的采样行为,但在 D > 0.5 时,这种行为会从暗处走到台前,直接接管系统。


18.2.2 人工斜坡:一场Gain的手术

既然知道了病根(内环增益太高,修正过度),药方就很明显了:降低内环的增益

工程师们发明的解法叫人工斜坡。它在采样的电流信号上人为叠加一个随时间下降的斜坡信号 ia(t)(斜率为 ma)。

这就好比我们把阈值 ic 变成了一个动态的目标:不再是撞线就停,而是追逐一个不断后退的终点线。

现在,开关关断的条件变成了:

iL(dTs)=icia(dTs)(18.49)

让我们重新推导一下加上这个「人工斜坡」后的稳定性。我们用类似的几何关系,再次计算扰动 i^L(0) 如何传递到 i^L(Ts)

注意现在的斜率变了:

  • 上升段:实际上是电流斜率 m1 和人工斜坡 ma 的叠加。
  • 下降段:同样是 m2ma 的叠加。

根据图中的几何关系(具体推导见 18.50, 18.51 式):

i^L(Ts)=i^L(0)(mam2m1+ma)

把符号提出来,写成新的特征值 α

i^L(nTs)=i^L(0)αn,其中 α=m2mam1+ma(18.54)

仔细看这个公式。ma 越大,分母变大,分子变小,整个 |α| 就会减小。只要 ma 足够大,就能保证 |α|<1,系统就稳定了。

在实际应用中,输出电压 v(t) 通常是受控且恒定的,所以下降斜率 m2(主要取决于 v)是已知的。利用 m2/m1=D/D 这个关系,我们可以把 α 表达成 m2 和占空比 D 的函数:

α=DDmam211+DDmam2(推导整理后)=1mam2D+Dmam2(式意译)

教科书(18.56 式)给出的形式是:

α=1mam2DD+mam2

(译注:此处严格对应原文 18.56 的代数形式)

现在我们来选药量。

方案一:刚好够用ma=0.5m2。 代入 18.56 可以算出,此时在 0D<1 的全范围内,|α|<1 都成立。这是维持稳定所需的最小 ma。有趣的是,这个选择还有一个副作用:我们在下一节会看到,它会让 Buck 变换器对输入电压的扰动完全免疫(Gvg(s)0)。

方案二:一刀切(Deadbeat)ma=m2。 这会让特征值 α 恒等于 0! 这意味着什么?意味着 i^L(Ts) 永远是 0。不管上一个周期有什么误差,只要一个周期过去,系统瞬间把误差清零。这种一个周期搞定一切的控制方式,被称为有限安定时间控制Deadbeat Control。它是数字控制领域的圣杯,但在模拟电路里用一个简单的斜坡就能实现。

踩坑提醒:Deadbeat 听起来很爽,但「ma=m2」里的 m2 是满载工况下的下降斜率。一旦负载变轻,电感电流下降斜率会跟着输出电压一起变(对 Buck 来说 m2=V/L,V 没变其实还好;但 Boost 的 m2=(VVg)/L 就会随工况漂)。如果你的斜坡是按某个工作点硬定死的,轻载时 ma 就可能超过实际的 m2,特征值 α 会跑成正数并接近 1——这意味着扰动不再符号翻转地衰减,而是缓慢地同号衰减,响应反而变肉。所以很多量产电源会故意把 ma 设在 0.50.75m2 之间,留一点余量换鲁棒性,而不是死磕 Deadbeat。


18.2.3 抗噪性:意外的惊喜

人工斜坡除了能救火(解决 D>0.5 不稳定),还有一个巨大的副作用:抗噪。

为什么电流模式控制对噪声特别敏感? 如果没有人工斜坡,且电感纹波很小,控制信号 ic 的波形在比较点附近非常平缓。这时,只要 ic 上面叠加一点点噪声 i^c,交点就会在时间轴上剧烈抖动,导致占空比 d^ 大幅波动。这就像用一把极其锋利的刀去切豆腐,手稍微抖一点,切口就歪得离谱——增益太高了。

加上人工斜坡后,情况变了。现在的比较是在一个陡峭的斜坡上进行的,同样的噪声 i^c 引起的时间抖动 d^ 被大大削弱了。斜坡越陡,抗噪能力越强。

所以,如果 PCB 布局不完美,地线上总是有毛刺,一个幅度远大于电感纹波的人工斜坡往往是救命的稻草。


本章小结

这一节我们撕开了「一阶模型」温情脉脉的面纱,直面了电流程序控制最棘手的问题:当 D > 0.5 时,系统会因修正过度而产生次谐波振荡

我们并没有停留在直觉层面,而是通过离散时间的几何推导,算出了特征值 α,并量化了不稳定条件。最终,我们找到了那个简单的解法——人工斜坡

这个小小的斜坡信号(斜率 ma)不仅是系统的稳定剂,也是完美的抗噪滤镜。当你选择 ma=m2 时,你甚至获得了一个极其强力的 Deadbeat 控制器。

但这还没完。引入了斜坡补偿后,上一节那个漂亮的「一阶模型」会有什么变化?它会变回二阶吗?下一节,我们将修正那个模型,把人工斜坡的影响考虑进去,推导出更精确的传递函数。


参考说明:参考自 geqianQWQ 同学阅读《Fundamentals of Power Electronics》的笔记,仅作理解线索;本文为结合自己理解重新整理的学习笔记,不涉及对原书的复制或翻译。

面向嵌入式学习者的硬件学习笔记