ARTICLE DETAIL

资讯详情

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

Buck-Boost电路设计实战:从正负电压转换原理到参数计算与避坑指南

Buck-Boost电路设计实战:从正负电压转换原理到参数计算与避坑指南 1. 从一个实际需求说起为什么需要正负电压搞模拟电路的朋友大概率都遇到过这个场景手头只有一路正电源比如12V或者24V但运放电路偏偏需要±15V或者音频功放前级需要±12V又或者某些传感器信号调理电路必须用双极性电源才能正常工作。这时候你怎么办再去买一个双路输出的电源成本高不说体积也上去了。用变压器中心抽头工频变压器又大又重效率还低。正负电压转换这个需求在便携设备、音频设备、工业仪表里非常普遍。传统的做法是用带中心抽头的变压器加线性稳压器比如7815和7915配对使用输出±15V。但这种方案的问题很明显体积大、效率低、只能用于有交流市电的场合。如果输入本身就是直流比如一块12V锂电池那变压器方案直接没戏。Buck-Boost电路在这里就派上用场了。它本质上是一个DC-DC变换器拓扑能够把输入正电压转换成负电压输出或者更准确地说它输出的电压极性跟输入相反。你给它12V它能给你-12V、-15V甚至-24V具体取决于你的设计参数。而且效率通常能做到85%以上体积可以做得很小非常适合嵌入式系统和便携设备。我第一次接触这个需求是做一款便携式音频解码器DAC芯片和运放都需要±5V供电但整机只给一路5V USB输入。当时试过用电荷泵反相器比如ICL7660这类芯片但输出电流太小带不动运放负载。后来改用Buck-Boost拓扑自己搭用一颗MOSFET加电感加二极管配合PWM控制器轻松输出-5V/500mA效率也不错。从那以后正负电压转换就成了我工具箱里的常规操作。这篇文章我会从Buck-Boost的基本原理讲起然后一步步带你选型、计算参数、画电路图、绕开常见的坑。不管你是刚入门的电子爱好者还是已经做过几款电源的工程师应该都能从中找到有用的东西。尤其是那些教科书上不会写的实操细节比如电感怎么选才不会啸叫、MOSFET发热怎么压下去、PCB布局哪里最容易出问题我都会结合自己的踩坑经历详细说。2. Buck-Boost电路的核心原理与拓扑选择2.1 基础Buck-Boost是怎么工作的先把这个拓扑的底层逻辑说清楚。Buck-Boost这个名字其实有点误导它不是把Buck和Boost简单串起来而是一个独立的拓扑结构。核心元件就四个一个开关管通常是MOSFET、一个电感、一个二极管、一个输出电容。输入正极接开关管漏极开关管源极接电感一端电感另一端接二极管阳极二极管阴极接输出负极——注意输出是负电压所以输出电容的正极接公共地负极才是你的负电压输出端。工作过程分两个阶段。第一阶段开关管导通电流从输入正极经过开关管、电感流向地。电感储能电流线性上升。这时候二极管反偏截止输出电容单独给负载供电。第二阶段开关管关断电感里的电流不能突变它会产生反向电动势把二极管正偏导通电流从电感经过二极管流向输出电容和负载。因为电感电流方向没变但输出端接的是二极管阴极所以输出端相对于地就是负电压。这个过程的电压转换比公式是Vout -Vin × D/(1-D)其中D是占空比。注意那个负号这就是极性反转的来源。当D0.5时|Vout|VinD0.5时|Vout|Vin相当于降压D0.5时|Vout|Vin相当于升压。所以这个拓扑既能升压也能降压非常灵活。但这里有个关键点很多人一开始会忽略Buck-Boost的输出电压是反相的这意味着你的输出电容正极必须接地负极才是输出。如果你按照常规Buck或Boost的思维去接电容会炸。我第一次搭这个电路的时候就犯过这个错误电容极性接反上电直接冒烟。所以记住一句话Buck-Boost的输出电容正极接地负极接输出。2.2 为什么选Buck-Boost而不是其他方案正负电压转换的方案其实有好几种我简单对比一下你就知道为什么Buck-Boost是性价比最高的选择。电荷泵方案比如ICL7660、MAX1044这类芯片优点是简单外围只需要两个电容不需要电感。但缺点也很明显输出电流小通常只有几十毫安而且输出纹波大效率也不高。适合给运放供电这种小电流场景但稍微大一点的负载就带不动了。反激拓扑也能做负电压输出而且可以多路输出但反激需要变压器设计复杂度高体积也大适合功率较大或者需要隔离的场合。对于几十瓦以下的非隔离应用反激有点杀鸡用牛刀。Cuk拓扑也能实现负电压输出而且输入输出电流都是连续的纹波小。但Cuk需要两个电感和一个耦合电容元件多设计难度大实际产品里用得比较少。相比之下Buck-Boost的优势就很明显了元件少一个电感、一个开关管、一个二极管、一个电容设计相对简单效率高输出电流可以做到几安培成本也低。唯一的缺点是输入输出电流都是脉动的纹波相对大一些但通过合理的电感和电容选型完全可以接受。还有一个变种叫四开关Buck-Boost用两个MOSFET代替二极管同步整流效率更高而且可以实现双向能量流动。但驱动电路复杂一些成本也高。对于一般的正负电压转换需求用二极管整流的异步Buck-Boost就足够了。2.3 关键参数的计算逻辑设计一个Buck-Boost电路核心就是确定几个参数电感值、输出电容值、开关频率、占空比范围。这些参数不是随便拍的每一个都有计算依据。先说占空比。假设输入12V输出-15V那么|Vout|/Vin 15/12 1.25。根据公式Vout -Vin × D/(1-D)代入得1.25 D/(1-D)解方程得D 1.25/2.25 ≈ 0.556。也就是说占空比大约55.6%。这个值在合理范围内既不太大也不太小。如果占空比接近0或者接近1说明你的输入输出压差太大这时候要么换拓扑要么调整输入电压。再说电感值。电感的选择取决于你允许的纹波电流大小。一般来说纹波电流取输出电流的20%到40%比较合适。假设输出电流1A取30%纹波那么ΔIL 0.3A。电感值计算公式是L Vin × D / (ΔIL × fsw)其中fsw是开关频率。假设fsw 100kHz代入得L 12 × 0.556 / (0.3 × 100000) ≈ 222μH。实际选型时取标准值220μH或者270μH都可以。输出电容的计算稍微复杂一点因为Buck-Boost的输出电流是脉动的。简化公式是Cout Iout × D / (fsw × ΔVout)其中ΔVout是你允许的输出纹波电压。假设允许100mV纹波代入得Cout 1 × 0.556 / (100000 × 0.1) ≈ 55.6μF。实际选型时留一倍余量用100μF或者220μF比较稳妥。注意电容的耐压要大于|Vout|加上一定余量比如输出-15V电容耐压至少25V。开关管的选型主要看耐压和电流。耐压方面开关管承受的最大电压是Vin |Vout|比如12V输入、-15V输出那么开关管耐压至少27V实际选40V或者60V的MOSFET比较安全。电流方面峰值电流是输出电流加上纹波电流的一半再乘以(1-D)的倒数关系具体公式是Ipeak Iout/(1-D) ΔIL/2。代入1A输出、D0.556、ΔIL0.3A得Ipeak 1/0.444 0.15 ≈ 2.4A。所以选一个额定电流4A以上的MOSFET比较合适。二极管的选型类似耐压要大于Vin |Vout|电流要大于输出电流。但二极管还有一个重要参数是反向恢复时间必须选快恢复二极管或者肖特基二极管否则开关损耗会很大效率上不去发热也严重。肖特基二极管的正向压降更低效率更高但耐压通常不超过100V。如果输出电压较高就得用快恢复二极管。3. 手把手实操从选型到电路图3.1 工具与元件准备动手之前先把东西备齐。我列一个清单以12V输入、-15V/1A输出为例。主控芯片我用的是常见的UC3843电流模式PWM控制器便宜好买驱动能力强内置误差放大器和基准电压源外围元件少。当然你也可以用TL494、SG3525这些甚至用单片机产生PWM也行但专用芯片的稳定性和保护功能更好。MOSFET选IRF540N耐压100V电流33A导通电阻44mΩTO-220封装散热好焊。二极管选MBR20100肖特基耐压100V电流20A正向压降0.7V左右。电感用220μH/3A的功率电感饱和电流要大于峰值电流2.4A留足余量。输出电容用两个220μF/25V的电解电容并联再并一个0.1μF的陶瓷电容滤高频。输入电容用470μF/25V的电解电容。反馈电阻分压网络需要计算。UC3843的基准电压是2.5V反馈引脚电压要稳定在2.5V。因为输出是负电压反馈网络要接在输出负极和地之间通过电阻分压后送到反馈引脚。具体接法后面画图时详细说。其他小元件100Ω栅极电阻、10kΩ下拉电阻、1nF和10kΩ组成的RC补偿网络、0.1Ω/2W的电流采样电阻。3.2 电路图设计与关键节点说明电路图我按功能块来画这样看起来清晰。输入部分12V输入正极接输入电容正极电容负极接地。输入正极同时接电感一端和UC3843的供电引脚通过一个启动电阻和辅助绕组但为了简化这里先用独立12V给芯片供电。功率级电感另一端接MOSFET漏极MOSFET源极接电流采样电阻一端采样电阻另一端接地。MOSFET栅极通过100Ω电阻接UC3843的6脚输出脚栅极和源极之间接10kΩ下拉电阻。电感另一端同时接二极管阳极二极管阴极接输出电容负极输出电容正极接地。输出电容负极就是-15V输出端。反馈部分从-15V输出端接一个电阻R1到反馈节点反馈节点再接一个电阻R2到地。因为输出是负电压反馈节点电压 -15V × R2/(R1R2)。要让这个电压等于2.5V需要R2/(R1R2) 2.5/15 1/6。选R110kΩR22kΩ代入得-15 × 2/(102) -2.5V。但UC3843的反馈引脚需要正电压所以实际上反馈节点要接在R1和R2之间且R1接输出负极R2接地这样反馈节点电压就是正的2.5V。这个细节很关键接错了芯片不工作。补偿网络UC3843的2脚是误差放大器输出1脚是反相输入。在1脚和2脚之间接一个RC网络典型值是1kΩ串联100nF再并联一个10kΩ。这个网络决定环路稳定性具体值需要根据实际调试微调。电流采样采样电阻上的电压送到UC3843的3脚当电压达到1V时芯片关断输出实现过流保护。采样电阻0.1Ω对应峰值电流10A远大于正常工作时的2.4A所以正常不会触发。3.3 关键波形与工作点验证电路搭好后先别急着上电带负载。用示波器看几个关键波形确认工作点正常。先看MOSFET栅极波形应该是频率100kHz、占空比约55%的方波上升沿和下降沿要陡峭不能有振铃。如果有振铃说明栅极电阻太小或者走线电感太大可以适当增大栅极电阻到22Ω试试。再看电感电流波形用电流探头或者采样电阻上的电压来观察。应该是三角波上升斜率对应导通阶段下降斜率对应关断阶段。峰值电流应该在2.4A左右如果偏差太大检查电感和频率是否匹配。最后看输出电压用万用表测-15V输出端对地的电压应该在-15V±5%以内。如果偏差大调整反馈电阻R1或R2。如果输出有低频振荡说明环路不稳定调整补偿网络。我实测下来这套参数在12V输入、-15V/1A输出时效率大约87%MOSFET温升在40℃左右不加散热片电感温升30℃。如果长时间满载运行建议给MOSFET加一个小散热片。4. 实操中踩过的坑与排查技巧4.1 上电就炸先查这几个地方第一次搭Buck-Boost最容易炸的就是输出电容。因为输出是负电压电容正极必须接地负极接输出。如果你按常规思维把电容正极接输出上电瞬间电容反向击穿直接冒烟。我当年就是这么干的炸了两个电容才反应过来。第二个容易炸的地方是MOSFET。如果反馈接错芯片以为输出不够占空比拉到最大电感电流失控MOSFET过流烧毁。所以上电前一定要用万用表仔细检查反馈网络确认反馈节点电压在2.5V左右。第三个是二极管。如果二极管方向接反电感电流没有续流路径会产生高压尖峰击穿MOSFET。检查方法是看二极管阳极是否接电感阴极是否接输出电容负极。提示第一次上电时建议用可调电源限流设置在100mA左右。如果电流异常大立刻断电检查。确认空载正常后再逐步加负载。4.2 输出纹波大、效率低怎么破输出纹波大通常有两个原因输出电容不够或者ESR太大。电解电容的ESR在低温下会显著增大导致纹波变大。解决办法是并联一个低ESR的陶瓷电容或者固态电容。我一般会在电解电容旁边并一个10μF的陶瓷电容高频纹波立刻降下来。效率低的原因比较多。如果MOSFET发热严重可能是导通电阻大或者开关损耗大。导通电阻大就换更低Rds(on)的管子开关损耗大就检查栅极驱动电阻和开关频率。频率越高开关损耗越大但电感和电容可以小一些需要权衡。我一般把频率设在100kHz到200kHz之间兼顾效率和体积。二极管的正向压降也是效率杀手。肖特基二极管压降0.5V左右如果输出电流1A那就是0.5W的损耗。换成同步整流用MOSFET代替二极管效率能提升5%以上但驱动电路复杂一些。4.3 电感啸叫与环路振荡电感啸叫通常是因为环路不稳定产生了音频范围内的振荡。用示波器看输出电压如果有几十赫兹到几赫兹的低频波动那就是环路问题。解决办法是调整补偿网络增大补偿电容或者减小补偿电阻降低环路带宽。还有一种可能是电感本身的问题。如果电感的饱和电流不够在大电流时饱和电感量急剧下降电流失控也会产生啸叫。选电感时饱和电流至少要是峰值电流的1.5倍。我吃过这个亏用了一个标称3A的电感实际峰值2.4A时已经接近饱和电感量掉了一半波形乱七八糟。后来换了5A的电感问题消失。环路振荡的排查方法先断开负载看空载时是否稳定。如果空载稳定带载振荡说明是负载瞬态响应问题需要增大输出电容或者调整补偿。如果空载也振荡那就是补偿网络参数不对重新计算。4.4 常见问题速查表现象可能原因排查方法解决方案上电炸电容输出电容极性接反检查电容正极是否接地更换电容正确连接MOSFET发热严重导通电阻大或开关损耗大测栅极波形和漏极波形换低Rds(on)管子调整栅极电阻输出纹波大输出电容ESR大或容量不足用示波器看纹波频率并联低ESR电容增大容量效率低二极管压降大或开关损耗大测各元件温升换肖特基或同步整流电感啸叫环路不稳定或电感饱和看输出电压低频波动调整补偿网络换大饱和电流电感输出电压偏差大反馈电阻精度不够测反馈节点电压换1%精度电阻重新计算带载能力差电流采样电阻太大测采样电阻电压减小采样电阻调整保护阈值5. 进阶优化与扩展思路5.1 四开关Buck-Boost的升级路径如果你对效率要求更高或者需要双向能量流动可以考虑四开关Buck-Boost。这个拓扑用两个MOSFET组成半桥代替原来的二极管和开关管实现同步整流。效率能提升到95%以上而且可以实现输入输出任意一边供电。四开关Buck-Boost的控制逻辑稍微复杂一些需要两个互补的PWM信号还要防止直通。可以用专用控制器比如LT8390或者用STM32产生PWM配合死区时间控制。我试过用STM32F103产生两路互补PWM死区时间设200ns驱动两个MOSFET效果不错。但要注意四开关Buck-Boost在输入输出电压接近时会有模式切换问题需要额外的逻辑处理。对于一般的正负电压转换异步Buck-Boost已经够用。四开关更适合需要高效率、大功率或者双向应用的场合。5.2 PCB布局的几条铁律电源电路的性能一半靠设计一半靠布局。Buck-Boost的PCB布局有几个关键点。第一功率回路要尽可能小。输入电容、MOSFET、采样电阻、电感、二极管组成的回路面积越小越好这样寄生电感小开关尖峰低。我一般把输入电容紧挨着MOSFET漏极和采样电阻放置电感紧挨着MOSFET源极。第二反馈走线要远离功率节点。反馈信号很微弱容易被开关噪声干扰。反馈电阻要靠近芯片放置走线尽量短并且用地线包围屏蔽。第三接地要单点接地。功率地和信号地分开走最后在输入电容负极处单点连接。这样可以避免功率电流在地线上产生的压降干扰反馈信号。第四散热要预留铜皮。MOSFET和电感的焊盘下面铺大面积铜皮通过过孔连接到背面增加散热面积。如果空间允许加一个小散热片效果更好。5.3 从-15V到多路输出的扩展有时候你需要多路负电压输出比如±5V、±12V、±15V同时存在。这时候可以用一个Buck-Boost产生一路负电压然后用线性稳压器或者电荷泵再分出其他电压。比如用Buck-Boost产生-15V再用7905产生-5V用7912产生-12V。但线性稳压器会降低效率如果电流不大可以接受。另一种方案是用变压器耦合的多路输出反激拓扑但那就复杂了。对于大多数应用一路Buck-Boost加线性稳压器后级是最简单可靠的方案。我在一个工业仪表项目里就是这么做的Buck-Boost产生-24V然后通过78L15和79L15产生±15V给运放通过78L05和79L05产生±5V给数字电路。总效率大约75%但成本低可靠性高批量生产没出过问题。5.4 仿真验证与实测对比动手焊板子之前我强烈建议先用Multisim或者LTspice做仿真。仿真可以快速验证参数是否合理避免炸元件。LTspice里有现成的Buck-Boost模型把参数填进去看波形和效率。但仿真和实测总有差距。仿真的电感是理想的没有寄生电阻和饱和特性仿真的MOSFET没有开关损耗和热效应仿真的PCB没有寄生电感。所以仿真通过不代表实测一定成功但仿真不通过实测肯定有问题。我一般先用仿真确定大致参数然后实测微调。实测时重点看效率和温升这两个是仿真最难准确预测的。如果实测效率比仿真低很多检查二极管反向恢复和MOSFET开关损耗。如果温升过高检查散热和导通电阻。6. 写在最后的一些个人体会正负电压转换这个需求看起来简单实际做起来坑不少。我从第一次炸电容到现在能稳定设计出效率90%以上的Buck-Boost电路中间烧过的MOSFET和二极管加起来能装一小盒。但每次踩坑都让我对拓扑的理解更深一层。如果你刚开始做这个我的建议是先用仿真软件跑通再买元件搭板子。元件不要图便宜尤其是电感和MOSFET劣质元件的参数虚标严重会让你调试到怀疑人生。示波器是必备的没有示波器就像闭着眼睛修车全靠猜。还有一点反馈网络的计算一定要仔细。Buck-Boost的输出是负电压反馈分压网络跟常规正电压输出不一样接错了芯片根本不工作。我见过好几个朋友卡在这一步以为芯片坏了其实是反馈接反了。最后分享一个小技巧调试时在输出端接一个LED指示灯串联一个1kΩ电阻从-15V输出端接到地。正常工作时LED会亮如果LED不亮或者闪烁说明输出有问题可以快速判断。这个技巧帮我省了不少调试时间。这个电路后续还可以扩展成恒流源把反馈改成电流采样就能给LED或者电池充电。也可以加一个单片机做数字控制实现输出电压可调。思路打开了Buck-Boost能做的事情很多。
返回列表