《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 電源技術(shù) > 設(shè)計應(yīng)用 > 采用MATLAB對SPWM進行輔助設(shè)計
采用MATLAB對SPWM進行輔助設(shè)計
單慶曉,潘孟春,李圣怡
摘要: MATLAB是一個高級的數(shù)學(xué)分析與運算軟件,具有強大的計算功能。SPWM控制通過MATLAB進行分析和設(shè)計,可取得事半功倍的效果。
Abstract:
Key words :

1概述

傳統(tǒng)的SPWM采用頻率數(shù)倍于正弦波三角波調(diào)制正弦波,可得到近似于正弦波的輸出。三角波的頻率越高,即載波比越高,諧波的頻率就越高,輸出端濾波器就更容易去除諧波。在輸出頻率固定的場合,如正弦波逆變電源,其輸出頻率固定在50Hz左右,這種場合采用軟件設(shè)計可降低系統(tǒng)的成本,一般將數(shù)據(jù)存入存儲器,通過CPU的定時器中斷調(diào)用可完成SPWM控制。在變頻場合,如三相交流異步電機的驅(qū)動,由于需要輸出三相變頻的SPWM信號,一般采用8254可編程定時器,以減少CPU的工作量。

SPWM設(shè)計采用傳統(tǒng)方法得到的正弦波較理想,由于三角波是超越方程,正弦信號用單片機產(chǎn)生也較困難,因此,傳統(tǒng)方法較難實現(xiàn)?,F(xiàn)在有許多新方法產(chǎn)生,這些方法實現(xiàn)簡單但對生成的正弦波影響不大,如對稱規(guī)則采樣法,雙緣調(diào)制法等。

MATLAB是一個高級的數(shù)學(xué)分析與運算軟件,具有強大的計算功能。SPWM控制通過MATLAB進行分析和設(shè)計,可取得事半功倍的效果。

以下的分析若無特殊說明,均基于雙極型調(diào)制,基頻為50Hz的SPWM控制。

2SPWM數(shù)據(jù)的計算

采用MATLAB可方便地得到正弦波與三角波的交點。在判斷交點時,可通過交點的數(shù)學(xué)定義來判斷。所謂交點,就是在交點附近時刻兩函數(shù)之差值的絕對值趨于0,而在交點附近的極小區(qū)域,離交點越遠,差值的絕對值逐漸增大。以下子程序為計算交點的MATLAB程序。x為基波數(shù)據(jù),y為載波數(shù)據(jù),m為交點時刻數(shù)據(jù)。

fori=2:n

if(abs(x(i)-y(i))<=abs(x(i+1)-y(i+1)))&(abs(x(i)-y(i))<=abs(x(i-1)-y(i-1)))

m(j)=i;

j=j+1

end;

end;

3各種SPWM算法的分析

(1)傳統(tǒng)的SPWM法

將50Hz的正弦波與10kHz的三角波相交,將采樣的數(shù)據(jù)存為n。

計算功率頻譜程序

l=fft(n,1024);

p=l.*conj(1)/1024;

f=l:1024;

plot(f,p,`b');

由以上程序可得輸出頻譜圖,如圖1所示。

圖1中橫軸為數(shù)字頻率,數(shù)字n對應(yīng)的頻率f=50n

將三角波頻率提高4倍,輸出頻譜圖如圖2所示。

可見,隨著三角波頻率的提高,輸出的電壓中諧波頻率也隨之提高。

圖1m=0.94,f=2.5kHz對應(yīng)的輸出頻譜

圖2m=0.94,f=10kHz對應(yīng)的輸出頻譜

圖3經(jīng)典SPWM法輸出頻譜

圖4對稱規(guī)則采樣法的輸出頻譜

圖5a=0.93,f=5kHz,td=3μs雙極性調(diào)制對應(yīng)輸出頻譜

圖6a=0.93,f=5kHz,未考慮死區(qū)時間

(2)對稱規(guī)則采樣法

對稱規(guī)則采樣法就是在三角波的中線時刻對應(yīng)的正弦波值為基準作一平行于橫軸的直線,該直線與三角波相交的兩點即作為SPWM的控制點。因這兩個控制點是對稱的,故稱為對稱規(guī)則采樣法。采用該方法得到的數(shù)據(jù)與自然采樣法很接近,但計算量卻大大簡化。以單極性SPWM調(diào)制為例,采用MATLAB分析比較兩種方法對應(yīng)的輸出波形。對應(yīng)條件:調(diào)制系數(shù)m=097,三角波頻率:16k。圖3及圖4示意出采用該法對應(yīng)的輸出頻譜。

可見,采用對稱采樣法后,基頻會有所提高,而諧波成分大大減少。

4死區(qū)時間對SPWM的影響

由于采用SPWM調(diào)制的電源其主電路一般采用橋式結(jié)構(gòu),為防止上下橋臂同時導(dǎo)通,在切換過程中設(shè)置一死區(qū)時間,一般為幾個μs。在這段時間內(nèi),輸出電壓為零。死區(qū)時間對輸出波形的影響與調(diào)制頻率有關(guān),頻率越高,影響越大。假設(shè)這段時間長度為3μs,調(diào)制頻率為5k,采用雙極性調(diào)制,通過MATLAB進行仿真,得圖5及圖6所示的波形。

由圖5及圖6可見,在雙極性調(diào)制下,死區(qū)時間對輸出的影響較小。

將調(diào)制方法改為單極性調(diào)制,同以上參數(shù),仿真結(jié)果如圖7及圖8所示。

由圖7及圖8可見,在單極性調(diào)制下,死區(qū)時間明顯減小了基波的幅值,降低了直流電壓利用率,在未考慮中斷延遲時間實際應(yīng)用中,設(shè)計定時常數(shù)應(yīng)考慮死區(qū)時間的影響。一般應(yīng)予在扣除。

圖7a=0.93,f=5kHz,td=3μs單極性調(diào)制對應(yīng)輸出頻譜

圖8a=0.93,f=kHz,未考慮死區(qū)時間

單極性調(diào)制對應(yīng)輸出頻譜

圖9a=0.95,f=10kHz對應(yīng)的輸出頻譜

中斷延遲時間Td=10μs

 

圖10a=0.95,f=10kHz對應(yīng)的輸出頻譜

5中斷程序時間的影響及其對策

在單片機采用本身定時器以實現(xiàn)SPWM控制時,由于將定時常數(shù)寫入定時器需要在定時中斷服務(wù)程序中完成,從中斷響應(yīng)到定時器進行下一次記數(shù)開始有一段時間,我們稱為中斷延遲時間。一般情況下,計算出中斷延遲時間,然后在定時常數(shù)中予以扣除,就可以消除中斷延遲時間對輸出的影響。但在一些場合,如調(diào)制系數(shù)大于09,正弦波與三角波幅值幾乎相等的那一段,此時的定時常數(shù)非常短,小于中斷延遲時間,無法進行扣除,就是說,定時常數(shù)的時間必須大于中斷延遲時間。當調(diào)制系數(shù)接近于1或調(diào)制比很高的情況下,中斷延遲時間對輸出有較大影響,表現(xiàn)在輸出的電壓幅值無法進一步增大。采用MATLAB仿真的波形如圖9及圖10所示。

可見,由于中斷延遲時間的影響,隨著調(diào)制比的進一步增加,基頻并未得到有效的增強,而諧波成分的幅值卻得到增加。

為降低中斷延遲時間的影響,提高直流電壓的利用率,在定時常數(shù)對應(yīng)時間小于中斷延遲時間的區(qū)域,可以采用降低調(diào)制比,但保留調(diào)制系數(shù)不變的方法,實際上是降低開關(guān)頻率,增加了中斷時間,從而降低中斷延遲時間的影響,使基波的幅值得到提高。

6結(jié)語

SPWM是DC/AC變換中常用的控制方法。采用MATLAB進行輔助設(shè)計,可極大地減少工作量,并可對各種SPWM方法進行仿真,由于無寄生電路參數(shù)的影響,這種仿真更能說明各種方法的優(yōu)劣。本文還對SPWM變換實際工作時死區(qū)時間和中斷延遲時間的影響進行了分析,并提出解決方法。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。