基于Atmega16的智能太陽能充電器設計
1 Atmega16 系列單片機概述
美國英特梅爾(ATMEL)公司的Atmega16 系列單片機是基于增強的AVR RISC 結構的低功耗8 位CMOS 微控制器。由于其先進的指令集以及單時鐘周期指令執(zhí)行時間,ATmega16的數(shù)據(jù)吞吐率高達1 MIPS/MHz,從而可以緩減系統(tǒng)在功耗和處理速度之間的矛盾。ATmega16 AVR 內(nèi)核具有豐富的指令集和32 個通用工作寄存器。所有的寄存器都直接與算術邏輯單元(ALU) 相連接,使得一條指令可以在一個時鐘周期內(nèi)同時訪問兩個獨立的寄存器。這種結構大大提高了代碼效率,并且具有比普通的CISC 微控制器最高至10 倍的數(shù)據(jù)吞吐率。
在開發(fā)工具上,ATmega16 系列單片機支持先進的JTAG 調(diào)試,其硬件仿真工具(仿真器)只是一個非常簡單的USB 轉(zhuǎn)換器,其軟件集成開發(fā)環(huán)境由著名的IAR 公司提供,在實際調(diào)試使用時非常方便,能對相應的數(shù)據(jù)進行實時觀測和對程序的執(zhí)行情況進行判斷,在系統(tǒng)整合方面,ATmega16 系列單片機根據(jù)不同產(chǎn)品系列,集成了多種不同的功能模塊,包括定時器、模擬比較器、多功能串行接口、硬件乘法器、ADC、看門狗定時器(WDT)、I/O 端口、RAM、PWM 以及豐富的中斷功能。使用戶根據(jù)自己的需求,選擇合適的ATmega16 單片機。
系統(tǒng)主要實現(xiàn)獨立光伏路燈太陽電池板的最大功率跟蹤功能。在太陽電池板處于工作狀態(tài),即整個光伏系統(tǒng)處于充電狀態(tài)時,控制器在光電流達到一定值后(本系統(tǒng)設定為0.3A),實現(xiàn)對電壓、電流數(shù)據(jù)的檢測,通過快速的控制算法,調(diào)節(jié)蓄電池兩端的充電電壓,實現(xiàn)太陽電池板的輸出功率的最大功率跟蹤,提高鉛酸蓄電池的充電電流,縮短充電時間,提高充電效率。系統(tǒng)的實現(xiàn)主要應解決如下幾個方面的問題:
(a)太陽電池板輸出電壓的檢測:檢測太陽電池板不同的輸出電壓,并根據(jù)不同的電壓,系統(tǒng)作出不同的控制處理。如系統(tǒng)處于默認工作狀態(tài),太陽電池開路電壓低于8 V 時,因為其低于電池的充電要求,因而進行卸載處理。
(b)鉛酸蓄電池容量的檢測:系統(tǒng)為了盡可能地保護蓄電池,延長其壽命,將根據(jù)不同的容量和蓄電池不同的狀態(tài)采取相應的充電控制策略。
(c)太陽電池板輸出電流檢測:據(jù)此得出輸出功率,使系統(tǒng)通過一定的算法和控制手段,使系統(tǒng)工作在最大功率點。
(d)PWM 輸出控制:根據(jù)輸入輸出檢測模塊的數(shù)據(jù)實時調(diào)整蓄電池的充電電壓和電流和卸載放電功能,實現(xiàn)智能充放電控制。
(e)中央處理系統(tǒng):實現(xiàn)高效的信息處理和各個功能模塊的控制。
由此,我們設計出了系統(tǒng)整體硬件電路結構模型,見圖1。從圖中可以看出,整個電路由六個功能模塊組成:核心控制模塊、前級檢測模塊、Boost 電路控制模塊、后級檢測模塊、PWM 輸出模塊和卸載模塊構成。
當太陽電池板正常工作輸出時,其過程為:首先檢測該電壓能否達到電池的充電要求,在滿足基本充電要求的情況下通過控制器對電池兩端的電壓進行實時監(jiān)控在適合電池工作的三種情況下,通過ATmega16 微處理器的PWM 模塊輸出控制充電電壓和電流。
評論