王 鑫, 劉 巖
(1.哈爾濱瑞格大電機技術有限公司 黑龍江 哈爾濱 150030;2.哈爾濱市衛生局 黑龍江 哈爾濱 150000)
PWM[1]的全稱是 Pulse Width Modulation,它是通過改變輸出方波的占空比來改變等效的輸出電壓。
所謂SPWM[2],就是在PWM的基礎上改變了調制脈沖方式,脈沖寬度時間占空比按正弦規律排列,這樣輸出波形經過適當的濾波可以做到正弦波輸出。它廣泛地用于直流交流逆變器等產品,比如高級一些的UPS就是一個典型應用。三相SPWM是使用SPWM模擬市電的三相輸出,在變頻器領域被廣泛的采用。經過長期的發展,SPWM大致可分成電壓SPWM、電流 SPWM和電壓空間矢量SPWM。其中電壓和電流SPWM是從電源角度出發的SPWM,而電壓空間矢量SPWM是從電動機角度出發的SPWM。
文中主要介紹使用TMS320F28335高性能DSP處理器的EVA模塊[3]生成電壓SPWM波形,并且該方案已成功應用到三相逆變電源中。產生電壓SPWM波的方法可分為硬件法和軟件法兩類,硬件法主要是采用專用集成電路 (如SA8281),但這種方法成本高、靈活性差,在實際產品中很少采用;軟件法是軟件通過實時計算來生成SPWM波,這種方法靈活性強,實現成本低。SPWM波的實時計算對控制器的運算速度要求較高,TI公司出品的TMS320F28335高性能的DSP(數字信號處理器)無疑是滿足這一要求的理想選擇。
SPWM的實現算法主要有等效面積法、自然采樣法、規則采樣法、不對稱規則采樣法等。這幾種方法各有優缺點,等效面積法和自然采樣法的優點是所得SPWM波形最接近正弦波,但脈寬表達式是一個超越方程,計算繁瑣,難以實時控制;規則采樣法計算簡單,但波形失真率高,線性控制范圍小;不規則對稱采樣法介于二者之間,結合TMS320F28335的性能,采用不規則對稱采樣法,以下主要介紹如何使用不規則對稱采樣法生成SPWM波形。
產生SPWM波的原理是:用一組等腰三角波與一個正弦波進行比較,其相交的時刻(即交點)作為開關管“開”或“關”的時刻。這組等腰三角形波稱為載波,而正弦波稱為調制波,如圖1所示。正弦波的頻率和幅值是可控制的,改變正弦波的頻率,就可以改變電源輸出電壓的頻率;改變正弦波的幅值,也就改變了正弦波與載波的交點,使輸出脈沖系列的寬度發生變化,從而改變電源輸出電壓的大小。

圖1 SPWM波形生成方法Fig.1 SPWM wave generation method
通過實時計算生成電壓SPWM需要建立數學方程式,建立數學方程式的方法有諧波消除法、等效面積法、采樣法以及他們演變來的各種方法。文中介紹算法是不對稱規則采樣法,不對稱規則采樣法是用階梯波去逼近正弦波。每個載波周期內采樣兩次,既在三角波的頂點對稱軸位置采樣,又在三角波的底點對稱軸位置采樣,由于這樣采樣所形成的階梯波與三角波的交點不對稱,故稱其為不對稱規則采樣法,如圖2所示。此法所形成的階梯波與正弦波的逼近程度大大提高,諧波分量小,計算量較小,在實際應用中得到了良好的驗證。

圖2 SPWM不規則對稱法Fig.2 SPWM irregular symmetry method
圖2 中所示,UP是三角波載波峰值,TC是三角波載波周期,t1和t2分別是兩次采樣時刻,他們決定了SPWM波上的“開”、“關”時間,分別是 t1on,t1off和 t2on,t2off。 根據圖 2 可得:t1on=TC+a;由三角形相似定理可得為三角波載波峰值,可規劃為1,所以a=TCsin t1;因此可推導出三角波頂點的導通時間數學方程式如下:

同理,三角波底點的導通時間數學方程式如下:

其中M為正弦波峰值與三角波峰值之比(UM/UP),稱為調制度;N為三角波頻率與正弦波頻率之比(fC/f),稱為載波比;k為偶數時代表頂點采樣,k為奇數時代表底點采樣;SPWM波的脈寬為ton=t1on+t2on,即:

以上是生成單項SPWM波的數學方程式,要生成三相SPWM波,必須使用三條正弦波和同一條三角波求交點,三相正弦波依次相差120°,因此另兩項SPWM波的數學方程式為:

TMS320F28335中的EVA模塊非常適于產生SPWM波形。當定時器處于連續遞增/遞減計數模式時,計數寄存器中的數值變化軌跡就是等腰三角形,相當于產生了一個連續的等腰三角形載波,當比較寄存器中的值與計數寄存器中的值相等時,對應的PWM引腳上的電平就會發生跳變,從而輸出一系列的等高方波信號,如圖3所示。方波的寬度與比較寄存器中的值一一對應,因此只要比較寄存器中的值呈正弦變化,方波的等效面積也就會呈正弦變化,從而得到SPWM波形。而每個EVA模塊有三個比較寄存器,三對PWM管腳,因此可以方便的得到三相SPWM波形。

圖3 TMS320F28335 EV模塊的PWM輸出Fig.3 TMS320F28335 EV PWM module output
程序[4]分為主程序和EVA定時中斷程序兩部分。主程序主要完成各部分模塊的初始化工作,然后打開EVA模塊的中斷使能,最后進入死循環響應EVA模塊的中斷;EVA定時中斷程序完成計算比較寄存器中的數據,然后賦值給各個比較寄存器即可。在計算中要用到正弦向量表,在程序中定義一個一維N點數組,數組中的數據分別對應第N點的正弦值,然后在程序中直接讀取這個數組的數值即可。
主程序和EVA定時中斷程序流程圖分別如圖4、圖5所示。
本程序的載波頻率為12.8 kHz(因為正弦表為256點,50×256=12 800,這樣在取正弦值時沒有小數偏差),調制波頻率為50 Hz,DSP時鐘頻率為120 MHz,載波周期TC=1/12 800×120×109=9 375個時鐘周期;比較寄存器的計算首先定義一個全局變量g_Aphase_State,代表正弦表數組的索引值,然后在定時中斷程序中按照如下程序計算即可:
g_Aphase_State=g_Aphase_State+2;
if(256==g_Aphase_State){g_Aphase_State=0;}

圖4 主程序流程圖Fig.4 Main program flow chart

圖5 定時器中斷程序流程圖Fig.5 Timer interrupt program flow chart
f4SubData=((FLOAT)g_ai2SinCoef[0+g_Aphase_State]
+(FLOAT)g_ai2SinCoef[1+g_Aphase_State]) /AMPLITUDE;
f4SubData=f4SubData*MDLDEPTH;
f4SubData=WAVEPERIOD/4*f4SubData;
CMPR1=(WAVEPERIOD-(WAVEPERIOD/2+(INT16)f4SubData))/2;
其中g_ai2SinCoef為正弦向量數組,AMPLITUDE為三角波載波峰值,MDLDEPTH為調制度;B、C兩相的計算也是如此,只需將正弦表數組索引值的初始值分別后移120°、240°即可。
按照以上方法實現的軟件經過編譯調試,運行效果良好,SPWM波形輸出正常;驅動IGBT[5]工作,逆變得出的正弦波波形良好,如圖6所示。

圖6 逆變正弦波形Fig.6 Inverter sine wave
利用此方法由 TMS320F28335生成的SPWM波已經應用在50 Hz/220 V的逆變電源[6]中。電源運行效果良好,輸出的電壓頻率幅值誤差都在允許范圍內,證明該方法穩定可靠、準確性高,可在逆變電源等產品中推廣。
[1]孫立志.PWM與數字化電動機控制技術應用[M].北京:中國電力出版社,2008.
[2]張燕賓.SPWM變頻調速應用技術[M].3版.北京:機械工業出版社,2005.
[3]劉陵順.TMS320F28335DSP原理及開發編程[M].北京:北京航空航天大學出版社,2011.
[4]秦玉平.數據結構學習與實驗指導(C語言版)[M].北京:清華大學出版社,2012.
[5]周志敏.IGBT驅動與保護電路設計及應用電路實例[M].北京:機械工業出版社,2011.
[6]劉鳳君.環保節能型H橋及SPWM直流電源式逆變器[M].北京:電子工業出版社,2010.