三电平(两电平)SVPWM仿真模型 (1)两电平、三电平三桥臂; (2)有详细的文档介绍,包括原理介绍和仿真模型搭建说明;
在电力电子领域,两电平与三电平 SVPWM(空间矢量脉宽调制)技术是非常重要的部分,今天咱们就来深入探讨下它们的仿真模型搭建。
两电平、三电平三桥臂结构
两电平三桥臂
两电平三桥臂逆变器是最基础的结构。它由三个桥臂组成,每个桥臂由两个功率开关器件(比如 IGBT)构成。以 A 相桥臂为例,上面的开关记为 $S{A1}$,下面的开关记为 $S{A2}$,同一时刻,$S{A1}$ 和 $S{A2}$ 只能有一个导通。假设直流母线电压为 $V{dc}$,当 $S{A1}$ 导通,$S{A2}$ 关断时,A 相输出电压为 $\frac{V{dc}}{2}$;当 $S{A1}$ 关断,$S{A2}$ 导通时,A 相输出电压为 $-\frac{V_{dc}}{2}$。
三电平三桥臂
三电平三桥臂逆变器相对复杂一些。每个桥臂由四个功率开关器件和两个箝位二极管组成。以 A 相桥臂为例,从上到下开关分别记为 $S{A1}$、$S{A2}$、$S{A3}$、$S{A4}$,箝位二极管 $D{A1}$、$D{A2}$。这种结构可以输出三种电平,分别是 $\frac{V{dc}}{2}$、$0$、$-\frac{V{dc}}{2}$,相较于两电平,三电平输出的波形谐波含量更低。
原理介绍
SVPWM 基本原理
SVPWM 的核心思想是通过控制逆变器的开关状态,使得逆变器输出的电压矢量在空间上合成一个期望的旋转电压矢量。以两电平三相逆变器为例,它有 8 种开关状态(包括 6 个有效矢量和 2 个零矢量)。
我们以三相静止坐标系(abc 坐标系)下的电压 $ua$、$ub$、$uc$ 为例,通过 Clark 变换可以将其转换到两相静止坐标系($\alpha\beta$ 坐标系)下的电压 $u{\alpha}$、$u_{\beta}$:
\[
\begin{bmatrix}
u_{\alpha} \\
u_{\beta}
\end{bmatrix}
= \frac{2}{3}
\begin{bmatrix}
1 & -\frac{1}{2} & -\frac{1}{2} \\
0 & \frac{\sqrt{3}}{2} & -\frac{\sqrt{3}}{2}
\end{bmatrix}
\begin{bmatrix}
u_a \\
u_b \\
u_c
\end{bmatrix}
\]
三电平(两电平)SVPWM仿真模型 (1)两电平、三电平三桥臂; (2)有详细的文档介绍,包括原理介绍和仿真模型搭建说明;
再通过 Park 变换可以将 $\alpha\beta$ 坐标系下的电压转换到同步旋转坐标系(dq 坐标系)下的电压 $ud$、$uq$:
\[
\begin{bmatrix}
u_d \\
u_q
\end{bmatrix}
=
\begin{bmatrix}
\cos\theta & \sin\theta \\
-\sin\theta & \cos\theta
\end{bmatrix}
\begin{bmatrix}
u_{\alpha} \\
u_{\beta}
\end{bmatrix}
\]
这里的 $\theta$ 是旋转角度。SVPWM 就是通过合理分配各个矢量的作用时间,来合成期望的电压矢量。
两电平 SVPWM
在两电平系统中,6 个有效矢量将空间平面划分为 6 个扇区。对于给定的期望电压矢量 $V_{ref}$,首先要判断它位于哪个扇区,然后根据扇区关系计算出相邻两个有效矢量和零矢量的作用时间。
# 假设已经计算出期望电压矢量的幅值和角度 V_ref_mag = 1.0 V_ref_angle = np.pi / 4 # 扇区判断 sector = int((V_ref_angle + np.pi / 6) / (np.pi / 3)) % 6 # 这里只是简单示意,实际计算相邻矢量作用时间会更复杂 # 假设相邻矢量分别为 V1, V2 # 零矢量作用时间 T0 T0 = 0.1 if sector == 1: T1 = 0.3 T2 = 0.2 elif sector == 2: T1 = 0.2 T2 = 0.3 # 后续扇区类似计算三电平 SVPWM
三电平的 SVPWM 原理和两电平类似,但由于多了一个电平,开关状态更多,空间矢量分布更复杂。它有 27 种开关状态,其中 18 个有效矢量和 3 个零矢量。在计算矢量作用时间和扇区判断上会更繁琐一些。
仿真模型搭建说明
两电平 SVPWM 仿真模型搭建
以 Matlab/Simulink 为例,首先搭建三相逆变器模块,设置直流母线电压等参数。然后构建 SVPWM 模块,在该模块中,按照前面所述原理进行编程实现,计算矢量作用时间并输出相应的 PWM 信号来控制逆变器的开关。
% Matlab 代码实现 SVPWM 模块部分功能示意 % 计算参考电压矢量在扇区中的位置 alpha = V_ref_angle - (sector * np.pi / 3) % 根据扇区和位置计算矢量作用时间等具体细节代码省略将 PWM 信号连接到逆变器的开关控制端,再通过测量模块获取输出电压等信号进行分析。
三电平 SVPWM 仿真模型搭建
同样在 Matlab/Simulink 中,先搭建三电平三相逆变器模型,这部分要注意桥臂结构和箝位二极管的正确连接。SVPWM 模块的搭建相对复杂,要充分考虑多电平的矢量分布和计算逻辑。在代码实现上,扇区判断和矢量作用时间计算的逻辑会更复杂。例如:
% 三电平 SVPWM 扇区判断示意 if V_ref_mag <= 0.5 * V_dc % 属于小矢量区域,进一步细分扇区判断 sub_sector = int((V_ref_angle + np.pi / 6) / (np.pi / 6)) % 这里只是简单示意细分逻辑 % 根据细分扇区计算矢量作用时间等 else % 属于中矢量或大矢量区域,不同判断逻辑 end最后连接各模块,运行仿真,就可以对三电平 SVPWM 系统进行分析了。
通过对两电平与三电平 SVPWM 仿真模型的深入了解,我们能更好地掌握电力电子系统中的电压控制技术,为实际应用打下坚实基础。无论是电机驱动还是电力系统无功补偿等领域,这两种技术都发挥着重要作用。