ARTICLE DETAIL

资讯详情

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

Boost变换器CCM与DCM模式切换原理及临界电感设计

Boost变换器CCM与DCM模式切换原理及临界电感设计 1. 为什么Boost变换器的CCM/DCM切换不是“选模式”而是“被模式”你翻过任何一本开关电源教材十有八九会在Boost章节看到这样一句话“工作在连续导通模式CCM还是断续导通模式DCM取决于电感电流是否归零。”——听起来像一句废话。但真正动手搭电路、跑仿真、调参数时你会发现你根本没法主动“选择”CCM或DCM你只能通过改变电感值、负载电阻、开关频率或占空比把电路“推”进某一种模式里。这种被动性正是绝大多数初学者卡壳的第一道墙。我第一次用LTspice仿真Boost电路时照着教科书参数设了100μH电感、100kHz开关频率、50%占空比、10Ω负载结果波形看起来“挺正常”电感电流有纹波但没断续。可当我把负载换成100Ω轻载同一组参数下电流波形突然在每个周期末尾“掉到零以下”——LTspice直接报错“GMIN1e-12 too small for convergence”波形也变得毛刺密布、不收敛。我当时以为是仿真设置错了反复调GMIN、reltol、abstol折腾两小时无果。最后把电感改成470μH再试波形立刻干净了但电流纹波小得几乎看不出来。那一刻我才意识到不是我的仿真不会调而是我根本没搞懂“临界点”在哪——那个让CCM和DCM一触即分的物理边界才是所有问题的根因。这个边界就是临界电感Critical InductanceLcrit。它不是一个固定值而是一个动态阈值由输入电压Vin、输出电压Vout、开关频率fsw、以及当前负载Rload共同决定。当实际电感L Lcrit时电路被迫进入CCM当L Lcrit时它自动滑入DCM。你无法绕过这个物理约束去“设计一个DCM Boost”就像你不能靠拧紧螺丝来阻止水沸腾——温度到了相变就发生了。所以这篇笔记不叫“如何选择CCM/DCM”而叫“带你搞懂模式切换”。因为真正的设计起点从来不是拍脑袋定模式而是先算出Lcrit再根据你的目标效率体积纹波动态响应反推我要不要刻意避开它要不要刚好踩在它上面还是干脆让它漂移LTspice不是画波形的工具它是帮你把抽象公式具象成可触摸、可测量、可对比的物理过程的显微镜。接下来我们就从Lcrit的推导开始一层层剥开CCM/DCM切换背后的数学骨架和物理直觉。1.1 临界电感公式的物理来源从电感伏秒平衡到电流谷值归零临界电感Lcrit的最终表达式是$$ L_{crit} \frac{V_{in} (V_{out} - V_{in})}{2 f_{sw} V_{out}} R_{load} $$但如果你只把它当一个要背的公式那下次遇到非标拓扑比如带同步整流的Boost或非理想器件比如二极管正向压降不可忽略你就又懵了。我们必须回到源头为什么是这个形式它的每一项代表什么物理量核心逻辑只有两句话在临界状态BCMBoundary Conduction Mode下电感电流在一个开关周期结束时恰好下降到零。电感电流的变化量ΔiL由电感两端的电压和时间共同决定ΔiL ∫(vL/L) dt。我们分两个阶段分析一个周期TT 1/fsw导通阶段t 0 → D·T主开关S导通二极管D关断。此时电感L两端电压为vL Vin忽略开关管压降电流线性上升。电流增量为$$ \Delta i_{L,up} \frac{V_{in}}{L} \cdot D T $$关断阶段t D·T → T开关S关断二极管D导通续流。此时电感L两端电压为vL Vin- Vout注意极性电感释放能量电压反向电流线性下降。电流减量为$$ \Delta i_{L,down} \frac{V_{out} - V_{in}}{L} \cdot (1-D) T $$在稳态下一个周期内电流的净变化为零否则会持续上升或下降所以ΔiL,up ΔiL,down。这给出了占空比D与电压的关系经典的Boost关系式$$ \frac{V_{in}}{L} \cdot D T \frac{V_{out} - V_{in}}{L} \cdot (1-D) T \quad \Rightarrow \quad D \frac{V_{out} - V_{in}}{V_{out}} $$但这只是稳态条件还没触及“临界”。临界的关键在于在关断阶段结束时电流必须刚好减到零。这意味着关断阶段的电流减量必须等于导通阶段结束时的电流峰值iL,peak。而iL,peak又等于平均电流IL,avg加上一半的纹波电流ΔiL/2因为CCM下电流是三角波平均值在中间。但在临界点情况特殊电流波形是“三角-脉冲”混合——从峰值线性下降到零没有平台。此时平均电流IL,avg就等于峰值电流的一半因为三角波面积 底×高/2底是关断时间高是峰值。而IL,avg又等于输出电流Iout忽略电容纹波电感平均电流全部供给负载而Iout Vout/Rload。所以在临界点$$ i_{L,peak} 2 I_{L,avg} 2 \frac{V_{out}}{R_{load}} $$同时这个峰值电流也等于关断阶段的电流减量$$ i_{L,peak} \Delta i_{L,down} \frac{V_{out} - V_{in}}{L_{crit}} \cdot (1-D) T $$将D的表达式代入(1-D)并代入T 1/fsw经过代数整理就能得到开头那个Lcrit公式。整个推导过程没有魔法全是基尔霍夫定律和电感基本特性v L di/dt的直接应用。提示很多资料会直接给出Lcrit (Vin× (Vout- Vin) × T) / (2 × Vout× Iout)这和我们上面的公式等价因为Iout Vout/Rload。记住这个等价关系能帮你快速在不同设计场景间切换——比如已知目标输出功率Pout那么Iout Pout/Vout公式就变成Lcrit (Vin× (Vout- Vin) × T) / (2 × Vout²) × Pout。1.2 算一个真实例子24V升50V100kHz5W输出临界电感是多少光说理论太虚我们来算个硬核数字。假设你的应用场景是输入24V直流需要稳定输出50V开关频率100kHz满载输出功率5W。第一步算满载输出电流Iout Pout/ Vout 5W / 50V 0.1A对应负载电阻 Rload Vout/ Iout 50V / 0.1A 500Ω第二步套用公式Lcrit [Vin× (Vout- Vin) / (2 × fsw× Vout)] × Rload [24 × (50 - 24) / (2 × 100000 × 50)] × 500先算分子24 × 26 624分母2 × 100000 × 50 10,000,000所以括号内 624 / 10,000,000 6.24 × 10-5再乘以5006.24 × 10-5× 500 0.0312 H 31.2 mH这个结果可能让你一愣31.2毫亨这已经不是贴片电感的范畴了是那种带磁芯、体积不小的工频电感级别。这意味着如果我用一个常见的100μH0.0001H电感它远小于31.2mH电路必然工作在DCM。而如果我用一个10mH的电感它仍小于31.2mH还是DCM只有当我用上50mH甚至更大的电感时才能勉强进入CCM。这个计算揭示了一个残酷的现实对于高压比Vout/Vin 50/24 ≈ 2.08、中等功率5W、中等频率100kHz的BoostCCM天然就是“难进入”的状态。很多初学者按常规经验选100μH电感结果仿真出来全是DCM波形还怀疑自己模型错了——其实模型很准是你对临界点的预期错了。反过来如果我把输出功率降到0.5W轻载Rload就变成5000ΩLcrit直接飙升到312mH。这时哪怕你用1mH的电感也远远不够电路铁定DCM。这就是为什么轻载时DCM更常见——不是设计者偏爱DCM而是物理规律逼你进入DCM。注意以上计算严格基于理想器件无二极管压降、无开关损耗、无电感DCR。实际工程中二极管正向压降Vf比如肖特基管0.4V会显著影响。修正后的临界电感公式为$$ L_{crit,real} \frac{V_{in} (V_{out} - V_{in} V_f)}{2 f_{sw} V_{out}} R_{load} $$因为关断时电感释放能量给负载和二极管其两端实际电压是Vout Vf- Vin而不是简单的Vout- Vin。这个Vf项虽小但在Vin接近Vout时低压差升压其相对影响会被放大。实测中若发现仿真结果与理论计算总有几毫亨偏差第一反应就该检查二极管模型是否启用了Vf。2. LTspice里的“临界电感”不是输入框而是波形上的一个像素点在LTspice里你找不到一个叫“临界电感”的设置项。它不存在于元件属性对话框里也不在仿真命令中。它只存在于你盯着波形图时眼睛捕捉到的那个微妙瞬间当电感电流波形的谷值从“紧贴横轴但始终大于零”CCM变成“明确地跌落到零并停留一段时间”DCM的那一帧。这个瞬间就是Lcrit的可视化定义。所以LTspice仿真CCM/DCM切换核心方法论不是“调参数猜结果”而是“扫参数看拐点”。我们要做的是固定Vin、Vout、fsw、Rload让电感L作为一个扫描变量.step param然后观察电流波形如何随L变化精准定位那个“拐点”。这个过程比任何公式都更能建立你的物理直觉。2.1 构建一个可扫描的LTspice基准电路从零开始搭一个“模式探测器”别急着抄网上的Boost模板。我们从最简结构开始确保每一步都可控、可解释。打开LTspice新建原理图输入源放一个Vsource命名为V_in。右键设置DC值为24V。这是你的恒压输入。开关管放一个nmos默认的IRF530模型足够。栅极接一个PULSE电压源PULSE(0 10 0 1n 1n {1/f_sw} {1/f_sw})。这里1n是上升/下降时间{1/f_sw}是周期f_sw我们将作为全局变量定义。注意PULSE的第五个参数是脉宽我们暂时设为{D*1/f_sw}但D会随负载变化所以更稳妥的做法是先固定D后面再扫。电感放一个L命名为L_boost。关键来了它的值设为{L_val}。L_val是我们即将扫描的参数。二极管放一个D使用1N5819模型肖特基Vf≈0.4V。这是非理想性的关键引入点。输出电容放一个C命名为C_out值设为100u。足够大保证输出电压纹波小便于观察电感电流。负载放一个R命名为R_load值设为{R_val}。R_val也是扫描变量之一但本节先固定为500Ω对应5W。接地所有地连在一起。现在添加全局变量定义。在原理图空白处右键 - “SPICE Directive”输入.param f_sw 100k .param D 0.5 .param R_val 500 .step param L_val list 10u 22u 47u 100u 220u 470u 1m 2m 5m 10m 20m 30m 40m 50m这里.step param指令告诉LTspice对每一个L_val的取值都运行一次独立的瞬态仿真Transient Analysis。列表中的值覆盖了从10μH到50mH的宽范围足以捕捉从深度DCM到深度CCM的全过程。提示.step指令的威力在于它能自动生成一组数据曲线。但要注意如果步数太多比如扫100个点仿真时间会指数级增长。我的经验是先用稀疏点如上面14个点快速定位拐点区间比如发现100u和220u之间有突变然后再在这个区间内加密扫描比如list 100u 120u 140u 160u 180u 200u 220u效率最高。LTspice的.step不支持logspace所以手动列点是唯一可靠方式。2.2 仿真设置与波形观测如何一眼识别CCM/DCM的分界线仿真命令.tran至关重要。对于模式切换这种需要观察稳态波形细节的分析.tran的设置必须兼顾精度和效率.tran 0 10m 5m 1u0起始时间0秒10m总仿真时间10毫秒5m初始暂态时间跳过前5ms让电路充分进入稳态1u最大步长1微秒。这个值很关键如果设太大比如10uLTspice会粗略采样可能错过电流归零的精确时刻导致DCM波形看起来像“抖动的CCM”如果设太小比如100n仿真会慢得无法忍受。1u是CCM/DCM切换仿真的黄金平衡点。运行仿真后点击V(n002)电感左端即开关节点和I(L_boost)电感电流进行观测。重点看I(L_boost)波形。CCM的特征是电流波形是一个连续的、有上下边界的锯齿波谷值始终大于零且每个周期形状高度一致。DCM的特征是电流波形是一个“脉冲平台”组合——先线性上升再线性下降至零然后在零值上停留一段“死区时间”直到下一个周期开始。拐点就出现在当L_val增大到某个值时I(L_boost)波形的谷值从“短暂接触零线”变为“明确地在零线上停留一段可测量的时间”。这个“停留时间”就是DCM的标志。你可以用LTspice的光标功能按Ctrl左键拖动精确测量这个死区时间。在临界点附近这个时间会从几纳秒、几十纳秒突然跳变到几百纳秒甚至微秒级。我实测上述参数24V→50V, 100kHz, 500Ω时拐点非常清晰地落在220u220μH和470u470μH之间。当L220u时电流谷值几乎贴着零线但死区时间10nsLTspice数值精度下难以分辨可视为“准CCM”当L470u时死区时间稳定在~1.2μsDCM特征明确。这与我们之前理论计算的31.2mH31200μH相差巨大为什么答案就在二极管压降。我们用了1N5819其典型Vf0.4V。代入修正公式Lcrit,real [24 × (50 - 24 0.4) / (2 × 100000 × 50)] × 500 [24 × 26.4 / 10,000,000] × 500 0.03168 × 500 15.84 mH还是不对。15.84mH vs 470uH差了30多倍。问题出在哪儿——我们忽略了电感自身的直流电阻DCR。实际电感不是理想元件它有线圈电阻。一个470uH的功率电感DCR通常在0.1Ω到1Ω之间。这个电阻会消耗能量降低电感电流的峰值并提前终结电流下降过程。在LTspice中给电感L_boost添加DCR双击L_boost在“Value”栏输入470u Rser0.5表示470μH电感串联0.5Ω电阻。重新仿真拐点会向更大的电感值移动。当DCR0.5Ω时拐点移到了约2.2mH附近与15.84mH仍有差距但方向正确了。这说明理论公式是理想世界的地图而LTspice是现实世界的沙盘。DCR、Vf、甚至PCB走线电感都是这张地图上必须标注的“未探索区域”。经验技巧在LTspice中快速验证DCR影响有个偷懒办法。不改电感模型而是在电感支路里串联一个独立的电阻R_dcr值设为{R_dcr}然后用.step param R_dcr list 0 0.1 0.2 0.5 1来扫。这样可以分离DCR的影响避免反复修改电感模型。你会发现随着R_dcr增大临界电感值单调上升——电阻越大电流越难维持越容易进入DCM所以你需要更大的L来“对抗”它。3. 波形对比不是看美丑而是读“电流-电压-时间”三重契约当你在LTspice里成功扫出CCM和DCM的波形后下一步不是截图发朋友圈而是像解码一样逐帧解读它们背后隐藏的物理契约。CCM和DCM不是两种“风格”而是两种完全不同的能量传递协议。它们的波形差异本质上是电感电流、开关节点电压、输出电压三者之间约束关系的根本性重构。忽略这一点你永远只能“认出”模式却无法“驾驭”模式。3.1 CCM波形解码一个稳态的、闭环的能量循环我们取L10mH远大于临界值的CCM波形为例。同时观测三个信号I(L_boost)电感电流、V(n002)开关节点电压即电感左端对地电压、V(out)输出电压。电流特征I(L_boost)是一个完美的、周期重复的三角波。峰值约0.22A谷值约0.18A纹波ΔiL≈ 0.04A。平均值≈0.2A正好等于Iout 50V/500Ω 0.1A等等0.2A ≠ 0.1A这里有个经典误区电感平均电流IL,avg在CCM下等于输出电流Iout。我们算一下0.22A 0.18A 0.4A除以2 0.2A。但Iout是0.1A。矛盾不是因为我们忘了输入电流。在Boost中输入电流是脉冲式的只在S导通时有其平均值Iin,avg IL,avg× D。D (Vout- Vin)/Vout 26/50 0.52。所以Iin,avg 0.2A × 0.52 ≈ 0.104A与输入功率Pin Vin× Iin,avg 24V × 0.104A ≈ 2.5W而输出功率是5W这显然不对。问题出在效率假设上。理想Boost效率为100%但我们的模型里有二极管损耗和电感DCR。实际Iin,avg应满足Pin Pout/η。如果我们假设η90%则Pin 5W/0.9 ≈ 5.56WIin,avg 5.56W/24V ≈ 0.232A。这与IL,avg 0.2A接近差异来自DCR和Vf的损耗分配。所以波形上的IL,avg是包含了所有损耗后的“真实平均电流”它必然满足能量守恒。电压特征V(n002)是一个方波。S导通时V(n002) ≈ 0V忽略MOSFET Rds(on)S关断时V(n002) ≈ Vout Vf≈ 50.4V。这个电压跳变是电感电流变化的驱动力。导通时vL Vin- 0 24V电流上升关断时vL 0 - (Vout Vf) -50.4V电流下降。上升斜率di/dt vL/L 24V / 0.01H 2400 A/s下降斜率 50.4V / 0.01H 5040 A/s。从波形上测量上升时间≈ (0.22-0.18)A / 2400 A/s ≈ 16.7μs下降时间≈ 0.18A / 5040 A/s ≈ 35.7μs。总周期10μs不对100kHz周期是10μs但我们算出的上升下降时间≈52.4μs远超10μs。这说明我们的L10mH太大了导致电流变化太慢无法在一个周期内完成充放电。这印证了前面的结论对于此参数CCM需要的L是31.2mH10mH还不够所以它其实处于“勉强CCM”边缘电流纹波很大但没归零。真正的深度CCM需要更大的L。时间特征在CCM下开关动作S的导通/关断与电感电流的充/放电是严格同步的。没有“空闲时间”。能量传递是连续的、无缝的。3.2 DCM波形解码一个间歇的、需重启的能量脉冲我们取L100uH远小于临界值的DCM波形。同样观测I(L_boost)、V(n002)、V(out)。电流特征I(L_boost)是一个清晰的三角脉冲。从0开始线性上升到峰值约0.8A再线性下降回0然后在0值上停留约3.5μs死区时间再开始下一个周期。峰值电流很高但平均电流只有0.1A。这说明虽然每次脉冲能量大但“干活”的时间短大部分时间在“休息”。电压特征V(n002)不再是简单的方波。在死区时间内V(n002)不是0V也不是Vout而是振荡的你会看到一个衰减的LC振荡L_boost和C_out及寄生电容构成谐振回路幅度从50V左右开始逐渐衰减到0。这是因为在死区时间电感电流为零二极管关断电感与输出电容形成一个孤立的谐振腔储存的少量能量在此释放。这个振荡是DCM的指纹也是EMI的主要来源之一。时间特征DCM下开关周期T被分为三段导通时间ton、关断时间toff、死区时间tdead。其中ton toff T。ton由控制器这里是固定D决定toff由电感放电到零所需时间决定tdead T - ton- toff。这个tdead是DCM的核心自由度它让DCM具有天然的轻载效率优势开关损耗低但也带来了输出电压对负载变化更敏感的缺点因为tdead会随Rload变化。关键洞察CCM的输出电压Vout主要由占空比D决定Vout Vin/(1-D)对负载Rload变化不敏感只要保持CCM。而DCM的Vout则同时依赖于D、fsw、L和Rload。这就是为什么DCM Boost在负载变化时输出电压更容易漂移——它的控制环路更复杂。在LTspice里你可以通过.step param R_val list 100 250 500 1000来直观看到当Rload从100Ω50W变到1000Ω2.5W时CCM下的V(out)几乎不变而DCM下的V(out)会明显升高因为tdead变长等效占空比增大。4. 从仿真到设计临界电感不是终点而是设计决策的十字路口算出Lcrit跑通CCM/DCM波形对比这些都不是终点。它们是给你递来一把尺子让你去丈量真实世界里的各种权衡。一个优秀的电源工程师不是追求“理论最优”而是能在效率、成本、体积、噪声、动态响应、可靠性之间找到那个最适合当前应用场景的“甜蜜点”。而Lcrit就是这个甜蜜点的地图坐标原点。4.1 效率优先选DCM但要警惕它的“温柔陷阱”很多人认为DCM效率低因为电流峰值高导通损耗I²R大。这没错但只说了一半。DCM的开关损耗尤其是二极管反向恢复损耗通常远低于CCM。在CCM下二极管在关断时承受着很大的反向di/dt会产生显著的反向恢复电流Irr这部分能量以热的形式耗散。而在DCM下二极管电流自然归零后再关断Irr几乎为零开关损耗锐减。所以对于中低功率10W、中等电压比、对EMI要求不高的应用DCM反而是更优解。比如一个USB-C PD协议的5V升12V、3W的辅助电源用DCM方案一颗小封装的肖特基二极管一个小电感就能搞定成本和体积都极具优势。但DCM的“温柔陷阱”在于它的效率曲线是“倒U型”的。在轻载时效率很高开关损耗低在重载时效率急剧下降导通损耗主导。而CCM的效率曲线则更平缓。这意味着如果你的设计负载范围很宽比如从10%到100%DCM在重载时的温升可能成为瓶颈。LTspice里你可以用.measure命令来量化这个差异.measure tran eff_ccm param V(out)*I(R_load)/((V_in)*I(V_in)) at9m这个命令在9ms时刻稳态测量整机效率。对CCM和DCM两组参数分别运行你会得到两条效率曲线。你会发现DCM在0.1A负载时效率可能高达88%但在0.5A时掉到75%而CCM在0.1A时是82%在0.5A时还能保持85%。实操心得我在做一个工业传感器供电模块5V输入升15V最大2W时最初选了DCM方案电感用100uH。测试发现常温下没问题但环境温度升到60℃时二极管温升过高触发了热保护。换成CCM方案L1mH虽然电感体积大了一倍但全温度范围内温升稳定。这个教训告诉我效率不能只看室温数据必须结合热设计一起评估。DCM的“高效”是有条件的这个条件就是“温升可控”。4.2 体积/成本敏感CCM的“大电感”可以用“小电
返回列表