Buck-Boost电路状态空间模型实战:从零推导状态方程与输出方程

1次阅读
没有评论

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

image.webp

背景痛点

电力电子初学者在建立 Buck-Boost 电路数学模型时,常会遇到几个典型困难:

Buck-Boost 电路状态空间模型实战:从零推导状态方程与输出方程

  1. 非线性特性 :开关器件导致电路拓扑周期性变化,传统时域分析法难以直接应用
  2. 模式切换 :CCM(连续导通模式)与 DCM(断续导通模式)需分别处理
  3. 变量耦合 :电感电流与电容电压相互影响,手工推导易遗漏交叉项
  4. 实现障碍 :推导结果如何转化为可编程的矩阵形式

技术方法选择

与传统平均模型相比,状态空间法具有明显优势:

  • 统一框架 :CCM/DCM 模式可通过同一组矩阵描述
  • 扩展性强 :便于添加非线性项(如寄生电阻)
  • 控制友好 :直接得到标准形式 $\dot{x}=Ax+Bu$,适合现代控制理论应用

核心推导流程

电路拓扑与参数

circuit LR
    Vin[Vin] --> S[Switch]
    S --> L[L]
    L --> D[Diode]
    D --> C[C]
    C --> R[R]
    D --| 反向 | S

关键参数:
– 电感 $L$,电容 $C$
– 负载电阻 $R$
– 开关周期 $T_s$,占空比 $D$

CCM 模式微分方程

开关 ON 阶段 ($0 < t < DT_s$):

$$
\begin{cases}
L\frac{di_L}{dt} = V_{in} \
C\frac{dv_C}{dt} = -\frac{v_C}{R}
\end{cases}
$$

开关 OFF 阶段 ($DT_s < t < T_s$):

$$
\begin{cases}
L\frac{di_L}{dt} = -v_C \
C\frac{dv_C}{dt} = i_L – \frac{v_C}{R}
\end{cases}
$$

状态变量选择

标准选择原则:
1. 电感电流 $i_L$(存储磁场能量)
2. 电容电压 $v_C$(存储电场能量)

状态向量定义为 $x = [i_L, v_C]^T$

平均化与线性化

对开关周期取平均:

$$
\begin{aligned}
L\frac{d\langle i_L \rangle}{dt} &= D V_{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{aligned}
$$

在平衡点 $(I_L, V_C)$ 附近小信号线性化:

$$
\begin{cases}
\hat{i}_L = i_L – I_L \
\hat{v}_C = v_C – V_C \
\hat{d} = d – D
\end{cases}
$$

MATLAB 实现代码

% Buck-Boost 状态空间模型符号推导
syms L C R Vin D s il vc d_hat

% 稳态工作点
IL = Vin*D/(R*(1-D)^2);
VC = -Vin*D/(1-D);

% 小信号方程
A = [0 -(1-D)/L; (1-D)/C -1/(R*C)];
B = [Vin/L + VC/L; -IL/C];
C_mat = [0 1];  % 输出为电容电压
D_mat = 0;

% 状态空间模型
sys = ss(A, B, C_mat, D_mat);

模型验证方法

  1. Simulink 搭建 :
  2. 使用 SimPowerSystem 库搭建实际电路
  3. 注入阶跃占空比扰动
  4. 解析解对比 :
    [y,t,x] = lsim(sys, d_hat, t);
    plot(t, y, 'r--', simout.Time, simout.Data, 'b-')
  5. 误差指标 :
  6. 稳态误差应 <2%
  7. 动态响应趋势一致

常见问题与解决

  1. 寄生参数影响 :
  2. 在状态方程中添加电感 ESR $r_L$ 和电容 ESR $r_C$
  3. 修正后的 A 矩阵:
    $$
    A = \begin{bmatrix}
    -\frac{r_L(1-D)+r_C D(1-D)+R D^2}{L R} & -\frac{1-D}{L} \
    \frac{1-D}{C} & -\frac{1}{R C}
    \end{bmatrix}
    $$

  4. 模式边界判断 :

  5. 临界电感公式:
    $$
    L_{crit} = \frac{R(1-D)^2 T_s}{2}
    $$
  6. 实际电感需大于 $L_{crit}$ 才能保证 CCM

  7. 数值稳定性 :

  8. 使用 ODE23tb 求解器处理刚性问题
  9. 避免过大的时间步长(建议 <$T_s/100$)

控制器设计延伸

将状态空间模型用于 PID 设计:

  1. 可控性检验 :
    ctrb_rank = rank(ctrb(A,B));
  2. 极点配置 :
    desired_poles = [-1e4, -2e4];
    K = place(A, B, desired_poles);
  3. 状态反馈 :
    $$
    u = -Kx + k_r V_{ref}
    $$

通过本文的建模流程,读者可系统掌握从物理电路到控制模型的完整转换方法,为后续的闭环设计奠定基础。

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