采用MATLAB對(duì)SPWM進(jìn)行輔助設(shè)計(jì)
本文引用地址:http://www.ex-cimer.com/article/179556.htm
1概述
傳統(tǒng)的SPWM采用頻率數(shù)倍于正弦波的三角波調(diào)制正弦波,可得到近似于正弦波的輸出。三角波的頻率越高,即載波比越高,諧波的頻率就越高,輸出端濾波器就更容易去除諧波。在輸出頻率固定的場(chǎng)合,如正弦波逆變電源,其輸出頻率固定在50Hz左右,這種場(chǎng)合采用軟件設(shè)計(jì)可降低系統(tǒng)的成本,一般將數(shù)據(jù)存入存儲(chǔ)器,通過(guò)CPU的定時(shí)器中斷調(diào)用可完成SPWM控制。在變頻場(chǎng)合,如三相交流異步電機(jī)的驅(qū)動(dòng),由于需要輸出三相變頻的SPWM信號(hào),一般采用8254可編程定時(shí)器,以減少CPU的工作量。
SPWM設(shè)計(jì)采用傳統(tǒng)方法得到的正弦波較理想,由于三角波是超越方程,正弦信號(hào)用單片機(jī)產(chǎn)生也較困難,因此,傳統(tǒng)方法較難實(shí)現(xiàn)?,F(xiàn)在有許多新方法產(chǎn)生,這些方法實(shí)現(xiàn)簡(jiǎn)單但對(duì)生成的正弦波影響不大,如對(duì)稱規(guī)則采樣法,雙緣調(diào)制法等。
MATLAB是一個(gè)高級(jí)的數(shù)學(xué)分析與運(yùn)算軟件,具有強(qiáng)大的計(jì)算功能。SPWM控制通過(guò)MATLAB進(jìn)行分析和設(shè)計(jì),可取得事半功倍的效果。
以下的分析若無(wú)特殊說(shuō)明,均基于雙極型調(diào)制,基頻為50Hz的SPWM控制。
2SPWM數(shù)據(jù)的計(jì)算
采用MATLAB可方便地得到正弦波與三角波的交點(diǎn)。在判斷交點(diǎn)時(shí),可通過(guò)交點(diǎn)的數(shù)學(xué)定義來(lái)判斷。所謂交點(diǎn),就是在交點(diǎn)附近時(shí)刻兩函數(shù)之差值的絕對(duì)值趨于0,而在交點(diǎn)附近的極小區(qū)域,離交點(diǎn)越遠(yuǎn),差值的絕對(duì)值逐漸增大。以下子程序?yàn)橛?jì)算交點(diǎn)的MATLAB程序。x為基波數(shù)據(jù),y為載波數(shù)據(jù),m為交點(diǎn)時(shí)刻數(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。
計(jì)算功率頻譜程序
l=fft(n,1024);
p=l.*conj(1)/1024;
f=l:1024;
plot(f,p,`b');
由以上程序可得輸出頻譜圖,如圖1所示。
圖1中橫軸為數(shù)字頻率,數(shù)字n對(duì)應(yīng)的頻率f=50n
將三角波頻率提高4倍,輸出頻譜圖如圖2所示。
可見,隨著三角波頻率的提高,輸出的電壓中諧波頻率也隨之提高。
圖1m=0.94,f=2.5kHz對(duì)應(yīng)的輸出頻譜
評(píng)論