共计 2040 个字符,预计需要花费 6 分钟才能阅读完成。
为什么需要状态空间平均模型
Buck-Boost 变换器作为能够实现升降压的核心拓扑,在新能源发电、电池管理等场景广泛应用。传统时域仿真虽然直观,但存在两个致命缺陷:

- 开关动作导致系统周期性跳变,难以直接分析稳定性
- 时域仿真耗时严重,不利于参数优化设计
状态空间平均法通过将开关周期内的行为 ” 平滑化 ”,得到适用于频域分析的线性模型,是控制器设计的黄金工具。
模型推导全流程
第一步:建立开关状态方程
假设电感电流连续模式 (CCM),定义两个开关状态:
- 开关管导通阶段 (占空比 d 时段):
\begin{cases}
L\frac{di_L}{dt} = V_{in} \\
C\frac{dv_C}{dt} = -\frac{v_C}{R}
\end{cases}
- 开关管关断阶段 (1- d 时段):
\begin{cases}
L\frac{di_L}{dt} = -v_C \\
C\frac{dv_C}{dt} = i_L - \frac{v_C}{R}
\end{cases}
第二步:周期平均化处理
对两个状态方程进行加权平均(权重为占空比),得到平均模型:
\begin{cases}
L\frac{d\langle i_L \rangle}{dt} = dV_{in} - (1-d)\langle v_C \rangle \\
C\frac{d\langle v_C \rangle}{dt} = (1-d)\langle i_L \rangle - \frac{\langle v_C \rangle}{R}
\end{cases}
第三步:小信号线性化
在静态工作点附近施加扰动:
\begin{aligned}
d &= D + \hat{d} \\
i_L &= I_L + \hat{i}_L \\
v_C &= V_C + \hat{v}_C
\end{aligned}
忽略二阶小量后,得到扰动方程:
\begin{cases}
L\frac{d\hat{i}_L}{dt} = D\hat{v}_{in} + V_{in}\hat{d} - (1-D)\hat{v}_C + V_C\hat{d} \\
C\frac{d\hat{v}_C}{dt} = (1-D)\hat{i}_L - I_L\hat{d} - \frac{\hat{v}_C}{R}
\end{cases}
第四步:矩阵形式标准化
整理成状态空间标准形式 $\dot{x}=Ax+Bu$:
\begin{bmatrix}
\frac{d\hat{i}_L}{dt} \\
\frac{d\hat{v}_C}{dt}
\end{bmatrix}
=
\begin{bmatrix}
0 & -\frac{1-D}{L} \\
\frac{1-D}{C} & -\frac{1}{RC}
\end{bmatrix}
\begin{bmatrix}
\hat{i}_L \\
\hat{v}_C
\end{bmatrix}
+
\begin{bmatrix}
\frac{D}{L} & \frac{V_{in}+V_C}{L} \\
0 & -\frac{I_L}{C}
\end{bmatrix}
\begin{bmatrix}
\hat{v}_{in} \\
\hat{d}
\end{bmatrix}
MATLAB 实现示例
% 参数设置
Vin = 24; % 输入电压 (V)
D = 0.6; % 占空比
R = 10; % 负载电阻 (Ω)
L = 100e-6; % 电感 (H)
C = 470e-6; % 电容 (F)
% 计算静态工作点
Vc = -Vin*D/(1-D); % 注意输出电压极性
Il = Vc/(R*(1-D));
% 构建状态矩阵
A = [0, -(1-D)/L;
(1-D)/C, -1/(R*C)];
B = [D/L, (Vin+Vc)/L;
0, -Il/C];
Cmat = [0 1]; % 选择输出电压作为观测
Dmat = 0;
% 频域分析
sys = ss(A,B,Cmat,Dmat);
bode(sys), grid on
工程实践要点
模型精度优化
- 开关频率影响 :实际应用中建议开关频率 > 10 倍目标带宽
- 寄生参数处理 :
R_{L} \rightarrow 增加状态方程项:-\frac{R_L}{L}i_L
参数灵敏度测试
通过蒙特卡洛分析观察关键参数影响:
% 电感容差分析
L_tol = L*(1 + 0.2*(rand(100,1)-0.5));
phase_margin = arrayfun(@(L) ...
margin(ss([0 -(1-D)/L; (1-D)/C -1/(R*C)],B,Cmat,Dmat)), L_tol);
histogram(phase_margin)
避坑指南
- 右半平面零点
- Buck-Boost 存在固有的 RHP 零点 $z = \frac{(1-D)^2R}{L}$
-
会导致常规 PID 控制失效,建议采用:
- 双环路控制
- 前馈补偿
-
模型验证三板斧
- 对比开关模型阶跃响应
- 检查直流增益是否匹配理论值
-
验证极点位置与特征频率
-
调试技巧
- 先调电压环再调电流环
- 用电流探头实测电感电流波形
- 负载突变测试建议使用电子负载
延伸思考
- 如何在状态空间模型中体现变换器的断续导通模式 (DCM)?
- 当输入电压范围宽至 10:1 时,模型该如何自适应调整?
- 数字控制系统中,如何将连续域模型转换为离散控制器?
正文完
发表至: 电子工程
近三天内
