4. 开环控制与稳态特性分析
开环 Buck 变换器是理解所有闭环控制算法的起点。在固定占空比 D 下,变换器进入稳态后,输出电压平均值由 Vo = D·Vin 决定(CCM 理想情况),但真正决定电源品质的,是叠加在平均值上的纹波、电感电流的脉动幅度,以及变换器究竟工作在 CCM 还是 DCM。本节围绕占空比扫描仿真,把纹波分析、CCM/DCM 边界判定、效率与损耗分解、参数扫描工具串成一条完整的稳态特性分析链路。
一、占空比扫描:从单点到特性曲线
单次仿真只能得到一个工作点,而占空比扫描(Duty Sweep)能一次性给出 Vo–D 关系曲线。在 Simulink 中,把 PWM 比较器的常值输入替换为受控源,用 Simulink.SimulationInput 数组批量设置 D,例如从 0.1 到 0.9 步进 0.05,共 17 个仿真点。每个点运行到稳态后,用 mean 模块或 To Workspace 记录输出电压平均值、纹波峰峰值、电感电流平均值与峰峰值。
扫描结果会呈现两个明显区间:低占空比段 Vo 与 D 近似线性,符合 CCM 的 Vo=D·Vin;当 D 继续降低或负载变轻时,曲线开始偏离线性并向下弯曲,这正是进入 DCM 的标志。因此占空比扫描不仅是特性曲线,也是判定工作模式的第一手依据。
二、输出电压纹波与电感电流纹波
CCM 下电感电流呈三角波,峰峰值由伏秒平衡决定:
Δi_L = (V_in - V_o)·D / (L·f_sw) = V_o·(1-D) / (L·f_sw)
输出电压纹波主要来自电容对电感电流交流分量的积分。忽略 ESR 时,峰峰值近似为:
ΔV_o ≈ Δi_L / (8·f_sw·C)
以 Vin=24 V、Vo=12 V、L=100 µH、C=220 µF、fsw=100 kHz 为例:D=0.5,Δi_L = 12×0.5/(100e-6×100e3) = 0.6 A,ΔVo ≈ 0.6/(8×100e3×220e-6) ≈ 3.4 mV。若电容 ESR 为 20 mΩ,则 ESR 纹波 Δi_L×ESR = 12 mV,反而成为主导项。这说明实际纹波分析必须同时考虑 C 与 ESR,不能只看容值。
To Workspace 后取最后 20% 数据段计算峰峰值,避免把启动过冲误判为稳态纹波。三、CCM/DCM 边界条件判定
CCM 与 DCM 的分界是电感电流最小值恰好为零。CCM 临界条件为:
I_o,crit = Δi_L / 2 = V_o·(1-D) / (2·L·f_sw)
当实际负载电流 Io > Io,crit 时工作在 CCM;Io < Io,crit 时进入 DCM。仍用上例,D=0.5 时 Io,crit = 0.6/2 = 0.3 A。若负载电阻 R=40 Ω,Io=0.3 A,恰好处于临界;R 增大到 100 Ω,Io=0.12 A,则进入 DCM,此时 Vo 会高于 D·Vin,占空比扫描曲线出现上翘。
在 Simulink 中判定 DCM 最直接的方法是观察电感电流波形是否出现零平台段。也可以用一个 MinMax 模块取 iL 最小值,若稳态最小值接近 0 且持续一段时间,即判定为 DCM。
四、效率计算与损耗分解
效率 η = Po/Pin,其中 Po=Vo·Io,Pin=Vin·Iin,avg。在 Simulink 中,用 Mean 模块分别对 vo·io 和 vin·iin 求平均即可得到效率。但仅知道总效率不够,需要分解损耗来源:
- 开关管导通损耗:Pcond = Irms²·Rds(on),其中 Irms 为开关管电流有效值。
- 开关损耗:Psw ≈ 0.5·Vin·Io·(tr+tf)·fsw,与频率成正比。
- 电感铜损:PL = IL,rms²·DCR,IL,rms² ≈ Io² + Δi_L²/12。
- 电感铁损:与磁芯材料、ΔB、fsw 相关,可用 Steinmetz 公式估算。
- 电容 ESR 损耗:PC = IC,rms²·ESR,IC,rms ≈ Δi_L/√12。
以 12 V/1 A 输出、Rds(on)=30 mΩ、DCR=50 mΩ、ESR=20 mΩ、tr+tf=50 ns 为例,可估算各损耗占比,从而判断优化方向:若开关损耗占比最大,应降低 fsw 或选用更快器件;若铜损占比最大,应减小 DCR 或增大线径。
五、参数扫描工具的使用
Simulink 提供两种参数扫描方式:Simulink.SimulationInput 数组适合脚本化批量仿真,parsim 可并行加速;Simscape 模型还可用 Parameter Sweep 配置界面。典型流程是:定义扫描变量(L、C、fsw、Rload),为每个变量生成取值组合,用 setVariable 写入 SimulationInput,运行后提取稳态指标,最后用 plot 或 parallelplot 可视化。
L_list = [47e-6, 100e-6, 220e-6];
C_list = [100e-6, 220e-6, 470e-6];
simIn = repmat(Simulink.SimulationInput('buck_openloop'), ...
numel(L_list)*numel(C_list), 1);
idx = 1;
for L = L_list
for C = C_list
simIn(idx) = simIn(idx).setVariable('L', L).setVariable('C', C);
idx = idx + 1;
end
end
out = parsim(simIn, 'ShowProgress', 'on');
六、结果判读与工程判断
完成扫描后,应形成一张“参数—性能”对照表:每个 (L, C, fsw) 组合对应 Δi_L、ΔVo、工作模式、效率。判读时先看是否满足纹波指标(如 ΔVo < 1% Vo),再看是否全程处于 CCM(若要求 CCM),最后在满足前两项的候选中选效率最高、体积最小的方案。例如 L=100 µH、C=220 µF、fsw=100 kHz 在 1 A 负载下 ΔVo≈15 mV(含 ESR),效率约 92%,且 Io,crit=0.3 A < 1 A,稳定工作在 CCM,是一个合理的折中。
开环稳态分析的价值在于:它给出了变换器的“静态骨架”。后续加入电压闭环、电流闭环时,所有控制器的设计都建立在这条骨架之上——知道纹波多大、边界在哪、损耗如何分布,才能判断闭环后动态响应是否合理、稳态误差是否可接受。