基于Freescale單片機(jī)的電池管理系統(tǒng)設(shè)計(jì)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
摘 要:為了實(shí)現(xiàn)電動(dòng)汽車電池的實(shí)時(shí)監(jiān)控,在研究了鋰離子電池特點(diǎn)的基礎(chǔ)上,提出了一種用于混合動(dòng)力汽車的分布式電池管理系統(tǒng)。其中,硬件系統(tǒng)包括電源模塊、基于Freescale 系列單片機(jī)的主控制模塊和子模塊、均衡模塊以及CAN 總線通信模塊等; 軟件系統(tǒng)包括基于下溢中斷的數(shù)據(jù)采集與處理、SOC 估算、均衡處理和CAN 通信等任務(wù)。
0 引言
混合動(dòng)力汽車的整車性能很大程度上依賴于動(dòng)力蓄電池。高性能、高可靠性的電池管理系統(tǒng)( Bat ter yManag ement Sy stem,BMS) 能使電池在各種工作條件下獲得最佳的性能。電池管理系統(tǒng)不僅要監(jiān)測(cè)混合動(dòng)力電動(dòng)汽車電池的充放電電流、總電壓、單體電壓和剩余電量SOC,還要預(yù)測(cè)電池的功率強(qiáng)度,以便監(jiān)控電池的使用狀況,在汽車啟動(dòng)和加速時(shí)提供足夠的輸出功率,剎車時(shí)電池組能回收更多的能量,即提供足夠的輸入功率,并且不對(duì)電池組造成傷害。當(dāng)電池出現(xiàn)過充或過放、溫度過高等異常情況時(shí),電池管理系統(tǒng)會(huì)記錄電池號(hào)、診斷電池故障并報(bào)警,同時(shí)整車控制系統(tǒng)對(duì)充電機(jī)和用電設(shè)備給出控制信號(hào)。因此,電池管理系統(tǒng)是混合動(dòng)力汽車的重要電子控制單元之一,對(duì)保障電池的可靠性和安全性起到重要作用。
1 電池管理系統(tǒng)的功能
電池管理系統(tǒng)的主要功能包括: 電池狀態(tài)參數(shù)的采集、電池狀態(tài)的預(yù)測(cè)、電池組故障診斷、均衡保護(hù)以及通信等。
1. 1 電池狀態(tài)參數(shù)采集
電池管理系統(tǒng)的所有算法都是以采集到的電池狀態(tài)參數(shù)為基礎(chǔ)的,因此必須保證數(shù)據(jù)的精確度。采用Fr eescale 集成的10 位A/ D 轉(zhuǎn)換模塊完成對(duì)單體電壓、溫度、總電壓以及充放電電流的采集。
1. 2 電池狀態(tài)的預(yù)測(cè)
電池狀態(tài)預(yù)測(cè)包括兩個(gè)方面。一方面是以安時(shí)積分法為基礎(chǔ)的電池荷電狀態(tài)的預(yù)測(cè); 另一方面是以電流、電壓、溫度為輸入完成最大充放電功率的預(yù)測(cè)。整車控制器以這兩個(gè)參數(shù)為參考,正確地進(jìn)行功率分配。
1. 3 電池組故障診斷
能夠根據(jù)采集到的參數(shù),實(shí)時(shí)診斷電池溫度過高、過低故障,電池過壓、欠壓故障,發(fā)出電池充放電電流過大、電池組絕緣故障警告。這是保證動(dòng)力電池系統(tǒng)可靠、車輛行駛安全、滿足用戶駕車需求的重要技術(shù)手段。
1. 4 均衡保護(hù)
單體電池的差異性,不僅會(huì)導(dǎo)致電池組的使用壽命比單體電池短很多; 同時(shí),對(duì)于鋰離子電池而言,由于其對(duì)充放電要求很高,當(dāng)過充、過放、過電流及短路等情況發(fā)生時(shí),鋰離子電池壓力與熱量大量增加,容易產(chǎn)生火*、燃燒甚至爆炸。為確保安全性和穩(wěn)定性,必須采取均衡措施。
1. 5 通信功能
主要指整車與電池管理系統(tǒng)的CAN 通信。
2 分布式電池管理系統(tǒng)硬件組成
目前,常用的電池管理系統(tǒng)設(shè)計(jì)方式主要有兩種:
分布式設(shè)計(jì)和集中式設(shè)計(jì)。分布式電池管理系統(tǒng)是將電池管理系統(tǒng)分為若干個(gè)子模塊和一個(gè)主控制模塊。
每一個(gè)子模塊能單獨(dú)完成電池信息測(cè)量、電池能量均衡、通信等功能,每一個(gè)子模塊都分別與一個(gè)電池模塊連接在一起,各個(gè)子模塊之間以及子模塊與主控制模塊之間通過總線進(jìn)行通信。主控制模塊完成電池信息的處理、荷電狀態(tài)估算、電池故障診斷、電池組熱管理、電池組與整車通信等功能。
主控制模塊和子模塊分別采用Freescale 9S12 系列的DP512 和DG128 作為處理器。系統(tǒng)硬件框圖如圖1 所示。
圖1 系統(tǒng)硬件框圖
2. 1 電源模塊
整車為BMS 提供的電壓是12 V,管理系統(tǒng)需要的電壓有: 5 V,單片機(jī)及驅(qū)動(dòng)芯片用; ! 15 V,運(yùn)放及電流傳感器用。采用DC/ DC 模塊將12 V 電壓轉(zhuǎn)成5 V或者15 V。
2. 2 A/ D 轉(zhuǎn)換模塊
Frescale 16 位系列芯片集成10 位的A/ D 轉(zhuǎn)換模塊,滿足整車的采樣精度要求。A/ D 采樣電路包括電壓采樣、電流采樣與溫度采樣。子模塊中用CPLD 控制光耦陣列開關(guān),實(shí)現(xiàn)模塊電壓巡檢采樣,主模塊中直接對(duì)總電壓周期采樣; 采用霍爾傳感器實(shí)現(xiàn)電流采樣;采用熱敏電阻實(shí)現(xiàn)溫度采樣。
DG128 通過I/ O 向CPLD 實(shí)時(shí)發(fā)送電池模塊選通信號(hào),CPLD 根據(jù)傳送過來的信號(hào)經(jīng)由內(nèi)部與非邏輯組合的運(yùn)算,向高壓光電隔離開關(guān)陣列發(fā)出控制信號(hào),控制光電開關(guān)固態(tài)繼電器分時(shí)導(dǎo)通; 被選中的模塊電壓信號(hào)再經(jīng)過線性隔離放大和低通濾波預(yù)處理,最后進(jìn)入DG128 的A/ D 轉(zhuǎn)換模塊。開關(guān)陣列控制隔離濾波電路如圖2 所示。
圖2 模塊電壓采集電路
如圖3 所示,設(shè)電池總電壓為U,電阻R2 兩端的電壓為U2 ,當(dāng)求得R2 兩端的電壓U2 ,即可反求U。為了提高U2 的采樣精度,抑制高頻干擾,在R 2 兩端增加由電阻R 3 和電容C1 組成的低通濾波器,再經(jīng)光藕AQW214隔離后,將U2 傳給線性光電隔離放大環(huán)節(jié)ISO124,最終傳給DP512 的A/ D,經(jīng)處理,求得U。
圖3 總電壓采集電路
圖4 中利用二極管單向?qū)щ娦?,將正?fù)電流分別經(jīng)過電阻和運(yùn)算放大器組成的網(wǎng)絡(luò),最終轉(zhuǎn)換為電壓信號(hào),進(jìn)入A/ D 模塊。
圖4 電流采集電路
圖5 中,虛線框內(nèi)的RV 為熱敏電阻,R2 為低溫漂精密電阻。5 V 經(jīng)R2 分壓,即可求得RV 的阻值變化,查表進(jìn)而得到對(duì)應(yīng)的溫度值。與測(cè)量其他信號(hào)一樣,溫度轉(zhuǎn)換的電壓信號(hào)也經(jīng)過一個(gè)低通濾波器進(jìn)入A/ D 模塊。
圖5 溫度采集電路
2. 3 均衡模塊
根據(jù)實(shí)時(shí)采集的數(shù)據(jù),當(dāng)電池管理系統(tǒng)認(rèn)為某一單體電壓BATn 需要均衡時(shí),給出均衡控制信號(hào)EQ _CT RLn ,光耦閉合,MOS 管導(dǎo)通,均衡電路啟動(dòng),如圖6 所示。
圖6 均衡電路
2. 4 CAN 通信模塊
CAN 通信是整車與BMS 之間、BMS 主控制模塊和子模塊之間的信息橋梁。子模塊將采集到的單體電壓和溫度值通過CAN 總線上傳給主控模塊,主控模塊通過CAN 總線給子模塊下達(dá)均衡命令; 主控模塊將電池參數(shù)發(fā)送給整車,整車控制器通過判斷決策能量分配。Freescale 9S12 系列單片機(jī)已經(jīng)集成CAN 模塊MSCAN,外擴(kuò)引腳CANTX 和CANRX。還需要PCA82C250 來作為驅(qū)動(dòng)芯片,如圖7 所示。
圖7 CAN 通信接口電路
3 分布式電池管理系統(tǒng)的軟件設(shè)計(jì)
電池管理系統(tǒng)軟件以CodeWarrior for HCS12V4. 7 為開發(fā)環(huán)境,采用C 語言編寫,包括了主控制模塊和子模塊兩個(gè)部分的軟件設(shè)計(jì)。
3. 1 主控制模塊
主控制模塊的任務(wù)主要有: A/ D 轉(zhuǎn)換與數(shù)據(jù)處理任務(wù)、整車CAN 接收任務(wù)、整車CAN 發(fā)送任務(wù)、系統(tǒng)監(jiān)控任務(wù)、SOC 與能量估算任務(wù)以及均衡處理任務(wù)。中斷有:A/ D 采集中斷、定時(shí)器下溢中斷、CAN 接收中斷。
如圖8 所示,系統(tǒng)初始化工作完成后,軟件以模/ 數(shù)減法計(jì)數(shù)器的下溢中斷來確定系統(tǒng)的執(zhí)行周期,計(jì)數(shù)周期為5 ms。在模/ 數(shù)計(jì)數(shù)器前一次下溢中斷程序中,選擇電壓采集通道,并查詢整車CAN 接收; 經(jīng)5 ms 在本次下溢中斷到來后,中斷服務(wù)程序進(jìn)行A/ D 轉(zhuǎn)換的啟動(dòng),轉(zhuǎn)換完成進(jìn)入A/ D 中斷,開啟其他任務(wù)的執(zhí)行,如此循環(huán)交替進(jìn)行。根據(jù)整車控制策略,CAN 上的電池狀態(tài)數(shù)據(jù)每幀的刷新周期為10 ms,因此設(shè)置下溢中斷的時(shí)鐘節(jié)拍為5ms,相應(yīng)地,以上所有任務(wù)的執(zhí)行周期均為10 ms。
圖8主控制模塊軟件時(shí)序圖
3. 2 子模塊
子模塊的任務(wù)主要有: A/ D 轉(zhuǎn)換與數(shù)據(jù)處理任務(wù)、內(nèi)部CAN 接收任務(wù)、內(nèi)部CA N 發(fā)送任務(wù)、以及均衡執(zhí)行任務(wù)。中斷有: A/ D 采集中斷、定時(shí)器下溢中斷。
如圖9 所示,軟件以模/ 數(shù)減法計(jì)數(shù)器的下溢中斷來確定系統(tǒng)的執(zhí)行周期,計(jì)數(shù)周期為2. 5 ms。在模/ 數(shù)計(jì)數(shù)器前一次下溢中斷程序中,選擇電壓采集通道,并查詢內(nèi)部CAN 接收; 經(jīng)2. 5 ms 在本次下溢中斷到來后,中斷服務(wù)程序進(jìn)行A/ D 轉(zhuǎn)換的啟動(dòng),轉(zhuǎn)換完成進(jìn)入A/ D 中斷,開啟其他任務(wù)的執(zhí)行,如此循環(huán)交替進(jìn)行。其中,根據(jù)協(xié)議,內(nèi)部CAN 發(fā)送任務(wù)為保證周期為10 ms,要間隔一次A/ D 轉(zhuǎn)換后才啟動(dòng),其他任務(wù)執(zhí)行周期則為5 ms。
圖9 子模塊軟件時(shí)序圖
4 結(jié) 論
基于Freescale 單片機(jī)的分布式電池管理系統(tǒng),用集成A/ D 轉(zhuǎn)換模塊實(shí)現(xiàn)實(shí)時(shí)數(shù)據(jù)采集,同時(shí)均衡控制功能還解決了電池單體電壓不均衡造成的過充問題。Freescale 9S12 系列單片機(jī)強(qiáng)大的數(shù)據(jù)處理功能,豐富的外圍接口和良好的電磁兼容性滿足了混合動(dòng)力汽車電池管理的所有要求,在實(shí)際中得到了良好的效果。