目录
手把手教你学Simulink——基于状态空间平均法(SSA)的 DC‑DC 变换器小信号模型仿真
一、Buck SSA 小信号推导(核心公式)
1.1 状态变量与输入
1.2 平均模型(稳态占空 Dˉ)
1.3 控制‑to‑输出传递 Gvd(s)=C(sI−A)−1E
二、系统参数
三、Simulink 建模(手把手)
3.1 Step 1️⃣ —— SSA 平均模型(Continuous Linear)
法 A:State‑Space块(推荐)
法 B:Transfer Fcn(直观)
3.2 Step 2️⃣ —— 开关细节 Buck 模型(对比)
3.3 Step 3️⃣ —— 联合验证
四、结果解读
✅ SSA 小信号 Bode
✅ 负载阶跃对比
五、工程注意点
六、结论
手把手教你学Simulink——基于状态空间平均法(SSA)的 DC‑DC 变换器小信号模型仿真
在开关电源设计中,状态空间平均法(State‑Space Averaging, SSA) 是分析Buck / Boost / Buck‑Boost 小信号特性(环路增益、穿越频率 fc、相位裕度 PM) 的经典方法:
分别写出导通(ON) 与关断(OFF) 状态的空间方程 x˙=A1x+B1u、x˙=A2x+B2u
对占空比 d(t)加权平均 →平均模型 x^˙=Ax^+Bu^+Ed^
线性化获得控制‑to‑输出传递函数 Gvd(s)、音频‑抑制比 Gvg(s)
想让你的Buck(24V→12V, L=22µH, C=470µF, ESR=10mΩ, fsw=200kHz, D≈0.5):
在 Simulink 中建立SSA 小信号模型(Continuous / Linearized)
直接观测Gvd(s)Bode 图(fc≈15kHz,PM≈60°与前 Type‑II 章吻合)
对比开关模型(PWM+MOSFET)负载阶跃 Vo响应 与小信号预测是否一致
基于 Simulink 的 State‑Space / Transfer Fcn 块植入平均模型 + 开关细节模型对比架构是破局关键。
无论你是电力电子环路设计工程师还是学 SSA 理论如何落地的硕博,这篇硬核指南都成为你手中“平均模型标尺”。
一、Buck SSA 小信号推导(核心公式)
1.1 状态变量与输入
x=[iLvC],u=[VinVg](Vg指输入电压扰动)
开关导通(S=ON, D≈1):LdtdiL=Vin−vo,Cdtdvo=iL−Rvo,vo=vC
A1=[0C1−L1−RC1],B1=[L1000]
开关关断(S=OFF, D≈0,续流二极管):LdtdiL=−vo
A2=[0C1−L1−RC1],B2=[0000]
(Buck 续流时输入不出力 ⇒ B2第一列 0)
📌 注意:含 ESR Rc时 vo=vC+iCRc,状态矩阵略变(见 §2)
1.2 平均模型(稳态占空 Dˉ)
A=A2+(A1−A2)Dˉ=[0C1−LDˉ−RC1]
B=B2+(B1−B2)Dˉ=[LDˉ000]
控制矩阵(对 d^):
E=(A1−A2)xss+(B1−B2)[Vin0]=[LVin−vC,ss0]但线性化常用 E=[LVin−Vo0]
稳态 Vo=DVin,IL=Vo/R⇒
E≈[LVin(1−D)0]
1.3 控制‑to‑输出传递 Gvd(s)=C(sI−A)−1E
输出 y=vo=Cx,C=[01](若无 ESR)
含 ESR Rc:y=vC+Rc(CdtdvC)=[Rc/C,1+Rc/R]⋅x或直接用
Transfer Fcn拼 ESR 零极点
二、系统参数
参数 | 值 |
|---|---|
Vin | 24 V |
Vo | 12 V ⇒ D≈0.5 |
L | 22 µH |
C | 470 µF |
Rload | 2.4 Ω (5A) |
Resr | 10 mΩ |
fsw | 200 kHz |
Dss | 0.5 |
稳态 IL | 5 A |
稳态 VC | 12 V |
三、Simulink 建模(手把手)
3.1 Step 1️⃣ —— SSA 平均模型(Continuous Linear)
法 A:State‑Space块(推荐)
Amatrix:
A = [0, -D_ss/L; 1/C, -1/(R_load*C)]; % D_ss=0.5, L=22e-6, C=470e-6, R_load=2.4 A = [0, -0.5/22e-6; 1/470e-6, -1/(2.4 * 470e-6)];Bmatrix:
B = [D_ss/L, 0; 0, 0];Cmatrix(含 ESR):
% y = v_o = v_C + i_C*R_esr, i_C = C*dv_C/dt = i_L - v_C/R % 用 Transfer Fcn 加 ESR zero 更简单; 或 State-Space 增 aux output: C_mat = [R_esr/C, 1]; % v_o = (R_esr/C)*i_L + 1*v_CDmatrix (直接馈通通常 0):[0 0]E(输入 disturbance / 控制):Input‑1: [Vin0]→
B*uInput‑2: d^→
E*d_hat加Inport(2)
E = [(Vin*(1-D_ss))/L; 0]; % Vin=24, D_ss=0.5 → (24 * 0.5)/22e-6Initial conditions: iL(0)=ILss=5A,vC(0)=12V打开Linearization 可在
linmod('modelname')后bode(sys)看 Gvd(s)
法 B:Transfer Fcn(直观)
Buck LC + ESR 近似:
Gvd(s)=Vin⋅D⋅LCs2+(RL+ResrC)s+11+sResrC
Num = Vin⋅D⋅[ResrC,1]
Den = [L∗C,L/R+Resr∗C,1]
输入 = d^(小信号占空扰动),输出 = v^o
用
Step注入 d^(幅 0.01)可看小信号阶响一致开关模型
3.2 Step 2️⃣ —— 开关细节 Buck 模型(对比)
同前章:24V → MOS PWM (三角 200k, D≈0.5) → L=22µH → C=470µF → R_load
负载 Step 2.4Ω→1.2Ω @0.1s
反馈分压 → Type‑II PI (Kp=0.02,Ki=120) → PWM
Scope Vo
3.3 Step 3️⃣ —— 联合验证
小信号 Bode:
用
linmod或 Control System Toolboxgetlinio→bode(ss_sys)预期:fLC=1/(2π√LC)≈1.56kHz, ESR zero 34kHz, fc≈15kHz,PM≈60°
负载阶跃对比:
开关模型 0.1s 负载 ↑ → 记 ΔVo_sw
SSA 平均模型(相同 RloadStep 或 iload扰动)→ ΔVo_avg应相近(SSA 不含开关纹纹但动态包络一致)
四、结果解读
✅ SSA 小信号 Bode
Gvd(s):双极点 @1.56kHz, ESR 零点 @34kHz
穿越 fc≈14.8kHz, PM≈62°(匹配 Type‑II 补偿设计章)
确认平均模型参数正确
✅ 负载阶跃对比
开关模型:Vo纹波 12V±0.25V, 阶跃 dip ≈0.22V
SSA 平均模型(无纹波):Vo包络 dip ≈0.21V, 恢复时间一致
⇒ SSA 正确捕获慢动态(<<fsw)
五、工程注意点
实机因素 | SSA 处理 |
|---|---|
电感受温 ↑ → L↓ | 扫 L±20%→ 看 PM 仍 >45° |
输入滤波(前级 C_in+L_in) | 增状态 [iLin;vCin]扩 A/B |
右半平面零点(Boost/Buck‑Boost) | SSA 自然含(控制矩阵 E 符号反)⇒ 可分析 frhp |
平均模型 ≠ 开关细节 | 只用环路设计 / 交流扫描;最终必回 PWM‑开关 模型验证 |
六、结论
你掌握了Buck DC‑DC 状态空间平均(SSA)小信号建模与 Simulink 实现:
✅ 推导导通/关断 A1,A2,B1,B2→ 平均 A=A2+(A1−A2)D,B=B2+(B1−B2)D
✅ 控制矩阵 E=[(Vin(1−D))/L;0]
✅ Simulink
State‑Space块(或Transfer Fcn含 ESR 零)植入✅ Bode Gvd(s)→ fc≈15kHz,PM≈62°,负载阶跃与开关模型吻合
SSA 是环路补偿设计、灵敏度分析、多环路 MIMO 系统(如 CCM CLLC, 双向)基础
可直接扩展 →Boost / Buck‑Boost SSA(含 RHP zero)、加输入 EMI 滤波器状态、用
slTuner自动整定 Type‑II/III 补偿