黎山峰 黃超龍
(東莞理工學(xué)院 電子工程學(xué)院, 廣東東莞 523808)
?
基于STM32的全橋逆變器的設(shè)計(jì)
黎山峰黃超龍
(東莞理工學(xué)院電子工程學(xué)院, 廣東東莞523808)
為設(shè)計(jì)一種低功耗的數(shù)字化正弦逆變器,設(shè)計(jì)了以STM32單片機(jī)為控制核心的全橋逆變器,該逆變器采由單片機(jī)的高速定時(shí)器產(chǎn)生高分辨率的SPWM脈沖,通過(guò)光耦隔離和IR2111驅(qū)動(dòng)芯片把SPWM脈沖信號(hào)對(duì)由IRF840場(chǎng)效應(yīng)管構(gòu)成的全橋電路實(shí)現(xiàn)斬波逆變,經(jīng)過(guò)LC濾波電路,最后實(shí)現(xiàn)高壓SPWM脈沖轉(zhuǎn)換成交流電源。
正弦逆變器; STM32; SPWM
逆變器是指整流器的逆向變換器,其作用是通過(guò)半導(dǎo)體功率開關(guān)器件的開通和關(guān)斷作用,把直流電能變換成交流電能的一種電力電子變換器[1]。隨著電力電子技術(shù)的高速發(fā)展,大量高功率開關(guān)器件相繼出現(xiàn),可以滿足各行各業(yè)對(duì)逆變技術(shù)的需求,逆變技術(shù)的應(yīng)用領(lǐng)域越來(lái)越廣泛[2-3]。在光伏和風(fēng)能等新能源開發(fā)領(lǐng)域中,均需逆變器將電能轉(zhuǎn)換為恒壓、恒頻的交流電源;在通信領(lǐng)域中的不間斷電源里,逆變器是重要的角色;在控制交流電機(jī)的領(lǐng)域中,逆變器的應(yīng)用更為廣泛。逆變器的發(fā)展從工頻方波逆變和多重疊加逆變,發(fā)展到現(xiàn)今的PWM逆變,三相空間矢量逆變以及多電平PWM逆變。從逆變器的發(fā)展來(lái)看,逆變器的復(fù)雜程度日漸上升,為了更好地設(shè)計(jì)和管理,現(xiàn)今的逆變器的發(fā)展趨勢(shì)必定為數(shù)字化逆變器。筆者設(shè)計(jì)的單相逆變器是以STM32單片機(jī)為核心控制的全橋逆變器。
圖1 系結(jié)構(gòu)框圖
如圖1示,設(shè)計(jì)的逆變器是由4部分組成,分別為STM32主控電路、隔離驅(qū)動(dòng)電路、全橋電路和采樣反饋電路。STM32單片機(jī)產(chǎn)生兩組SPWM脈沖通過(guò)光耦隔離傳輸,光耦輸出的兩組SPWM脈沖輸入到兩個(gè)IR2111芯片,一個(gè)IR2111可輸出兩組互補(bǔ)性的PWM脈沖,從而得到四組SPWM脈沖,四組脈沖驅(qū)動(dòng)全橋電路的四個(gè)功率開關(guān)管。其中全橋電路中的高壓直流電源是由推挽升壓電路提供的,因篇幅有限,將不介紹推挽升壓電路的設(shè)計(jì)。在全橋電路中,以SPWM脈沖為信號(hào)斬波,輸出的電壓波形為高壓SPWM脈沖波形,需通過(guò)以電感電容構(gòu)成的低通濾波器后,才能得到所需的交流正弦電源。為了輸出穩(wěn)定的交流電源,需要采樣反饋調(diào)制,采樣反饋電路是由電壓互感器采樣得到的交流信號(hào),通過(guò)整流濾波得到的直流電壓信號(hào),接著由STM32單片機(jī)內(nèi)置AD轉(zhuǎn)換成的數(shù)據(jù)與SPWM數(shù)據(jù)調(diào)制,最后得到可調(diào)的SPWM脈沖,從而輸出穩(wěn)定的交流電壓[4]。
2.1SPWM算法的設(shè)計(jì)
SPWM是PWM脈沖的占空比按正弦規(guī)律變化的PWM信號(hào)。SPWM脈沖由兩種不同頻率的調(diào)制獲得,載波為高頻的三角波或者鋸齒波,被調(diào)制波為50 Hz正弦波,通過(guò)電壓比較器可得到調(diào)制波即所需的SPWM脈沖信號(hào),通過(guò)調(diào)整50 Hz正弦波的幅值和頻率,即可調(diào)整SPWM脈沖信號(hào)。該設(shè)計(jì)的算法利用了等面積算法,即在一個(gè)開關(guān)周期內(nèi)PWM占空比的面積與正弦交流波形相對(duì)應(yīng)電角度內(nèi)的面積相等,此算法和上述的調(diào)制方法本質(zhì)是相同的,均通過(guò)改變正弦波的頻率和幅值則可調(diào)節(jié)正弦交流電源輸出的頻率和幅值。
STM32單片機(jī)的定時(shí)器功能強(qiáng)大,可通過(guò)定時(shí)器控制I/O輸出PWM脈沖信號(hào)。STM32的定時(shí)器在脈沖寬度調(diào)制模式可以產(chǎn)生一個(gè)由TIMX_ARR寄存器確定頻率,由TIMX_CCR寄存器確定占空比的信號(hào)[5]。設(shè)計(jì)是由TIMX_ARR寄存器寫入正弦逆變的頻率數(shù)值,TIMX_CCR寄存器寫入SPWM數(shù)組的數(shù)據(jù),當(dāng)定時(shí)器計(jì)數(shù)溢出時(shí)中斷,即一個(gè)開關(guān)周期結(jié)束時(shí)進(jìn)入中斷函數(shù),把下一個(gè)SPWM數(shù)組的數(shù)據(jù)寫入寄存器TIMX_CCR里,一直進(jìn)行循環(huán),則STM32單片機(jī)可輸出所需的SPWM脈沖信號(hào)[6]。
STM32單片機(jī)的機(jī)器周期為72 MHz,設(shè)計(jì)定時(shí)器計(jì)數(shù)器初值和SPWM數(shù)據(jù)的數(shù)值時(shí)應(yīng)當(dāng)增大相對(duì)應(yīng)的倍數(shù)。STM32單片機(jī)的定時(shí)器3的PWM輸出通道設(shè)定在STM32特定的I/O口,需要打開相對(duì)應(yīng)引腳的PWM輸出模式。下面講述的是STM32單片機(jī)在KEIL編程環(huán)境下利用ST公司的庫(kù)函數(shù)開發(fā)25 kHz的SPWM脈沖輸出核心程序。
首先,初始化TIMX_ARR寄存器確定頻率。
TIM_TimeBaseStructure.TIM_Period=2880;
TIM_TimeBaseStructure.TIM_Prescaler=0;
TIM_TimeBaseStructure.TIM_ClockDivision=0;
TIM_TimeBaseStructure.TIM_CounterMode=TIM_CounterMode_Up;
TIM_TimeBaseInit(TIM3, &TIM_TimeBaseStructure);
TIM_OC1Init(TIM3, &TIM_OCInitStructure);
TIM_OC1PreloadConfig(TIM3, TIM_OCPreload_Enable);
接著使能定時(shí)器3計(jì)數(shù),并且使能定時(shí)器中斷:
TIM_ARRPreloadConfig(TIM3, ENABLE);
TIM_ITConfig(TIM3,TIM_IT_Update,ENABLE );
TIM_Cmd(TIM3, ENABLE);
最后定時(shí)器3的中斷函數(shù),更新TIMX_CCR寄存器的數(shù)值,即改變SPWM的占空比:
void TIM3_IRQHandler(void){
if(TIM_GetITStatus(TIM3, TIM_IT_Update)!= RESET){
TIM_ClearITPendingBit(TIM3, TIM_IT_Update);
PWMplus+=1;if(PWMplus==500){ PWM3plus=0;}
TIM3->CCR1=PWMdata[PWMplus]; }}
2.2SPWM驅(qū)動(dòng)電路設(shè)計(jì)
因?yàn)樵O(shè)計(jì)的SPWM脈沖是由STM32單片機(jī)產(chǎn)生的,而STM32單片機(jī)是微處理器,必須工作于穩(wěn)定的低壓電源。因此,供電STM32單片機(jī)的電源和全橋驅(qū)動(dòng)的電源必須進(jìn)行隔離。如圖2所示,設(shè)計(jì)使用TLP521光耦進(jìn)行隔離傳輸,STM32單片機(jī)的引腳輸出電流不大,需要三極管放大電流驅(qū)動(dòng)光耦里L(fēng)ED。當(dāng)輸入脈沖為高電平時(shí),光耦中的LED發(fā)亮,光耦輸出端的E端為高電平。當(dāng)輸入脈沖為低電平時(shí),光耦中的LED不工作,光耦輸出端的E端為低電平[7]。
圖2 SPWM驅(qū)動(dòng)電路
得到隔離的SPWM脈沖后,需設(shè)計(jì)電路驅(qū)動(dòng)全橋四個(gè)功率開關(guān)管。設(shè)計(jì)利用IR2111芯片驅(qū)動(dòng)一個(gè)半橋即兩個(gè)功率開關(guān)管。IR2111芯片是專門為驅(qū)動(dòng)半橋電路設(shè)計(jì)的,并且自帶死區(qū)時(shí)間為750 ns,因此外部電路非常簡(jiǎn)單,只需設(shè)計(jì)半橋上臂的功率管的驅(qū)動(dòng)電源即可。上臂的驅(qū)動(dòng)電源是由快恢復(fù)二極管和自舉電容構(gòu)成的,而自舉電容的選擇需要考慮功率管的柵極所需的電荷量、所需的電壓和逆變的開關(guān)頻率。設(shè)計(jì)的全橋電路是有IR840功率開關(guān)管構(gòu)成,IR840的柵極所需的電荷量為50 nC,工作電壓最低為10 VDC,設(shè)計(jì)的開關(guān)頻率為25 kHz,確定這些參數(shù)后即可計(jì)算自舉電容的大小。工程設(shè)計(jì)中可以粗略的計(jì)算自舉電容,利用柵極所需電荷量和最低工作電壓值計(jì)算,C=4Q/(VCC-Vmin)=0.2 μF。選擇自舉電容為0.22 μF/35 V的無(wú)感低阻抗的鉭電容,自舉二極管的選取是HER107,耐壓1 000 V。
2.3IRF840全橋電路設(shè)計(jì)
正弦逆變的實(shí)現(xiàn)功能是把直流電源轉(zhuǎn)換成正弦交流電源,利用占空比以正弦規(guī)律變化的PWM脈沖控制功率開關(guān)管使得電流和電壓按照正弦規(guī)律輸出。如圖3所示,單相橋式逆變器的原理是通過(guò)四個(gè)功率開關(guān)管構(gòu)成橋式的四個(gè)橋臂,Q1和Q4為同一脈沖驅(qū)動(dòng),Q2和Q3為同一脈沖驅(qū)動(dòng),需注意是兩組的脈沖必須互補(bǔ),再利用占空比以正弦規(guī)律變化的PWM脈沖驅(qū)動(dòng)四個(gè)橋臂,即在兩個(gè)半橋之間可輸出的脈沖就是可輸出功率的SPWM脈沖,通過(guò)LC濾波后得到所需的正弦交流電源,調(diào)整SPWM的占空比可調(diào)整輸出交流電壓。半橋中的兩個(gè)功率開關(guān)管不可以同時(shí)導(dǎo)通否則電路會(huì)發(fā)生短路,因此在開關(guān)管的驅(qū)動(dòng)電路中,必須設(shè)計(jì)死區(qū)時(shí)間。每一個(gè)功率管的兩端是RCD緩沖網(wǎng)絡(luò)電路,吸收功率管關(guān)閉時(shí)的尖峰電壓。在實(shí)際設(shè)計(jì)中,需要在實(shí)際電路實(shí)物中測(cè)量尖峰電壓,而再根據(jù)尖峰電壓大小設(shè)計(jì)RCD網(wǎng)絡(luò)的參數(shù)[8]。
圖3 IRF840全橋電路
而選取LC濾波電路首先選取LC的截止頻率,一般截止頻率要遠(yuǎn)小于開關(guān)頻率并且遠(yuǎn)大于輸出正弦的頻率。開關(guān)頻率為25 kHz,輸出頻率為50 Hz,因此本設(shè)計(jì)選取的截止頻率為2 kHz。。電感是抑制電流紋波,電容是抑制電壓紋波,設(shè)計(jì)中電壓型的正弦逆變,更傾向于抑制電壓紋波,可選取大一點(diǎn)的無(wú)感電容,但考慮到輸出電容中增大,空載消耗隨著增大。根據(jù)文獻(xiàn)[5]中設(shè)計(jì)濾波器是從濾波器的無(wú)功容量的角度來(lái)選擇。
根據(jù)文獻(xiàn)[5]的電感參數(shù)計(jì)算公式,
其中w0是基波角頻率,wl為截止頻率,U0為輸出交流電壓的有效值,I0為輸出交流電流的有效值,即將設(shè)計(jì)的相關(guān)的參數(shù)導(dǎo)入公式里得到電感的值為6 mH,這說(shuō)明輸出的電流越小,濾波的電感值越大,但是因?yàn)椴牧嫌邢?,電感量?.6 mH,則電容的選取為10 uF[5]。
2.4隔離采樣電路設(shè)計(jì)
交流采用可以使用互感器來(lái)隔離采樣?;ジ衅鞯谋举|(zhì)就是一個(gè)小的變壓器,通過(guò)電磁轉(zhuǎn)換實(shí)現(xiàn)隔離采樣。設(shè)計(jì)分別利用電壓互感器和電流互感器采樣輸出電壓和輸出電流。
如圖4所示,T1為電壓互感器,實(shí)質(zhì)上是一個(gè)微型工頻變壓器,此互感器匝數(shù)比為1∶1,交流電源經(jīng)過(guò)大電阻分壓后接上電壓互感器隔離反饋交流電壓給次級(jí)線圈,次級(jí)線圈經(jīng)過(guò)共模濾波后得到所需的采樣電壓。T2為電流互感器[9],實(shí)質(zhì)為一微型的工頻變壓器,但采樣電流的方式與采樣電壓的方式不一樣,電流采樣是利用交流電流經(jīng)過(guò)導(dǎo)線的磁場(chǎng)強(qiáng)度大小,電流越大,導(dǎo)線的磁場(chǎng)強(qiáng)度越大,故電流互感器的初級(jí)線圈是交流輸出的導(dǎo)線,設(shè)計(jì)的電流互感器的匝數(shù)為1,而次級(jí)線圈的匝數(shù)為1 000,即匝數(shù)比為1 000,電流互感器是把磁場(chǎng)強(qiáng)度信號(hào)轉(zhuǎn)換為電壓信號(hào),經(jīng)過(guò)共模濾波后得到所需的采樣電流[10]。
圖4 隔離采樣電路
采樣得到的信號(hào)也為交流電壓,需通過(guò)全波整流得到直流電壓值,A/D轉(zhuǎn)換得到與參考數(shù)值的誤差,然后把誤差的數(shù)值與SPWM數(shù)據(jù)進(jìn)行運(yùn)算,從而得到可調(diào)的SPWM脈沖,實(shí)現(xiàn)輸出穩(wěn)定的交流電源。
STM32單片機(jī)輸出SPWM脈沖通過(guò)高速光耦驅(qū)動(dòng)IR2111芯片,IR2111直接驅(qū)動(dòng)有MOSFET構(gòu)成的全橋電路。以推挽升壓電路得到的高壓直流電源作為全橋逆變的直流母線,全橋電路輸出交流220VDC左右的電源,通過(guò)交流電壓采樣反饋,輸出的交流電源符合本項(xiàng)目的要求范圍。設(shè)計(jì)測(cè)試信號(hào)時(shí)所用的示波器是Tektronix公司的TDS1002C-SC。圖5和圖6分別為全橋逆變的上下功率管的驅(qū)動(dòng)信號(hào)和輸出正弦交流電源信號(hào)。
如圖5中全橋上下橋臂的驅(qū)動(dòng)信號(hào)波形,CH1信號(hào)為上橋臂信號(hào),CH2為下橋臂信號(hào)。從圖5可知在一小段時(shí)間內(nèi)兩驅(qū)動(dòng)信號(hào)都為低電頻,即此時(shí)間段為死區(qū)時(shí)間,此時(shí)間段的作用是為了保證上下橋臂的功率管不會(huì)同時(shí)導(dǎo)通。
圖6為逆變器輸出的交流電源波形,由圖6可知輸出周期為20 ms的正弦波,輸出電壓的峰值約為310 V。因?yàn)楣怦頣LP521的傳送速率不高,驅(qū)動(dòng)輸出的SPWM波形略有變形,主要因?yàn)楣怦钶敵霾ㄐ涡盘?hào)的上升時(shí)間和下降沿時(shí)間達(dá)到微秒級(jí)別,使得SPWM當(dāng)中占空比較小的脈沖不能通過(guò)光耦的傳輸,從而造成過(guò)零點(diǎn)時(shí)的波形失真,可考慮的解決方案是設(shè)計(jì)SPWM脈沖算法時(shí)進(jìn)行直流補(bǔ)償,使得SPWM脈沖在正弦波通過(guò)零點(diǎn)時(shí)得到補(bǔ)償。
圖5 全橋上下功率管的驅(qū)動(dòng)信號(hào)圖
圖6 正弦交流電源輸出波形圖
筆者對(duì)STM32單片機(jī)如何實(shí)現(xiàn)產(chǎn)生SPWM脈沖,全橋逆變電路的設(shè)計(jì)以及如何利用電壓互感器實(shí)現(xiàn)交流采樣反饋等方面進(jìn)行了介紹。實(shí)驗(yàn)中設(shè)計(jì)的逆變器帶純阻性負(fù)載時(shí),正弦波并沒(méi)有較大的失真,功率管的漏極和原極兩端的尖峰電壓不明顯,且功率管開關(guān)損耗(以管子溫度衡量)并不大。
[1]劉鳳君.現(xiàn)代逆變技術(shù)及應(yīng)用[M].北京:電子工業(yè)出版社,2006.
[2]曲學(xué)基,曲敬鎧,于明揚(yáng).逆變技術(shù)基礎(chǔ)與應(yīng)用[M].北京:電子工業(yè)出版社,2007.
[3]陳道煉.DC-AC逆變技術(shù)及其應(yīng)用[M].北京:機(jī)械工業(yè)出版社,2003.
[4]閆朝陽(yáng),張純江,鄔偉揚(yáng),等.單相高頻鏈矩陣逆變器解結(jié)耦SPWM策略及實(shí)現(xiàn)[J].電工技術(shù)學(xué)報(bào),2012,27(02):59-67.
[5]俞楊威,金天均,謝文濤,等.基于PWM逆變器的LC濾波[J].機(jī)電工程,2007,24(5):52.
[6]喻金錢,喻斌.STM32F系列ARM Cortex-M3核微控制器開發(fā)與應(yīng)用[M].北京:清華大學(xué)出版社,2011.
[7]徐淑珍,張浩然.基于STM32F103VC的家用型光伏逆變系統(tǒng)的研究[J].微型機(jī)與應(yīng)用,2013,32(04):23-26.
[8]范小虎,朱自成,聶詩(shī)良,等.單級(jí)式雙Buck全橋光伏并網(wǎng)逆變器的設(shè)計(jì)[J].電力電子技術(shù),2013,47(01):52-54.
[9]李坤,許其義,趙莎莎.基于瞬時(shí)無(wú)功理論與三相全橋Delta逆變器的交流凈化穩(wěn)定電源設(shè)計(jì)[J].電子技術(shù),2010(04):30-33.
[10]陳愷,羅曉曙,廖志賢.基于STM32的15kW離網(wǎng)型光伏逆變器設(shè)計(jì)[J].計(jì)算機(jī)測(cè)量與控制,2013,21(01):160-162.
The Design of Full Bridge Inverter Based on STM32
LI ShanfengHUANG Chaolong
(College of Electronic Engineering,Dongguan University of Technology, Dongguan 523808, China)
The paper introduces a design of the full bridge inverter based on the STM32 microcontroller as the controlling core in order to design a low power digital sine-inverter, which uses a high resolution SPWM pulse produced by the MCU’s high speed timer, and operates the SPWM pulse into chopper inversion by the photoelectric coupler and IR2111 to amplify power with the help of the full bridge converter made of IRF840, with the LC filtering circuit, finally changing high voltage SPWM pulse into AC power.
sine-inverter; STM32; SPWM
2016-03-08
“973”計(jì)劃項(xiàng)目(2013CB834305);國(guó)家自然科學(xué)基金科學(xué)儀器基礎(chǔ)研究??铐?xiàng)目(11127508)。
黎山峰(1979—),男,江西臨川人,實(shí)驗(yàn)師,主要從事傳感器技術(shù)、測(cè)控等研究。
TM464
A
1009-0312(2016)03-0027-05