ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

BUCK-BOOST电路详解:从拓扑原理到环路补偿与工程实战

BUCK-BOOST电路详解:从拓扑原理到环路补偿与工程实战 BUCK-BOOST电路是我这些年做电源设计时绕不开的一个拓扑。做电池供电的产品、多路输出系统或者输入电压波动很大的场合十有八九要跟它打交道。很多刚入门的朋友一看到BUCK-BOOST就头疼觉得它又是电感又是开关管输出电压还和输入反着来不如BUCK和BOOST好理解。可实际上只要把它的能量传递逻辑理清楚再结合几个真实的设计场景过一遍你会发现这个电路比想象中好掌握得多而且它解决的是很多系统里真正棘手的问题。这篇文章我打算从最基本的拓朴结构讲起然后深入到控制策略、器件选型、参数计算再结合我实际调板子的经验把BUCK-BOOST的坑和技巧一次讲透尤其是近几年很火的四开关BUCK-BOOST拓扑我也会单独拿出来对比分析。不管你是学生、刚入行的助理工程师还是想系统梳理电源知识的硬件工程师这篇文章都能给你一个比较完整的参考。1. BUCK-BOOST电路的基本结构与工作原理1.1 拓扑由来BUCK和BOOST的“合体”思路要理解BUCK-BOOST最好先把它放回BUCK和BOOST的坐标系里看。BUCK电路负责降压输入高、输出低占空比D小于1BOOST电路负责升压输入低、输出高占空比D也小于1只不过输出表达式是Vout Vin / (1-D)。这两种拓扑都只能单向调节输出电压一旦输入电压在期望输出电压附近来回波动它们就都束手无策了。BUCK-BOOST的经典拓扑本质上是把BUCK和BOOST的能量传输路径融合到一个电感上通过开关管的通断时序让电感既承担降压的功能、又承担升压的功能。它的基本结构是输入电源Vin开关管Q1高端或串联管二极管D1或同步整流管Q2电感L输出电容Cout。输出电压Vout与输入Vin极性相反这是经典反极性BUCK-BOOST拓扑最显著的特点也是很多人第一次接触它时最容易忽略的坑。占空比公式是电路设计的核心它在连续导通模式CCM下满足D Vout / (Vout Vin)从公式能直观看出当Vout Vin时D 0.5当Vin Vout时D 0.5电路工作在升压状态当Vin Vout时D 0.5电路工作在降压状态。这个特性意味着同一个电路不需要切换拓扑只靠调节占空比就能跨在输入电压两侧稳定输出这是它最大的价值。1.2 两种工作模式CCM与DCM的本质区别BUCK-BOOST电路的工作模式按电感电流是否连续分为CCM连续导通模式和DCM断续导通模式两者的能量传输逻辑差别很大。在CCM模式下电感中始终存在电流开关管导通时输入给电感储能开关管关断时电感给输出供电电感在整个开关周期内都没有出现电流归零的时刻。CCM的传递函数是理想化的线性关系输出电压只与占空比相关不受负载电流影响适合对电压精度要求高的场合但它的右半平面零点问题也是升压类拓扑的通病后面我会单独讲。在DCM模式下开关管关断一段时间后电感电流会下降到零然后输出由电容单独供电。DCM模式下传递函数变得复杂输出电压会随负载变化而波动但它的好处在于不会出现CCM模式下续流二极管的反向恢复损耗轻载效率反而更好。实际工程中同一个BUCK-BOOST电路常常会在重载时工作在CCM轻载时自动进入DCM芯片内部会通过检测电感电流过零来控制模式切换这对环路补偿设计是个考验因为两种模式对应的开环增益不同补偿参数很难两全。1.3 “反压”输出为什么输出电压是负的很多新手第一次看到BUCK-BOOST原理图时最不理解的就是输出电压为什么反极性。这里我讲个容易记的类比把电感当成一个“能量中转站”开关管开通时输入电源给电感充磁电流从输入端流进电感开关管关断时电感要把储存的能量释放出去但此时输入端已经被开关管断开了电感电流不能突断它只能沿着原来的方向继续流动通过二极管给输出电容充电。关键就在这里电感中的电流方向决定了输出电容上电压的极性。既然磁化电流是从Vin流向电感那去磁电流也必须保持同一方向也就是从电感左端流出、经过负载回路再流回电感右端。而输出端的参考地是固定不动的电感右端电位被负载拉低左端电位就变成了负压。这就是为什么经典BUCK-BOOST输出的是负电压它的“地”不是系统里真正的地而是输入地输出端要另接一个独立的地平面。这个特性在实际设计中有两个重要影响第一如果负载是单电源系统需要把输出负端作为系统参考地那么输入电源的正极就得浮起来这会造成共地问题第二对噪声敏感的模拟电路负压输出的纹波与噪声指标往往比正压更难做好因为参考电位是反的。所以后来才出现了四开关BUCK-BOOST拓扑用两对开关管实现同极性输出这是后话我放到第五节详细讲。2. 控制策略与环路设计核心问题2.1 电压模式与电流模式控制的选择逻辑BUCK-BOOST的控制方式业界用得最多的还是峰值电流模式和电压模式。电压模式就是只采样输出电压跟基准比较后生成误差信号再送进PWM比较器产生占空比信号。这种模式实现简单抗噪能力强但缺点是相位裕度要靠三型补偿网络来撑而且它对输入电压变化的响应比较慢。峰值电流模式在电压环内增加了一个电流内环用电感电流的峰值与误差信号比较来确定占空比。它的好处是响应快、天然具备过流保护功能而且因为电流内环把电感变成了一个压控电流源系统的开环传递函数中被控对象从二阶变成了一阶补偿网络可以简化。但在BUCK-BOOST电路里用峰值电流模式有一个必须处理的问题上升沿的电流斜率不够陡峭时系统会出现次谐波振荡。解决方法是加斜坡补偿即在电流采样信号上叠加一个与占空比相关的斜坡信号保证占空比大于50%时电路也能稳定工作。设计斜坡补偿的参数时一般取电感电流下降沿斜率的一半也就是补偿斜率m_a ≥ 0.5 * m_2m_2是电感去磁阶段的电流下降斜率。2.2 补偿网络参数计算的一个具体算例补偿网络的参数选择我拿一个实际案例来讲。假设设计目标输入Vin 12V期望输出Vout -5V负载电流1A开关频率fsw 300kHz电感取22uH输出电容用22uF陶瓷电容。首先算占空比D Vout / (Vout Vin) 5 / (5 12) ≈ 0.294。需要注意这里用5V的绝对值计算因为输出电压虽然极性为负但公式里的Vout取的是输出-输入之间电压差的绝对值。控制环路设计的第一步是知道功率级的增益。对于BUCK-BOOST的电流模式控制控制到输出的传递函数近似可以写成Gps(s) ≈ Rload / (Rload · Cout · s 1)这个近似的含义是电流内环把功率级变成了一个单极点系统极点频率大约在 fp 1 / (2π · Rload · Cout) 1 / (2π · 5Ω · 22uF) ≈ 1.45kHz。为了让系统稳定我通常把穿越频率设定在开关频率的1/10到1/6也就是30kHz到50kHz之间。取穿越频率fc 30kHz那误差放大器在穿越频率处的增益就要达到功率级增益的倒数。功率级在30kHz处的增益大约为fp/fc 1.45k / 30k ≈ 0.048也就是-26dB所以补偿器在30kHz处需要提供约26dB的增益再考虑一点裕量取28dB。用二型补偿网络的话零点放在功率级极点附近也就是1.4kHz左右可以提高相位裕度极点放在开关频率的一半附近约150kHz用来滤除开关噪声。实际调试时我一般先把零点放在1kHz、极点放在100kHz做第一版参数上板之后看负载瞬态响应再细调电容值或电阻值微调的位置通常是用电位器替换Rz来试找到最稳的点再换固定电阻。这里必须提醒一点BUCK-BOOST属于升压型拓扑在CCM模式下存在右半平面零点它会让相位进一步滞后建模时不能沿用BUCK那一套。RHP零点频率大约是frhpz Rload · (1-D)^2 / (2π · L)代入这个例子frhpz 5 × 0.706^2 / (2π × 22uH) ≈ 18kHz。这个零点离穿越频率比较近补偿时最好把穿越频率控制在RH PZ的1/3以下否则负载瞬态很容易出振铃这是BUCK-BOOST环路调试里最隐蔽的坑之一。2.3 斜坡补偿的具体数值估算采用峰值电流模式控制时斜坡补偿强度通常用“纹波电流的检测电阻”来折算。假设检测电阻Rsense为0.1Ω满载时电感纹波电流峰峰值ΔIL为ΔIL Vin · D / (fsw · L) 12 × 0.294 / (300k × 22uH) ≈ 0.534A电流采样电阻上的纹波电压就是0.534 × 0.1 ≈ 53.4mV。补偿斜率m_a取去磁电流斜率m_2的一半m_2 Vout / L × Rsense 5 / 22uH × 0.1 ≈ 22.7V/s这里的V/s按采样电压变化率算。所以补偿斜坡斜率约为11.35V/s。芯片手册一般会给出内置斜坡补偿的斜率值选芯片时优先选那种“自适应斜坡补偿”的方案它的斜率会随占空比自动调整比固定斜率覆盖更宽的输入范围。3. 关键器件选型与参数估算3.1 电感设计饱和电流是首要红线BUCK-BOOST电路里的电感是能量存储的核心它的选型不能只看感量更重要的是饱和电流和额定电流。电感在导通期间储存能量在关断期间释放能量如果电感饱和了感量急剧下降电流会瞬间飙升轻则效率下降重则烧开关管。计算电感值时一般根据允许的纹波电流比例来定。工程上常取电感电流纹波为满载电流的20%到40%我习惯取30%。输入12V、输出5V/1A、频率300kHz时满载平均电流近似为Iavg Pout / Vin 5W / 12V ≈ 0.42A取纹波系数0.3则ΔIL约为0.3A电感量L Vin · D / (fsw · ΔIL) 12 × 0.294 / (300k × 0.3) ≈ 39.2uH实际采购时我会选标称47uH的电感同时看它的饱和电流曲线确保在峰值电流下还有足够的余量。峰值电流等于平均电流加上纹波一半Ipk Iavg ΔIL/2 ≈ 0.42 0.15 0.57A但由于BUCK-BOOST在输入电压低时输入平均电流会变大Pout/Vin所以最好留至少1.5到2倍的余量选饱和电流在1.5A以上的电感。另外一个容易忽略的是电感的DC偏置特性很多功率电感在直流偏置下感量会下降30%以上选型时要看datasheet上的“电感量vs电流”曲线不能只看空载感量。3.2 输入输出电容纹波电流额定值比容值更重要输出电容在BUCK-BOOST里的作用很关键因为输出电流是断续的续流阶段由电感供电开关管导通阶段由电容独自维持输出电压。所以输出电容的计算公式是Cout ≥ Iout · D / (fsw · ΔVout)继续用上面的参数如果允许输出纹波50mV则Cout ≥ 1 × 0.294 / (300k × 50mV) ≈ 19.6uF考虑陶瓷电容直流偏置会降容实际用22uF或2个10uF并联更稳妥。输入电容的选型常常被忽略但它对EMI影响很大。在BUCK-BOOST中输入电流同样是脉动的需要输入电容来提供高频纹波电流。选型时重点看电容的RMS纹波电流额定值陶瓷电容的容值可以做很大但纹波电流能力有限大电流场合最好用多个并联把等效ESR和ESL压低。我通常会在输入端加一个10uF的X7R陶瓷电容再并联一个100uF的电解电容来应对低频波动这样既照顾了高频特性又保证了低压波动时的能量储备。3.3 功率开关管与二极管损耗拆解非同步整流的BUCK-BOOST续流二极管承受的是输出负电压所以二极管的耐压至少要为输入电压加输出电压绝对值之和再留1.5倍裕量即Vrrm ≥ 1.5 × (Vin |Vout|)。导通损耗主要是正向压降乘以平均电流如果用肖特基二极管Vf通常在0.3V到0.5V满载1A时导通损耗就有0.3到0.5W低压大电流场合非常浪费。这时就应该用同步整流把二极管换成MOSFET靠体二极管续流一小段死区时间然后沟道导通导通损耗可以降到I^2 × Rds(on)比如Rds(on)50mΩ的管子导通损耗只有0.05W效率提升非常明显。开关管的损耗分为导通损耗、开关损耗和驱动损耗三部分。高压输入时开关损耗占大头因为Miller平台和Coss的充放电都跟电压相关低压输入时导通损耗占大头。实际选管时我一般是估算总损耗再除以目标效率反推允许值然后用热阻估算结温保证在最高环境温度下结温不超过120度降额后的安全值。3.4 效率估算的方法论效率估算网上有不少现成的计算工具但我还是建议自己列一个表格把每一类损耗拆开算一遍这样才能理解瓶颈在哪。BUCK-BOOST的主要损耗有开关管开关损耗Ps 0.5 × Vin × Iout × (tr tf) × fsw开关管导通损耗Pcond Iout_rms^2 × Rds(on) × D电感损耗铜损 磁损磁损与纹波电流峰峰值相关高频时磁损占比会明显上升二极管续流损耗非同步拿前面的例子满载5W如果总损耗是1W效率就是83%。我的经验是把效率目标分解到每个环节开关损耗压到200mW以内导通损耗压到100mW电感损耗压到150mW其他杂散损耗再算100mW加起来总损耗约0.55W理论效率能到90%左右。实际测量能有85%以上就算不错因为布线和PCB铜箔损耗经常被低估尤其在大电流路径上。4. 实际应用场景与设计实例拆解4.1 典型应用电池供电、负压系统与光伏优化器BUCK-BOOST电路最典型的应用场景有三类。第一类是电池供电系统。锂电池电压在3.0V到4.2V之间波动如果系统需要稳定的3.3V或5V输出输入电压在输出上下摆动就必须用BUCK-BOOST。这类应用里效率是王道因为电池容量有限每一毫瓦时都宝贵所以低静态功耗的芯片和DCM模式下的高效管理特别重要。第二类是负压系统。很多运放电路、音频电路、传感器偏置电路需要负电源经典的方案就是用BUCK-BOOST把正压转为负压成本低、方案成熟。这类应用尤其看重输出电压纹波和噪声指标因为模拟电路对电源噪声极其敏感。第三类是光伏或车载电源。光伏板的输出电压随光照变化很大为了能一直追踪最大功率点控制器输入端需要宽范围的电压适应能力BUCK-BOOST就成了一个自然的选择。车载场景也一样12V电池在启动瞬间会跌到6V以下在双电池系统里又可能升到16V以上BUCK-BOOST能保证后级控制器的供电不会中断。4.2 设计实例从手机电池到稳定5V/2A输出我用一个完整的例子从头到尾走一遍流程。设计目标输入为单节锂电池2.7V到4.2V典型3.7V输出5V/2A开关频率1MHz目标效率88%以上。第一步确定占空比范围。 |Vout|/(|Vout|Vin) 分别代入输入电压的最小和最大值Vin 2.7V时D 5 / (5 2.7) ≈ 0.649Vin 4.2V时D 5 / (5 4.2) ≈ 0.543占空比始终大于0.5这个应用主要以升压为主但占空比跨度比较大补偿设计要覆盖整个输入范围。第二步选电感。输出电流2A纹波系数取0.3则ΔIL约0.6A。在最低输入电压处算最大电感电流L Vin_min × D_max / (fsw × ΔIL) 2.7 × 0.649 / (1M × 0.6) ≈ 2.92uH实际选3.3uH的功率电感饱和电流至少要到3A以上DCR越小越好理想值在30mΩ以内。第三步MOSFET与同步整流管选型。输入最大4.2V输出5V电压应力不高Rds(on)可以选得比较低比如20mΩ到30mΩ但要注意栅极电荷Qg不能太大否则驱动损耗会增加。1MHz开关频率下Qg每增加10nC驱动损耗就要增加约0.4mW看起来小但积少成多。第四步输出电容。输出5V/2A允许纹波30mV则Cout ≥ 2 × 0.649 / (1M × 30mV) ≈ 43.3uF。考虑陶瓷电容降容我一般用两个22uF的1210封装X5R并联再加一个1uF的C0G高频电容来滤开关噪声这样的组合在高频纹波和瞬时负载响应上表现都比较好。第五步环路补偿。这个设计的穿越频率建议取100kHz到150kHz开关频率的1/10到1/7。因为输出电压不高RHP零点频率较低frhpz Rload × (1-D)^2 / (2πL) 2.5 × 0.351^2 / (2π × 3.3uH) ≈ 14.8kHz如果穿越频率取太高相位裕度很容易不足。所以我经验上会先把穿越频率压在20kHz以下确保稳定再慢慢往上推找到响应速度和稳定性之间的平衡点。这些参数确定之后可以再算一下整个工作范围内的效率理论值。满电时输入电压高、占空比低主要是开关损耗占主导低压时占空比高、导通时间长导通损耗更明显。环路补偿和效率提升都是迭代过程不用追求一次算到完美先搭起来再实测调优是最务实的路径。5. 四开关BUCK-BOOST现代电源的进阶方案5.1 经典拓扑的死穴与四开关结构的出现经典BUCK-BOOST的反压输出在很多场景下是致命的缺点。手机、电脑、通信设备几乎所有的电子设备都要求正压输出负压意味着要额外做电平转换或者隔离成本和复杂度都上去了。于是四开关BUCK-BOOST拓扑应运而生它用两个高边开关、两个低边开关和一个电感实现了同极性的升降压输出。四开关BUCK-BOOST的结构可以看成是BUCK和BOOST的串联输入端一对半桥输出端一对半桥电感夹在中间。它有两种工作状态当输入远大于输出时Q1和Q2组成BUCK桥臂工作Q3常开、Q4常闭电路退化成BUCK当输入远小于输出时Q3和Q4组成BOOST桥臂工作Q1常开、Q2常闭电路退化成BOOST当输入接近输出时四个管子同时做高频开关进入所谓的“四开关同时调制”模式。5.2 三种工作模态与模式切换的平滑性四开关BUCK-BOOST的难点在于模式切换。最简单的控制方式是根据输入输出电压的关系直接切换工作模式也就是BUCK模式、BOOST模式、升降压区间的四开关模式三者之间跳变。但这种硬切换在输入电压刚好落在输出附近时会产生占空比跳变输出电压会有轻微的台阶跳变对某些负载来说这可能造成打嗝或异响。更高级的做法是让BUCK模式与BOOST模式的占空比在过渡区重叠平滑过渡避免阶跃。以我调试过的TPS63020系列为例它在过渡区会让两组开关都工作但占空比不是跳变的而是随着输入电压变化连续调整因此输出电压可以平滑跨越。这种模式切换能力是衡量一颗四开关BUCK-BOOST芯片好不好用的重要指标选型时一定要看它在过渡区的交叉损耗和输出电压瞬态表现。5.3 经典BUCK-BOOST与四开关BUCK-BOOST的对比我把两种拓扑做一张对比表格方便大家直观理解对比维度经典BUCK-BOOST四开关BUCK-BOOST输出电压极性与输入相反负压与输入相同正压功率开关数量1个开关管1个二极管或2个MOSFET同步4个MOSFET控制复杂度低环路单一较高需要模式切换管理电感工作状态始终在升降压状态根据输入输出关系可退化为BUCK或BOOST电感电流纹波较大在BUCK/BOOST模式下较小过渡区略大效率中低重载时交叉损耗大高尤其在输入输出电压接近时成本低较高适用场景负压系统、中小功率电池供电、正压升降压、大功率这个对比表里最值得琢磨的是效率差异。经典BUCK-BOOST不管输入输出电压关系如何电感每个开关周期都得先储能再释放能量循环路径长四开关结构则能在纯BUCK或纯BOOST模式下退化为普通拓扑能量只走一次转换路径效率自然高出一截。在高压差大的场合这个差距能拉到5到10个百分点。6. 常见问题与调试心得6.1 上电就烧管子大多数时候是电感饱和了做BUCK-BOOST最让人沮丧的就是上电瞬间烧MOSFET而且往往找不到原因。我的经验是优先怀疑电感饱和。前面算过输入电压最低的时候电流应力最大如果电感饱和电流选小了开机瞬间浪涌电流会直接把管子击穿。建议在样机阶段用电流探头抓一下开机瞬间的电感电流波形看峰值是否在饱和电流范围内。另外要检查软启动时间。BUCK-BOOST的开机过程跟BUCK不一样输出电压要建立反压环路要重新平衡如果软启动太短误差放大器会饱和占空比直接冲到最大电流瞬间过冲。我一般把软启动时间设到1ms到3ms之间视输出电容大小而定输出电容越大软启动越要拉长。6.2 示波器测出“鬼纹波”探头接地线惹的祸调试BUCK-BOOST时很多人用示波器探头配一根长长的接地夹子去测输出纹波结果测得几十毫伏甚至上百毫伏的噪声以为是电路设计有问题其实大部分是探头测量方式不对。长接地夹会形成一个很大的环路天线把开关节点的高频噪声耦合进来你测到的根本不是真正的输出纹波。正确的做法是用接地弹簧或同轴采样法把探头尖端和接地端直接压到输出电容两端用短回路测量。如果是离线电源建议用隔离探头或者加一个小电容隔直再测避免地环路噪声混入。实测用弹簧地线和长地线夹测同一个点纹波数据可能差好几倍这不能怪电路是测量方法的问题。6.3 效率不高但找不出原因低压大电流时电感和PCB铜箔在偷电效率测试发现和设计目标差了10%又找不出哪个器件发热这种情况我遇到好几次最后都指向两个隐藏损耗源。第一个是电感的交流电阻ACR很多电感在高频下交流电阻远大于直流电阻磁芯损耗也没算准损耗其实比你想的大得多。第二个是PCB走线的寄生电阻低压大电流场景一条5cm长、1mm宽的细走线电阻可能就有几十毫欧满载时损耗不容忽视。我建议在大电流路径上用覆铜加宽加厚至少2oz关键路径能铺铜就铺铜不要在BUCK-BOOST的功率回路上用过孔转层因为过孔电阻和寄生电感在高频下非常不友好。另外用热成像仪扫一遍板子是最直接的定位方法损耗大户会在热像图上一目了然这比对着计算表格猜来猜去高效得多。6.4 负载突变导致输出振铃靠环路补偿和输出电容双重解决最后说一个很常见的现象负载从100mA突然跳到1A输出电压会先跌一截然后回弹时带一点振荡严重时甚至来回震荡几十个周期。这就是环路响应的问题。我的处理思路是先把穿越频率降下来看振荡还在不在如果降下来就好了说明是补偿过激进如果降下来还振那就要查输出电容的ESR是不是太低导致ESR零点不在预期位置上。对于BUCK-BOOST这种带RHP零点的拓扑负载瞬态响应比BUCK难调是正常的不要指望它能像BUCK一样又快又稳。必要时可以加大输出电容来减小瞬态压降或者增加dV/dt降额让响应没那么激进。做电源这行调试的乐趣就在于慢慢摸透这些器件之间的微妙平衡每次把一个振荡问题稳定下来你对电路的理解就深了一层。
返回列表