01 --功能概要
SVPWM功能模块根据电流环控制即DQ轴电流计算得到的DQ轴电压,再经过反Park变换得到αβ轴电压。根据𝑈α、𝑈β电压计算空间电压矢量所在的扇区,根据所在扇区计算基本电压矢量作用的时间,形成开关信号,控制逆变器,最终转换为MCU 的占空比输出。
02 --相关参数
- α轴电压Uα;
- β轴电压Uβ;
- 直流母线电压V;
- 开关频率f,周期Ts;
03 --控制策略
SVPWM模型包含如上三个模块其中A模块的流程逻辑为:
10:获取α轴、β轴的电压;
20:在α,β为横纵坐标系的条件下,由Va与α轴重合与Vb,Vc互成120°。求得Va,Vb,Vc的表达式;
30:令Va,Vb大于0时,可分别确定6个扇区中的其中3个,由相邻的电压矢量合成空间电压矢量原则可得剩下的Vc所在的扇区,进而由Va,Vb,Vc与0进行比较求得A,B,C的值。
Va > 0,则 A = 1,反之 A = 0;
Vb > 0,则 B = 1,反之 B = 0;
Vc > 0,则 C = 1,反之 C = 0;
40:根据A,B,C的值通过公式A+2B+4C计算得出N的值,通过N的值确定空间电压矢量所在的扇区。
N的值 | 1 | 2 | 3 | 4 | 5 | 6 |
扇区Sec | 2 | 6 | 1 | 4 | 3 | 5 |
B模块的流程逻辑为:
10:获取直流母线电压Udc及载波周期Ts的值;
20:空间电压矢量由相邻两个电压合成,基于等幅值变换,相邻电压的幅值相同,均为2Udc/3。在α轴β轴下,分别计算出6个扇区下相邻电压的作用时长的值并用Uα,Uβ,Ts,Udc表示,令得出的值为X,Y,Z;
30:确定6个扇区,在不同扇区下的矢量作用时长分配;
N的值 | 1 | 2 | 3 | 4 | 5 | 6 |
扇区Sec | 2 | 6 | 1 | 4 | 3 | 5 |
T1 | Z | Y | -Z | -X | X | -Y |
T2 | Y | -X | X | Z | -Y | -Z |
40:矢量作用的总时长为Ts,若超过了Ts即为过调制𝑇1 + 𝑇2 > 𝑇s,需要判断是否过调制;
50:若过调制了,T1和T2需要按比例输出。
60:若没有过调制,T1和T2按原来的矢量作用时长分配输出。
C模块的流程逻辑为:
10:采样七段式对称SVPWM,第1扇区的开关作用时刻如下图:
那么,在半个周期内,a,b,c三相桥臂上桥臂开关断开的时间为Ta,Tb,Tc:
三相桥臂输出的占空比PWM_a,PWM_b,PWM_c:
20:根据基矢量合成的路径确定剩余扇区的占空比;
N的值 | 1 | 2 | 3 | 4 | 5 | 6 |
扇区Sec | 2 | 6 | 1 | 4 | 3 | 5 |
占空比分配 | PWM_b | PWM_a | PWM_a | PWM_c | PWM_c | PWM_b |
PWM_a | PWM_c | PWM_b | PWM_b | PWM_a | PWM_c | |
PWM_c | PWM_b | PWM_c | PWM_a | PWM_b | PWM_a |