做电源设计这些年Boost升压电路是我接触最多的拓扑之一。每次有新人问我“Boost电感怎么选”我第一反应都是反问一句你先想清楚要让电路工作在CCM还是DCM了吗这个问题定不下来后面算出来的电感参数基本都是自欺欺人。很多人一上来就套公式算电感量、看饱和电流结果板子打样回来轻载啸叫、重载发热、纹波超标问题一堆根子往往就出在“模式”这个前置条件上。如果你搜“Boost”的时候翻出来一堆C库的安装教程别奇怪那个Boost和咱们要聊的升压电路是两个世界。这篇文章只谈硬件电源——Boost升压电路的工作模式以及电感参数设计绕不开的5个关键点。我会从CCM和DCM的根本区别讲起再做完整的参数演算最后把实测中踩过的坑和排查思路一并整理出来。无论你是刚接触电源的硬件工程师还是做嵌入式想自己搭一级升压供电这篇都可以作为你手边的参考笔记。1. Boost电路为什么绕不开CCM和DCM1.1 先看Boost怎么把电压“抬”上去Boost升压电路的结构很简单一个电感、一个开关管、一个二极管、一个输出电容。输入电压从电感左边进来开关管导通时电感储能电流从输入源流过电感再回到地开关管关断时电感里的电流不能突变会继续往输出端推通过二极管给输出电容和负载供电。因为关断期间电感电压和输入电压是串联叠加的关系输出端得到的电压就会比输入高这就是“升压”这个动作的本质。核心规律是稳态下电感两端的伏秒平衡也就是导通期间电感电压乘以导通时间等于关断期间电感电压乘以关断时间。忽略二极管压降粗略写就是Vin x D (Vout - Vin) x (1 - D)整理一下得到CCM模式下最经典的占空比公式D 1 - Vin / Vout如果考虑二极管导通压降Vd更准确的形式是D 1 - Vin / (Vout Vd)这个推导过程建议大家自己动手推一遍不要只背结论。因为你真正设计的时候输入电压是一个范围Vin变了D就变所有电感电流参数都要跟着变只背一个固定值很容易翻车。1.2 CCM、DCM、BCM的本质电感电流断没断Boost工作模式的区别说穿了就是看一个开关周期内电感电流有没有降到零。CCMContinuous Conduction Mode连续导通模式整个开关周期内电感电流始终大于零开关管开通和关断时电感里都还有电流。DCMDiscontinuous Conduction Mode断续导通模式开关管关断一段时间后电感电流降到零并且在零电流状态停留一段时间等到下一个周期才重新上升。BCMBoundary Conduction Mode临界导通模式电感电流刚好在开关周期结束时降到零是CCM和DCM的分界线。用示波器电流探头看电感电流波形一眼就能分辨CCM的波形是三角波带一个直流偏置底部没有平着贴在零线上的阶段DCM的波形是一段三角波加一段平线平线那段就是电流为零的死区BCM则是三角波尖尖刚好落在零上没有平线但也看不到明显的直流偏置。这里有个很关键的概念Boost电路不是固定工作在某种模式的负载轻了、电感选小了、开关频率低了都可能从CCM掉进DCM。所以“我这是CCM设计”这句话其实应该改成“我在某个负载范围内把它设计成CCM”。1.3 模式边界临界电感和临界电流什么样的条件会进入临界状态回到电感电流的纹波峰峰值delta_I Vin x D / (L x fsw)在BCM临界点电感电流的平均值正好等于纹波峰峰值的一半。而Boost的电感平均电流和输出电流的关系是I_L_avg I_o / (1 - D)所以临界电感的计算公式为L_crit Vin x D x (1 - D) / (2 x fsw x I_o)这个公式非常有用它告诉你三件事电感量小于L_crit电路在对应负载下就会进入DCM。输出电流I_o越小L_crit越大所以轻载时更容易掉进DCM。输入电压越低D越大但(1-D)也小综合看临界电感随输入电压变化不是单调的设计时要按整个输入范围扫一遍取最大值。我在设计时习惯用Vin_min到Vin_max各算一次临界电感取最大的那个作为保证CCM的底线。2. CCM/DCM怎么选别只看名字要看负载2.1 两种模式的实际表现差异很多初学者以为CCM和DCM只是电流波形长得不一样实际用起来这两种模式在效率、纹波、环路动态上的表现差得非常多我用一张表把这几个维度的对比列出来对比维度CCMDCM电感电流纹波相对小因为电感量通常较大相对大峰值电流高输出纹波较低纹波频率等于开关频率较高且纹波叠加了DCM的间歇特征峰值电流较低对电感和开关管应力小较高要选更高饱和电流的电感二极管反向恢复严重存在反向恢复损耗几乎可以忽略轻载效率开关损耗、驱动损耗占比高效率偏低电流从零开始开关损耗小轻载效率高环路特性存在右半平面零点RHPZ补偿有挑战RHPZ影响相对弱但控制模型随负载变化明显噪音/啸叫正常工作时不易产生音频噪声轻载容易进入BCM出现音频频段抖动很多资料说“CCM适合重载DCM适合轻载”这个结论方向是对的但它背后的原因值得展开说。CCM下电感电流始终不为零所以峰值电流相对低对功率器件应力小输出纹波也没有DCM那么尖锐。但是二极管在CCM下有明显的反向恢复问题开关管开通瞬间二极管从导通切换到截止反向恢复电流会在管子上造成额外损耗和振铃。这也是为什么Boost电路通常搭配肖特基二极管就是为了把反向恢复的影响压下去。DCM的好处正好互补开关管开通时电感电流从零开始爬升没有二极管反向恢复的硬切换问题轻载时开关损耗明显占劣势的阶段被淡化所以轻载效率反而高。但代价是峰值电流高输出纹波也明显变大EMI更容易出问题。2.2 按负载范围和效率目标选模式模式选择没有绝对的对错核心逻辑是先摸底你的负载范围是多少再决定要保哪一段。如果你的应用是固定重载比如电机驱动、大功率LED照明负载电流基本不会掉到很低的水平那就放心大胆按CCM设计电感选大一点保证全负载范围电流连续环路性能也稳定效率在重载区做到最高。如果你的应用是电池供电的传感器、遥控器这类设备大部分时间处于轻载待机状态偶尔才满负荷工作几秒钟那更合理的策略是允许它轻载进入DCM。这样待机电流低、电池续航长。此时电感可以适当取小一点让轻载自然掉落进DCM这就是很多电源芯片内部“轻载打嗝模式”或者“脉冲跳跃模式”的由来。如果负载范围很宽从几十毫安到几安培都有那就要考虑用支持模式自动切换的控制器。这类方案会在重载时保持CCM轻载时自动切到DCM或打嗝模式。需要特别注意切换点附近的稳定性因为CCM和DCM的控制模型不同切换时如果补偿参数不合适输出会出现明显的电压跌落或振荡。我个人的设计建议是如果有一个比较明确的“最常用负载点”就优先优化这个负载点的效率不要把全负载范围的效率平均作为唯一目标。2.3 现实中的模式切换与环路补偿真正做产品的时候电路通常不会老实待在一种模式里。比如一个12V升24V的电路带满载1A时可能是CCM但负载降到100mA时电感储能不够维持整个周期的连续导通就会自动掉进DCM。这就带来一个实际问题DCM下输出电压增益不再只由占空比决定还和负载、电感量、开关频率有关。DCM下Boost的电压增益公式复杂一些可以写成M 2 / (1 sqrt(1 4 x K / D^2))其中K 2 x L / (R x T)R是等效负载电阻T是开关周期。可以看出DCM下同样的占空比轻载时输出电压会比CCM公式预测的值更高这也是为什么Boost电路空载或极轻载时输出电压容易往上飘。环路补偿上CCM的Boost有一个很著名的右半平面零点频率大概是f_RHPZ (1 - D)^2 x R / (2 x pi x L)这个零点会让相位滞后的幅度非常大补偿不当就振荡。DCM下这个零点频率大幅升高环路相对好补。所以有些资料会说“DCM的环路更稳定”但不要忘了DCM下控制对象随负载变化快也要留足相位裕量。我的建议是设计初期就明确目标模式下环路穿越频率和相位裕量不要等板子出来了再调因为模式和补偿是强耦合的两个参数牵一发动全身。3. 电感参数设计的5个关键点3.1 关键点1先定工作模式再反推电感量这是整篇文章最想强调的一件事电感量不是拍脑袋定的它应该是工作模式的“果”而不是“因”。具体操作上先确定你要它在什么负载区间保持CCM什么区间允许DCM。然后用临界电感公式把所有工作条件下的L_crit都算一遍找到最大值再用这个最大值乘以一个安全系数得到你想要的CCM下限电感。举例来说如果算出来最恶劣条件下L_crit 4μH那么为了保证有余量你可能取10μH甚至22μH。如果你本来就想做轻载DCM优化那电感量就不用按“全范围CCM”来卡可以适当降下来。关键是这个选择的依据必须是明确的负载需求而不是“这个值看起来比较顺眼”。3.2 关键点2纹波率r取多少决定电感体积纹波率r是电感电流纹波峰峰值和平均电流的比值也就是r delta_I / I_L_avgr越大同样的平均电流下峰值电流越高对器件应力和输出纹波越不友好r越小电感量要越大电感体积和成本跟着涨。工程上常用的r取值范围是0.3到0.4兼顾了电感体积、峰值电流和纹波。把r代进电感计算公式可以得到L Vin x D x (1 - D) / (r x fsw x I_o)注意这个公式里I_o是输出电流不是电感平均电流。把输出电流放在公式里是因为Boost的输入输出功率关系决定了电感平均电流和输出电流成比例用I_o计算更加直观。我在实际调试中见过不少人为了让纹波好看把r压到0.2以下结果电感体积大了好几圈成本也上去了。实际上只要输出电容选得合理r0.3到0.4带来的纹波完全可以通过电容压住没必要在纹波率上过度设计。3.3 关键点3饱和电流必须按峰值电流留余量这个坑几乎每个电源新手都踩过。电感的饱和电流规格必须大于电路实际流过它的峰值电流这个峰值电流是平均电流加上二分之一纹波电流而不是规格书里那个输出电流。Boost电路里电感平均电流本来就比输出电流大因为输入电流等于输出功率除以输入电压而电感电流又是在输入侧。在低输入电压、高输出功率的时候峰值电流会相当可观。峰值电流计算公式I_peak I_o / (1 - D) Vin x D / (2 x L x fsw)算出来之后建议至少留20%到30%的余量。比如计算峰值是5A那就选至少6.5A饱和电流的电感。还要注意电感的饱和电流是会随温度下降的高温下饱和电流可能掉20%以上如果产品工作环境有高温这个余量还要再往上加。如果电感饱和了电感量会急剧下降电流失去限制开关管和二极管很容易直接炸掉。我在实验室见过太多因为电感饱和烧MOS管的案例元件炸得连型号都看不清。3.4 关键点4DCR和磁芯损耗决定了温升很多人在意电感量、饱和电流却忽视了电感的损耗。电感的损耗分两部分绕组铜损DCR决定和磁芯损耗磁芯材料、频率、纹波共同决定。铜损按P I_rms^2 x DCR计算。Boost电路的电感电流是三角波RMS值一般近似等于平均电流加一点纹波的修正。DCR高的电感在中等负载下就会明显发热。我做过一个对比测试同一规格22μH电感DCR从80mΩ降到35mΩ满载温升能差十几度。磁芯损耗在频率高、纹波电流大的时候特别突出。铁氧体磁芯高频损耗低但容易饱和铁硅铝磁芯饱和特性软DC偏置下不易瞬间崩溃但高频损耗相对大。具体选哪种磁芯要综合看你的开关频率和纹波幅度。选型时不要只看电感量要综合看饱和电流、DCR、磁芯材料、体积、价格。有条件的话拿样品上板实测温升这是最可靠的办法。3.5 关键点5开关频率是全局变量提前定死开关频率fsw是所有电感计算里的一个分母它直接决定了电感量、纹波率、输出电容、驱动损耗、EMI特征。设计顺序上一定要先把开关频率定下来再去算电感。开关频率选多少合理太低的话比如低于25kHz就有音频噪声风险电感体积也偏大太高的话开关损耗、驱动损耗、磁芯损耗都会上升。常见的中小功率Boost电路开关频率一般落在100kHz到500kHz之间。频率越高电感可以做得越小但散热压力也越大。定频率的时候同时要想清楚控制芯片的驱动能力、功率管的开关速度、以及你打算用的电感材料是否支持这个频率下的低损耗。不要等电感算好了再回头改频率那意味着所有参数全要重算。4. 完整设计案例12V升24V/2A的全程演算4.1 参数设定与占空比先算出来用一个我实际做过的案例来走一遍完整流程。设计目标输入12V考虑压降和电池波动按10.8V到13.2V作为输入范围输出24V最大输出电流2A开关频率定为200kHz。先算最恶劣情况也就是输入电压最低、占空比最大的工况。用考虑二极管压降的公式Vd取0.5VD 1 - Vin / (Vout Vd) 1 - 10.8 / 24.5 ≈ 0.559这个占空比算出来的幅度是符合直觉的输入越接近输出占空比越小输入越低占空比越大电感储能时间越长才能把电压顶上去。4.2 临界电感和最终电感取值按输入10.8V、输出2A、频率200kHz计算临界电感L_crit Vin x D x (1 - D) / (2 x fsw x I_o) 10.8 x 0.559 x 0.441 / (2 x 200000 x 2) ≈ 3.33μH这个值意味着电感量只要大于3.33μH在满载2A下就能保持CCM。但是为了控制纹波率这个值远远不够。按r0.3到0.4来取L Vin x D x (1 - D) / (r x fsw x I_o)取r0.3时算出来约19μH。考虑到实际买到的是标准感值我取了22μH。这个值新算出来的实际纹波率大约在0.3正合适。同时需要用最低输入电压和满载来复核临界条件22μH比3.33μH大得多满载CCM没有问题。此时顺便算一下临界负载电流也就是从CCM跌落到DCM的边界输出电流I_o_crit Vin x D x (1 - D) / (2 x fsw x L) 10.8 x 0.559 x 0.441 / (2 x 200000 x 22e-6) ≈ 0.30A也就是说输出电流低于0.3A左右这个电路会自然进入DCM。如果应用场景里0.3A以下也算工作区间就要接受模式切换或者换一种控制策略。这个数字很有用设计前最好就心里有数。4.3 峰值电流、饱和电流与最终选型在最低输入电压、满载2A下电感平均电流为I_L_avg I_o / (1 - D) 2 / 0.441 ≈ 4.54A纹波电流峰峰值delta_I r x I_L_avg ≈ 0.3 x 4.54 ≈ 1.36A所以峰值电流I_peak I_L_avg delta_I / 2 ≈ 4.54 0.68 ≈ 5.22A电感饱和电流至少要留20%以上余量所以我选饱和电流等于6.5A到7A的电感。同时留意DCR尽量低。输出电容方面按纹波要求50mV粗略估算需要的电容容量大约在110μF以上实际还要考虑ESR影响我常用两个100μF陶瓷电容并联。实测下来这块板子满载效率在88%到90%之间电感温升能控制在40度以内输出纹波在50mV左右。和计算值基本对得上。可见只要计算过程每一步都有据可依一次打样成功率会高很多。5. 实测中的常见问题与排查技巧5.1 电感啸叫电感啸叫是我被问得最多的问题。现象是电路工作时有“滋滋”声尤其在轻载或者负载变化的时候。啸叫的本质通常是两种原因一是开关频率落进音频范围这就属于设计错误需要直接提高开关频率二是电路在某个负载点进入了BCM附近或者环路不稳定导致振荡开关频率被低频包络调制产生了可听噪声。排查方法很简单用电流探头看电感电流波形如果发现电流有一阵连续一阵断续或者频率明显变慢多半就是模式切换点附近的稳定性问题。解决方向有三个调整电感量把BCM点移出常用负载区优化环路补偿让模式切换时更平滑或者用支持FCCM强制连续模式的控制器牺牲一点轻载效率换来没有噪声。5.2 轻载效率偏低如果你设计的目标是重载CCM轻载效率低其实是正常的。因为CCM下开关管每个周期都要开关导通损耗和开关损耗不会随着负载下降而成比例下降轻载效率自然难看。但如果你期望的是轻载高效率结果实测一直偏高就要检查一下控制器有没有真正进入打嗝模式或者DCM模式。很多控制器需要在某个引脚上配置模式选择或者通过外部电阻设定阈值配置不对它就一直在CCM跑。我遇到过一种情况是轻载时输出电容充得很慢导致芯片进入一种“一会儿工作、一会儿休息”的状态看起来是打嗝但频率落在音频附近效率也不高。这时候可以适当减小输出电容、提高轻载阈值让脉冲间隔更合理。5.3 电感发热但电流不大电感发热但平均电流又不大的情况多半是纹波电流引起的交流损耗太大或者电感磁芯在这个频率下损耗本身偏高。我之前测过一款铁硅铝磁芯电感在500kHz下满载工作磁芯温度明显高于绕组温度这说明磁芯损耗占主导。换成铁氧体磁芯后温升直接降了15度。所以如果你发现电感表面最烫的位置在磁芯而不是绕组就要考虑换磁芯材料。如果烫的是绕组那就要降DCR或者降RMS电流。另外电感摆放位置也很关键。发热器件应该远离电解电容和半导体器件否则会连锁升温影响整个系统可靠性。布局时尽量让电感靠近气流通道或者散热面。5.4 空载输出电压异常升高Boost电路空载或极轻载时输出电压往上飘是DCM模式下的一个典型现象。因为此时电感每次开关传递的能量只要一点点就能维持输出电压而开关管的导通时间是固定的最小脉冲宽度能量可能还是超出了负载需求电压就会一路抬高直到过压保护或者击穿器件。解决办法是加一个合理的假负载让轻载电流不至于低到失控或者使用带打嗝模式的控制器靠“工作一下、停一下”来稳定电压。做电池供电的设备时假负载会让待机功耗增加所以更好的方案是选合适的控制策略不要用假负载硬扛。我调试时还遇到过一种情况空载电压没有异常但加上一个很小的负载后输出电压反而出现低频振荡。原因是环路在轻载DCM下的相位裕量不足补偿参数按重载CCM优化在轻载区间失稳了。这种问题要回到补偿网络去调整不能只靠换电感解决。记得有一次我在临界点附近反复试不同电感值发现电感量变化对效率和噪声影响非常大。后来总结出一套经验先根据负载范围确定模式再用公式算临界电感最后用示波器实测确认边界负载下的电流波形。现在我做Boost设计必做的一步是用电子负载从空载到满载缓慢扫一遍同时盯着电感电流波形看有没有模式跳变引起的异常点。这个小习惯帮我提前避开过很多量产才会暴露的问题。电源设计看着是算公式、选元件真正决定成败的往往是这些边界工况下的细节处理。
阅读完成 · 觉得有帮助?