張晉寧 白偉華
(北方民族大學(xué)電氣信息工程學(xué)院 寧夏 銀川 750021)
?
基于嵌入式芯片STM32的光伏系統(tǒng)逆變器
張晉寧 白偉華
(北方民族大學(xué)電氣信息工程學(xué)院 寧夏 銀川 750021)
由于一次能源的過快消耗,環(huán)境污染,能源危機(jī)等問題愈演愈烈,人類必須開發(fā)利用可再生能源。太陽能資源的開發(fā)潛能巨大,太陽能這種清潔低成本的能源特別適合電能的可持續(xù)發(fā)展。目前光伏發(fā)電系統(tǒng)逆變器控制芯片多采用8位或16位低功耗單片機(jī),但與帶嵌入式操作系統(tǒng)STM32處理器相比,這類控制器的缺點(diǎn)十分明顯,如芯片硬件簡單,性能較低、可擴(kuò)展性較差、實(shí)時(shí)性低,這將導(dǎo)致系統(tǒng)以后升級(jí)困難。本文針對(duì)現(xiàn)有光伏發(fā)電這些不足,本文提出一種基于帶uC/OSⅢ操作系統(tǒng)嵌入式芯片STM32的光伏發(fā)電系統(tǒng)逆變器。
可再生能源;STM32;光伏發(fā)電系統(tǒng)逆變器
本文提出一種基于帶uC/OSⅢ操作系統(tǒng)嵌入式芯片STM32的光伏發(fā)電系統(tǒng)逆變器,光伏發(fā)電系統(tǒng)包括光伏電池陣列PV、DC/DC Boost電路、DC/AC 逆變電路、LC濾波電路、工頻變壓器T、控制器STM32、采樣電路和驅(qū)動(dòng)電路。圖1為光伏發(fā)電系統(tǒng)總體設(shè)計(jì)圖,前級(jí)DC/DC電路根據(jù)光伏電池輸出電壓由Boost電路升壓后,首先由STM32的ADC模塊采集到光伏電池的輸出電壓,其次經(jīng)過STM32產(chǎn)生一路PWM波,最后通過PWM產(chǎn)生的PWM波控制Boost電路開關(guān)管的通斷;后級(jí)DC/AC逆變電路的4路SPWM波同樣是由該STM32芯片產(chǎn)生,本發(fā)明利用了高性能、高精度的STM32處理器,不僅裝置實(shí)時(shí)性好,而且uC/OSⅢ的可移植性好便于以后的升級(jí)和擴(kuò)展。
圖1 光伏發(fā)電系統(tǒng)總體設(shè)計(jì)圖
STM32的STM32F1系列芯片是一款低成本、低功耗、高性能的32位ARM處理器,主頻最高達(dá)到72MHz,具有ARM Cortex-M3處理器內(nèi)核,是針對(duì)電力電子、測控和電機(jī)控制應(yīng)用而開發(fā)的,其內(nèi)部集成了豐富的存儲(chǔ)器和不同外設(shè)模塊,其中的高級(jí)定時(shí)器(2個(gè)16位6通道高級(jí)控制定時(shí)器TIM1、TIM8用于產(chǎn)生SPWM波)、高精度A/D轉(zhuǎn)換器(3個(gè)12位A/D轉(zhuǎn)換器,1us轉(zhuǎn)換時(shí)間)模塊對(duì)逆變器控制特別有利。豐富的外設(shè)通信接口(5個(gè)USART接口、2個(gè)I2C接口、3個(gè)SPI接口其中2個(gè)可用作I2S、1個(gè)CAN接口,1個(gè)USB2.0全速口,1個(gè)SDIO接口),12通道DMA控制器節(jié)省了數(shù)據(jù)與CPU通信時(shí)CPU的使用率,多達(dá)112個(gè)GPIO口便于后期的升級(jí)、擴(kuò)展和進(jìn)行移植。本文將片上相關(guān)資源合理配置,完成STM32核心控制器的各模塊功能。
圖2 STM32控制器下系統(tǒng)圖
本文用到STM32的外設(shè)功能:
GPIO口用于完成管腳配置;高級(jí)定時(shí)器TIM1、TIM8用于產(chǎn)生帶死區(qū)的SPWM輸出;
通用定時(shí)器TIMx用于中斷處理數(shù)據(jù);DMA控制器用于管理逆變系統(tǒng)相關(guān)數(shù)據(jù);
看門狗用于復(fù)位整個(gè)逆變系統(tǒng);
RTC為逆變系統(tǒng)提供實(shí)時(shí)時(shí)鐘,提高系統(tǒng)的實(shí)時(shí)性;
ADC用于采樣電路,將系統(tǒng)模擬采樣信號(hào)轉(zhuǎn)換數(shù)字信號(hào)。
本文中軟件系統(tǒng)設(shè)計(jì)是核心部分,軟件功能比較復(fù)雜,各個(gè)模塊的功能實(shí)時(shí)性也不相同,對(duì)實(shí)時(shí)性要求低的模塊放入主循環(huán)實(shí)現(xiàn),實(shí)時(shí)性要求高的放入中斷服務(wù)程序。
系統(tǒng)初始化模塊:對(duì)控制器系統(tǒng)的看門口狗模塊、系統(tǒng)時(shí)鐘模塊、采樣電路A/D模塊、中斷服務(wù)程序模塊等初始化后啟動(dòng)系統(tǒng)。
看門狗模塊:看門狗在后臺(tái)時(shí)刻監(jiān)控逆變系統(tǒng),當(dāng)發(fā)生故障時(shí),對(duì)整個(gè)系統(tǒng)進(jìn)行復(fù)位。
采樣電路A/D模塊:對(duì)光伏電壓和電流輸出的采樣、對(duì)負(fù)載輸出的采樣。
SPWM生成模塊:生成兩兩互補(bǔ)的4路SPWM信號(hào)控制IGBT的導(dǎo)通和關(guān)斷。
故障檢測處理模塊:實(shí)現(xiàn)系統(tǒng)的檢測和保護(hù)功能
圖3 軟件系統(tǒng)流程總體圖
如圖3先對(duì)系統(tǒng)進(jìn)行初始化,通過采樣電路模塊由設(shè)計(jì)的算法檢測系統(tǒng)電壓、電流作為軟件系統(tǒng)輸入;如果沒有故障報(bào)警,軟件系統(tǒng)輸出是 更新后的SPWM數(shù)據(jù),由驅(qū)動(dòng)電路控制功率開關(guān)管IGBT開通與關(guān)斷。其軟件系統(tǒng)結(jié)構(gòu)分三層,第一層為底層驅(qū)動(dòng)函數(shù),有SPWM模塊驅(qū)動(dòng)、采樣電路A/D模塊驅(qū)動(dòng)、液晶顯示屏驅(qū)動(dòng)模塊,串口通信模塊;第二層為操作系統(tǒng)層,主要是uCOS-Ⅲ操作系統(tǒng)的內(nèi)核應(yīng)用函數(shù),第三層為應(yīng)用層,主要是一些功能任務(wù)函數(shù)。軟件編譯語言采用C語言,軟件編譯環(huán)境為Keil-MDK,在其中對(duì)底層驅(qū)動(dòng)層、操作系統(tǒng)層、應(yīng)用層編寫,然后下載到控制器中運(yùn)行。系統(tǒng)中一些任務(wù)功能實(shí)現(xiàn),包括液晶屏顯示任務(wù),電壓電流檢測任務(wù),光伏發(fā)電前級(jí)DC/AC最大功率點(diǎn)跟蹤算法任務(wù),后級(jí)DC/AC逆變器SPWM輸出任務(wù),通信任務(wù)等。
本文針對(duì)現(xiàn)有光伏發(fā)電這些不足,本文提出一種基于帶uC/OSⅢ操作系統(tǒng)嵌入式芯片STM32的光伏發(fā)電系統(tǒng)逆變器,解決了控制芯片硬件簡單,性能較低、可擴(kuò)展性較差、實(shí)時(shí)性低、移植性差、后期升級(jí)困難的缺點(diǎn)。
[1]劉福才.基于ARM的光伏電站監(jiān)控系統(tǒng)的設(shè)計(jì)[J].工業(yè)儀表與自動(dòng)化裝置.2008,4:23-25
[2]黃彬,徐海賢,龐慶.uC/OSⅢ在STM32處理器上的移植[J].中國儀器儀表,2016,6(3):4312-5632.
[3]宋巖.ARM Cortex-M3權(quán)威指南[M].北京:北京航空航天大學(xué)出版社,2009
[4]劉邦銀,段善旭,劉飛等.基于擾動(dòng)觀察法的光伏陣列最大功率點(diǎn)跟蹤[J].電工技術(shù)學(xué)報(bào),2009,24(6):4632-4637.