基于PIC單片機的智能充電器的設計與實現(xiàn)
1 引言
本文引用地址:http://cafeforensic.com/article/177223.htm鉛酸蓄電池是目前大容量電池的主要品種,其制造成本低、容量大、價格低廉,使用范圍非常廣泛。鉛酸蓄電池的基本充電方式有兩種:恒壓充電和恒流充電。如果單獨采用一種方法,比如恒流法,則在充電后期由于充電電流不變,容易使容量下降而提前報廢。單獨采用恒壓法,充電初期電流過大,可能致使電極活性物質脫落,后期電流又過小,形成長期充電不足,影響蓄電池的使用壽命[1]。因此,充電器大部分都是綜合采用兩種方法的多階段充電方式。近年來,先恒流、再恒壓、最后恒壓浮充的三階段充電方式被逐漸接受。
目前,三階段充電方式主要采用模擬控制的方案。雖然具有實時性好、帶寬高的優(yōu)點,但其硬件電路復雜,控制不靈活。為此,本文設計了一種數(shù)字控制的充電器,采用單片機作為控制回路的核心,通過電壓、電流實時采樣,從而控制輸出電壓和輸出電流,實現(xiàn)了三階段充電策略,可智能靈活的控制蓄電池的充電,提高蓄電池的利用效率,并有助于提高蓄電池的使用壽命和性能。
2 充電器電源結構
系統(tǒng)的總體設計框圖如圖1所示。主要由3部分組成:第一部分為開關電源部分,采用反激DC/DC變換器;第二部分為電壓、電流采樣電路;第三部分為單片機核心的PWM輸出,再經(jīng)驅動電路驅動反激電路。
圖1 充電器電路總體設計框圖
系統(tǒng)由電壓采樣電路、電流采樣電路實時分別采樣電壓、電流,將采樣的電壓、電流各自送單片機的RA0、RA1,經(jīng)過單片機內部的A/D轉換模塊轉化為數(shù)值,然后根據(jù)編寫的軟件進行對應操作,由PWM模塊得到相應的占空比,再由RC2將占空比送到驅動電路,用于驅動反激電路的開關管,從而在輸出端得到相應的電壓或電流對鉛酸蓄電池進行充電。
3 數(shù)字控制電路結構
數(shù)字控制電路通過相應信號的獲取和輸出,監(jiān)測和控制充電器對應的工作過程,使其能自適應工作。然而,主電路輸出是模擬信號,單片機能夠處理的卻是數(shù)字信號,因此在處理信號之前,必須先通過模數(shù)轉換器(ADC)將模擬信號轉變?yōu)閿?shù)字信號。假定ADC字長為N,則模數(shù)轉換精度為1/2N,N越大精度也越高,但價格越貴。數(shù)字控制器PWM單元的時間分辨率及模數(shù)轉換精度,決定了充電器的輸出電壓、輸出電流、輸出功率的精度。為了同時滿足精度需求及降低成本的考量,需要選擇合適位數(shù)的ADC和PWM數(shù)字控制器。
ADC轉換器選定后,需要選擇PWM位數(shù)。如果PWM位數(shù)太小,將導致輸出電壓在某一電壓值附近上下波動,造成極限環(huán)現(xiàn)象,輸出電壓將發(fā)生周期性抖動,進而影響到采樣數(shù)據(jù),最終影響到整個系統(tǒng)的處理精度。因此,PWM單元分辨率越高越好。
PWM位數(shù)N與頻率fPWM滿足下式:。式中,fclk表示單片機的時鐘頻率。PR2為單片機PWM周期寄存器,fPWM越高存入PR2的值越小。設存入PR2的值為M,則最大分辨率為分頻值f/M。由此可見,頻率不一定越高越好,過高的頻率會降低PWM分辨率。PWM輸出的頻率與分辨率之間的關系如表1所示。
表1 PWM頻率與分辨率的關系(fclk=40MHz)
為了保證足夠高的分辨率,保證輸出電壓紋波受PWM分辨率的影響小于輸出濾波電容的影響,本設計選用10位PWM。
同時,考慮到其它需求,本系統(tǒng)對數(shù)字控制器的具體要求主要包括:(1)內置ADC模塊,至少2個ADC信道,精度在10位以上;(2)至少內置1個PWM單元,PWM精度在10位以上;(3)至少兩個定時器;(4)有中斷優(yōu)先級設置;(5)至少5個I/O口;(6)價格低于50元人民幣。
綜合考慮以上因素,選擇microchip公司的PIC18F2620作為數(shù)字控制芯片。PIC18F2620的主要性能有:10個10位的ADC信道;最高外接時鐘頻率可達到40M:1024字節(jié)的數(shù)據(jù)EEPROM,用于儲存可變數(shù)據(jù);可延長電池壽命的低功耗強化設計,睡眠模式下耗電僅為100nA等等,其性能滿足系統(tǒng)需要。
4 系統(tǒng)軟件設計
4.1 主程序設計
三階段充電,開始時采用恒流充電,中間為恒壓充電,最后采用浮充充電。該充電法減少了充電出氣量,充電比較徹底,延長了蓄電池使用壽命。三階段充電法充電電流和充電電壓變化曲線如圖2所示。
圖2 三階段充電特性圖
根據(jù)三階段充電的原理,畫出系統(tǒng)的主程序流程圖,如圖3所示。(其中Um為蓄電池的最大電壓上限,Ubat為恒壓充電門限,Ibat為恒流充電門限,其值一般取蓄電池容量的1/10。)
單片機系統(tǒng)的主程序,主要用于A/D采樣初始化、PWM初始化、定時和中斷系統(tǒng)、定時器的初值設定,然后一直檢測充電器的電壓與電流,進行三階段的自適應充電。
程序中需要注意一下問題。
(1)因為需要同時采樣電壓和電流2個變量,此時可根據(jù)PIC18F2620的采樣單元特點,可通過直接改變A/D控制寄存器ADCON0.2~3位進行更換通道,其速度快、花費時間少。
(2)中斷系統(tǒng)是程序的重點部分。由于采樣單元不可能一直工作,這樣既浪費單片機的運算能力又影響其它部分的工作,使系統(tǒng)的工作效率低下。為了使單片機更有效率的工作,系統(tǒng)采用定時中斷的工作方式:利用TMR0定時器進行定時,固定一定的時間后進入中斷。目前,市面上的單片機一般都存在中斷優(yōu)先級,比如系統(tǒng)采用的PIC18F2620有2個優(yōu)先級,可以通過設置不同的中斷向量進行不同優(yōu)先級的操作。對應的高優(yōu)先級中斷服務子程序,使TMR0復位,并載入相應的初值,進入下一次的定時狀態(tài)。低優(yōu)先級中斷服務子程序,則是復位A/D模塊使能位,讀取并存儲A/D轉換結果,然后判別相應的電壓、電流采樣值所處的階段,最后經(jīng)過各個階段對應的PI調節(jié)修改占空比。
圖3 主程序流程圖
4.2 采樣子程序
采樣處理后的電壓、電流信號,不可避免的存在系統(tǒng)所帶來的噪聲和干擾,為了準確的測量和控制,必須濾除這些噪聲和干擾。除了在硬件電路上進行濾波,還可采用軟件濾波或稱為數(shù)字濾波。常用的數(shù)字濾波方法有很多,本系統(tǒng)采用了平均值法:多次采樣后排序,再去掉最大和最小值之后求平均值的方法,提高了采樣精度。
4.3 PI子程序
為了消除積分飽和的影響,本系統(tǒng)采用增量式PI控制算法,并利用遇限削弱的方法。
遇限削弱積分PI算法,實際上是一旦控制量進入飽和區(qū)范圍,則停止增大積分項的運算而只執(zhí)行削弱積分項的運算[5]。PI程序流程圖如圖4所示。
圖4 PI控制算法流程圖
5 實驗結果與分析
采用以上介紹的方法制作樣機,對YTX7A-BS/12V-7AH的鉛酸蓄電池充電。
主電路參數(shù)如下:輸入電壓Uin=24V,電路工作頻率f=50kHz,采用EI33磁芯,原邊電感Lp=212μH,副邊電感Ls=112μH,開關管采用IRF840,輸出電容采用1000μF/25V的電解電容。
圖5為樣機給鉛酸蓄電池充電變化曲線圖,橫軸為充電時間,左邊Y軸為蓄電池電壓,右邊Y軸為充電電流。
圖5 蓄電池充電變化曲線
從圖5可知,根據(jù)程序設計要求,在充電的初始階段,充電器先進行恒流充電,蓄電池電流保持為0.7A左右。此后,當蓄電池電壓超過恒壓充電門限14.4V,轉為恒壓充電,充電電壓保持為14.4V,充電電流不斷下降。同時,通過RA1不斷檢測充電電流,當充電電流降到0.1A以下時,表明蓄電池已充滿電。這時,為了補充蓄電池的自放電,轉為浮充充電,充電電壓保持于13.7V。根據(jù)以上結果分析表明:本文所提出的鉛酸蓄電池三階段自適應數(shù)字控制方案是有效的,充電器能夠根據(jù)蓄電池所處的實際狀態(tài)來選擇對應的充電方式(恒流,恒壓充電和浮充)進行充電。
6 結語
相對于傳統(tǒng)的模擬控制的鉛酸蓄電池充電器,采用數(shù)字控制的充電器大大提高了控制系統(tǒng)的靈活性、可靠性、穩(wěn)定性等。隨著控制方案與功能整合的不斷完善以及單片機價格的逐漸降低,采用單片機的數(shù)字控制充電器將成為今后一個重要的研究方向。
參考文獻
[1] 胡恒生,王慧,趙徐成,呂瑞強. 蓄電池充電方法的分析和探討[J]. 電源技術應用,2009,12(8):1-4.
[2] 陳堅. 電力電子學DD電力電子變換和控制技術[M]. 北京:高等教育出版社,2004.
[3] 孟建輝,劉文生. 反激式變換器 DCM與CCM模式的分析與比較[J]. 通訊電源技術,2010,27(6):33-38.
[4] 童詩白,華成英. 模擬電子技術基礎[M]. 北京:高等教育出版社,2001.
[5] Cook,B. New Developments and Future Trends in High-Efficiency Lighting. IEEEngineering Science and Education Journal,2000,9:207-217.■
評論