基于PICFxx單片機控制的正弦波逆變電源設計
4 軟件設計
4.1 正弦波脈寬的生成
根據正弦波脈寬調制(SPWM)的產(chǎn)生原理,若把U=Urmsintωt正弦波在半周期內N等分,第i個(gè)等分段正弦波的面積為Si,則有:
若再使矩形波的幅值等于輸入正弦波的幅值Urm,并使每段矩形波的面積等于對應段的正弦波的面積,那么,便可以得到矩形波脈寬的值為:
由于脈沖寬度是按照正弦波的規律變化,故可把這些脈沖寬度DK的值編制成數值表,再用單片機通過(guò)查表輸出脈沖序列。實(shí)驗時(shí),可采用載波頻率fc=25 kHz,交流頻率fs=50 Hz,載波比N=fdfs來(lái)確定正弦波離散點(diǎn)的個(gè)數,即一個(gè)周期內的脈沖個(gè)數(設N=500)。為了節省表的存儲空間,實(shí)際編程時(shí),可保存半個(gè)周期內的正弦波離散點(diǎn),即保存N/2個(gè)點(diǎn),然后用交替的方式輸出SPWM波形來(lái)控制逆變橋的工作。
4.2 SPWM的軟件實(shí)現
本系統以PIC16FXX單片機為核心,晶振選用20 MHz,指令周期為0.2μs,SPWM波驅動(dòng)開(kāi)關(guān)管的工作頻率為25 kHz,那么,單片機中寄存器的初始化設置如下:
首先設置PORTC為輸出模式,即TRISC=0X00。設置*模塊為PWM功能。同時(shí)必須在*XCON寄存器中設置*模塊為PWM模式,即*xM3:CPxM0=11XX。
然后再通過(guò)PR2來(lái)確定PWM的開(kāi)關(guān)周期寄存器,并使TSFMW=(PR2+1)×4TOSC(TMR2 PrescaleValue),fSPWM=1/TSPMW。因為工作頻率f=25 kHz,故PR2=0XC7;且工作周期寄存器*RxL的值是可變的。
在程序初始化完成之后,系統中的定時(shí)寄存器TMR2將啟動(dòng)并開(kāi)始工作,此時(shí),PWM單元的引腳輸出為高電平;當TMR2>*Rxl時(shí),PWM單元的引腳開(kāi)始輸出低電平;當TMR2=PR2時(shí),TMR2被歸0,并重新開(kāi)始下一個(gè)周期計數,同時(shí)PWM單元重新輸出高電平。當TMR2的中斷標志位TMR2IF被置高電平時(shí),系統將執行定時(shí)中斷服務(wù)程序,圖4所示是其SPWM流程圖。中斷程序 完成查找正弦表值和A/D取樣值后,再進(jìn)行PI調節,即可得出修正值,并將該修正值寫(xiě)入*RxL寄存器中。圖5所示是該SPWM逆變器電源的輸出波形圖。
5 結束語(yǔ)
試驗表明,基于HC單片機控制的逆變器電源可滿(mǎn)足小功率逆變器的要求,而且可用單片機實(shí)現數字化SPWM波的控制。本方式不但比傳統的模擬控制方式具有一定的優(yōu)越性,而且該逆變器電源的效率更高、體積更小,同時(shí)還具有設計靈活、性能可靠,輸出穩定,諧波小等優(yōu)點(diǎn)。
參考文獻:
[1].SG3525datasheethttp://www.dzsc.com/datasheet/SG3525_606147.html.
[2].PR2datasheethttp://www.dzsc.com/datasheet/PR2_1197236.html.
評論