基于Atmega16單片機(jī)的智能太陽能充電器設(shè)計(jì)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
隨著經(jīng)濟(jì)的發(fā)展、社會的進(jìn)步,人們對能源提出越來越高的要求,尋找新能源成為當(dāng)前人類面臨的迫切課題?,F(xiàn)有電力能源的來源主要有3 種,即火電、水電和核電。其中,火電需要燃燒煤、石油等化石燃料。一方面這些燃料蘊(yùn)藏量有限、越燒越少,正面臨著枯竭的危險(xiǎn)。另一方面燃燒燃料將排出二氧化碳和硫的氧化物,因此會導(dǎo)致溫室效應(yīng)和酸雨,惡化地球環(huán)境。而水電有可能導(dǎo)致生態(tài)環(huán)境破壞,一個(gè)國家的水力資源也是有限的,而且還要受季節(jié)的影響。核電在正常情況下固然是干凈的,但萬一發(fā)生核泄漏,后果非常嚴(yán)重。在這種條件下就迫使人們?nèi)ふ倚履茉?。新能源要同時(shí)符合兩個(gè)條件:一是蘊(yùn)藏豐富不會枯竭;二是安全、干凈,不會威脅人類和破壞環(huán)境。目前找到的新能源主要有:太陽能,風(fēng)能和燃料電池。其中,最理想的新能源是太陽能。
美國英特梅爾(ATMEL)公司的Atmega16 系列單片機(jī)是基于增強(qiáng)的AVR RISC 結(jié)構(gòu)的低功耗8 位CMOS 微控制器。由于其先進(jìn)的指令集以及單時(shí)鐘周期指令執(zhí)行時(shí)間,ATmega16的數(shù)據(jù)吞吐率高達(dá)1 MIPS/MHz,從而可以緩減系統(tǒng)在功耗和處理速度之間的矛盾。ATmega16 AVR 內(nèi)核具有豐富的指令集和32 個(gè)通用工作寄存器。所有的寄存器都直接與算術(shù)邏輯單元(ALU) 相連接,使得一條指令可以在一個(gè)時(shí)鐘周期內(nèi)同時(shí)訪問兩個(gè)獨(dú)立的寄存器。這種結(jié)構(gòu)大大提高了代碼效率,并且具有比普通的CISC 微控制器最高至10 倍的數(shù)據(jù)吞吐率。
在開發(fā)工具上,ATmega16 系列單片機(jī)支持先進(jìn)的JTAG 調(diào)試,其硬件仿真工具(仿真器)只是一個(gè)非常簡單的USB 轉(zhuǎn)換器,其軟件集成開發(fā)環(huán)境由著名的IAR 公司提供,在實(shí)際調(diào)試使用時(shí)非常方便,能對相應(yīng)的數(shù)據(jù)進(jìn)行實(shí)時(shí)觀測和對程序的執(zhí)行情況進(jìn)行判斷,在系統(tǒng)整合方面,ATmega16 系列單片機(jī)根據(jù)不同產(chǎn)品系列,集成了多種不同的功能模塊,包括定時(shí)器、模擬比較器、多功能串行接口、硬件乘法器、ADC、看門狗定時(shí)器(WDT)、I/O 端口、RAM、PWM 以及豐富的中斷功能。使用戶根據(jù)自己的需求,選擇合適的ATmega16 單片機(jī)。
2 太陽能充電控制系統(tǒng)方案設(shè)計(jì)
系統(tǒng)主要實(shí)現(xiàn)獨(dú)立光伏路燈太陽電池板的最大功率跟蹤功能。在太陽電池板處于工作狀態(tài),即整個(gè)光伏系統(tǒng)處于充電狀態(tài)時(shí),控制器在光電流達(dá)到一定值后(本系統(tǒng)設(shè)定為0.3A),實(shí)現(xiàn)對電壓、電流數(shù)據(jù)的檢測,通過快速的控制算法,調(diào)節(jié)蓄電池兩端的充電電壓,實(shí)現(xiàn)太陽電池板的輸出功率的最大功率跟蹤,提高鉛酸蓄電池的充電電流,縮短充電時(shí)間,提高充電效率。系統(tǒng)的實(shí)現(xiàn)主要應(yīng)解決如下幾個(gè)方面的問題:
(a)太陽電池板輸出電壓的檢測:檢測太陽電池板不同的輸出電壓,并根據(jù)不同的電壓,系統(tǒng)作出不同的控制處理。如系統(tǒng)處于默認(rèn)工作狀態(tài),太陽電池開路電壓低于8 V 時(shí),因?yàn)槠涞陀陔姵氐某潆娨螅蚨M(jìn)行卸載處理。
(b)鉛酸蓄電池容量的檢測:系統(tǒng)為了盡可能地保護(hù)蓄電池,延長其壽命,將根據(jù)不同的容量和蓄電池不同的狀態(tài)采取相應(yīng)的充電控制策略。
(c)太陽電池板輸出電流檢測:據(jù)此得出輸出功率,使系統(tǒng)通過一定的算法和控制手段,使系統(tǒng)工作在最大功率點(diǎn)。
(d)PWM 輸出控制:根據(jù)輸入輸出檢測模塊的數(shù)據(jù)實(shí)時(shí)調(diào)整蓄電池的充電電壓和電流和卸載放電功能,實(shí)現(xiàn)智能充放電控制。
(e)中央處理系統(tǒng):實(shí)現(xiàn)高效的信息處理和各個(gè)功能模塊的控制。
由此,我們設(shè)計(jì)出了系統(tǒng)整體硬件電路結(jié)構(gòu)模型,見圖1。從圖中可以看出,整個(gè)電路由六個(gè)功能模塊組成:核心控制模塊、前級檢測模塊、Boost 電路控制模塊、后級檢測模塊、PWM 輸出模塊和卸載模塊構(gòu)成。
當(dāng)太陽電池板正常工作輸出時(shí),其過程為:首先檢測該電壓能否達(dá)到電池的充電要求,在滿足基本充電要求的情況下通過控制器對電池兩端的電壓進(jìn)行實(shí)時(shí)監(jiān)控在適合電池工作的三種情況下,通過ATmega16 微處理器的PWM 模塊輸出控制充電電壓和電流。
3 太陽能充電系統(tǒng)最大功率跟蹤算法的實(shí)現(xiàn)
光伏系統(tǒng)電流的變化是隨著外界環(huán)境變化而變化的,要想實(shí)現(xiàn)光伏系統(tǒng)的最大功率跟蹤,一般可以通過兩個(gè)步驟來完成:第一步是采用合適的搜索算法,找到光伏系統(tǒng)的最大功率點(diǎn);第二步是通過控制手段,使光伏方陣工作在最大功率點(diǎn)。該控制系統(tǒng)的總體程序流程圖如圖2 所示。光伏發(fā)電擾動(dòng)觀察法是最常用的MPPT 控制方法之一,其原理是每隔一定的時(shí)間增加或者減少光伏陣列輸出電壓,并觀測之后其輸出功率變化方向,來決定下一步的控制信號。這種控制算法一般采用功率反饋方式,通過兩個(gè)傳感器對光伏陣列輸出電壓及電流分別進(jìn)行采樣,并計(jì)算獲得其輸出功率。該方法雖然算法簡單,且易于硬件實(shí)現(xiàn),但是響應(yīng)速度較慢,只適用于那些日照強(qiáng)度變化比較緩慢的場合。而且穩(wěn)態(tài)情況下,這種算法會導(dǎo)致光伏陣列的實(shí)際工作點(diǎn)在最大功率點(diǎn)附近小幅振蕩,因此會造成一定的功率損失,而日照發(fā)生快速變化時(shí),跟蹤算法可能會失效,判斷得到錯(cuò)誤的跟蹤方向。針對這種算法在實(shí)際應(yīng)用中遇到的情況,根據(jù)本系統(tǒng)實(shí)際提出了一種實(shí)用的改進(jìn)算法。在本獨(dú)立光伏路燈系統(tǒng)中,是要對蓄電池進(jìn)行充電,需要考慮實(shí)現(xiàn)最大功跟蹤的同時(shí),還要兼顧最大限度的延長蓄電池的壽命,具體采用了不同的蓄電池充電策略,可以在程序流程圖中看出。
本文提出一種改進(jìn)的最大功率跟蹤方法,首先根據(jù)蓄電池的當(dāng)前狀態(tài)來判斷需不需要充電,然后根據(jù)電路前級檢測到的光伏電池發(fā)電的電壓和電流大小來決定最大功率點(diǎn)的設(shè)定,將光伏發(fā)電強(qiáng)度分為兩種工作方式,對特定的電池板取一特定的參數(shù)。在光伏發(fā)電輸出調(diào)理電路的前級和后級的參數(shù)檢測過程中,每隔一定的時(shí)間連續(xù)采集10 個(gè)相鄰的電壓、電流信號(ATmega16 有自帶的A/D 轉(zhuǎn)換器,設(shè)置的采樣率為200 Hz),去掉最大和最小的數(shù)據(jù)后,進(jìn)行均值濾波,并同時(shí)得到此時(shí)的電壓和電流的大小,在整個(gè)控制采集數(shù)據(jù)的過程中,為了有效地消除隨機(jī)干擾,我們在程序中設(shè)定一個(gè)幅度比例系數(shù),即每兩個(gè)信號的幅度采集值要有一定的比例關(guān)系,若超過這個(gè)比例,則認(rèn)為是干擾信號,便進(jìn)行這個(gè)數(shù)據(jù)的重新采樣,連續(xù)超過三次采樣數(shù)據(jù)都是干擾信號時(shí),系統(tǒng)則自動(dòng)取消這一次測量。對于采集到的有效數(shù)據(jù),經(jīng)過了均值濾波后,可以消除一定的噪聲干擾,要得到更好的點(diǎn)參數(shù)數(shù)據(jù),我們把采集到的數(shù)據(jù)進(jìn)行LMS(即自適應(yīng)最小均方濾波器)濾波,該濾波器的應(yīng)用較簡單,它是最陡下降梯度算法,用梯度的瞬時(shí)值迭代,從而使均方誤差最小化,用這種方法處理的數(shù)據(jù)效果非常好,對弱信號處理中有很好的應(yīng)用前景,通過試驗(yàn),我們選定濾波器階數(shù)為三階,收斂因子μ(步長)為0.001,權(quán)矢量W 初始化為:W=[0,0,0]T,其遞推公式為:
式中:x (k) 為觀測樣本;X (k-1)為過去的觀測樣本矢量;WT(k-1)X(k-1)表示基于過去的觀測樣本而預(yù)測的現(xiàn)在的信號,這里選擇預(yù)測誤差e(k)=x (k)-WT(k-1)X(k-1)作為調(diào)節(jié)權(quán)重的參數(shù),可以證明,預(yù)測誤差最小等價(jià)于恢復(fù)誤差最小。通過LMS 濾波器后,我們可以得到比較理想的數(shù)據(jù),為實(shí)時(shí)準(zhǔn)確提取出最大功率所需要的參數(shù)提供了條件,也找到了參數(shù)的特征,有助于進(jìn)一步的數(shù)據(jù)提取。當(dāng)然還有其他的提取參數(shù)的方法,諸如頻域?yàn)V波,F(xiàn)FT 變換,小波變換等等,本系統(tǒng)采用該方法以后,數(shù)據(jù)采集的準(zhǔn)確度有了很大的提高,可以對于弱信號參數(shù)的情況也能實(shí)時(shí)找到最大功率點(diǎn),從而實(shí)現(xiàn)了對太陽能的最優(yōu)利用和蓄電池的科學(xué)管理。
4 結(jié)束語
美國英特梅爾(ATMEL)公司推出的ATmega16 系列單片機(jī)具有低功耗、實(shí)時(shí)處理能力強(qiáng)、運(yùn)行速度快等優(yōu)點(diǎn),性價(jià)比高,正日益得到廣泛的應(yīng)用,尤其在自動(dòng)信號采集系統(tǒng)、便攜式設(shè)備、長時(shí)間工作裝置中,體現(xiàn)了它的特點(diǎn),本文所述的智能太陽能充電控制系統(tǒng)充分利用了ATmega16 系列單片機(jī)所提供的各種集成模塊,合理分配片上資源,大大簡化了外圍電路的設(shè)計(jì),從而提升了整個(gè)控制系統(tǒng)的性能。