前言:
SVPWM是变流器控制基础,其实现流程大致为,判断合成矢量所在扇区,计算相邻矢量作用时间,计算各桥臂导通时间,得到各相PWM占空比,更新相应寄存器值。输出开关控制信号。
1.判断矢量所在扇区:
根据参考矢量Vref与U4(100)夹角θ的大小可以很清楚的判断出Vref所处的扇区。
采用上述方法,只需经过简单的加减及逻辑运算即可确定所在的扇区。并且ABC实际就是8421bcd码,通过8421bcd码与十进制的对应关系就得到了扇区。
2.矢量作用时间:
Vref在六个扇区中的变化轨迹都是相同的,只需计算出Vref在一个扇区中变化时相邻矢量作用的时间,即可推导出所有的情况。以I扇区为例,计算一个增量位置矢量的作用时间:
通过以上定义与分析可以得到各矢量得状态保持时间。其它扇区的只需要将θ减去60°的n倍即可,n为扇区序号减1。Tx,Ty可分别计算两个参考矢量作用时间。
结论:该算法用到空间角度及三角函数,计算基本电压矢量作用时间。使得直接计算基本电压矢量作用时间变得十分困难。
一般都是建立在两相静止坐标系下,根据的值直接计算开关导通时间,因为的值在座标变换过程中本就会计算出一次,所以这样做便可省去一次三角函数计算,进而减小计算量。
参照T4,T6的作用时间推导,搭建其它扇区mathcad模型,计算矢量作用时间。
通过矢量作用时间的求解,可以发现这些结果可进一步简化计算结果:
定义X,Y,Z
3.输出开关控制信号:
要实现对开关导通与关断的有效控制,仅仅得到矢量作用时间是不够的,还需要根据矢量作用时间计算出每个开关导通和关断的具体时刻。还有如何产生实际的脉宽调制波形。
基本矢量排序:
根据八个基本电压空间矢量的大小和位置可知排序为462315,这六个矢量控制的是功率半导体-Mosfet或者IGBT;这些管子在开关和导通过程中会有热量产生,也就是开关损耗。为了最大限度的降低损耗,每个扇区(包含扇区内部)的开关切换,都需要保证只改动一个桥臂的动作,这样发热量最小,功率密度才能做的更高。
逆时针旋转(462315):100—110—010—011—001—101
顺时针旋转(451326):100-101-001-011-010-110
可得每个扇区的开关切换,只改变一个桥臂的动作
扇区内发波:
在SVPWM调制方案中,零矢量的选择是最具灵活性的,适当选择零矢量,可最大限度地减少开关次数,尽可能避免在负载电流较大的时刻的开关动作,最大限度地减少开关损耗。一个开关周期中空间矢量按分时方式发生作用,在时间上构成一个空间矢量的序列,空间矢量的序列组织方式有多种,按照空间矢量的对称性分类,可分为两相开关换流与三相开关换流。下面对常用的序列做分析。
七段式发波:
以减少开关次数为目标,按基本矢量排序的分配原则选定为:在每次开关状态转换时,只改变其中一相的开关状态。并且对零矢量在时间上进行了平均分配,以使产生的 PWM 对称,从而有效地降低PWM的谐波分量。当 U4(100)切换至 U0(000)时,只需改变A 相上下一对切换开关,若由U4(100)切换至 U7(111)则需改变 B、C 相上下两对切换开关,增加了一倍的切换损失。因此要改变电压向量 U4(100)、U2(010)、U1(001)的大小,需配合零电压向量 U0(000),而要改变 U6(110)、U3(011)、U5(100),需配合零电压向量 U7(111)。这样通过在不同区间内安排不同的开关切换顺序,就可以获得对称的输出波形。
Mathcad仿真数据:
五段式发波:
7段式发波对称,谐波含量较小,但式每个开关周期有6次开关切换,为了进一步减少开关次数,采用每相开关在每个扇区状态维持不变的序列安排,使得每个开关周期只有3次开关切换,但是会增大谐波含量。
通过扇区内发波分析,可以发现这些结果可进一步简化计算结果:
生成开关控制信号:
上面计算出的SaSbSC送入DSP定时器寄存器,算法依然不能自行判断何时改变开关状态。将这三个时间变量与三角波比较后算法就能精确的在指定的时间改变开关状态。