王 琪,馬江睿,王 晨
(西安工業(yè)大學(xué) 電子信息工程學(xué)院,西安710021)
隨著環(huán)境污染和能源問(wèn)題的日益突出,電動(dòng)汽車的發(fā)展已經(jīng)成為一種必然的趨勢(shì)。電動(dòng)汽車?yán)酶唠妷骸⒋箅娏鳛樽陨硖峁﹦?dòng)力源,故需要將多個(gè)單體電池組成電池組進(jìn)行管理和控制,使電池的能量利用率和使用壽命達(dá)到最大化[1]。電池管理系統(tǒng)根據(jù)采集的電池信息(電壓、電流和溫度),對(duì)電池進(jìn)行充放電管理,同時(shí)估算電池的剩余電量完成狀態(tài)評(píng)估,為動(dòng)力電池組的工作安全提供保障[2]。目前,電動(dòng)汽車的電池管理系統(tǒng)內(nèi)部通信一般采用CAN總線或RS485 總線[3]。由于傳輸介質(zhì)的原因?qū)е孪到y(tǒng)存在以下不足:布線繁瑣,增加或減少設(shè)備均需重新布線,擴(kuò)容能力差;車輛的振動(dòng)、環(huán)境變化會(huì)導(dǎo)致導(dǎo)線老化,增加故障率;系統(tǒng)安裝費(fèi)時(shí),維護(hù)不便,成本高等[4-5]。
針對(duì)以上問(wèn)題,本文研究并設(shè)計(jì)了基于ZigBee的動(dòng)力電池管理系統(tǒng),采用無(wú)線通信技術(shù)來(lái)替代傳統(tǒng)有線通信方式,通過(guò)搭建星型網(wǎng)絡(luò),有效傳輸動(dòng)力電池組數(shù)據(jù),提高了系統(tǒng)的靈活性和可靠性,降低了系統(tǒng)的生產(chǎn)和維護(hù)成本。
電池管理系統(tǒng)作為連接電動(dòng)汽車和動(dòng)力電池的橋梁,主要負(fù)責(zé)電池狀態(tài)檢測(cè)、電池優(yōu)化控制以及電池信息處理,使電池組工作在安全范圍內(nèi),延長(zhǎng)電池使用壽命,保證整車系統(tǒng)的正常運(yùn)行[6]。電池管理系統(tǒng)的基本組成如圖1所示。
圖1 電池管理系統(tǒng)基本組成圖Fig.1 Basic composition diagram of battery management system
實(shí)時(shí)檢測(cè)電池電壓、電流、溫度參數(shù),對(duì)電池內(nèi)部狀態(tài)SOC 進(jìn)行估算,保證電池組在安全有效的范圍內(nèi)工作,這是電池管理系統(tǒng)有效運(yùn)行的基礎(chǔ)和關(guān)鍵[7-8]。
電池的優(yōu)化控制分為兩個(gè)部分:電池均衡控制、溫度控制。均衡控制可以保證單體電池剩余電量的一致性,從而使電池電量的利用率達(dá)到最大化。溫度控制使電池工作在安全的溫度范圍內(nèi),消除使用的安全隱患。
電池信息處理是將實(shí)時(shí)監(jiān)測(cè)到的電池?cái)?shù)據(jù)進(jìn)行傳輸與存儲(chǔ)。電池管理系統(tǒng)作為電動(dòng)汽車的核心部件,需要與整車控制器進(jìn)行通信,提供電池的實(shí)時(shí)數(shù)據(jù)從而控制下層各個(gè)控制器的動(dòng)作,保證汽車的安全行駛。
電池信息檢測(cè)作為電池管理系統(tǒng)關(guān)鍵的一環(huán),是電池狀態(tài)估計(jì)、電池預(yù)警以及均衡控制等所有功能實(shí)現(xiàn)的基礎(chǔ)[9]。當(dāng)前市場(chǎng)上存在2 種常用的電池信息檢測(cè)解決方案:一種是分立式元器件搭建采集電路,另一種是集成式的電池管理芯片設(shè)計(jì)實(shí)現(xiàn)[10-11]。本文考慮到系統(tǒng)的穩(wěn)定性及低功耗的要求,選用AD7280A 作為電池管理芯片,該芯片溫度采集通道多,電壓采集精度高,信號(hào)轉(zhuǎn)換時(shí)間短,溫度測(cè)量范圍寬,而且價(jià)格低廉。支持菊花鏈方式的級(jí)聯(lián),能夠?qū)崿F(xiàn)對(duì)64 節(jié)的單體電池采集信息,所以采用AD7280A采集電池信息完全滿足系統(tǒng)要求。為了便于管理,本系統(tǒng)采用分布式拓?fù)湓O(shè)計(jì)了基于ZigBee 無(wú)線組網(wǎng)技術(shù)的電池管理系統(tǒng),該電池管理系統(tǒng)硬件結(jié)構(gòu)如圖2所示。
圖2 電池管理系統(tǒng)硬件結(jié)構(gòu)圖Fig.2 Hardware structure diagram of battery management system
本文選用ADI 公司的AD7280A 集成式芯片完成電池管理系統(tǒng)電壓采集部分的電路設(shè)計(jì)。AD7280A 的電源電壓的輸入范圍是8 V~30 V,本文采用鋰電池組為該芯片提供電源。AD7280A 共提供了6 個(gè)模擬輸入通道,每個(gè)通道的共模電壓輸入范圍是0.5 V~27.5 V,由于AD7280A 的電壓采集是利用相鄰模擬輸入的壓差進(jìn)行轉(zhuǎn)換獲取單體電池電壓,因此只需要將串聯(lián)鋰電池的節(jié)點(diǎn)電壓按順序連接到6 個(gè)模擬輸入通道即可,相當(dāng)于每塊AD7280A最多可對(duì)6 節(jié)單體電池進(jìn)行電壓采集。此外,AD7280A 提供了6 個(gè)輔助ADC 通道,該通道的測(cè)量原理與電壓測(cè)量相似,均采用逐次逼近法測(cè)量,本設(shè)計(jì)使用輔助ADC 測(cè)量6 節(jié)單體電池的溫度。AD7280A 引腳連接示意圖如圖3所示,信號(hào)流通的最底端與MCU 直接相連的稱作主AD7280A,其余為從AD7280A。MCU 與主AD7280A 通過(guò)SDI、SDO、SCK、四個(gè)引腳進(jìn)行SPI 通信,ALERT 引腳用于警示輔助ADC 或電池發(fā)生欠壓或者過(guò)壓,引腳負(fù)責(zé)啟動(dòng)轉(zhuǎn)換,下降沿有效。
圖3 AD7280A 引腳連接示意圖Fig.3 AD7280A pin connection diagram
從圖4 中可以看出,MASTER 引腳是否上拉一個(gè)10 k 電阻取決于它是主器件或從器件。為了防止高頻信號(hào)對(duì)整個(gè)采集電路的影響,將GND 分為數(shù)字地DGND 和模擬地AGND,該方法在繪制PCB 時(shí)能夠有效地將數(shù)字地和模擬地區(qū)分開(kāi)來(lái),分別覆銅,減少了信號(hào)的相互干擾。VDRIVE 接口是AD7280A與MCU 通信的工作電壓,通信時(shí)兩者電壓需要保持一致,所以將VDRIVE 接口電壓上拉至3.3 V,同時(shí)在該電源附近放置一個(gè)10 μF 濾波電容,消除電壓上的毛刺。VREF 是模擬電壓輸出引腳,負(fù)責(zé)為ADC 的內(nèi)核提供供電電壓,因此在該引腳附近并聯(lián)一個(gè)1 μF 的儲(chǔ)能電容,減小電壓波動(dòng),提高瞬間電流的放電能力。
其中,電池電壓與采集值Cn關(guān)系式為
圖4 主AD7280A 采集電路Fig.4 Main AD7280A acquisition circuit
動(dòng)力電池管理系統(tǒng)軟件設(shè)計(jì)按照模塊化結(jié)構(gòu)和分層思想分為兩個(gè)層次設(shè)計(jì),如圖5所示。底層為基礎(chǔ)的硬件平臺(tái),中間層為驅(qū)動(dòng)層,主要負(fù)責(zé)連接硬件和應(yīng)用層之間的信息交互,該層包括LCD 通信協(xié)議、CAN 總線協(xié)議、SPI 通信協(xié)議、I2C 通信協(xié)議、GPIO 驅(qū)動(dòng)、上電板載初始化。應(yīng)用層通過(guò)調(diào)用驅(qū)動(dòng)層完成具體功能的實(shí)現(xiàn),BMS 的基本功能均在應(yīng)用層實(shí)現(xiàn),包括SOC 估算、人機(jī)交互、均衡控制、數(shù)據(jù)離線存儲(chǔ)、電池節(jié)點(diǎn)網(wǎng)絡(luò)監(jiān)控、高溫報(bào)警、故障診斷等其他功能。
圖5 軟件整體結(jié)構(gòu)圖Fig.5 Software structure diagram
ZigBee 網(wǎng)絡(luò)的典型拓?fù)浣Y(jié)構(gòu)分為3 種類型:星型、簇狀型、網(wǎng)狀型[12]。如圖6所示,簇狀型和網(wǎng)狀型的拓?fù)浣Y(jié)構(gòu)類似,均由協(xié)調(diào)器、路由器和終端設(shè)備組成,但網(wǎng)狀型相比簇狀型更加靈活,能在路由節(jié)點(diǎn)間相互通信,不會(huì)造成某一路由節(jié)點(diǎn)損壞,從而導(dǎo)致消息丟失的狀況,但網(wǎng)狀型拓?fù)涞撵`活特性導(dǎo)致該拓?fù)鋼p耗更多能量去維護(hù)復(fù)雜的網(wǎng)絡(luò)[13]。星型拓?fù)渥鳛橐环N簡(jiǎn)單的結(jié)構(gòu),包含一個(gè)協(xié)調(diào)器和若干終端設(shè)備或者路由器,其任何兩個(gè)終端節(jié)點(diǎn)通信都需要經(jīng)過(guò)協(xié)調(diào)器轉(zhuǎn)發(fā),因此可適用于短距離、低功耗、節(jié)點(diǎn)要求不多的網(wǎng)絡(luò)。本文設(shè)計(jì)的電池管理系統(tǒng)總節(jié)點(diǎn)不超過(guò)40 個(gè),而且為短距離通信,因此本文采用能量消耗更低、更適合本系統(tǒng)的短距離集中式星型網(wǎng)絡(luò)通信[14]。
圖6 ZigBee 網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)圖Fig.6 ZigBee network topology structure diagram
電池管理系統(tǒng)中電壓信息、溫度信息是利用SPI 總線讀寫(xiě)AD7280A 的寄存器實(shí)現(xiàn)采集讀取。SPI 總線作為一種串行外設(shè)接口,具有全雙工通信、線束少、傳輸速率高等優(yōu)勢(shì),常用作嵌入式系統(tǒng)內(nèi)部通信的總線協(xié)議。AD7280A 工作軟件流程如圖7所示,首先開(kāi)啟所有設(shè)備,初始化設(shè)備,配置寄存器開(kāi)啟轉(zhuǎn)換,最終讀取轉(zhuǎn)換數(shù)據(jù),關(guān)閉設(shè)備。
圖7 數(shù)據(jù)采集流程Fig.7 Flow chart of data collection
實(shí)驗(yàn)選用4 節(jié)18650 鋰電池串聯(lián)起來(lái)組成一個(gè)電池組,通過(guò)2 個(gè)AD7280A 采集8 節(jié)鋰電池的狀態(tài)信息。為了驗(yàn)證采集精度是否達(dá)到±10 mV 的指標(biāo)要求,本文利用高精度表進(jìn)行測(cè)量后,與采集板采集到的數(shù)據(jù)進(jìn)行對(duì)比,實(shí)驗(yàn)結(jié)果如表1所示。采集到的數(shù)據(jù)與萬(wàn)用表測(cè)量值的最大誤差為6.8 mV,小于指標(biāo)要求的10 mV,滿足系統(tǒng)的設(shè)計(jì)指標(biāo)要求。
表1 動(dòng)力電池電壓精度驗(yàn)證Tab.1 Power battery voltage accuracy verification
本設(shè)計(jì)通過(guò)電子負(fù)載對(duì)電池放電,多次改變放電電流,將電子負(fù)載顯示的電流值與BMS 測(cè)量的電流值進(jìn)行比較,如表2所示,電子負(fù)載儀顯示的電流值與BMS 測(cè)量值的最大誤差為15.7 mA,滿足系統(tǒng)的設(shè)計(jì)指標(biāo)要求。
表2 動(dòng)力電池電流精度驗(yàn)證Tab.2 Power battery current accuracy verification
本文將4 節(jié)單體電池組成的電池組及BMS 系統(tǒng)放到恒溫箱中,通過(guò)設(shè)置恒溫箱的溫度,與BMS 測(cè)量溫度進(jìn)行比較,如表3所示。測(cè)量溫度的最大誤差為0.4 ℃,完全滿足系統(tǒng)的設(shè)計(jì)要求。
本文設(shè)計(jì)開(kāi)發(fā)了電動(dòng)汽車電池管理系統(tǒng),通過(guò)整車試驗(yàn)驗(yàn)證該系統(tǒng)具有實(shí)時(shí)檢測(cè)各種運(yùn)行參數(shù)、故障診斷報(bào)警和熱管理等功能,且系統(tǒng)精度、可靠性滿足使用要求,為電動(dòng)汽車的推廣使用奠定了基礎(chǔ)。
表3 動(dòng)力電池溫度精度驗(yàn)證Tab.3 Power battery temperature accuracy verification