朱能飛 王翠 陳勇生 黃小軍 崔曉斌 徐鍵
摘要:針對自然采樣法計算量大,規則采樣法相比自然采樣法計算量小,但仍存在一定誤差等問題,提出了一種以STM32為核心基于面積等效法實現SPWM波形的算法。面積等效法其原理是脈沖相等而形狀不同的窄脈沖加在慣性環節上輸出波形基本相同。將調制波的一個周期劃分為若干等分,該等分的面積用等面積的窄脈沖代替,用面積等效法精確計算出每一個窄脈沖的開關通斷時間,通過查表法不斷地改變占空比實現SPWM波形。該方法產生的SPWM信號簡單有效,程序易實現。
關鍵詞:STM32F103;SPWM;面積等效;嵌入式;逆變器
中圖分類號:TN787文獻標識碼:A
Abstract:In order to solve the problem that The Natural Sampling Method is greatly complex ,The Regular Sampling Method has less computational complexity than The Natural Sampling Method,but it is still existing problems of error,so an algorithm based on area equivalent method to realize SPWM waveform is proposed.Area equivalent method the principle is the pulse of equal and different shapes of narrow pulse added to the inertial link output waveform is basically effect.A cycle of the modulated wave is divided into a number of equal portions,and the equally divided areas are replaced by narrow pulses of equal area.Through the lookup table method to constantly change the duty cycle to achieve SPWM waveform.It is simple and effective by this method to generate the SPWM signal,and the program is easy to implement.
Key words:STM32F103;SPWM;area equivalent;single chip;power inverters
1前言
隨著微控制器和電子技術的不斷發展,脈沖寬度調制( pulse width modulation,簡稱PWM) 技術在電力電子技術中應用越來越廣泛,尤其在逆變電路中, SPWM控制技術扮演一個舉足輕重的角色[1]。
實現SPWM波形的方法主要有自然采樣法[2]、規則采樣法[3]、直接面積等效法[4]等 ,其中自然采樣法的精度很高,但求解導通關斷點需要解一個超越方程,計算量很大,一般不被采用;規則采樣法用近似的階梯波代替正弦波與三角波比較,雖然計算簡單,但精度不高[5-8]。針對自然采樣法、規則采樣法存在的上述問題,本文利用了直接面積等效法,將調制波的一個周期劃分為若干等分,該若干等分的面積用等面積的窄脈沖代替,用面積等效法精確計算出每一個窄脈沖的開關通斷時間,并將開關的開通時間轉換為STM32中對應的占空比,通過查表法不斷地改變占空比實現SPWM波形。由于面積等效法的計算量不大且計算結果精確,因此產生的SPWM波形精確。
本文利用STM32F103VET6控制芯片產生SPWM信號,由于該控制芯片帶有高級定時,能夠通過適當的配置輸出互補的PWM信號,且可以設置死區的時間,因而能夠比較容易的產生穩定的SPWM信號。
為了驗證產生的SPWM波形能夠真實可行,將STM32F103VET6控制芯片產生的SPWM信號用于控制一個單相橋式逆變器,在逆變器的輸出端,經過RC濾波電路,用示波器觀看可得到標準的正弦波輸出。
2算法原理
在采樣控制理論中有一個重要的結論:沖量相等而形狀不同的窄脈沖加在具有慣性的環節上時,其效果基本相同[9],這一結論是SPWM控制的重要理論基礎。如圖1所示,若定義調制比為調制波的幅值與脈沖的幅值之比,以單位量1代表矩形脈沖的幅值Uc,則正弦調制波的幅值Ur就是調制比a。把正弦調制波的正半周期分成n等分,分別求每一等分所包含的面積,用雙極性正弦脈寬調制,可得式(1)、(2)、(3):
(5)式中:t1為單個正脈沖時間長度,fr為調制波的頻率
由(5)式可以算出正弦調制波正半周每一等分的正脈沖的時間(即開關管的導通時間),同理可以計算出正弦波負半周每一等分的正脈沖對應時間。
3SPWM的軟件設計
STM32F103VET6定時器非常豐富,有2個高級定時器、4個通用定時器、2個基本定時器,其中高級定時器可以輸出帶死區的互補信號,因此用其產生SPWM方便有效。定時器的計數模式有向上計數、向下計數、向上/向下計數,本文所用定時器的計數模式為向上/向下計數,因為此計數模式能夠容易編程實現SPWM信號。
軟件設計原理為:將一個正弦波周期內的正脈沖的計數值存入一個數組中,定時器T1工作在向上/向下計數模式(產生SPWM信號),定時器T4工作在向上計數模式(產生中斷),當定時器T4每次中斷,通過查表法把定時器T1的比較寄存器的值不斷的更新,從而產生SPWM信號。其具體實現方法如下:endprint
由2所述SPWM算法原理,算出正弦波(本實驗分為200等分)的每一等分正脈沖的時間t1,將時間t1轉換為正脈沖對應的寬度(即正脈沖對應定時器T1計數值)。在一個采樣周期(即方波的周期)中,其計數值為
C=TcTs×(TIMxPSC+1)
其中:Tc為采樣周期,Ts為系統時鐘周期,TIMxPSC為計數器預分頻值。
則每一正脈沖的時間t1所對應定時器T1的計數值為
C=t1Tc×C
由此得到SPWM中每一等分的正脈沖寬度,并將其存入一個數組里。本實驗利用定時器T1的通道1(PE9)及其互補通道1(PE8)和通道2(PE11)及其互補通道2(PE10)分別產生兩路互補的PWM控制信號[10]。通過定時器T4每隔一個采樣周期(本程序是100us)中斷一次,在中斷處理程序中每中斷一次根據查表法更新一次定時器T1比較寄存器的值(即(C-查表數據)/2),且定時器T1的計數模式為向上/向下計數。如此不斷的循環執行程序,可在定時器T1的相應的引腳上產生四路PWM波——PWM1(PE9),PWM2(PE8),PWM3(PE10),PWM4(PE11)。本程序設計的控制流程圖如圖2所示:
4實驗驗證
為了說明設計方案的有效性和可行性,將該程序下載到眾想科技的STM32F103VET6開發板,用示波器觀測了一對互補輸出的PWM(PE8、PE9)波形,如圖3所示,并與MDK軟件仿真的波形相比較是一致的,如圖4所示。
將產生的四路PWM波通過一個單相橋式逆變器,并在逆變器輸出端接一個RC濾波電路,如圖5所示,其中PWM1和PWM4波形相同,PWM2和PWM3波形相同,且PWM1和PWM2波形互補。用示波器觀察濾波電路輸出端波形,可觀測到如圖6所示的波形。故驗證了此方案的有效性。
5結論
本論文是基于STM32用直接面積等效法產生SPWM波形,從實際程序設計中,此方法是易于編程實現SPWM信號。經過實驗驗證表明,通過STM32F103VET6產生SPWM波的方案的可行性,能夠方便的產生穩定互補輸出的PWM波形。
參考文獻
[1]臨渭勛.現代電力電子技術[M].北京:機械工業出版社,2005.
[2]霍虎,楊倩倩,崔鑫彤.軟件快速計算自然采樣法SPWM數據[J].現代電子技術,2012,(4):51-54
[3]許勝,趙劍鋒.基于不對稱規則采樣法的級聯H橋型變流器CPSSPWM輸出電壓諧波特性分析[J].電工技術學報,2011,(6):121-128
[4]于軍.基于直接面積等效法的逆變電源[J].今日電子,2014(1):60-61.
[5]錢慧芳,毛惠豐,陳增祿.SPWM面積中心等效法研究[J].電氣應用,2005,24(3):103-105.
[6]萬秋一,李士林,閆鑫,等.一種等面積法生成SPWM波形的算法[J].核電子學與探測技術,2011,31(5):588-590.
[7]王春俠,聶翔.基于面積等效法的SPWM發生器的設計[J].微計算機信息,2008,(2):216-217
[8]劉小河,臧健.基于DSP的SPWM直接面積等效算法的分析與實現[J].現代電子技術.2003.(3):53-55.
[9]王兆安,劉進軍.電力電子變流技術 [M].(第5版),北京:機械工業社,2009.
[10]肖廣兵.基于STM32的系統設計[M].北京:電子工業出版社,2014,3.endprint