ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

深入解析Buck、Boost、Buck-Boost三种开关电源拓扑原理与实战

深入解析Buck、Boost、Buck-Boost三种开关电源拓扑原理与实战 做硬件这一行绕不开一个词叫开关电源。Buck、Boost、Buck-Boost这三种DC-DC拓扑几乎出现在我们周围的每一块电路板上——手机里的快充电路路由器里12V转5VLED灯串的恒流升压以及汽车电子里的宽压输入转换都在用它们。但很多人学这部分只停留在“背公式”阶段Buck就是VoutDVinBoost就是VoutVin/(1-D)Buck-Boost就是负电压输出。一旦自己搭电路要么效率上不去要么开关管炸了要么纹波大得离谱根本不清楚问题出在哪。这篇文章我把从推导到实测的完整思路复盘一遍适合刚入门的电子爱好者也适合正在做电源项目、想系统梳理一下DCDC原理的工程师。1. 三种拓扑的定性认知与应用场景1.1 降压、升压、升降压名字背后的物理逻辑Buck是降压输出低于输入Boost是升压输出高于输入Buck-Boost是升降压输出既可以低于也可以高于输入但极性是反的。这三个名字不是凭空起的每一个都对应着完全不同的开关结构。为了便于建立直觉我把每个拓扑都和生活中熟悉的东西挂上钩。Buck就像水管上调低出水量的限流阀开关管串联在能量通路里以非常快的频率“通-断”平均下来负载得到的能量就变小了。Boost像抽水泵开关管把能量一股一股地积累到电感里然后在瞬间把这些能量叠加到电源上打出去所以出口压强比入口高。Buck-Boost像一个可以倒转方向的阀门输出端的能量方向反了所以出现的是负电压。这听起来有点反直觉但原理上非常优美。我把每种拓扑的典型应用列在下面方便对照选型拓扑电压关系输出极性典型场景BuckVout Vin正12V转5V/3.3V一级降压给MCU供电BoostVout Vin正锂电池3.7V升压到5VLED增圧驱动反相Buck-BoostVout可高可低负音频轨、OLED屏供电、运算放大器负压四开关Buck-BoostVout可高可低正汽车电子9-36V宽压输入转5V这中间有一个很容易被忽略的点Buck-Boost常见有两种一种是反极性Buck-Boost另一种是四开关Buck-Boost后者输出的是正电压。市面上芯片如果标注“升降压”基本指的是四开关这种而不是反极性那种。选型的时候千万别把两者搞混否则原理图画到一半就得推翻重来。实际工程里最忌讳“能升降压就全用Buck-Boost”。因为带开关管的拓扑多损耗大、成本高、控制复杂。如果输入电压稳定略高于输出用Buck如果输入电压稳定略低于输出用Boost只有输入电压在输出值上下来回摇摆比如汽车电源跌落或者电池电压随电量起伏才需要用升降压。这是很多项目用血泪教训换来的经验别上来就搞复杂拓扑。1.2 为什么用电感做储能而不是电容这个问题看起来基础但真的值得掰开揉碎来讲因为它决定你能不能看得懂后面的波形和公式。线性稳压器是用电阻分压的结构消耗掉多余能量损耗等于 (Vin - Vout) × Iout效率非常低大压降场景根本没法用。开关电源不用电阻而是用电感作为中间储能元件开关管以几十到几百kHz的频率快速切换能量先以“电流”的形式存进电感再从电感里取出来送给负载。电感的核心特性是“惯性”——电流不能突变。它就像一个速度不能瞬间变的飞轮。开关管导通时电源给电感充电电感电流缓慢上升开关管关断时电感电流不能立刻变成0就顺着续流二极管继续流这时电感相当于把之前存起来的磁场能量转换成电能释放出去。整个过程看下来电感在有开关管的时候“攒劲”没有开关管的时候“泄力”能量因此被平滑地传递到输出端。如果你把电感换成纯电容做储能电压颠簸巨大不说充放电瞬间电流会非常可怕。这也是为什么开关电源的核心储能元件永远是电感电容更多是负责稳定输出电压、滤掉高频纹波。先记住这个分工后面分析每种拓扑的电压电流波形才有方向感。2. 稳态工作过程与关键公式推导2.1 Buck导通和关断两个阶段伏秒平衡决定输出电压先拆Buck的稳态工作。这里用的是最常见的工作模式CCM也就是电感电流始终大于0的连续模式。开关管导通阶段输入端通过开关管直接连到电感左边电感左边电位为Vin右边连到输出电容和负载电位近似为Vout。电感两端电压是 Vin - Vout因为Vout小于Vin所以电感电流从初始值开始线性上升。电流上升的斜率是这个电压除以电感量。开关管关断阶段电感的电流不能突变续流二极管或者同步整流的低端MOSFET开始导通电流继续从地线向负载方向流。此时电感左端电位被钳位到大约0V二极管导通压降约0.7V同步管导通压降只有几十毫伏电感两端电压变成 -Vout电感电流开始线性下降。如果这个阶段持续足够长电流降到0就进入了DCM。稳态时电感电流在一个完整周期后必须回到起点。也就是说导通阶段电感的“伏秒积”等于关断阶段电感的“伏秒积”。数学表达就是(Vin - Vout) × D × T - Vout × (1-D) × T 0解出来就是经典公式Vout D × Vin。占空比D介于0和1之间所以Buck只能降压。这里的“为什么能成立”本质是能量守恒加上电感的伏秒平衡。如果开头的Vout不符合这个关系电感电流每个周期就会净增加或者净减小最终要么饱和要么归零电路会自动调节占空比让状态稳定。你去看芯片内部误差放大器的输出会发现它一直在自动校正占空比。这里补充一个实际计算的例子验证一下公式不是空谈12V转1.8V开关频率500kHz。占空比D 1.8/12 0.15每个开关周期约2µs导通时间只有约0.3µs。芯片如果死区控制不好0.3µs内很难精确控制这也是低压大电流Buck把频率做高反而更难的原因之一。2.2 Boost电感放在输入侧决定它能升压Boost的电路结构和Buck最大的区别在于电感在主回路中是“串联”在输入端和输出端之间开关管则接地负责周期性的短路。导通阶段开关管导通电感左边直接连接Vin右边被开关管拉到地。所以电感两端电压是Vin。此时二极管截止输出电容需要单独向负载供电。电感电流从零或者某基态线性上升慢慢把磁场能量攒起来。关断阶段开关管断开电感电流不能突变此时电感像一个电流源两端会产生一个反电动势使得二极管导通。电感的左端是Vin右端通过二极管接到输出Vout电感两端电压是Vout - Vin。由于Vout大于Vin电感电流在这个阶段是下降的。同样用伏秒平衡Vin × D × T - (Vout - Vin) × (1-D) × T 0解出来Vout Vin / (1-D)。因为 1-D 小于1所以输出可以很高。当D趋近1理论输出电压趋近无穷大但实际中电感电阻、开关管压降、二极管正向压降会限制最大输出电压。Boost还有一个很特别的动态特性叫“右半平面零点”。简单理解当输出负载突然增大时Boost电路会在短时间内输出继续下跌而不是立刻回升然后才快速纠正回来。这是因为电感占空比需要增大但电感能量建立有延迟。这会严重影响环路补偿设计控制工程师在给Boost做环路时通常要把带宽压到开关频率的1/10甚至更低不像Buck那样可以拉到1/6。2.3 反相Buck-Boost极性反转的推导反相Buck-Boost的结构更神奇输出端接到原来Boost结构中的“地”而真正的负输出轨从电容负极出来。这样输出电压的参考点和输入是“脱离”的通常为负电压。导通阶段开关管导通Vin给电感充电电流方向是从电源正极经电感流向开关管此时输出电容向负载放电二极管截止。关断阶段开关管断开电感电流不能突变电流方向被迫经过二极管流到输出端。注意此时电感电流方向经过输出负载时会在输出电容上建立相反极性的电压。所以输出是负的。伏秒平衡Vin × D × T (-Vout) × (1-D) × T 0这里注意Vout为负值取绝对值后得到|Vout| Vin × D / (1-D)。加个负号就是真正的输出公式Vout -Vin × D/(1-D)从公式可以看到D0.5时 |Vout|VinD0.5时升压D0.5时降压。它既能降压也能升压代价是输出电压是负的。如果你想要正电压的升降压必须用四开关Buck-Boost。反相Buck-Boost在实战中还有一个细节因为输出是负的芯片的GND引脚通常接在负输出上而输入地是参考地。PCB布线时输入地和输出负轨之间绝不能混为一谈否则电路可能直接烧掉。很多人第一次做负压电源板就是在这上面翻了车。2.4 CCM、BCM、DCM三种模式的边界每篇教程都会提到CCM和DCM但很多人没搞懂切换的物理含义。用电感电流在导通阶段上升的斜率由输入输出电压差决定关断阶段下降的斜率由负载和输出决定。如果关断时间不够长电感电流还没降到0下一周期就开始了这就是CCM连续模式如果下降到了0断流一段时间然后再导通这叫DCM断续模式。在CCM中伏秒平衡直接让Vout D×Vin不受负载影响。而在DCM中因为存在一段电流为0的死区输出电压会随着负载电阻变化而变化调节规律不再是简简单单的占空比线性关系设计时公式复杂不少。怎么判断是否处于CCM以一个Buck为例电感电流纹波峰值是ΔI_L (Vin-Vout) × D × T / L。平均电流是负载电流。如果 ΔI_L/2 已经大于负载电流那么电感电流会触底进入DCM。轻载、大电感、低纹波时更容易进入DCM。在实践层面多数控制器芯片内部有两种处理策略一种强制保持CCM不管负载多轻都让电感电流正负交替理论上效率会变差另一种是轻载进入DCM自动降低开关频率或者跳脉冲保持比较高的效率。你必须知道自己用的芯片是哪种策略因为DCM下的环路参数跟CCM完全不一样盲用公式设计环路很容易不稳定。3. 开关器件应力、同步整流与效率优化3.1 开关管和二极管的应力对比耐压不够就炸这部分是实操中最容易忽视的。很多人仿真时电路正常一上真机就炸开关管大概率是器件应力没算清楚。表格列出三种拓扑开关管和二极管的反向电压应力拓扑开关管关断电压应力二极管反向电压应力电感位置BuckVinVin与负载串联BoostVoutVout与输入串联反相Buck-BoostVin |Vout|Vin |Vout|并联在输入输出之间从表里能看出一个关键点Buck的开关管耐压只看输入电压Boost的耐压只看输出电压而Buck-Boost最惨要同时承受输入和输出绝对值之和。选型经验开关管耐压留1.5倍以上余量二极管反向耐压也是。比如12V输入的Buck选25V或30V的MOSFET比较稳妥不要用20V的因为开关节点上的尖峰电压很容易超。Boost输出30V时选60V的MOSFET别选40V。电流应力也要注意Buck的开关管电流平均值等于负载电流Boost的开关管峰值电流等于输入平均电流除以占空比通常比负载电流大。在Boost里可以观察到有趣的“电流放大”效应输出电流小但输入电流也就是电感电流反而大这符合功率守恒。做Boost时电感电流上限必须覆盖这种放大效应不然控制器会误判过流动不动触发保护。3.2 同步整流用几毫欧的MOSFET替代二极管二极管正向压降对低压输出电路的效率影响非常大。举个例子异步Buck输出5V/2A二极管导通占空比约1-D约0.6平均损耗约为0.7V × 2A × 0.6 ≈ 0.84W。如果是输出1.8V同样2A这个损耗占比就更离谱了。同步整流用一只低导通电阻的MOSFET替代二极管。例如一个RDS(on)只有8mΩ的MOSFET导通损耗只有几十毫瓦远远低于0.84W。这也是为什么现在几乎所有大电流Buck都会用同步整流结构。但同步整流自己带了个新问题死区时间。如果高边MOSFET和低边MOSFET同时导通输入直接被短路到地电流瞬间巨大管子直接炸掉。所以控制芯片内部必须保证先关闭上管、等一小段死区、再打开下管。这段死区时间如果太长效率反而变差太短存在直通风险。高端控制器通常用自适应死区控制实时检测开关节点电压来微调死区这是同步Buck设计中最讲究的地方。还有一个轻载陷阱低边MOSFET是双向导通的在轻载时电感电流可能会反向流到地造成能量白白损耗。所以很多同步Buck芯片会在轻载时关闭低边管让它退化成“伪二极管”即用体二极管续流或者在DCM时就断开低边管。如果你测到轻载效率突然跳水优先检查这一项。3.3 电感和输出电容的工程计算真到了画原理图的阶段最常遇到的问题就是电感选多大电容选多大网上有一堆公式我直接给一套我常用的经验流程。第一步定电感纹波电流。一般取满载电流的20%-40%。纹波大电感和电感体积可以小但对输出电容的压力更大纹波电压也更大纹波小电感相对大动态响应也会慢一点。第二步计算电感量L (Vin - Vout) × Vout / (Vin × fs × ΔI_L)举真实的例子输入12V输出5V开关频率300kHz满载2A纹波电流取0.5A也就是25%的满载电流。代入计算L (12-5) × 5 / (12 × 300000 × 0.5) ≈ 19.4µH取标准值22µH。第三步算输出电容。输出纹波基本由电容ESR决定。对于电解电容近似用 ΔV_out ≈ ΔI_L × ESR。如果目标纹波是50mV需要ESR小于0.1Ω中低ESR电解电容就能做到。用陶瓷电容时容值大、ESR极低但陶瓷电容受直流偏压影响容量会打折选型时要看着dc bias曲线选不能只看标称值。第四步校核电感电流峰值有没有超过电感的饱和电流。前面算出的电感纹波半径加直流值就是峰值电感的额定饱和电流必须留15%-20%余量。不要只看DC额定电流饱和时电感会剧烈发热波形明显畸变整套电源都有风险。很多电源发热不正常的根源就在这。4. 衍生拓扑与工程落地中的关键细节4.1 四开关Buck-Boost和反相Buck-Boost怎么选前面提过反相Buck-Boost虽然能升降压但输出是负的。如果你需要正电压的宽范围升降压比如汽车电瓶9-16V输入、稳定5V输出就得用四开关Buck-Boost。这个拓扑相当于把Buck和Boost拼在一起Q1和Q2构成一个半桥Q3和Q4构成另一个半桥中间接一个电感。工作模式可以直观理解输入高于输出时Q3常关、Q4常通Q1和Q2按Buck模式开关输入低于输出时Q1常通、Q2常关Q3和Q4按Boost模式开关输入接近输出的过渡区域多个开关同时动作可能需要进入混合模式。这种芯片的控制逻辑远比单一拓扑复杂好在很多控制器内置了模式平滑切换算法工程师主要关注的是模式切换点的纹波小尖峰和潜在的环路突变。四开关Buck-Boost的器件应力比反相拓扑小输出又是正电压所以成为了宽压输入场景的主流。不过它的开关管数量多成本和占板面积都比单一拓扑高。所以选型原则依然是能用Buck坚决不用四开关别为了“高级”而给自己挖坑。4.2 反激电路隔离版的Buck-Boost反激变换器在结构上就是Buck-Boost的隔离演化版把原来的储能电感替换成耦合电感的变压器输入侧和输出侧之间用磁芯隔开。开关管导通时初级电感存储能量次级二极管截止开关管关断时磁芯中的能量通过次级绕组释放次级二极管导通输出得到能量。用伏秒平衡同样可以推出|Vout| Vin × D/(1-D) × Ns/Np变压器变比Ns/Np就是比Buck-Boost多出来的自由度可以用来调节输出电压比例。这也解释了为什么很多反激拓扑覆盖的功率段很宽从几瓦的手机充电器到上百瓦的工业电源都可能用反激。要做反激基础就是先吃透Buck-Boost。所以我一直建议新手把非隔离拓扑玩透再上隔离电源否则就是给自己增加双重迷障。4.3 实测中容易踩的五个坑我把这些年踩过的坑、以及周围同行经常被坑的点整理成一张速查表直接抄作业即可现象可能原因排查方法满载时开关管烫手开关损耗过大、驱动不足测Vgs波形看上升沿是否太缓轻载时效率突然下降同步管在轻载下双向导通换芯片内的DCM轻载模式电感噪声尖锐啸叫进入声频段的开关频率或电感饱和检查电感饱和电流是否足够输出纹波里出现毛刺环路补偿不足、PCB地环路干扰先加重电容试再优化地线布局加负载后输出电压掉电感饱和电流不足、过流保护误触发用电流探头看电感电流波形第一个坑值得展开聊聊如果你测Vgs发现波形上升沿很慢MOSFET工作在线性区的时间过长交叉损耗巨大管子能不烫吗解决办法减小驱动电阻、选Qg更小的管子、或者用带更强驱动能力的控制器。同时示波器探头寄生电容也会拖慢波形测量时要尽量缩短探头回路。再补充一个PCB布线的经验开关电源的“热回路”承载大电流跳变的铜皮要短而粗。特别要处理好开关节点和输入电容之间的环路面积这个面积越小EMI越小。很多新手把输出电容放得离负载很远换来的是纹波大、动态响应差。输入、输出电容都应该靠近开关管电感也要靠近主功率节点。4.4 完整案例12V转5V同步Buck电路参数选定为方便直接“抄作业”我完整演示一遍最近做的一个12V转5V、2A同步Buck电源的参数选定过程。第一步定规格输入9-16V输出稳定5V满载2A开关频率300kHz目标是效率大于90%。第二步算占空比和电流。标称输入12V时占空比 D 5/12≈0.417。输入9V时D5/9≈0.56。所以要选择最小导通时间能满足0.56这个值同时要在9V输入时电感电流斜率最大最难满足饱和电流。第三步根据前面的公式选择电感。纹波电流目标0.5A带入公式算到19.4µH选22µH饱和电流4.5A的电感留足余量。第四步选开关管。输入最大16V耐压选30V的MOSFET绰绰有余开关频率300kHz选Qg在10nC左右的管子驱动损耗不会太大。第五步输出电容。目标纹波30mV需要ESR低于0.06Ω。我用两颗22µF陶瓷电容并联再来一颗100µF电解电容压阵保证动态响应。第六步环路设置。按数据手册的参考电路搭了误差放大器补偿把穿越频率压在开关频率1/10左右相位裕量调到60°附近。实测时用电子负载从0.2A步进到2A输出过冲只有80mV纹波在35mV左右满载效率92.3%。这个案例能给出一个直观的预期而不是纸上谈兵。4.5 仿真验证从理想开关到实际器件的落差最后说一下仿真环节。很多人喜欢用LTspice仿真Buck/Boost但仿真和实测之间常有落差原因在于模型取舍。初学者仿真时习惯用理想开关、理想二极管、无寄生电容的理想电感结果波形非常干净。但真实器件有导通电阻、寄生电容、封装电感、反向恢复电荷这些都会叠加到开关节点上产生振铃。我第一次仿同步Buck仿真做出来效率97%实机一测只有90%当时一度怀疑是仪器坏了。后来逐个排查发现驱动自举电容选太小、死区太长、高边管开通瞬间振铃确实严重。我建议仿真时至少把开关管的Qg、Coss、RDS(on)和电感的DCR填进去再把PCB走线带来的几nH寄生电感加进去仿真结果才会接近真实情况。真机调的时候第一件事永远是抓开关节点波形看有没有过压尖峰、振荡频率和幅值合不合理。最后分享一点我个人习惯学开关电源不要只背公式要把公式和波形对应起来。我经常说“手撕Buck”不是真的要徒手撕电路板而是拿一张纸把导通和关断两个状态画出来标出每个节点的电位和电流方向一步步写出伏秒平衡。只要你把Buck、Boost、Buck-Boost这三种基础都走一遍再看四开关、反激、隔离推挽都是水到渠成的事。碰到拿不准的拓扑就拿示波器抓波形看电感电流是连续还是断续看开关节点是不是正常答案往往就在波形里。
返回列表