杭州應(yīng)用聲學(xué)研究所 陳毅光 何衛(wèi)彬 徐 凱
基于PIC16F877A單片機(jī)的SPWM波調(diào)制方法
杭州應(yīng)用聲學(xué)研究所 陳毅光 何衛(wèi)彬 徐 凱
本文介紹了用PIC16F877A單片機(jī)作為控制器,進(jìn)行SPWM波調(diào)制的方法。詳細(xì)分析了面積等效法原理以及單片機(jī)產(chǎn)生SPWM波脈寬數(shù)據(jù)的過(guò)程,并通過(guò)逆變電路進(jìn)行了相關(guān)驗(yàn)證。實(shí)驗(yàn)結(jié)果表明,采用PIC單片機(jī)作為正弦波逆變器的核心控制器件生成SPWM波,簡(jiǎn)單有效,性能可靠;逆變輸出電壓穩(wěn)定,總諧波含量THD低,波形失真少。
PIC16F877A;SPWM;面積等效法
當(dāng)前,正弦波逆變器有多種實(shí)施方案,采用PIC單片機(jī)作為控制器能有效減少外圍電路,降低產(chǎn)品成本[1]。SPWM波形產(chǎn)生的方法有很多種,例如自然采樣法、規(guī)則采樣法和面積等效法等,目前面積等效算法與其它算法相比,具有諧波失真小、程序量少、動(dòng)態(tài)在線進(jìn)行實(shí)時(shí)運(yùn)算等優(yōu)點(diǎn),采用此算法設(shè)計(jì)的正弦波逆變器,輸出電壓波形接近正弦程度更高,諧波更?。?]。
面積等效法是根據(jù)PWM的基本原理即面積(沖量)相等,效果相同提出的,它的原理如圖1所示。
將一個(gè)正弦半波平均分為N等分,每一等分的正弦曲線與橫軸所包圍的面積均能用一個(gè)與此面積相等的等高矩形脈沖代替,矩形脈沖的中點(diǎn)與正弦波每一等分的中點(diǎn)重合,這樣,由N個(gè)等幅而不等寬的矩形脈沖所構(gòu)成的波形就與正弦半波等效,可以看出,這一系列脈沖波形的寬度和對(duì)應(yīng)開(kāi)關(guān)管的開(kāi)關(guān)時(shí)刻都可以嚴(yán)格地用數(shù)學(xué)方法計(jì)算得到。
若M為調(diào)制度,Ud為直流側(cè)的直流電壓,則有Usin=M×Ud,第K份正弦波面積,即S1所對(duì)應(yīng)的第K個(gè)SPWM脈沖面積S2為:
S2=μk×Ud
又由S1和S2相等,可得:
由上式可知,當(dāng)給定調(diào)制度、正弦調(diào)制波頻率和載波比后,便可求出脈沖寬度占空比μk。
當(dāng)M取1,N取100,K取1~100時(shí),利用MATLAB軟件可以快速計(jì)算出100個(gè)實(shí)際脈寬值,將實(shí)際脈寬值轉(zhuǎn)換成計(jì)時(shí)步階后生成100個(gè)值的正弦表存入至單片機(jī)ROM中,這100個(gè)脈寬數(shù)據(jù)對(duì)應(yīng)正弦波半個(gè)周期,轉(zhuǎn)換后的正弦脈寬數(shù)據(jù)如下所示:
spwm[]={1,3,5,7,9,11,13,15,16,18,20,22,24,26,27,29,31,33,34,36,38,39,41,42,43,45,46,48,49,50,51,52,53,54,55,56,57,58,58,59,60,60,61,61,62,62,62,62,62,62,62,62,62,62,62,62,61,61,60,60,59,58,58,57,56,55,54,53,52,51,50,49,48,46,45,43,42,41,39,38,36,34,33,31,29,27,26,24,22,20,18,16,15,13,11,9,7,5,3,1}
2.1PIC單片機(jī)初始化設(shè)置
PIC16F877A單片機(jī)的CCP模塊具有PWM功能,其主要寄存器參數(shù)設(shè)置如下[3]:
(1)PIC16F877A單片機(jī)采用10M外部晶振,計(jì)算得計(jì)時(shí)步階為0.4us,SPWM頻率為10kHz,其周期的設(shè)定由寄存器PR2控制:
(PWM)周期=(PR2+1)×4×Tosc×(TMR2)預(yù)分頻(4)
式中,Tosc為1/10MHz,TMR2預(yù)分頻設(shè)為1:4,由此計(jì)算得PR2=62。
(2)2個(gè)CCP模塊的控制寄存器CCP1CON及CCP2CON的設(shè)定,選擇PWM功能模式,即CCP1CON=0b00001100,CCP2CON=0b00001100。
(3)CCP1和CCP2均要設(shè)置為輸出模式,即TRISC1=0,TRISC2=0。
(4)預(yù)分頻為1:4;后分頻為1:1,因此T2CON=0b00000101。
2.2SPWM波形產(chǎn)生的實(shí)現(xiàn)過(guò)程
寄存器初始化完畢,在MPLAB IDE編譯環(huán)境下采用c語(yǔ)言進(jìn)行編譯,使能TMR2定時(shí)器,從0開(kāi)始計(jì)數(shù),同時(shí)CCP模塊引腳輸出高電平。在PWM模式下,TMR2計(jì)數(shù)將同步進(jìn)行兩次比較:
(1)當(dāng)TMR2≥CCPRxL時(shí),CCPx引腳輸出低電平。
(2)當(dāng)TMR2≥PR2時(shí),TMR2被清零,CCPx引腳輸出高電平,PWM占空比從CCPRxL復(fù)制到CCPRxH中鎖存。同時(shí)TMR2的中斷標(biāo)志位被系統(tǒng)置高,即TMR2IF=1,轉(zhuǎn)去執(zhí)行中斷程序[3]。
上述SPWM表中共有100個(gè)數(shù)值,對(duì)應(yīng)正弦波半個(gè)周期。中斷程序每運(yùn)行一次,更新一次脈寬值。當(dāng)計(jì)數(shù)Count≤100時(shí),脈寬值存入CCPR1L中,CCPR2L=0;當(dāng)100<Count≤200時(shí),脈寬值存入CCPR2L中,CCPR1L=0。圖2顯示中斷程序流程。
圖2 中斷程序流程圖
實(shí)驗(yàn)系統(tǒng)主要由單片機(jī)、反相器、驅(qū)動(dòng)電路及IGBT全橋逆變電路組成,如圖3所示。PIC16F877A生成兩路互補(bǔ)SPWM波,經(jīng)反相器后生成四路SPWM波送至IR2110,驅(qū)動(dòng)IGBT完成逆變。
圖3 系統(tǒng)組成框圖
通過(guò)示波器可以檢測(cè)到實(shí)驗(yàn)中的相關(guān)波形。由CCP1和CCP2產(chǎn)生的兩路互補(bǔ)的SPWM波如圖4、5所示。圖6所示的的波形是CCP1中檢測(cè)的脈寬調(diào)制波,波形頻率為10k,可以清楚地看到脈寬由窄逐漸變寬,驗(yàn)證了程序中脈寬調(diào)制的過(guò)程。將CCP1的脈寬調(diào)制波接入低通濾波電路后,可以看到50Hz的正弦半波,如圖7所示。
圖4 兩路互補(bǔ)SPWM波1
圖5 兩路互補(bǔ)SPWM波2
圖6 CCP1的脈寬調(diào)制波
圖7 低通濾波后的正弦半波
4路SPWM波經(jīng)IR2110驅(qū)動(dòng)接至逆變主電路,接電阻進(jìn)行帶載實(shí)驗(yàn),利用示波器對(duì)輸出波形進(jìn)行檢測(cè),圖8為逆變交流輸出電壓波形,此波形正弦性好,諧波失真小,頻率為50Hz,滿足工頻要求。
圖8 逆變帶載輸出波形
本文采用PIC16F877A單片機(jī)進(jìn)行SPWM波調(diào)制較傳統(tǒng)硬件方法更加簡(jiǎn)單明了。用面積等效法生成脈寬數(shù)據(jù),再利用查表法進(jìn)行脈寬調(diào)制產(chǎn)生的SPWM波精度高。通過(guò)此方法設(shè)計(jì)的正弦波逆變器性能良好,可靠性高,諧波失真小。
[1]楊茂榮,李凌銳,李安兵.基于PIC單片機(jī)的SPWM逆變器研究與實(shí)現(xiàn)[J].SOLAR ENERGY,2011,13:38.
[2]劉黎.用單片機(jī)產(chǎn)生SPWM及制作小功率UPS[J].中南民族大學(xué)學(xué)報(bào),2002,21(1):48-49.
[3]陳曉萍,王念春,馬玉龍.PIC單片機(jī)設(shè)計(jì)的SPWM控制技術(shù)[J].電源技術(shù)應(yīng)用,2006,9(3):39-40.
Design of a SPWM-wave based on PIC16F877A MCU
CHEN Yi-guang1,He Wei-bin2,XuKai3
(Hangzhou Applied Acoustics Research Institute,Hangzhou Zhejiang,310023)
This paper introduces the method of SPWM wave modulation by PIC16F877A MCU.The principle of the area equivalent and the process of generating SPWM wave pulse width data are analyzed in detail,and the relevant verification is carried out by the inverter circuit.Experimental results show that using PIC microcontroller as the core control device of sine wave inverter to generate SPWM wave is simple and reliable;the output voltage of inverter is stable,the total harmonic content of THD is low,and the waveform is practically undistorted.
PIC16F877A;SPWM;Area equivalent principle
陳毅光(1986—),男,浙江麗水人,碩士,工程師,從事電力電子技術(shù)研究。