参考内容:
手撕Buck!Buck公式推导过程
电力电子的基础应用
《精通开关电源设计(第二版)》
Buck电源芯片输出有问题?检查这几样
原来PWM这么简单!
BUCK 电路构建
根据高中所学习的物理知识可以很容易的想到,使用一个滑动变阻器即可实现降压和稳压的效果。当负载波动时,通过改变滑动变阻器的阻值,可以调节负载所获得的电压。但是使用滑动变阻器的劣势也很明显,大量的耗能会导致器件温度快速升高。
上面所提到的电路主要缺点在于导通器件(变阻器或三极管)本身存在耗能,那么有没有不会耗能的导通器件呢?首先肯定不能选导线,不然又回到最原始的问题,所有电压都被加到负载上了。有没有能不耗能且能控制加在负载电压的导通器件呢?最常见的机械开关就能做到这个效果。
当开关闭合时,负载即获得电压源输出的电压;当开关打开时,负载所获得的电压为 0V。计算平均值可以确定达到了降压的目的,通过控制开关闭合的时间长短,就可以达到调节电压的效果。但仔细想想就会发现不对劲,电路并不会帮助我们计算平均值,负载所获得的电压波形如下图所示,是完美的方波,并不是一条直线。
控制开关闭合的时间,即后文要讲的控制占空比
此时很容易就能想到利用电容两端电压不能突变的特点,给负载并联一个电容即可,电容即保证负载可以获得连续的能量流。
一旦引入了电容,就需要考虑浪涌电流的问题。根据公式 Q = C V = I t Q=CV=It Q=CV=It 可得 I = C V t I=\frac{CV}{t} I=tCV,开关闭合时电压在非常短的时间内升高,所以电流会突然变得很大。
我们当然可以简单的利用电阻来抑制浪涌电流,但不幸的是电阻总要消耗功率。为了最大限度的提高效率,可以考虑使用电感,电感本身不消耗任何能量,只会进行储能,且其无损限流的能力正好可以用来抑制电容的浪涌电流。
引入电感后可以发现当开关打开时,电感没有续流回路,因此需要想办法构造电感的续流回路。续流回路需要保证不论开关打开还是闭合,电流都流向负载,且开关闭合时电源正极与负极回路必须经过电感与负载。这个需求很符合二极管的特点,即只允许单向导通。
到目前为止我们构建了非同步 BUCK 电路,考虑到机械开关容易磨损、使用寿命短、有机械惯性(转换频率低)的问题,我们需要将机械开关换成转换频率高的半导体器件,此处我们选择 NMOS 管来替代开关。
选择 NMOS 和 PMOS 的主要区别在于驱动电路的设计
可以发现当 NMOS 开关管导通时,续流二极管处于截止状态;当开关管关断时,续流二极管处于导通状态。即二极管的导通和截止和开关管的截止导通是同步的,也就是说二极管起到的是一个开关的作用。而且考虑到电流从二极管流过期间,二极管两端的压降恒定为导通电压 0.7V,二极管所消耗的能量较大。因此我们也可以把二极管换为导通电阻更小的 NMOS 管。
为了提高 BUCK 电路的稳定性,防止由于输入纹波带来异常,我们在 BUCK 电路的输入端并联一个电容,用于滤除输入电压的纹波。
至此我们就搭建了一个标准的同步 BUCK 电路,我们将其简单变个样子,再加几个标签即可得到下图。在同步 BUCK 电路中需要两个开关管密切配合,以防止整个线路导通,所以它们之间需要保持一定的相位关系,即上管导通下管截止;上管截止下管导通,我们把这种关系称之为同步。
信号角度理解 LC
我们以占空比为 0.5 来进行说明,将时域下的方波转换到频域,通过傅立叶变换可以分解出一系列的频率分量。其中包含频率为 0 的分量,即直流分量,也就是我们想要保留的部分,还有频率为 n 倍 f s f_{s} fs 的分量。那么如何把我们不想要的部分去掉呢?从滤波角度考虑就需要加入一个低通滤波器。
通过加入低通滤波器可以把高频分量滤除,把二阶低通滤波器的截止频率设置在 0 到 f s f_{s} fs 之间,即可把 f s f_{s} fs 所有以上的部分给滤除。整体达到的效果即通过一个 LC 低通滤波器,配合一个开关网络,将一个数字化的电平重新滤出,得到一个比较平缓的电压输出,这个过程即完成了电压从高到低的转换。其中直流分量的大小受占空比 D 控制,所以通过改变占空比 D 即可改变输出电压大小。
稳态分析
我们需要先强调一下前提,此处我们说的稳态分析,即输入电压输出电压都是稳定,且纹波足够小的状态。下文的所有计算都将基于稳态进行分析,并且是在 (F)CCM(连续导通模式)下计算的。
我们将一些已知条件列出来:
- 输入电压: V i V_{i} Vi
- 输出电压: V o V_{o} Vo
- 负载电阻: R R R
- 输出电感: L L L
- 开关频率: f f f
伏秒平衡
当上管导通下管截止时,电感右边的电压为 V i V_{i} Vi,左边的电压为 V o V_{o} Vo,因为同步 BUCK 电路是降压电路,所以 V i > V o V_{i}>V_{o} Vi>Vo,所以电感两端电压即为 V i − V o V_{i}-V_{o} Vi−Vo,也就是说是一个恒定值。由于有 L d i d t = V i − V o L\frac{\mathrm{d} i}{\mathrm{d} t} =V_{i}-V_{o} Ldtdi=Vi−Vo,所以 d i d t = V i − V o L \frac{\mathrm{d} i}{\mathrm{d} t} =\frac{V_{i}-V_{o}}{L} dtdi=LVi−Vo,即电感电流的上升斜率,由于是稳态前提,所以可以确定该值是一个常数。
当上管截止下管导通时,电感右边电压为 V o V_{o} Vo,左边电压为 0 0 0,所以电感两端电压为 0 − V o 0-V_{o} 0−Vo,即 − V o -V_{o} −Vo。由于 L d i d t = − V o L\frac{\mathrm{d} i}{\mathrm{d} t} =-V_{o} Ldtdi=−Vo,所以 d i d t = − V o L \frac{\mathrm{d} i}{\mathrm{d} t} =-\frac{V_{o}}{L} dtdi=−LVo,即电感电流的下降斜率,也是一个常数。
整个电路处于稳定状态,负载电路恒定,那么在一个周期内,电感电流增加的量肯定等于电感电流减小的量,即充了多少电就要放多少电,不然负载的电流或电压将会发生变化。
前文已有 d i d t = U L \frac{\mathrm{d} i}{\mathrm{d} t} =\frac{{U}}{L} dtdi=LU,而 L L L 恒定,那么电感电流的变化速度即与电压成正比关系,即电感电流上升(下降)的斜率与电压成正比关系。而电感电流上升和下降的高度相同,那么上升时间和下降时间就自然构成反比关系。
T o n T o f f = V o V i − V o \frac{T_{on} }{T_{off} } = \frac{V_{o}}{V_{i}-V_{o}} ToffTon=Vi−VoVo,将其进行简单变换即可得到闻名江湖的伏秒平衡法则。
T o n ( V i − V o ) = T o f f V o T_{on}(V_{i}-V_{o}) = T_{off}V_{o} Ton(Vi−Vo)=ToffVo
占空比
已知 T = T o n + T o f f = 1 f T=T_{on}+T_{off}=\frac{1}{f} T=Ton+Toff=f1,结合伏秒平衡法则可以计算出:
开通时间: T o n = V o V i ∙ 1 f T_{on} = \frac{V_{o} }{V_{i} } \bullet \frac{1}{f} Ton=ViVo∙f1
关断时间: T o f f = V i − V o V i ∙ 1 f T_{off} = \frac{V_{i}-V_{o} }{V_{i} } \bullet \frac{1}{f} Toff=ViVi−Vo∙f1
占空比: D = T o n T = V o V i D = \frac{T_{on} }{T}=\frac{V_{o} }{V_{i}} D=TTon=ViVo
纹波电流
由于输出电压不变,也就是说输出电容两端的电压没有变化,即输出电容的平均电流为 0。根据输出节点的基尔霍夫电流定律可知,输出节点电流和为 0,那么功率电感的平均电流就等于负载的平均电流,即 I L = I o = V o R I_{L} = I_{o} = \frac{V_{o} }{R} IL=Io=RVo。
上文计算电感电流斜率时已经能确定电流波形是个三角波,纹波电流等于在开关导通时电感电流的增大值,也等于在关断时电感电流减小的值,计算任意一个即可得到纹波电流。我们以上管导通时增大的电感电流计算。
上管导通时电感两端电压为 V i − V o V_{i}-V_{o} Vi−Vo,导通时间为 T o n = V o V i ∙ 1 f T_{on} = \frac{V_{o} }{V_{i} } \bullet \frac{1}{f} Ton=ViVo∙f1,根据 U = L d i d t U=L\frac{\mathrm{d} i}{\mathrm{d} t} U=Ldtdi 可知:
△ I L = d i \triangle I_{L} =di △IL=di
= T o n ∙ U L =T_{on}\bullet \frac{U}{L} =Ton∙LU
= V i − V o L ∙ V o V i ∙ 1 f =\frac{V_{i}-V_{o}}{L}\bullet \frac{V_{o}}{V_{i}}\bullet \frac{1}{f} =LVi−Vo∙ViVo∙f1
根据理论计算可以发现,电感电流的纹波和负载电流的大小没有关系,但是负载电流与平均电感电流成正比关系。
功率电感选择
根据上文的信息进一步可以计算出电感的峰值电流:
I L P = I o + △ I L 2 I_{LP} =I_{o}+\frac{\triangle I_{L}}{2} ILP=Io+2△IL
= I o + V i − V o 2 L ∙ V o V i ∙ 1 f =I_{o}+\frac{V_{i}-V_{o}}{2L}\bullet \frac{V_{o}}{V_{i}}\bullet \frac{1}{f} =Io+2LVi−Vo∙ViVo∙f1
那么在选择功率电感时,电感的饱和电流就必须要大于这个 I L P I_{LP} ILP,并且需要留有一定的裕量。实际应用时电感的纹波电流应是平均电流的 30 % 30\% 30% 至 50 % 50\% 50% 为宜,我们将这个参数称之为电流纹波率 r。根据电流纹波率范围就可以计算出电感值的范围:
△ I L = V i − V o L ∙ V o V i ∙ 1 f \triangle I_{L} =\frac{V_{i}-V_{o}}{L}\bullet \frac{V_{o}}{V_{i}}\bullet \frac{1}{f} △IL=LVi−Vo∙ViVo∙f1
L = V i − V o △ I L ∙ V o V i ∙ 1 f L =\frac{V_{i}-V_{o}}{\triangle I_{L}}\bullet \frac{V_{o}}{V_{i}}\bullet \frac{1}{f} L=△ILVi−Vo∙ViVo∙f1
= V i − V o ( 0.3 至 0.5 ) I o ∙ V o V i ∙ 1 f =\frac{V_{i}-V_{o}}{(0.3至0.5) I_{o}}\bullet \frac{V_{o}} {V_{i}}\bullet \frac{1}{f} =(0.3至0.5)IoVi−Vo∙ViVo∙f1
= ( V i − V o ) V o ( 0.3 至 0.5 ) I o V i f =\frac{(V_{i}-V_{o})V_{o}}{(0.3至0.5) I_{o} V_{i} f} =(0.3至0.5)IoVif(Vi−Vo)Vo
为何 r 为 0.3~0.5
电流纹波率即是电感电流的交流分量与其相对应的直流分量的比值,一旦 r 确定,那么输入输出滤波电容的电流、开关管的有效电流等都确定了,因此 r 的选择会影响器件选择和芯片的成本。使用公式可以表述为:
r = △ I I L = 2 × I A C I D C r=\frac{\triangle I}{I_{L}}=2\times \frac{I_{AC}}{I_{DC}} r=IL△I=2×IDCIAC
一般认为,电感体积与其能量处理能量成正比,因为要处理更高的能量就需要更大的磁芯。选择电感磁芯的能量处理能力至少要等于其需存储量,即 E = 1 2 × L × I p k 2 E=\frac{1}{2} \times L \times I_{pk}^{2} E=21×L×Ipk2,下图是 E 与 r 的的函数曲线,可以发现在 r = 0.4 r=0.4 r=0.4 附近有一个拐点。
选择的 r 如果较 0.4 低很多,则所需要的电感体积越大;而若继续增大 r,则电感的体积并不会减少多少,即当 r 超过 0.4 后,通过增加 r 来减少电感体积的效果已经不明显了。
输入纹波
电源输入功率为 P i = V i I i P_{i}=V_{i}I_{i} Pi=ViIi,负载功率为 P r = V o I o P_{r}=V_{o}I_{o} Pr=VoIo,不考虑开关损耗、导通损耗等等因素,那么输入功率和输出功率相等,可得输入平均电流为 I i = V o I o V i I_{i}=\frac{V_{o}I_{o}}{V_{i}} Ii=ViVoIo。
输入电压纹波就是输入电容上面电压的变化,这个变化可以分为两部分。一部分为电容充放电所导致的电压变化 U q U_{q} Uq,另一部分为电流流过电容 E S R ESR ESR 导致的压降 U e s r U_{esr} Uesr。即 △ V i = U q + U s e r \triangle V_{i} = U_{q} + U_{ser} △Vi=Uq+User。
∵ Q = C i U q = I i t = I i T o f f \because Q = C_{i}U_{q} = I_{i}t = I_{i}T_{off} ∵Q=CiUq=Iit=IiToff
∴ U q = I i T o f f C i \therefore U_{q} = \frac{I_{i}T_{off}}{C_{i}} ∴Uq=CiIiToff
∵ T o f f = V i − V o V i f \because T_{off} = \frac{V_{i}-V_{o} }{V_{i}f } ∵Toff=VifVi−Vo
且 I i = V o I o V i I_{i}=\frac{V_{o}I_{o}}{V_{i}} Ii=ViVoIo
∴ U q = V o I o C i V i f ∙ V i − V o V i \therefore U_{q} = \frac{V_{o}I_{o}}{C_{i}V_{i}f}\bullet \frac{V_{i}-V_{o}}{V_{i}} ∴Uq=CiVifVoIo∙ViVi−Vo
要想知道 E S R ESR ESR 所造成的纹波,只需要知道流过输入电容的电流即可。当上管断开时,电源输入电流 I i I_{i} Ii 全部流入电容 C i C_{i} Ci。电感电流原本从下管的体二极管续流,当上管导通后,变为了从上管续流。因为此前电感一直处于放电状态,所以切换的那一刻电感电流是最小的,为 I L − △ I L 2 I_{L}-\frac{\triangle I_{L}}{2} IL−2△IL。
在整个 T o n T_{on} Ton 时间内,电感都被充电,电感电流一直都在增大,直到 I L + △ I L 2 I_{L}+\frac{\triangle I_{L}}{2} IL+2△IL,并且在 T o n T_{on} Ton 时间内,电感电流都是走的上 MOS 管通路,所以上 MOS 管最大电流也是 I L + △ I L 2 I_{L}+\frac{\triangle I_{L}}{2} IL+2△IL。
根据基尔霍夫电流定律可知,输入节点的电流和为 0,那么输入电源电流 I i I_{i} Ii 和电容 C i C_{i} Ci 的放电电流就等于通过上 MOS 管的电流。所以 C i C_{i} Ci 的最大放电电流即为 I L + △ I L 2 − I i I_{L}+\frac{\triangle I_{L}}{2} - I_{i} IL+2△IL−Ii。我们约定充电为正,放电为负,则放电电流为 I i − △ I L 2 − I L I_{i} - \frac{\triangle I_{L}}{2} - I_{L} Ii−2△IL−IL。
上管截止时 E S R ESR ESR 的压降为 I i ∙ E S R I_{i} \bullet ESR Ii∙ESR,上管导通时压降为 ( I i − △ I L 2 − I L ) ∙ E S R (I_{i} - \frac{\triangle I_{L}}{2} - I_{L}) \bullet ESR (Ii−2△IL−IL)∙ESR,则可得:
U s e r = I i ∙ E S R + ( I i − △ I L 2 − I L ) ∙ E S R U_{ser} = I_{i} \bullet ESR + (I_{i} - \frac{\triangle I_{L}}{2} - I_{L}) \bullet ESR User=Ii∙ESR+(Ii−2△IL−IL)∙ESR
= ( I L + △ I L 2 ) ∙ E S R =(I_{L} + \frac{\triangle I_{L}}{2}) \bullet ESR =(IL+2△IL)∙ESR
∵ △ I L = = V i − V o L ∙ V o V i ∙ 1 f \because \triangle I_{L} ==\frac{V_{i}-V_{o}}{L}\bullet \frac{V_{o}}{V_{i}}\bullet \frac{1}{f} ∵△IL==LVi−Vo∙ViVo∙f1
且 I L = I o I_{L} = I_{o} IL=Io
∴ U s e r = ( I o + ( V i − V o ) V o 2 V i L f ) ∙ E S R \therefore U_{ser} = \left ( I_{o} + \frac{\left ( V_{i}-V_{o} \right ) V_{o}}{2V_{i}Lf} \right )\bullet ESR ∴User=(Io+2ViLf(Vi−Vo)Vo)∙ESR
综上所述可得:
△ V i = U q + U e s r \triangle V_{i} = U_{q} + U_{esr} △Vi=Uq+Uesr
= V o I o C i V i f ∙ V i − V o V i + ( I o + ( V i − V o ) V o 2 V i L f ) ∙ E S R =\frac{V_{o}I_{o}}{C_{i}V_{i}f} \bullet \frac{V_{i}-V_{o}}{V_{i}} +\left ( I_{o} + \frac{\left ( V_{i}-V_{o} \right ) V_{o}}{2V_{i}Lf} \right )\bullet ESR =CiVifVoIo∙ViVi−Vo+(Io+2ViLf(Vi−Vo)Vo)∙ESR
输入电容选择
考虑到电容的实际使用情况,陶瓷电容的 E S R ESR ESR 小,容量小,所以 U q U_{q} Uq 对纹波起决定性作用,输入纹波可近似为 U q U_{q} Uq。若选择铝电解电容,则 E S R ESR ESR 大,容量大, U e s r U_{esr} Uesr 对纹波起到决定性作用,输入纹波可以近似为 U e s r U_{esr} Uesr,假设电路设计要求输入纹波不能大于 △ V i \triangle V_{i} △Vi,则有:
陶瓷电容: C i ≥ V o I o △ V i V i f ∙ V i − V o V i C_{i} \ge \frac{V_{o}I_{o}}{\triangle V_{i}V_{i}f} \bullet \frac{V_{i}-V_{o}}{V_{i}} Ci≥△ViVifVoIo∙ViVi−Vo
铝电解电容: E S R ≤ △ V i I o + ( V i − V o ) V o 2 f L V i ESR \le \frac{\triangle V_{i}}{I_{o} + \frac{(V_{i}-V_{o})V_{o}}{2fLV_{i}} } ESR≤Io+2fLVi(Vi−Vo)Vo△Vi
输出纹波
输出纹波与输入纹波同理,亦是 △ V o = U q + U e s r \triangle V_{o} = U_{q} + U_{esr} △Vo=Uq+Uesr,我们画出负载、功率电感、输出电容三者的电流波形。其中电感的纹波电流是 △ I L \triangle I_{L} △IL,则电容的纹波电流也是 △ I L \triangle I_{L} △IL,又因为电容的平均电流为 0,所以充电电流和放电电流都是 △ I L 2 \frac{\triangle I_{L}}{2} 2△IL。
电容充放电的总电荷量 Q 等于电流乘以时间,即图中阴影三角形的面积,三角形底部时间为 T 2 \frac{T}{2} 2T,高为 △ I L 2 \frac{\triangle I_{L}}{2} 2△IL,所以总的放电量可以计算出来为 Q = 1 2 ∙ T 2 ∙ △ I L 2 Q=\frac{1}{2} \bullet \frac{T}{2} \bullet \frac{\triangle I_{L}}{2} Q=21∙2T∙2△IL
结合 Q = C o U q Q=C_{o}U_{q} Q=CoUq 可得:
U q = ( V i − V o ) V o 8 V i C o L f 2 U_{q} = \frac{\left ( V_{i}-V_{o} \right ) V_{o}}{8V_{i}C_{o}Lf^{2} } Uq=8ViCoLf2(Vi−Vo)Vo
由前面电流波形可知,电容的充电电流最大是 △ I L 2 \frac{\triangle I_{L}}{2} 2△IL,放电电流最大是 − △ I L 2 -\frac{\triangle I_{L}}{2} −2△IL,则可以得到 E S R ESR ESR 引起的总压降为:
U s e r = △ I L 2 ∙ E S R − ( − △ I L 2 ∙ E S R ) U_{ser} = \frac{\triangle I_{L}}{2} \bullet ESR - (-\frac{\triangle I_{L}}{2} \bullet ESR) User=2△IL∙ESR−(−2△IL∙ESR)
∵ △ I L = V i − V o L ∙ V o V i ∙ 1 f \because \triangle I_{L} = \frac{V_{i}-V_{o}}{L}\bullet \frac{V_{o}}{V_{i}}\bullet \frac{1}{f} ∵△IL=LVi−Vo∙ViVo∙f1
∴ ( V i − V o ) V o V i L f ∙ E S R \therefore \frac{\left ( V_{i}-V_{o} \right ) V_{o}}{V_{i}Lf} \bullet ESR ∴ViLf(Vi−Vo)Vo∙ESR
最终可得:
△ U o = U q + U e s r \bigtriangleup U_{o} = U_{q} + U_{esr} △Uo=Uq+Uesr
= ( V i − V o ) V o 8 V i C o L f 2 + ( V i − V o ) V o V i L f ∙ E S R =\frac{\left ( V_{i}-V_{o} \right ) V_{o}}{8V_{i}C_{o}Lf^{2} } + \frac{\left ( V_{i}-V_{o} \right ) V_{o}}{V_{i}Lf} \bullet ESR =8ViCoLf2(Vi−Vo)Vo+ViLf(Vi−Vo)Vo∙ESR
= ( V i − V o ) V o V i L f ∙ ( E S R + 1 8 f C o ) =\frac{\left ( V_{i}-V_{o} \right ) V_{o}}{V_{i}Lf}\bullet \left ( ESR + \frac{1}{8fC_{o}} \right ) =ViLf(Vi−Vo)Vo∙(ESR+8fCo1)
输出电容选择
与输入电容选择的方式一致,考虑是容值还是 E S R ESR ESR 占主导地位,假设要求输出纹波要小于 △ V o \triangle V_{o} △Vo,则有:
陶瓷电容: C o ≥ ( V i − V o ) V o 8 V i △ V o L f 2 C_{o} \ge \frac{\left ( V_{i}-V_{o} \right ) V_{o}}{8V_{i}\triangle V_{o}Lf^{2} } Co≥8Vi△VoLf2(Vi−Vo)Vo
铝电解电容: E S R ≤ △ V o V i L f ( V i − V o ) V o ESR \le \frac{\triangle V_{o}V_{i}Lf}{\left ( V_{i}-V_{o} \right ) V_{o}} ESR≤(Vi−Vo)Vo△VoViLf
电感续流模式
电感电流曲线不能断续(无突降),因为电流断续会引起实际不可能发生的能量断续现象。但是电流的变化率可以突变,比如从上升斜率(电感储能增加)变为下降斜率(电感储能释放),尽管这样电感电流也必须连续。根据稳定状态下每个周期电流是否回到零,划分为不同的导通模式,并且通过减小负载电流,可以使电路从 CCM 经过 BCM 最终转变为 DCM。
CCM(连续导通模式)
稳定状态下每个周期,电流都回到某一非零值,称之为连续导通模式(CCM:Continuous Conduction Mode)。CCM 是功率变换中最常见的工作模式,有输出纹波小但功耗高的特点。
DCM(断续导通模式)
若稳定状态下每个周期中电流都会回到零,那么就称之为断续导通模式(DCM:Discontinuous Conduction Mode),DCM 由于其电感电流的不连续,计算平均电感电流就需要更加详细复杂的公式,这也是 DCM 方程看上去复杂的根本原因。
BCM(临界导通模式)
BCM 是临界导通模式(Boundary Conduction Mode),由控制器监控电感电流,一旦检测到电流等于 0,功率开关立即闭合,控制器总是等电感电流「复位」来激活开关。即 BCM 处于 CCM 和 DCM 之间,可以将其视为 CCM 和 DCM 的极端情况,所以 BCM 模式下可以自由的选择 CCM 或 BCM 方程。
FCCM(强制连续导通模式)
强制连续导通模式只存在于同步 BUCK 中,由于使用 MOS 管将非同步拓扑的二极管取代,MOS 管的导通压降远低于二极管压降,除了显著减小了续流通路的导通损耗外,也允许电感电流反向,即从负载瞬时流出电流。
DC-DC 功能框图
前文所构建的 BUCK 电路只能是纸上谈兵,还需要解决诸多问题才能应用于实际电路。
基础驱动与控制
首先需要解决的问题就是 MOS 管不可能平白无故就打开,所以我们需要添加 MOS 管驱动器。
理想情况是上管关闭,下管立刻打开,中间没有任何时间差,但是 MOS 管并非理想开关,从关断到导通存在一个过渡的过程,若同时导通则电源通过上下 MOS 管直接对地短路,很容易就会导致 MOS 损坏,甚至可能会把前一级电源也损坏,所以上下管同时导通的状态必须得避免。
为了避免上下管直通的情况,实际应用会故意让上管和下管切换时多等一会儿,宁愿出现同时关断的情况,也不能出现同时导通的状态,这个等待的过程就叫做死区时间。
需要注意的是,在死区时间内虽然下管没有被导通,但是功率 MOS 管本身存在一个寄生二极管,这个寄生二极管可以像非同步 BUCK 那样帮助电感续流,而且这个时间非常的短暂,所以产生的功耗没有那么大,因此不必担心系统会出问题。
到目前为止,不知道您有没有发现我们都在自嗨,系统中并没有用来控制上下 MOS 导通和关断的信号。因此需要增加一个振荡器用来产生控制信号,注意我们在前文中使用的是占空比一词,也就是说我们要使用的是 PWM(脉冲宽度调制)。当然你也可以使用 PFM(脉冲频率调制),本文只介绍 PWM 方式。
PWM(脉冲宽度调制)
PWM 的全称是脉冲宽度调制(Pulse-width modulation),是通过将有效的电信号分散成离散形式,从而来降低电信号所传递的平均功率的一种方式。其基本实现原理是通过锯齿波/三角波(载波)与所需要合成的波形(调制波)进行比较,然后确定 PWM 所需要输出的极性。因为一般都是用到开关器件上,通常是 ON 或者 OFF,具体如下图所示。
将振荡器输出的锯齿波和参考值 V t h V_{th} Vth 进行比较,就可以输出 PWM 波形了。话不多说,上图就明白了。
上图中的锯齿波(橙色)最大为 10,但是我们希望输出平均为 5 的波形(图中紫色的水平线),那么通过比较器进行比较,当锯齿波小于 5 时,PWM 即输出低电平 OFF,当锯齿波大于 5 时,PWM 即输出高电平 ON,此时的占空比即为 50%。
若是想输出一个电压逐渐抬高的波形,即占空比逐渐增大,那只需要将调制的波形设置为斜坡输出即可达到效果。比如下图中可以看到,占空比从 0% 逐渐增大到 100%。
同样的道理,我们可以通过改变调制波形,进一步调制出来其它的波形,比如要调制一个正弦波(sin wave),也就是我们常说的 SPWM,那么就是下面的样子。
负反馈环路
有了调制信号,开关管也可以正常打开与关闭,看起来可以应用到实际电路中了,但是别忘了负载的电阻并不是恒定的,负载的变化必然会引起输出电压的波动。为了减小输出电压的波动,我们可以在输出端添加分压电阻,与误差放大器和基准电压一起构成负反馈回路,这种通过取样输出电压进行闭环反馈的方式称之为电压模式控制。
误差放大器的输入端分别为带隙基准源输出电压采样,当输出电压减小/增大时,与基准电压的细微差异都会被误差放大器放大,今儿调节脉冲宽度来达到调节调整输出电压的目的。图中 R2 接地,所以可以很容易计算出输出电压与分压电阻的关系: V o u t = V r e f ( R 1 + R 2 ) R 2 V_{out} = \frac{V_{ref}(R_{1}+R_{2})}{R_{2}} Vout=R2Vref(R1+R2)。
除了输出电压可以用作控制取样信号,还有输入电压、输出电流、输出电感电压、开关器件峰值电流可以作为控制取样信号。使用这些信号可以构成单环、双环或多环反馈系统,进而实现稳压、稳流以及恒定功率的目的,也可以实现过流、过压、均流等功能。
现在回过头来评判一下电压模式控制的优缺点。单一的反馈电压闭环设计使得调试更加容易、对输出负载的变化有比较好的响应调节、占空比的调节也不会受到什么限制等等都是它的优点,但是其缺点也很明显。由于主电路有较大的输出电容和电感的相移延时作用,输出电压的变小/变大也延时滞后,再经过误差放大器的延时,使得瞬态响应变得更慢。由于电压控制模式不采样电流,逐周期限流保护功能必须另外增加电路来实现。
峰值电流模式控制在电压模式控制的基础上又增加了电流环,所以峰值电流模式控制是一个双环反馈系统。误差电压信号与一个变化的,其峰值代表输出电感电流峰值的三角波形进行比较,然后得到 PWM 脉冲的关断时刻。所以峰值电流模式控制不是使用电压误差信息直接控制 PWM 脉冲宽度,而是直接控制峰值输出侧的电感电流大小,进而间接的控制 PWM 脉冲宽度。
峰值电流在逻辑上与平均电感电流大小变化一致,但是峰值电感电流的大小并不能与平均电感电流的大小一一对应。在占空比不同的情况下,相同的峰值电感电流大小可以对应不同的平均电感电流大小,但平均电感电流大小才是唯一决定输出电压大小的因素。
为了解决不同占空比对平均电感电流大小的扰动作用,使得所控制的峰值电感电流最后收敛于平均电感电流,需要将电感电流下斜坡斜率的至少一半以上斜率加在实际检测电流的上斜坡上,这一点可以从数学上进行证明(具体咋证明暂不讨论)。
总结一下峰值电流模式控制 PWM 是双闭环控制系统,电压外环控制电流内环。电流内环是瞬时快速按照逐个脉冲工作的。功率级石油电流内环控制的电流源,而电压外环再控制次功率级电流源。电流内环只负责输出电感的动态变化,电压外环仅需控制输出电容,所以峰值电流模式控制 PWM 具有比电压模式控制大得多的带宽。
为了防止在应用过程中可能出现的短路等异常场景,DC-DC 少不了过温保护、过流保护、过压保护等保护手段。再设定一定的辅助功能,比如 PG 状态显示、缓启动、欠压保护等即可搭建完整的 DC-DC 电路。
异常模式
参考上文中的电路图,我们把绿色部分称之为控制电路,灰色部分是功率电路,功率电路中最核心的就是上下两个 MOS 管,下文我们讨论不同的异常场景中,控制电路、上管、下管三部分应该处于什么状态,其中控制电路关闭相当于整个芯片重启。
过压保护
当输出电压偏高并且达到了过压保护的阈值。过压状态需要控制电路去调整把输出电压降下来,所以不需要重启整个芯片。可以想到输出端已经处于过压状态了,上管如果打开那会加重过压的程度,因此上管需要关闭。若下管打开,则电感、负载、下管形成回路,即电感有续流回路,会把过压状态维持的时间更长,因此下管也需要关闭。综上有:过压保护:关上管、关下管。
过温保护
温度过高的情况无非两种,一种是流过芯片的电流太大,即功率太大导致芯片自身发热达到了过温保护的阈值,此时重启芯片肯定可以解决。另外切断电流回路也是可以解决的,即关闭上管。过温的第二种情况是由于环境温度过高而导致芯片温度过高,此时最好还是重启整个芯片吧。综上有:过温保护:重启芯片。
过流保护
过流保护还需要区分是正向过流还是负向过流,因为工作在 FCCM 模式的 DC-DC 在轻载或空载时,可能会有负向过流的情况。存在负向过流的另一原因也是因为同步 BUCK 没有像非同步 BUCK 那样的整流二极管,所以当存在负向过流情况时,直接模拟非同步 BUCK 中的二极管即可。综上有:负向过流保护:关下管。
若发生正向过流时如何进行保护呢?首先考虑到电流经上管到负载,既然已经过流了那么肯定需要关上管。为了使电流减小的更快,那么就需要将电流流向地,所以需要将下管打开以构成回路。综上有:正向过流保护:关上管、开下管。
异常排查
不管系统设计的多好,在实际应用中都可能会或多或少出现问题,比如电感选用不合适、触发 min-on time、触发 min-off time、输出电容 ESR 过大等,下面我们逐一进行讨论。
min-on time
虽然 MOS 管打开速度很快,但是打开始终是一个过程,要完成一个过程就必须需要一定的时间,当高频且压差大的情况下很容易触发完成「打开」这个过程的最小时间。也就是说占空比已经是实际最小了,占空比无法再降低了,所以查看输出电压纹波可能会出现下面的波形。
出现该波形的原因在于,占空比已经无法继续降低,所以电压整体处于逐渐抬高的趋势,当抬高到一定程度时即触发过压保护,上下管都关断,所以电压快速下降。
min-off time
与 min-on time 相对应的是 min-off time,当开关频率足够高且输入和输出电压接近时即容易出现此问题,此时即达到系统所能达到的最大占空比也无法满足负载所需要的电压,表现为输出电压无法达到设定值,负反馈分压电阻电压也低于电压基准值。
电感饱和电流过小
电感电流正常是一个三角波,但是如果电感饱和电流过小,则会电感电流将会变成下图很苗条的样子。因为电感电流饱和所以电流不再线性增加,电流快速增大导致磁通率减小,会导致磁性损耗增大、芯片热耗增大,而且这是一个正反馈过程,整个系统的可靠性会大大降低。
输出电容选用不合适
当输出电容选用过小时,会导致动态响应输出出现抖动。若输出电容的等效串联电阻(ESR)过大,也会导致输出纹波异常增大,这一点从前文的理论计算即可验证。因此在实际使用过程中需要同时考虑电容容值和所选电容的 ESR。