








摘要:文章設(shè)計(jì)了一種光伏控制器,采用STM32F103RBT6單片機(jī)作為控制單元,采用降壓式Buck變換電路作為控制主電路。控制器通過采集光伏板的輸出電壓和電流,計(jì)算輸出功率,通過擾動(dòng)觀察算法保持充電功率的最大值,實(shí)現(xiàn)了最大功率點(diǎn)跟蹤技術(shù)(Maximum Power Point Tracking,MPPT),提高光伏轉(zhuǎn)換效率。文章加入溫度檢測(cè),實(shí)現(xiàn)溫度補(bǔ)償,動(dòng)態(tài)調(diào)整控制程序充放電閾值,防止蓄電池過充過放,提高蓄電池利用率。
關(guān)鍵詞:光伏;MPPT;控制器;STM32
中圖分類號(hào):TM615;TP273" 文獻(xiàn)標(biāo)志碼:A
0 引言
太陽能是綠色、可再生能源。光伏發(fā)電有著資源豐富、發(fā)電過程清潔低碳、便于布局、建設(shè)快捷等優(yōu)勢(shì)。光伏發(fā)電系統(tǒng)主要包含光伏電池板、蓄電池、光伏控制器、交流逆變器、逐日跟蹤控制系統(tǒng)等設(shè)備。光伏控制器是該系統(tǒng)的重要樞紐,有效控制蓄電池的充電和放電過程,其控制策略的優(yōu)劣直接影響蓄電池的使用壽命和發(fā)電系統(tǒng)的效率。
1 系統(tǒng)功能介紹
MPPT光伏控制器由核心板、DC-DC Buck轉(zhuǎn)換電路[1]、液晶屏、按鍵、溫度傳感器等組成。控制器采用意法半導(dǎo)體的嵌入式處理器STM32F103RBT6作為核心板控制單元。核心板采集光伏發(fā)電板的電壓電流、蓄電池的電壓等,經(jīng)數(shù)據(jù)分析,調(diào)節(jié)DC-DC Buck電路的脈寬,實(shí)現(xiàn)光伏發(fā)電板的最大功率。核心板采集DS18B20溫度傳感器的溫度輸出信號(hào),實(shí)現(xiàn)溫度補(bǔ)償功能。控制器采用外部按鍵設(shè)計(jì),支持用戶參數(shù)配置,包含電池額定電壓選擇、電池類型選擇、充放電閾值設(shè)置等。控制器采用液晶屏設(shè)計(jì),支持運(yùn)行參數(shù)的顯示,包含充電電流、電池電壓、溫度數(shù)據(jù)等。系統(tǒng)總體設(shè)計(jì)框如圖1所示。
2 電路設(shè)計(jì)
2.1 電源電路設(shè)計(jì)
光伏控制器的供電來自VCC12+蓄電池。根據(jù)系統(tǒng)各部件供電要求,控制器設(shè)計(jì)DC-DC降壓電路產(chǎn)生5 V、3.3 V電壓,設(shè)計(jì)升壓電路產(chǎn)生18 V電壓。控制器采用XL1509-5.0芯片設(shè)計(jì)12 VDC轉(zhuǎn)5 V降壓電路,如圖2所示。控制器采用AMS1117-3.3芯片設(shè)計(jì)5 VDC轉(zhuǎn)3.3 V降壓電路。采用MC34063芯片設(shè)計(jì)12 VDC轉(zhuǎn)18 V升壓電路,如圖3所示。
2.2 核心板
控制器采用STM32F103RBT6作為核心單元。處理器的引腳分配如下:設(shè)計(jì)KEY1、KEY2識(shí)別外部按鍵,設(shè)計(jì)24C256_SDA、24C256_SCL作為FM24C256存儲(chǔ)器的通信I2C接口,設(shè)計(jì)SWDIO、SWCLK作為STM32的SWD調(diào)試口,設(shè)計(jì)D1、D2控制IR2104的脈寬調(diào)制(Pluse Width Modulation,PWM)和使能,設(shè)計(jì)RXD3、TXD3作為程序固件升級(jí),設(shè)計(jì)18B20_DQ采集外部溫度,設(shè)計(jì)A0、A1采集太陽能板的電壓電流,設(shè)計(jì)A2采集電池電壓,設(shè)計(jì)DB0-DB7作為液晶屏的數(shù)據(jù)連接,設(shè)計(jì)RS、RW、E分別實(shí)現(xiàn)液晶屏的數(shù)據(jù)/命令、讀寫、使能控制信號(hào)。處理器引腳分配如圖4所示。
2.3 太陽能板輸出電壓和電流檢測(cè)
控制器采用ACS712電流傳感器檢測(cè)光伏板的輸出電流,將檢測(cè)的直流轉(zhuǎn)換成比例的電壓。IP+和IP-是該控制器的接線端子,電流從IP+流向IP-。VIOUT為電流傳感器的電壓輸出(標(biāo)記A1)。利用電阻R10和R13實(shí)現(xiàn)Vp的分壓(標(biāo)記A0),分別送入STM32的ADC采樣,進(jìn)而獲取光伏板的輸出電流和電壓。太陽能板電壓電流檢測(cè)如圖5所示。
2.4 DC-DC半橋BUCK電路設(shè)計(jì)和蓄電池電壓檢測(cè)
DC-DC半橋BUCK電路采用IR2104芯片進(jìn)行驅(qū)動(dòng)控制,根據(jù)PMW調(diào)整MOS的導(dǎo)通和關(guān)閉,實(shí)現(xiàn)對(duì)電池的充電管理。STM32的控制信號(hào)D1接入IR2104的IN,實(shí)現(xiàn)PWM控制。STM32另一個(gè)控制信號(hào)D2接入SD,實(shí)現(xiàn)使能控制。1N5819是自舉二極管,C24、C26、C27是濾波電容,IR2104的HO和LO分別控制上下2個(gè)MOS管,實(shí)現(xiàn)輪流工作,對(duì)12 V蓄電池進(jìn)行充電。蓄電池電壓檢測(cè)電路設(shè)計(jì)電阻R16、R17分壓方式(標(biāo)記A2),將蓄電池電壓接入STM32,啟動(dòng)ADC采樣獲取蓄電池電壓。DC-DC半橋BUCK電路設(shè)計(jì)如圖6所示。
2.5 按鍵和顯示電路設(shè)計(jì)
為實(shí)現(xiàn)程序上下翻頁功能,外部按鍵電路采用KEY1、KEY2檢測(cè)端口電平設(shè)計(jì)。當(dāng)按鍵沒有按下時(shí),對(duì)應(yīng)的電平處于高電平;當(dāng)按鍵按下時(shí),對(duì)應(yīng)的電平被拉低。設(shè)計(jì)按鍵電路中的R27、R33保護(hù)IO端口,設(shè)計(jì)電容C43、C44防止按鍵抖動(dòng)。采用PC2004設(shè)計(jì)液晶顯示電路,其使能控制端口E、讀寫控制RW、數(shù)據(jù)命令控制RS,分別由STM32的PC8-PC10端口編程控制,數(shù)據(jù)DB0-DB7由PC0-PC7編程控制。顯示電路設(shè)計(jì)電阻R4、R5組成的分壓電路為VO用于調(diào)整屏幕對(duì)比度。按鍵和液晶顯示如圖7所示。
3 充電控制程序設(shè)計(jì)
3.1 主程序設(shè)計(jì)
采用集成開發(fā)環(huán)境Keil uVisionV5.27建立STM32嵌入式開發(fā)工程。控制器在系統(tǒng)上電后,初始化RCC、GPIO、ADC、TIM等片內(nèi)資源,啟動(dòng)ADC定時(shí)采樣并作數(shù)據(jù)處理,執(zhí)行MPPT程序控制和液晶顯示等,如圖8所示。
3.2 最大功率點(diǎn)跟蹤MPPT程序設(shè)計(jì)
采用擾動(dòng)觀察法的MPPT控制算法[2-3]。該算法通過對(duì)比干擾周期前后太陽能光伏板的輸出功率[1],讀取ADC轉(zhuǎn)換結(jié)果得到對(duì)應(yīng)的輸出電壓U和電流I,兩者相乘得到當(dāng)前輸出功率Pn,將Pn與上一周期的輸出功率Po比較,如果Pn>Po,則繼續(xù)增大PMW信號(hào)的占空比,否則減小占空比,擾動(dòng)補(bǔ)償設(shè)置為2[1]。在更新PWM占空比后,保存新的輸出功率值,更新輸出PWM脈沖信號(hào)。
4 結(jié)果與分析
本次實(shí)驗(yàn)以額定電壓為18.4 V、額定電流為5.75 A的光伏板作為光電轉(zhuǎn)換設(shè)備,對(duì)額定電壓為12 V、120 A膠體電池進(jìn)行充放電管理。為了保證光伏板輸出始終在最大功率點(diǎn)運(yùn)行,控制器實(shí)時(shí)監(jiān)測(cè)光伏板的輸出電壓和電流,相乘得到功率值。MPPT程序控制BUCK電路調(diào)整PWM以保證光伏板輸出功率的最大值。在動(dòng)態(tài)調(diào)整過程中,PWM是非常關(guān)鍵的調(diào)制參數(shù)。采用萬用表測(cè)試光伏板在占空比為10%~90%的PWM信號(hào)下的輸出電壓和電流值及對(duì)應(yīng)的輸出功率,如表1所示。
如表1所示,在一定的光照條件下,當(dāng)PWM等于60%,光伏板的最大輸出功率為100.44 W,輸出電壓為18.0 V,電流為5.58 A。使用手持光照度探測(cè)儀作為校準(zhǔn)設(shè)備,同等光照強(qiáng)度下,MPPT光伏控制器的工作狀態(tài)的工作電壓為18.2 V,PWM為59%,功率為101 W,與測(cè)試數(shù)據(jù)基本一致,表明本設(shè)計(jì)基本實(shí)現(xiàn)最大功率點(diǎn)跟蹤。本文還測(cè)試了充放電閾值功能。本系統(tǒng)中,蓄電池過充保護(hù)電壓設(shè)置為14.4 V,蓄電池過放保護(hù)電壓設(shè)置為10.8 V,蓄電池浮充電壓設(shè)置為13.7 V,均能正確響應(yīng)。另外,本控制器的溫度補(bǔ)償取值為30mV/℃,隨溫度上升或下降分別調(diào)高或調(diào)低閾值。
5 結(jié)語
本設(shè)計(jì)采用STM32F103RBT6嵌入式處理器作為光伏控制器的核心。控制程序通過計(jì)算功率值,調(diào)整PWM脈沖信號(hào)的占空比,控制降壓變換BUCK電路的開啟和關(guān)斷。該光伏控制器通過MPPT的擾動(dòng)觀察法實(shí)現(xiàn)光伏板的最大功率點(diǎn)追蹤,提高了光伏發(fā)電系統(tǒng)的充電效率[4]。在充電管理程序中,通過增加溫度補(bǔ)償功能,動(dòng)態(tài)調(diào)整充放電的閾值電壓,提高蓄電效率,保護(hù)電池并延長(zhǎng)電池使用壽命[4]。
參考文獻(xiàn)
[1]胡雪花,李香服.基于MPPT的太陽能充電控制器設(shè)計(jì)與實(shí)現(xiàn)[J].山東工業(yè)技術(shù),2023(1):27-33.
[2]李正,馬航.光伏發(fā)電MPPT恒壓跟蹤法優(yōu)化研究[J].河南科技,2020(29):130-132.
[3]李虹飛.基于優(yōu)化MPPT算法的快速高效光伏充電控制器設(shè)計(jì)[J].山東農(nóng)業(yè)大學(xué)學(xué)報(bào),2021(2):299-303.
[4]張漢年,周望瑋,徐開軍.基于PIC單片機(jī)的光伏控制器設(shè)計(jì)[J].電子世界,2017(15):133-134.
Design of MPPT photovoltaic controller based on STM32
Abstract: "This article designs a photovoltaic controller that uses the STM32F103RBT6 microcontroller as the control unit and a buck converter circuit as the main control circuit. The controller collects the output voltage and current of the photovoltaic panel, calculates the output power, and maintains the maximum charging power through disturbance observation algorithm, achieving Maximum Power Point Tracking (MPPT) technology and improving the photovoltaic conversion efficiency. This article also incorporates temperature detection to achieve temperature compensation, dynamically adjust the charging and discharging threshold of the control program, prevent overcharging and discharging of the battery, and improve battery utilization.
Key words: photovoltaic; MPPT; controller;STM32