Buck-Boost电路状态空间平均模型:从理论推导到工程实现

1次阅读
没有评论

共计 2427 个字符,预计需要花费 7 分钟才能阅读完成。

image.webp

为什么需要状态空间平均模型?

Buck-Boost 变换器作为能够升降压的 DC-DC 拓扑,在新能源发电、电动汽车等场景广泛应用。但其开关非线性特性使得传统时域分析效率低下——每次开关动作都需要重新计算电路状态,仿真速度慢且难以提取系统动态特性。

Buck-Boost 电路状态空间平均模型:从理论推导到工程实现

状态空间平均法通过将开关周期内的行为 ” 平滑化 ”,成功将非线性系统转化为可线性分析的连续模型。这个模型不仅能预测系统稳定性,还为控制器设计提供了数学基础。

核心推导:四步建立数学模型

1. 建立开关阶段微分方程

首先定义两个开关状态(S 导通 / S 关断),用 KCL/KVL 列写状态方程。设电感电流 $i_L$ 和电容电压 $v_C$ 为状态变量,输入电压为 $V_{in}$:

S 导通阶段(占空比 d)
$$
\begin{cases}
L\frac{di_L}{dt} = V_{in} \
C\frac{dv_C}{dt} = -\frac{v_C}{R}
\end{cases}
$$

S 关断阶段(1-d)
$$
\begin{cases}
L\frac{di_L}{dt} = -v_C \
C\frac{dv_C}{dt} = i_L – \frac{v_C}{R}
\end{cases}
$$

2. 周期平均化处理

对开关周期 T 内的行为取平均,得到混合方程:
$$
\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}
$$

3. 小信号线性化

将变量拆分为直流分量(大写)和交流分量(小写带 ^):
– $d = D + \hat{d}$
– $\langle i_L \rangle = I_L + \hat{i}_L$
– $\langle v_C \rangle = V_C + \hat{v}_C$

忽略二阶小量后,得到扰动方程:
$$
\begin{cases}
L\frac{d\hat{i}L}{dt} = D\hat{v} \
C\frac{d\hat{v}_C}{dt} = (1-D)\hat{i}_L – I_L\hat{d} – \frac{\hat{v}_C}{R}
\end{cases}
$$} + V_{in}\hat{d} – (1-D)\hat{v}_C + V_C\hat{d

4. 矩阵形式标准化

整理成状态空间标准形式 $\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
\
0 & -\frac{I_L}{C}
\end{bmatrix}
\begin{bmatrix}
\hat{v}_{in} \
\hat{d}
\end{bmatrix}
$$}+V_C}{L

MATLAB 实现示例

% 系统参数设置
Vin = 24;       % 输入电压 (V)
D = 0.6;        % 占空比
L = 100e-6;     % 电感 (H)
C = 470e-6;     % 电容 (F)
R = 10;         % 负载电阻 (Ω)

% 计算稳态工作点
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];
C_mat = eye(2);     % 输出全部状态变量
D_mat = zeros(2,2);

% 创建系统对象
sys = ss(A,B,C_mat,D_mat);

% 绘制伯德图
figure
bode(sys)
grid on
title('Buck-Boost 小信号模型频响特性')

工程实践中的关键考量

模型精度与开关频率

  • 开关频率越高,平均化假设越准确
  • 建议开关频率 >10 倍系统带宽时使用
  • 高频时需考虑 MOSFET 开关损耗

寄生参数影响

主要敏感参数包括:

  • 电感等效串联电阻 (ESR)
  • 电容等效串联电阻 (ESR)
  • 二极管正向压降

可通过修正状态方程加入这些项:
$$
A_{new} =
\begin{bmatrix}
-\frac{R_{L}}{L} & -\frac{1-D}{L} \
\frac{1-D}{C} & -\frac{1}{R_{total}C}
\end{bmatrix}
$$

参数灵敏度分析示例

改变电感值观察带宽变化:

L_range = [50e-6, 100e-6, 200e-6];
figure
hold on
for L_val = L_range
    A(1,2) = -(1-D)/L_val;
    sys = ss(A,B,C_mat,D_mat);
    bode(sys)
end
legend('50uH','100uH','200uH')

避坑指南

常见建模错误

  1. 忽略右半平面零点(RHPZ):
  2. Buck-Boost 存在固有 RHPZ
  3. 会导致传统 PID 控制失效
  4. 解决方法:采用电流模式控制

  5. 工作点计算错误:

  6. 必须确保 $V_C=-V_{in}D/(1-D)$
  7. 错误的工作点会导致线性化失效

模型验证方法

  • 对比开关模型仿真结果
  • 在 10% 扰动范围内验证
  • 重点检查穿越频率相位裕度

调试技巧

  • 先验证开环响应再设计补偿器
  • 用实际示波器波形校正模型
  • 预留 20% 参数调整余量

延伸思考

  1. 如何修改模型使其适用于电流模式控制分析?
  2. 当负载变为恒功率特性时,状态方程需要做哪些调整?
  3. 在数字控制实现中,离散化采样会对模型精度产生什么影响?

通过这个系统的推导和实践,我们不仅得到了可用的数学模型,更重要的是理解了模型背后的物理意义。下次当你面对一个电源设计问题时,不妨先花时间建立正确的数学模型——这往往会节省大量的调试时间。

正文完
 0
评论(没有评论)