015、SVPWM算法推导与实现
015、SVPWM算法推导与实现
从一次电机啸叫说起
去年调试一个永磁同步电机驱动器,上电后电机没转,先听到一阵尖锐的啸叫声。示波器抓出相电流波形,正弦波上叠了一堆毛刺,像被狗啃过。当时用的还是SPWM,查了半天发现是死区时间补偿没做好。后来换成SVPWM,同样的死区设置,电流波形干净了一大截。这不是说SVPWM比SPWM高级多少,而是SVPWM天然对直流母线电压利用率更高,同样的母线电压下能多输出15%的相电压幅值。这个15%在低速段可能无所谓,到了高速弱磁区,就是能不能跑上去的分水岭。
从三相坐标系到αβ坐标系
SVPWM的核心思想不是去调制三相正弦波,而是直接控制合成电压矢量在空间中的旋转。三相定子绕组在空间上相差120度,通入三相对称电流后,会在气隙中产生一个旋转的磁动势。这个磁动势可以用一个空间矢量来表示,它的幅值恒定,转速由电流频率决定。
把三相坐标系变换到两相静止αβ坐标系,这一步叫Clark变换。公式很简单:
Iα = Ia Iβ = (Ia + 2*Ib) / √3注意这里用的是等幅值变换,不是等功率变换。等幅值变换的好处是变换后的αβ分量幅值和三相电流幅值一致,调试时看波形更直观。等功率变换要乘√(2/3)的系数,功率计算方便但波形幅值变了,容易把人搞晕。我习惯用等幅值,除非项目明确要求功率守恒。
六个扇区与电压矢量的合成
逆变器六个开关管,上桥臂三个、下桥臂三个。同一桥臂上下不能同时导通,这是基本常识,但真有人犯过这
