<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 電源與新能源 > 設計應用 > 采用MATLAB對SPWM進行輔助設計

          采用MATLAB對SPWM進行輔助設計

          作者: 時間:2011-03-03 來源:網(wǎng)絡 收藏

          本文引用地址:http://www.ex-cimer.com/article/179556.htm

          1概述

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

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

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

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

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

          采用MATLAB可方便地得到正弦波與三角波的交點。在判斷交點時,可通過交點的數(shù)學定義來判斷。所謂交點,就是在交點附近時刻兩函數(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對應的頻率f=50n

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

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

          圖1m=0.94,f=2.5kHz對應的輸出頻譜


          上一頁 1 2 3 下一頁

          關鍵詞:

          評論


          相關推薦

          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();