这是之前一个大湿胸...发给我的SVPWM教程(并非原创),我觉得的不错,在网上大概搜了一下,没看到原文,也不知道是谁写的,如果作者看到请联系我,加了一些自己总结的部分,一起先分享给大家。
另外:这么长的文章其实没必要从大头到尾全部看全部理解,电机这
个东西,除非你专门研究它的,没有必要研究太深,能拿来用就行(越底层的东西,money/time的值越小,比如说你的系统中有一个电池包,你肯定不会去研究电池内部的正负极和电解液的结构或者充放电电化学原理的)。大家开始的时候,会调参数就行(知道每个参数的作用,尤其是Uq、Ud、Iq、Id、Angel、kp、ki这几个参数),管你是做机器人、机械臂还是车子的,随着项目的进行,对照着真实代码,有些原理自然水到渠成就懂了,这是我的个人建议。
一、SVPWM
-
- SVPWM简介
SVPWM是近年发展的一种比较新颖的控制方法,是由三相功率逆变器的六个功率开关元件组成的特定开关模式产生的脉宽调制波,能够使输出电流波形尽可能接近于理想的正弦波形。空间电压矢量PWM与传统的正弦PWM不同,它是从三相输出电压的整体效果出发,着眼于如何使电机获得理想圆形磁链轨迹。 SVPWM技术与SPWM相比较,绕组电流波形的谐波成分小,使得电机转矩脉动降低,旋转磁场更逼近圆形,而且使直流母线电压的利用率有了很大提高,且更易于实现数字化。下面将对该算法进行详细分析阐述。
-
- SVPWM基本原理
SVPWM 的理论基础是平均值等效原理,即在一个开关周期内通过对基本电压矢量加以组合,使其平均值与给定电压矢量相等。在某个时刻,电压矢量旋转到某个区域中,可由组成这个区域的两个相邻的非零矢量和零矢量在时间上的不同组合来得到。两个矢量的作用时间在一个采样周期内分多次施加,从而控制各个电压矢量的作用时间,使电压空间矢量接近按圆轨迹旋转,通过逆变器的不同开关状态所产生的实际磁通去逼近理想磁通圆,并由两者的比较结果来决定逆变器的开关状态,从而形成PWM 波形。逆变电路如图 2-8 示。
设直流母线侧电压为Udc,逆变器输出的三相相电压为UA、UB、UC,其分别加在空间上互差120°的三相平面静止坐标系上,可以定义三个电压空间矢量 UA(t)、UB(t)、UC(t),它们的方向始终在各相的轴线上,而大小则随时间按正弦规律做变化,时间相位互差120°。假设Um为相电压有效值,f为电源频率,则有:
(2-27)
其中,,则三相电压空间矢量相加的合成空间矢量 U(t)就可以表示为:
(2-28)
可见 U(t)是一个旋转的空间矢量,它的幅值为相电压峰值的1.5倍,Um为相电压峰值,且以角频率ω=2πf按逆时针方向匀速旋转的空间矢量,而空间矢量 U(t)在三相坐标轴(a,b,c)上的投影就是对称的三相正弦量。
图 2-8 逆变电路
由于逆变器三相桥臂共有6个开关管,为了研究各相上下桥臂不同开关组合时逆变器输出的空间电压矢量,特定义开关函数 Sx ( x = a、b、c) 为:
(2-30)
(Sa、Sb、Sc)的全部可能组合共有八个,包括6个非零矢量 Ul(001)、U2(010)、U3(011)、U4(100)、U5(101)、U6(110)、和两个零矢量 U0(000)、U7(111),下面以其中一 种开关 组 合为 例分 析,假设Sx ( x== a、b、c)= (100), 此 时
(2-30)
求解上述方程可得:Uan=2Ud /3、UbN=-U d/3、UcN=-Ud /3。同理可计算出其它各种组合下的空间电压矢量,列表如下:
表 2-1 开关状态与相电压和线电压的对应关系
Sa |
Sb |
Sc |
矢量符号 |
线电压 |
相电压 |
||||
Uab |
Ubc |
Uca |
UaN |
UbN |
UcN |
||||
0 |
0 |
0 |
U0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
U4 |
Udc |
0 |
-Udc |
|
|
|
1 |
1 |
0 |
U6 |
0 |
Udc |
-Udc |
|
|
|
0 |
1 |
0 |
U2 |
-Udc |
Udc |
0 |
|
|
|
0 |
1 |
1 |
U3 |
-Udc |
0 |
-Udc |
|
|
|
0 |
0 |
1 |
U1 |
0 |
-Udc |