
Boost变换器这玩意儿但凡做过电源的都不陌生。但真要把它放在DCM断续导通模式下跑很多人就开始犯迷糊了——波形看着跟CCM差不多可一算增益公式完全对不上仿真和实测还老打架。我自己第一次调DCM的Boost时就吃过这个亏按CCM的公式算出来占空比0.5能升到两倍结果上电一看输出只有输入的一倍半电感电流波形还断断续续的当时以为是电感饱和了换了好几个磁芯都没用后来才反应过来——压根就是模式判断错了DCM下的增益公式跟CCM完全是两码事。这篇文章就围绕Boost变换器在DCM模式下的实际工程问题展开从波形特征怎么识别、伏秒平衡怎么用、增益公式怎么推、到光伏MPPT场景下为什么偏偏要让它跑在DCM一步步拆开讲。不管你是刚接触开关电源的学生还是已经在做光伏逆变器、LED驱动、功率因数校正的工程师只要涉及到Boost在轻载或高升压比下的应用DCM都是绕不开的一道坎。我会尽量用实测波形和推导过程说话把那些教科书上跳过的“为什么”补上。1. 先搞清楚DCM到底“断”在哪里1.1 从电感电流波形一眼分辨工作模式Boost变换器有三种工作模式CCM连续导通模式、BCM临界导通模式、DCM断续导通模式。区分它们的唯一标准就是电感电流在一个开关周期内是否降到零。CCM下电感电流在整个周期内都大于零波形是一个带纹波的梯形波最小值不为零。BCM是临界状态电感电流刚好在周期结束时降到零下一个周期立刻从零开始上升。DCM则是电感电流在周期中间就降到零了并且保持为零一段时间直到下一个开关周期到来。用示波器看电感电流通常用电流探头或者串联采样电阻加差分探头DCM的波形特征非常明显三角波上升一段、下降一段、然后平躺一段。平躺的那段就是“断”的时间也叫死区时间idle time。这个死区时间的存在是DCM所有特殊性的根源。我实测过一组波形输入5V输出12V电感10μH开关频率500kHz负载从1A逐渐减小。负载1A时是标准CCM梯形波减到0.3A左右进入BCM波形变成完整三角波再减到0.1A三角波明显变窄后面拖了一段平线——这就是DCM。整个过程不需要改任何参数只是负载变轻模式就自动切换了。1.2 为什么轻载和高升压比容易进DCM这里有个直觉上的理解电感电流的平均值等于输出电流除以1-D负载越轻输出电流越小电感电流平均值就越小。而电感电流的纹波峰峰值ΔI_L (V_in × D) / (L × f_sw)这个值只跟输入电压、占空比、电感和频率有关跟负载无关。所以当负载电流小到一定程度电感电流的平均值小于纹波峰峰值的一半时电流谷值就碰到零了自然进入DCM。这就是为什么轻载容易DCM。另一个容易进DCM的场景是高升压比。升压比越高占空比D越接近1但DCM的占空比跟CCM不一样后面会详细推。直观上说高升压比意味着能量需要以更高的“压缩比”传递电感储能时间相对短释放时间相对长如果电感值不够大电流在释放阶段就降到零了。光伏MPPT场景就是典型的高升压比宽负载范围。光伏板输出电压可能只有20-40V母线电压要升到400V升压比10倍以上。而且光照变化时负载功率大幅波动轻载时必然进DCM。所以做光伏BoostDCM不是“可选”而是“必然要面对”的工况。1.3 DCM带来的三个实际影响第一增益特性变了。CCM下增益只跟占空比有关V_out/V_in 1/(1-D)。但DCM下增益还跟负载、电感、频率有关公式完全不同。如果你用CCM公式去设计DCM的环路补偿网络会完全跑偏。第二右半平面零点位置变了。CCM下Boost有个著名的右半平面零点RHPZ频率大约在(1-D)²×R/(2πL)附近。DCM下这个零点会往高频移动甚至可能移出带宽之外这对环路补偿来说反而是好事——DCM的Boost比CCM更容易补偿。第三开关管和二极管的反向恢复问题减轻。DCM下二极管电流在关断前已经降到零没有反向恢复电流EMI会好一些。但代价是峰值电流更高导通损耗增加。注意DCM下电感电流峰值比CCM高得多选电感时饱和电流要留足余量否则轻载反而更容易饱和——这听起来反直觉但确实是我踩过的坑。2. 伏秒平衡在DCM下的正确用法2.1 伏秒平衡的本质电感电压在一个周期内积分为零伏秒平衡是分析所有开关变换器的基本功。它的物理含义很简单稳态下电感在一个开关周期内储存的能量等于释放的能量反映在电压上就是“正向伏秒等于负向伏秒”。数学表达∫V_L dt 0在一个周期T内积分。CCM下一个周期分两段开关管导通时段D×T电感承受V_in开关管关断时段(1-D)×T电感承受V_in - V_out注意是负值。所以V_in × D × T (V_in - V_out) × (1-D) × T 0化简得V_out/V_in 1/(1-D)。这就是CCM的经典增益公式。但DCM下一个周期分三段导通段D1×T电感承受V_in续流段D2×T电感承受V_in - V_out死区段D3×T电感电压为零因为电流为零电感两端没有感应电压实际电压由寄生参数决定但理想分析中认为V_L0。所以伏秒平衡变成V_in × D1 × T (V_in - V_out) × D2 × T 0 × D3 × T 0注意D1 D2 D3 1但D3是“自由”的由电路参数决定不是控制量。控制量只有D1也就是我们常说的占空比D。2.2 为什么DCM下多了一个自由度CCM下D1 D2 1两个变量一个方程所以增益只跟D1有关。DCM下D1 D2 D3 1三个变量两个方程伏秒平衡电流关系所以增益跟D1、D2、D3都有关而D3又跟负载有关这就是DCM增益“负载相关”的根源。具体来说DCM下电感电流峰值I_pk V_in × D1 × T / L。这个峰值电流在续流段D2×T内线性下降到零下降斜率是(V_out - V_in)/L所以I_pk (V_out - V_in) × D2 × T / L两式联立V_in × D1 (V_out - V_in) × D2这就是DCM下的伏秒平衡关系可以写成D2 V_in × D1 / (V_out - V_in)2.3 输出电流与电感电流的关系DCM下电感电流只在D1和D2时段流动D3时段为零。输出电流I_out等于二极管电流的平均值。二极管电流在D2时段流动波形是从I_pk降到零的三角波平均值是I_pk × D2 / 2。所以I_out I_pk × D2 / 2 (V_in × D1 × T / L) × D2 / 2又因为I_out V_out / R负载电流所以V_out / R V_in × D1 × D2 × T / (2L)把D2 V_in × D1 / (V_out - V_in)代入整理后得到DCM下的增益公式V_out / V_in (1 √(1 4D1² × K)) / 2其中K 2L / (R × T) 2L × f_sw / R是一个无量纲参数反映了电感、频率和负载的相对关系。这个公式是DCM Boost的核心。它告诉我们DCM下增益不仅跟D1有关还跟K有关。K越大电感越大、频率越高、负载越重越接近CCMK越小电感越小、频率越低、负载越轻增益越低。2.4 一个实测验证的例子我用一个实际电路验证过这个公式。参数V_in5VL10μHf_sw500kHzR100Ω对应I_out0.12A左右确实是DCM。计算K 2 × 10e-6 × 500e3 / 100 0.1。取D10.5代入公式V_out/V_in (1 √(1 4×0.25×0.1)) / 2 (1 √1.1) / 2 (1 1.0488) / 2 1.0244。所以V_out ≈ 5 × 1.0244 5.12V。实测输出5.15V误差在1%以内非常吻合。但如果用CCM公式算V_out/V_in 1/(1-0.5) 2V_out 10V。跟实测差了将近一倍。这就是为什么模式判断错了设计会完全跑偏。3. DCM增益公式的推导与工程简化3.1 从伏秒平衡到增益公式的完整推导链路上一节给出了增益公式的结论这里把推导过程完整走一遍方便你在遇到不同拓扑时能自己推。第一步写电感电流峰值。导通段结束时电感电流达到峰值I_pk (V_in / L) × D1 × T第二步写续流段下降时间。续流段电感电压为V_in - V_out负值电流从I_pk降到零I_pk ((V_out - V_in) / L) × D2 × T第三步联立得D2与D1的关系D2 (V_in / (V_out - V_in)) × D1第四步写输出电流。二极管平均电流等于负载电流I_out V_out / R (1/2) × I_pk × D2第五步代入I_pk和D2V_out / R (1/2) × (V_in × D1 × T / L) × (V_in × D1 / (V_out - V_in))第六步整理。令M V_out / V_in增益则M × V_in / R (V_in² × D1² × T) / (2L × (M-1) × V_in)化简M × (M-1) V_in × D1² × T × R / (2L × V_in) D1² × T × R / (2L)注意T × R / (2L) 1/K所以M² - M - D1²/K 0解这个一元二次方程M (1 √(1 4D1²/K)) / 2这就是完整的推导链路。每一步都只用了最基本的电感伏安关系和电荷平衡没有任何近似。3.2 K参数到底代表什么物理意义K 2L / (R × T) 2L × f_sw / R这个参数在DCM分析中非常关键。它实际上反映了“电感储能能力”与“负载消耗能力”的比值。换个角度看K也可以写成K 2L / (R × T) (2L / T) / R (2L × f_sw) / R。其中2L × f_sw的量纲是电阻Ω可以理解为电感的“等效阻抗”。所以K就是电感等效阻抗与负载电阻的比值。K越大说明电感相对负载“很强”储能充足不容易进DCM。K越小电感相对负载“很弱”储能不足容易进DCM。工程上有个经验判据当K K_crit时电路工作在CCM当K K_crit时进入DCM。K_crit D1 × (1-D1)²这个结论可以从CCM和DCM的边界条件推出来这里不展开。对于BoostK_crit的最大值出现在D11/3处约为0.148。所以如果你设计时K 0.148全负载范围内都是CCM如果K 0.148轻载时会进DCM。这个判据在选电感和开关频率时非常有用。3.3 工程上怎么快速估算DCM增益实际调试时你不可能每次都解一元二次方程。我常用一个简化方法先判断是否DCM如果是用下面这个近似公式快速估算M ≈ 1 D1 / √K这个近似在D1较小0.6且K较小0.1时误差在5%以内。推导很简单当4D1²/K 1时√(14D1²/K) ≈ 2D1/√K所以M ≈ (1 2D1/√K)/2 0.5 D1/√K。再考虑到M必须大于1修正为1 D1/√K。实测对比D10.4K0.05精确公式算M(1√(14×0.16/0.05))/2(1√13.8)/2(13.715)/22.357。近似公式算M10.4/√0.0510.4/0.223611.7892.789。误差18%有点大。换个更准的近似M ≈ (1 √(4D1²/K))/2 0.5 D1/√K。D10.4K0.05时M0.51.7892.289误差2.9%。这个近似更好推荐用这个。所以工程近似公式M ≈ 0.5 D1/√K适用于D1²/K 0.25的情况。3.4 从增益公式反推占空比实际设计中更常见的是已知输入输出电压求需要的占空比。CCM下很简单D 1 - V_in/V_out。但DCM下需要解方程。从M² - M - D1²/K 0反解D1D1 √(K × M × (M-1))这个公式很实用。比如V_in20VV_out400VM20L100μHf_sw100kHzR400Ω满载400V/1A。K 2 × 100e-6 × 100e3 / 400 0.05。D1 √(0.05 × 20 × 19) √19 4.36。这显然不对占空比不可能大于1。问题出在哪K0.05M20D1² K × M × (M-1) 0.05 × 20 × 19 19D1 4.36 1说明这个工况下DCM根本达不到M20的增益。实际上DCM下增益有上限当D11时M_max (1 √(1 4/K)) / 2。K0.05时M_max (1 √81)/2 5。所以DCM下最大只能升到5倍达不到20倍。这就是为什么高升压比应用必须保证CCM或者用其他拓扑。光伏MPPT里如果升压比要10倍以上电感必须选得足够大保证在最大负载时K K_crit否则根本升不上去。4. 光伏MPPT场景下的DCM实战考量4.1 为什么光伏Boost经常“被迫”工作在DCM光伏MPPT的工况有几个特点输入电压随光照和温度大幅变化负载功率随光照变化而且变化范围很宽。一个设计给满载1kW的Boost早上光照弱的时候可能只输出50W负载率5%。这时候电感电流平均值很小几乎必然进DCM。更麻烦的是光伏板的输出特性是软电压源输出电流受光照控制。当Boost进入DCM时输入电流会出现断续导致输入电压纹波增大MPPT算法如果采样时机不对会误判工作点。我在一个200W光伏微逆项目里就遇到过这个问题。满载时Boost在CCMMPPT跟踪很稳早上轻载时进DCMMPPT电压采样纹波从1V跳到5V扰动观察法直接震荡效率掉了15%。后来改成在DCM下用固定占空比间歇工作模式效率才回来。4.2 DCM下MPPT控制策略的调整常规的扰动观察法PO在DCM下容易误判因为DCM的增益对负载敏感同样的占空比变化在不同负载下引起的功率变化方向可能不同。我的做法是在DCM下切换到“恒压间歇”模式。具体来说检测到电感电流断续后不再连续调节占空比而是固定一个接近最大功率点的占空比然后通过间歇开关burst mode来调节平均输出功率。这样输入电流虽然断续但平均功率可控MPPT不会震荡。另一种方法是增大电感把DCM边界推到更低的负载。但电感增大会导致体积和成本上升而且DCM下峰值电流高电感饱和风险大。所以通常是在效率和成本之间折中。4.3 伏秒平衡在MPPT采样中的实际应用伏秒平衡不仅用于推导增益还可以用来校验采样时机。DCM下电感电流在D3时段为零如果在这个时段采样输入电流会采到零导致MPPT误判。正确的采样时机是在开关管导通的中点D1/2处此时电感电流等于平均值三角波中点等于平均值。或者用峰值电流采样然后根据D1和D2计算平均值。我在实际项目中用的是“导通中点采样数字滤波”采样时刻由PWM模块的比较器触发精度可以做到±2%。这样即使在DCM下MPPT也能稳定跟踪。提示DCM下输入电流纹波很大采样电阻上的信号需要加RC滤波截止频率设在开关频率的1/10左右否则采样值跳动严重。4.4 一个完整的光伏Boost DCM设计实例项目参数V_in30V光伏板最大功率点电压V_out400VP_out200Wf_sw100kHz。第一步判断是否允许DCM。升压比M400/3013.3。如果全负载范围CCM需要K K_crit。满载R400²/200800Ω。K 2L×f_sw/R 0.148所以L 0.148×800/(2×100e3) 0.592mH。取L1mHK2×1e-3×100e3/8000.25 0.148满载CCM。第二步轻载10%时R8000ΩK2×1e-3×100e3/80000.025 0.148进DCM。此时用DCM公式算占空比M13.3K0.025D1√(0.025×13.3×12.3)√4.092.02 1说明10%负载下DCM也升不到400V。这说明1mH电感在10%负载下不够。需要增大电感或者降低升压比。实际项目中我用了2mH电感10%负载时K0.05D1√(0.05×13.3×12.3)√8.182.86还是大于1。问题在于升压比太高DCM下根本达不到。所以高升压比光伏Boost通常采用“两级结构”前级Boost升到100V左右升压比3-4倍后级用隔离拓扑或者另一级Boost升到400V。这样每级的升压比都在DCM可达范围内。这个实例说明DCM不是万能的高升压比场景下必须仔细核算DCM的增益上限否则设计会失败。5. 波形分析中的常见误判与排查技巧5.1 电感电流波形“看起来像DCM”但其实是CCM有一种情况很容易误判电感电流波形在示波器上看是三角波底部似乎碰到了零但实际上是CCM只是纹波很大谷值接近零但没到零。区分方法看开关管关断瞬间的电流。CCM下关断瞬间电流等于谷值不为零DCM下关断后电流继续下降到零然后保持为零。用示波器的“单次触发”功能放大关断时刻的波形如果看到电流在关断后还有一个下降沿然后平躺就是DCM如果关断后直接开始上升就是CCM。另一个方法是看开关管开通瞬间的电流。CCM下开通瞬间电流从谷值开始上升有一个台阶DCM下开通瞬间电流从零开始上升没有台阶。这个方法更直观。我早期调试时因为示波器带宽不够把CCM的大纹波误判成DCM结果环路补偿完全不对输出振荡。后来换了高带宽电流探头才看清楚。5.2 二极管反向恢复导致的“假DCM”二极管反向恢复会产生一个反向电流尖峰在电流波形上表现为一个负向的尖刺。如果示波器采样率不够这个尖刺可能被平均掉看起来像电流降到了零然后平躺误判为DCM。排查方法用高采样率至少10倍开关频率观察二极管电流波形。如果看到关断瞬间有一个快速的反向尖峰然后回到零那是反向恢复不是DCM。真正的DCM是电流平滑地降到零没有尖峰。解决反向恢复误判的根本方法是换用SiC二极管或者同步整流消除反向恢复。如果成本不允许至少要在波形分析时心里有数不要被尖峰骗了。5.3 从波形异常反推电路问题DCM波形异常通常对应几类问题第一类死区时间D3异常长。正常DCM下D3由负载决定负载越轻D3越长。但如果D3异常长可能是电感值偏小或者开关频率偏低导致储能不足。这时候需要增大电感或提高频率。第二类峰值电流异常高。DCM下峰值电流本来就比CCM高但如果高得离谱可能是电感饱和了。用示波器看电流波形如果峰值处出现平顶或者畸变就是饱和。需要换更大饱和电流的电感。第三类D2时段波形振荡。这通常是寄生电容和电感谐振引起的会在电流波形上叠加高频振荡。可以在二极管两端加RC吸收或者调整PCB布局减小寄生参数。5.4 实测波形与仿真对不上的排查顺序仿真和实测对不上是常态排查顺序建议如下先查仿真模型参数是否准确。电感值、寄生电阻、二极管正向压降、开关管导通电阻这些参数如果跟实际差太多波形肯定对不上。我一般会用LCR表实测电感和电容用万用表测二极管压降把实测值填进仿真。再查仿真步长是否足够小。DCM下电流变化快仿真步长如果大于开关周期的1/100波形会失真。把步长设到开关周期的1/1000波形就准了。最后查实际电路的寄生参数。PCB走线电感、MOSFET输出电容、二极管结电容这些在仿真里往往被忽略但在高频下影响很大。如果仿真和实测在DCM死区时间上差很多多半是寄生电容在作怪。6. 电感选型与DCM边界的设计权衡6.1 电感值怎么定从DCM边界反推电感值的选择直接决定了DCM边界。如果你希望满载时CCM、轻载时DCM那么电感值应该满足满载时K K_crit轻载时K K_crit。K 2L×f_sw/R所以L K×R/(2×f_sw)。取KK_crit0.148R取满载电阻算出来的L就是CCM/DCM的边界电感。比如满载R100Ωf_sw500kHzL_boundary 0.148×100/(2×500e3) 14.8μH。取L15μH满载刚好在BCM附近取L22μH满载CCM50%负载进DCM取L10μH满载就进DCM了。实际选型时我一般会让满载时K在0.2-0.3之间留一定余量避免参数漂移导致意外进DCM。但也不能太大否则电感体积和成本上去了而且DCM下峰值电流高大电感虽然降低了峰值但动态响应变慢。6.2 饱和电流与温升的核算DCM下电感峰值电流I_pk V_in×D1×T/L。这个值可能比CCM下大很多。比如同样的平均电流DCM下峰值可能是CCM的2-3倍。选电感时饱和电流I_sat必须大于I_pk的最大值并留20%余量。同时还要核算温升因为DCM下电流有效值虽然不一定大但峰值高铜损和磁损都会增加。我吃过一次亏一个Boost电路CCM下电感温升只有20°C改成DCM后温升飙到60°C原因是峰值电流翻倍磁芯损耗按峰值电流的平方增加。后来换了更大尺寸的磁芯温升才降下来。6.3 DCM下电感损耗的估算方法电感损耗分铜损和磁损。铜损P_cu I_rms² × DCR。DCM下电流波形是三角波有效值I_rms I_pk × √(D1D2)/3。注意不是√(D1D2)/2三角波的有效值是峰值除以√3再乘以占空比的平方根。磁损用Steinmetz公式估算P_core k × f^α × B^β × V_core。DCM下磁通密度摆幅ΔB L×I_pk/(N×A_e)比CCM大所以磁损也大。实际估算时我一般用厂商提供的损耗曲线输入峰值电流和频率直接查损耗。如果没有曲线就用Steinmetz公式粗算然后留50%余量。6.4 电感选型的三个实操建议第一优先选饱和电流大的磁芯材料。DCM下峰值电流高铁粉芯或者铁硅铝磁芯的饱和电流比铁氧体高虽然损耗大一点但不容易饱和。我一般用铁硅铝环形电感饱和电流可以做到额定电流的3倍以上。第二电感值不要卡在边界上。如果算出来边界是15μH实际选22μH或者10μH不要选15μH。因为电感的公差通常±20%卡在边界上会导致批量生产时一部分CCM一部分DCM环路补偿很难兼顾。第三注意电感的直流电阻DCR。DCM下电流有效值可能比CCM小但峰值高DCR大了铜损也大。一般选DCR小于输出电阻的1%的型号。7. 环路补偿在DCM下的特殊处理7.1 DCM Boost的小信号模型与CCM的区别CCM Boost的小信号模型有一个右半平面零点传递函数是Gvd(s) V_out/(1-D) × (1 - s×L/((1-D)²×R)) / (1 s×L/((1-D)²×R) s²×L×C/(1-D)²)这个模型在DCM下不适用。DCM Boost的小信号模型要简单得多因为电感电流在每个周期内都归零电感不再是一个独立的储能状态而是变成了一个“受控电流源”。DCM Boost的传递函数近似为Gvd(s) V_out/D × 1 / (1 s/(ω_p))其中ω_p 2/(R×C)近似没有右半平面零点只有一个极点。这意味着DCM Boost的环路补偿比CCM简单得多用普通的Type II补偿器就能稳定。7.2 DCM下补偿网络的简化设计因为DCM Boost只有一个极点补偿器只需要一个积分器加一个零点就能搞定。我常用的补偿器是Gc(s) ω_i/s × (1 s/ω_z) / (1 s/ω_p)其中ω_i是积分增益ω_z是零点频率设在主极点附近ω_p是高频极点设在开关频率的一半用来衰减高频噪声。具体参数主极点ω_p 2/(R×C)。比如R100ΩC100μFω_p 2/(100×100e-6) 200 rad/s对应频率32Hz。零点设在32Hz积分增益设在1000左右高频极点设在50kHz。这样补偿后的穿越频率大约在5-10kHz相位裕度60°以上实测阶跃响应无振荡恢复时间2ms左右。7.3 模式切换时的环路稳定性问题如果电路在CCM和DCM之间切换环路模型会突变可能导致不稳定。CCM下需要Type III补偿因为有两个极点和一个RHPZDCM下只需要Type II。如果按CCM设计补偿器在DCM下会过补偿响应变慢如果按DCM设计在CCM下可能不稳定。我的做法是按CCM设计补偿器保证全负载范围稳定然后在DCM下通过降低带宽来避免过补偿。具体来说在补偿器里加一个“模式检测”电路检测到DCM后把积分增益降低一半带宽降下来稳定性就有保障了。另一种更简单的做法让电路始终工作在DCM。这样补偿器只需要按DCM设计简单可靠。代价是峰值电流高、效率低适合小功率应用。7.4 实测环路调试的步骤第一步开环测增益。用频率响应分析仪或者用示波器信号注入法测开环传递函数的幅频和相频特性。注意要在DCM工况下测负载调到轻载。第二步确定穿越频率和相位裕度。目标穿越频率设在开关频率的1/10到1/20相位裕度大于45°。DCM下因为没有RHPZ相位裕度通常很容易做到60°以上。第三步调补偿器参数。先调积分增益把穿越频率调到目标值再调零点把相位裕度提上去最后调高频极点把高频噪声压下去。第四步测阶跃响应。负载从10%跳到50%看输出电压的过冲和恢复时间。过冲小于5%恢复时间小于5ms就算合格。注意DCM下负载跳变时占空比需要大幅变化才能维持输出电压所以动态响应比CCM慢。如果应用对动态响应要求高DCM可能不是好选择。8. 从DCM波形到增益计算的完整调试流程8.1 上电前的静态检查清单在给Boost上电之前有几项静态检查必须做第一用电桥测电感值和DCR确认跟设计值偏差在20%以内。DCM对电感值敏感偏差大了增益公式就不准了。第二用万用表测二极管正向压降确认没有短路或开路。DCM下二极管在D2时段导通压降影响增益。第三检查MOSFET的驱动电阻和栅极电容确保开关速度合适。DCM下开关频率高驱动损耗不能忽略。第四确认输出电容的ESR和容值。DCM下输出纹波比CCM大电容不够会导致输出电压纹波超标。8.2 上电后的波形捕获顺序上电后不要急着看增益先按顺序捕获波形先看开关管驱动波形确认频率和占空比跟设计一致。如果驱动波形有振铃或者上升沿太慢先解决驱动问题。再看电感电流波形确认是CCM还是DCM。如果是DCM记录D1、D2、D3的时长。然后看输出电压波形确认纹波在允许范围内。DCM下输出纹波通常是CCM的2-3倍如果超标先加大输出电容。最后看输入电流波形确认没有异常振荡。DCM下输入电流断续纹波大是正常的但如果有高频振荡可能是PCB布局问题。8.3 用伏秒平衡校验实测增益捕获到D1、D2、D3后用伏秒平衡校验增益先算D2的理论值D2 V_in×D1/(V_out-V_in)。用实测的V_in、V_out、D1代入算出D2理论值。再跟实测D2对比。如果误差小于10%说明伏秒平衡成立增益公式可信。如果误差大检查电感值是否准确、二极管压降是否忽略、采样是否有延迟。然后用增益公式算V_outM (1√(14D1²/K))/2V_out M×V_in。跟实测V_out对比误差小于5%就算通过。我一般会做三组不同负载的测试画一条增益-负载曲线跟理论曲线对比。如果三条曲线趋势一致说明设计没问题。8.4 常见偏差的归因与修正实测增益比理论值低常见原因有三个电感值偏小实际L小于标称值二极管压降大尤其是肖特基二极管在高温下压降增大开关频率偏高实际f_sw大于设计值。修正方法是换电感、换二极管、调频率。实测增益比理论值高常见原因是电感值偏大或者负载电阻偏大实际负载比设计轻。修正方法是换电感或者调整负载。如果增益对不上但波形正常先别急着改电路用LCR表重新测一遍电感和电容用示波器测一下实际开关频率。很多时候问题出在测量上不是电路上。9. 几个容易忽略的工程细节9.1 PCB布局对DCM波形的影响DCM下电流变化率di/dt很大PCB走线电感会产生尖峰电压。如果电感电流采样走线太长采样波形会叠加振铃导致D1、D2判断错误。我的布局原则电流采样电阻尽量靠近电感采样走线用差分对长度不超过10mm。功率地和信号地分开单点连接。MOSFET和二极管之间的环路面积尽量小减小寄生电感。实测对比同样的电路布局优化前电感电流波形有20%的振铃优化后振铃降到5%以内D1、D2的读数准确多了。9.2 温度对DCM边界的影响电感值随温度变化铁氧体电感的电感量在高温下可能下降20%-30%。DCR随温度上升而增大铜损增加。二极管压降随温度上升而减小肖特基或增大PN结。这些变化会导致DCM边界漂移。常温下满载CCM高温下可能变成DCM。所以设计时要留温度余量K值至少留30%的裕量。我在一个工业电源项目里常温调试一切正常高温老化时发现轻载效率掉了5%原因是高温下电感量下降DCM提前到来峰值电流增大损耗增加。后来换了高温特性更好的磁芯材料才解决。9.3 从DCM到CCM的平滑过渡设计如果应用需要在DCM和CCM之间频繁切换要保证过渡平滑。关键是补偿器要能适应两种模式。我的做法是用“增益调度”检测电感电流是否断续如果断续把补偿器的积分增益降低到原来的1/2到1/3。这样在DCM下带宽降低稳定性有保障在CCM下带宽恢复动态响应快。另一种方法是“频率调制”DCM下降低开关频率让K增大把工作点拉回CCM。但频率变化会影响EMI和效率需要折中。9.4 实测中值得记录的三个关键数据每次调试DCM Boost我都会记录三个数据DCM边界负载点从CCM切换到DCM的负载电流、DCM下的峰值电流、DCM下的效率。DCM边界负载点用来验证电感设计是否合理。如果边界点比设计值低很多说明电感偏小或者频率偏低。峰值电流用来验证电感饱和余量。如果峰值电流接近电感的饱和电流需要换电感。DCM下的效率用来评估损耗。如果DCM效率比CCM低很多超过5%说明峰值电流引起的损耗太大需要优化电感或开关频率。这三个数据记录下来下次做类似设计时就有参考了。我自己的笔记本里记了几十个DCM Boost的调试数据现在做新项目选电感和频率时直接查表省了很多时间。10. 个人实操体会DCM模式下的Boost变换器说到底就是一个“电感储能不够用”的工况。理解了这一点很多现象就顺了增益上不去是因为储能不够峰值电流高是因为要在短时间内储存同样的能量环路好补偿是因为电感不再是一个独立状态系统阶数降低了。我刚开始做电源时总想把电路设计成“永远CCM”觉得DCM是个麻烦。后来做光伏和LED驱动发现DCM反而有优势二极管没有反向恢复EMI好环路简单补偿容易轻载效率可以通过间歇模式做高。关键是你要知道它在什么时候出现以及出现后怎么应对。如果你正在调一个DCM的Boost我的建议是先把波形抓准确认D1、D2、D3的时长然后用伏秒平衡算一遍增益跟实测对比如果对不上先查电感和频率再查寄生参数。大部分问题都出在这几个地方不用想得太复杂。最后分享一个我常用的快速判断方法拿示波器看开关管开通瞬间的电流波形如果有台阶就是CCM如果从零开始就是DCM。这个方法比看整个周期波形快得多而且不容易被反向恢复尖峰骗到。