- 基于ATmega16的電動(dòng)車鋰電池組設(shè)計(jì)
- 采用分離元件的電池保護(hù)系統(tǒng)
- 利用基于單片機(jī)的電池保護(hù)電路系統(tǒng)
隨著電動(dòng)自行車的逐漸普及,電動(dòng)自行車的主要能源---鋰電池也成為眾人關(guān)心的焦點(diǎn)。鋰電池與鎳鎘、鎳氫電池不太一樣,因其能量密度高,對充放電要求很高。 當(dāng)過充、過放、過流及短路保護(hù)等情況發(fā)生時(shí),鋰電池內(nèi)的壓力與熱量大量增加,容易產(chǎn)生爆炸,因此通常都會(huì)在電池包內(nèi)加保護(hù)電路,用以提高鋰電池的使用壽 命。針對目前電動(dòng)車鋰電池組所用的保護(hù)電路大多都由分立原件構(gòu)成,存在控制精度不夠高、技術(shù)指標(biāo)低、不能有效保護(hù)鋰電池組等特點(diǎn),本文中提出一種基于單片 機(jī)的電動(dòng)車36 V鋰電池組(由10節(jié)3. 6 V鋰電池串聯(lián)而成)保護(hù)電路設(shè)計(jì)方案,利用高性能、低功耗的ATmega16L 單片機(jī)作為檢測和控制核心,用由MC34063構(gòu)成的DC /DC變換控制電路為整個(gè)保護(hù)電路提供穩(wěn)壓電源,輔以LM60 測溫、MOS管IRF530N作充放電控制開關(guān),實(shí)現(xiàn)對整個(gè)電池組和單個(gè)電池的狀態(tài)監(jiān)控和保護(hù)功能,達(dá)到延長電池使用壽命的目的。
1 保護(hù)電路硬件設(shè)計(jì)
本系統(tǒng)以單片機(jī)為數(shù)據(jù)處理和控制的核心,將任務(wù)設(shè)計(jì)分解為電壓測量、電流測量、溫度測量、開關(guān)控制、電源、均衡充電等功能模塊。系統(tǒng)的總體框圖如圖1所示。
圖1 系統(tǒng)的總體框圖
電 池組電壓、電流、溫度等信息通過電壓采樣、電流采樣和溫度測量電路,加到信號采集部分的A /D輸入端。 A /D模塊將輸入的模擬信號轉(zhuǎn)換為數(shù)字信號,并傳輸給單片機(jī)。單片機(jī)作為數(shù)據(jù)處理和控制的核心,一方面實(shí)時(shí)監(jiān)控電池組的各項(xiàng)性能指標(biāo)和狀態(tài),一方面根據(jù)這些 狀態(tài)參數(shù)控制驅(qū)動(dòng)大功率開關(guān)。由于使用了單片機(jī),使系統(tǒng)具有很大的靈活性,便于實(shí)現(xiàn)各種復(fù)雜控制,從而能方便地對系統(tǒng)進(jìn)行功能擴(kuò)展和性能改進(jìn)。
1. 1 ATmega16 L單片機(jī)模塊
從 低功耗、低成本設(shè)計(jì)角度出發(fā),單片機(jī)模塊采用高性能、低功耗的ATmega16 L單片機(jī)作為檢測與控制核心。 ATmega16 L 是基于增強(qiáng)的AVRR ISC結(jié)構(gòu)的低功耗8位CMOS微控制器,內(nèi)部帶有16 k 字節(jié)的系統(tǒng)內(nèi)可編程Flash, 512 字節(jié)EEPROM, 1 k字節(jié)SRAM, 32個(gè)通用I/O口線, 32個(gè)通用工作寄存器(用于邊界掃描的JTAG接口,支持片內(nèi)調(diào)試與編程) , 3個(gè)具有比較模式的靈活定時(shí)器/計(jì)數(shù)器( T/C)(片內(nèi)/外中斷) ,可編程串行USART,有起始條件檢測器的通用串行接口, 8路10位具有可選差分輸入級可編程增益( TQFP封裝)的ADC,具有片內(nèi)振蕩器的可編程看門狗定時(shí)器,一個(gè)SP I串行端口,以及6個(gè)可以通過軟件進(jìn)行選擇的省電模式。由于其先進(jìn)的指令集以及單時(shí)鐘周期指令執(zhí)行時(shí)間,ATmega16 L的數(shù)據(jù)吞吐率高達(dá)1M IPS/MHz,從而可以緩減系統(tǒng)功耗和處理速度之間的矛盾。
單片機(jī)的輸入輸出設(shè)計(jì)如圖2所示。 由電源部分降壓、穩(wěn)壓得到的3. 3 V電壓通過端口10為單片機(jī)提供工作電壓;端口12和13為反向振蕩放大器與片內(nèi)時(shí)鐘操作電路的輸入端和反向振蕩放大器的輸出端,為單片機(jī)提供工作晶振; 端口30是端口A與A /D轉(zhuǎn)換器的電源,使用ADC時(shí)通過一個(gè)低通濾波器與端口10的VCC連接;端口37,38的ADC3, ADC2是經(jīng)過轉(zhuǎn)換后待檢測的電壓、電流值;端口39, 40的ADC1,ADC0是經(jīng)過溫度傳感器轉(zhuǎn)換后的溫控電壓值。
圖2 單片機(jī)的外圍電路設(shè)計(jì)
1. 2 穩(wěn)壓電源模塊
穩(wěn) 壓電源是單片機(jī)系統(tǒng)的重要組成部分,它不僅為系統(tǒng)提供多路電源電壓,還直接影響到系統(tǒng)的技術(shù)指標(biāo)和抗干擾性能。 ATmega16 L單片機(jī)的工作電壓為2. 7~5. 5 V,為保證單片機(jī)穩(wěn)定的工作電壓為3. 3 V. 穩(wěn)壓部分是由MC34063構(gòu)成的DC /DC變換控制電路,從電池組分出的25 V電壓經(jīng)過電路降壓、穩(wěn)壓,輸出3. 3 V,供保護(hù)電路工作,其電路如圖3所示。
圖3 穩(wěn)壓電源模塊電路
1. 3 充電均衡模塊
采用模擬電路方案。即在每節(jié)電池的外部搭建過壓保護(hù)電路,充電過程中當(dāng)電壓超過預(yù)定值時(shí),保護(hù)電路自動(dòng)閉合,使電池通過電阻回路放電,以保護(hù)電池不會(huì)過度充電。當(dāng)電池電壓減小到均衡充電動(dòng)作電壓4. 18 V時(shí),保護(hù)電路自動(dòng)斷開。
1. 4 電壓電流測量模塊
待 測的電壓通過集成運(yùn)算放大器LM358,將輸出送至單片機(jī)進(jìn)行檢測。 LM358內(nèi)部包括2個(gè)獨(dú)立、高增益、內(nèi)部頻率補(bǔ)償?shù)碾p運(yùn)算放大器,適合于電源電壓范圍很寬的單電源使用和雙電源工作模式,由于其低功耗電流,也適合于電 池。用霍爾傳感器UGN - 3501 M 檢測直流電流。 UGN -3501M是集成型霍爾傳感器,采用差動(dòng)霍爾電壓輸出,檢測靈敏度為1. 4 V /0. 1T.
電壓電流檢測電路的設(shè)計(jì)如圖4 所示。 運(yùn)算放大器LM358的5, 6引腳所接的BB,AA為待測的充電、放電電壓,經(jīng)過放大后由7腳輸出至單片機(jī)進(jìn)行檢測,當(dāng)檢測到待測電壓達(dá)到過充、過放保護(hù)電壓時(shí),由單片機(jī)控制斷開充 放電回路。電流檢測通過霍爾傳感器完成,如圖4所示,將從UGN -3501M1, 8引腳輸出的霍爾電壓uH 接至LM358的3, 4引腳,經(jīng)過放大后從1 腳輸出ADC3 至單片機(jī),進(jìn)行過電流保護(hù)。 UGN - 3501M 的5, 6, 7引腳連接調(diào)整電位器,用以補(bǔ)償不等位電勢,同時(shí)改善線性。 調(diào)整5, 6引腳外接電阻R16,可使輸出霍爾電壓uH 與磁場強(qiáng)度有較好的線性關(guān)系。
圖4 電壓電流檢測電路
1. 5 溫度檢測模塊
溫度檢測和控制模塊選用電壓輸出型的半導(dǎo)體溫度傳感器LM60. 該傳感器是一種已校正的集成化溫度傳感器,它的工作溫度范圍是- 40 ℃至125 ℃,工作電壓范圍是2. 7 V至10 V. 信號輸出與溫度成正比,信號大小可達(dá)+ 6. 25 mV /℃。
基于LM60的溫度檢測電路如圖5所示。 由穩(wěn)壓部分輸出的3. 3 V 電源為此電路供電,經(jīng)過溫度傳感器將探測點(diǎn)的溫度轉(zhuǎn)化為電壓值通過ADC0,ADC1輸出,再將ADC0, ADC1送入單片機(jī)進(jìn)行檢測,當(dāng)電壓值達(dá)到溫控要求時(shí),單片機(jī)控制開關(guān)通斷。
圖5 溫度檢測電路
1. 6 開關(guān)模塊
開關(guān)采用MOSFET,型號選用P溝道的MOS管的IR530N. 工作原理:單片機(jī)控制端口輸出高電平,功率三極管導(dǎo)通,功率場效應(yīng)管的柵極和漏極之間產(chǎn)生壓降,功率場效應(yīng)管導(dǎo)通。
2 軟件設(shè)計(jì)
本系統(tǒng)軟件采用C語言編寫,處理程序采用模塊化編程, 程序運(yùn)行的環(huán)境是ICCAVR 開發(fā)系統(tǒng)。
在電池組空載的時(shí)候,系統(tǒng)進(jìn)入掉電模式,以使功耗降至最低;當(dāng)電池組接入負(fù)載或?qū)﹄姵亟M充電時(shí),單片機(jī)被激活,由低功耗掉電模式轉(zhuǎn)入正常工作模式,并持續(xù)運(yùn)作。整個(gè)程序的流程如圖6所示。
圖6 程序流程
根據(jù)本系統(tǒng)的模塊分布,單片機(jī)程序分為電壓測量模塊、電流測量模塊和溫度測量模塊,每一模塊調(diào)用共同A /D轉(zhuǎn)換函數(shù)和延時(shí)判斷函數(shù)等,以縮短代碼長度和增強(qiáng)程序代碼的可讀性。 下面給出程序主函數(shù)的代碼:
void main ( void)
{
int ( ) ; / /單片機(jī)初始化,打開所有開關(guān);
sleep ( ) ; / /單片機(jī)進(jìn)入休眠模式;
int sign︱ = 1;
while ( sign = = 1 ) / /判斷系統(tǒng)是否運(yùn)行正常;
{ int( ) ;
dianya ( ) ; / /調(diào)用測壓模塊;
delay(30000) ;
delay(30000) ;
dianliu ( ) ; / /調(diào)用測流模塊;
delay(30000) ;
delay(30000) ;
wendu ( ) ; / /調(diào)用溫度模塊;
delay(30000) ;
delay(30000) ;
}
int ( ) ;
sign︱ = 1;
main ( ) ;
}
3 結(jié)束語
通過實(shí)驗(yàn),本保護(hù)電路系統(tǒng)實(shí)現(xiàn)了全部基本功能。與傳統(tǒng)采用分離元件的電池保護(hù)系統(tǒng)相比,本文中提出基于單片機(jī)的電池保護(hù)電路系統(tǒng)具有系統(tǒng)體積小、功能多、功耗低、成本低等特點(diǎn),可用于工業(yè)生產(chǎn)。