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

1次阅读
没有评论

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

image.webp

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

Buck-Boost 变换器作为能够实现升降压的核心拓扑,在新能源发电、电池管理等场景广泛应用。传统时域仿真虽然直观,但存在两个致命缺陷:

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

  • 开关动作导致系统周期性跳变,难以直接分析稳定性
  • 时域仿真耗时严重,不利于参数优化设计

状态空间平均法通过将开关周期内的行为 ” 平滑化 ”,得到适用于频域分析的线性模型,是控制器设计的黄金工具。

模型推导全流程

第一步:建立开关状态方程

假设电感电流连续模式 (CCM),定义两个开关状态:

  1. 开关管导通阶段 (占空比 d 时段):
\begin{cases}
L\frac{di_L}{dt} = V_{in} \\ 
C\frac{dv_C}{dt} = -\frac{v_C}{R}
\end{cases}
  1. 开关管关断阶段 (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)

避坑指南

  1. 右半平面零点
  2. Buck-Boost 存在固有的 RHP 零点 $z = \frac{(1-D)^2R}{L}$
  3. 会导致常规 PID 控制失效,建议采用:

    • 双环路控制
    • 前馈补偿
  4. 模型验证三板斧

  5. 对比开关模型阶跃响应
  6. 检查直流增益是否匹配理论值
  7. 验证极点位置与特征频率

  8. 调试技巧

  9. 先调电压环再调电流环
  10. 用电流探头实测电感电流波形
  11. 负载突变测试建议使用电子负载

延伸思考

  1. 如何在状态空间模型中体现变换器的断续导通模式 (DCM)?
  2. 当输入电压范围宽至 10:1 时,模型该如何自适应调整?
  3. 数字控制系统中,如何将连续域模型转换为离散控制器?
正文完
 0
评论(没有评论)