磷酸鐵鋰電池作為新型電動(dòng)汽車動(dòng)力電池,,具有容量大、安全性高,、耐高溫特別是循環(huán)壽命長等優(yōu)點(diǎn),,其循環(huán)壽命比普通的鉛酸電池至少要高4 倍,在車用動(dòng)力電池的市場中具有極大的應(yīng)用潛力,。在現(xiàn)階段動(dòng)力電池的容量沒有根本性突破的情況下,,電池管理系統(tǒng)(battery management system,BMS)在電動(dòng)車中的應(yīng)用將顯得異常重要,它能夠?qū)崟r(shí)檢測動(dòng)力電池的電壓,、電流,、溫度,并通過這些參數(shù)估算電池的荷電狀態(tài)(state of charge,SOC),,為駕駛員提供車輛續(xù)駛里程參考,;此外BMS 能夠?qū)﹄姵氐倪^充、過放電進(jìn)行報(bào)警和保護(hù),,對(duì)電池組和單節(jié)電池進(jìn)行有效保護(hù),,從而提升電池使用性能、提高電池壽命,。LIN 總線是一種低成本的汽車A 類總線,,非常適合溫度、電流這類實(shí)時(shí)性要求不高的數(shù)據(jù)傳輸,,通過LIN 總線實(shí)現(xiàn)數(shù)據(jù)的總線化傳輸,,進(jìn)一步降低了成本。
1 系統(tǒng)的總體結(jié)構(gòu)與功能
在本設(shè)計(jì)中,,電池管理系統(tǒng)分為兩大部分:信號(hào)檢測模塊,、通信及信息處理模塊,。在信號(hào)檢測模塊中,每節(jié)單體電池對(duì)應(yīng)一個(gè)底層ECU(DSPic30f4012),,可以實(shí)現(xiàn)單體電壓采集,、電流檢測、溫度采樣,;同時(shí)也能檢測整個(gè)電池組的電壓,、電流和環(huán)境溫度,用于電池一般充電與均衡充電時(shí)的檢測與保護(hù),,如圖1 所示,。
底層ECU 把檢測到的電壓、電流,、溫度等變量封裝為LIN總線幀格式,,然后通過LIN 總線與上層ECU 進(jìn)行通信。信息處理模塊可以實(shí)現(xiàn)動(dòng)力電池的荷電狀態(tài)實(shí)時(shí)估算和故障分析,,并把溫度,、電壓、電流等信息進(jìn)行顯示,。
2 電池管理系統(tǒng)設(shè)計(jì)
2.1 電池管理系統(tǒng)的基本硬件設(shè)計(jì)
由于電池組的單體數(shù)目比較多,,本系統(tǒng)采用分布式結(jié)構(gòu),這種結(jié)構(gòu)能有效減少采樣線穿越電池,,降低安裝和調(diào)試的復(fù)雜性,,同時(shí)也能降低安全隱患。底層ECU 使用Dspic30f4012芯片,,它能在-40~125 ℃溫度范圍內(nèi)工作,,屬于汽車級(jí)芯片;它具有豐富的模擬量,、數(shù)字量I/O 接口,、10 位A/D 轉(zhuǎn)換功能以及SCI 通信功能等,。
2.1.1 信號(hào)采集模塊設(shè)計(jì)
Dspic30f4012 具有2.5~5.5 V 范圍的寬工作電壓,,因而可以用單節(jié)磷酸鐵鋰電池直接供電,只需要加一個(gè)0.1 μF 的濾波電容即可使芯片工作,,供電電路得到極大簡化,。由于F4012 芯片內(nèi)不提供A/D 轉(zhuǎn)換的內(nèi)部基準(zhǔn)電壓,因此在進(jìn)行電壓檢測時(shí),,需要外部提供A/D 轉(zhuǎn)換基準(zhǔn)電壓,,本文選用低功耗、低電壓誤差的LM385 來提供2.5 V 的外部基準(zhǔn)電壓,,如圖2 所示,。
本設(shè)計(jì)中電壓檢測模塊的特點(diǎn)是各個(gè)檢測模塊分別檢測各自單體電池上的電壓,,而不是通過傳統(tǒng)的多路開關(guān)分時(shí)選擇的方法來實(shí)現(xiàn),這樣就完全實(shí)現(xiàn)了純分布式的電池管理結(jié)構(gòu),。磷酸鐵鋰電池的電壓直接從單體電池兩端引出電壓,,然后通過兩個(gè)高精度的電阻進(jìn)行分壓,分壓得到的電壓引入Dspic30f4012 芯片內(nèi)部的A/D 模擬信號(hào)轉(zhuǎn)換通道,,進(jìn)行電壓的檢測,。Dspic30f4012 芯片內(nèi)的A/D 轉(zhuǎn)換器為10 位精度,基準(zhǔn)電壓為2.5 V,所以電壓檢測模塊能夠檢測到0~5 V 的電壓范圍,,大于單體電池的最大電壓3.65 V.電池組的總電壓的檢測,,經(jīng)由信號(hào)衰減電路與抗共模電壓電路接入Dspic30f4012 芯片內(nèi)的A/D 轉(zhuǎn)換通道中完成電池組電壓的采集。
單體電池電流的檢測通過霍爾傳感器來實(shí)現(xiàn),,霍爾傳感器能輸出最高3 V 的電壓信號(hào),,可以直接接入到Dspic30f4012芯片內(nèi)的A/D 采樣通道中;電池的溫度的檢測通過TJ1047溫度檢測芯片來實(shí)現(xiàn),,TJ1047 溫度檢測芯片在-40 ℃和125 ℃時(shí)輸出電壓分別為0.5 V 和1.75 V,并且具有10 mV/℃的溫度電壓比例特性和±0.5 ℃的誤差,。因此從TJ1047 芯片輸出的電壓可以直接接入Dspic30f4012 芯片內(nèi)的A/D 轉(zhuǎn)換通道中,即可完成對(duì)電池溫度和環(huán)境溫度的采集,。
LIN 通信接口設(shè)計(jì)
2.1.2 LIN 通信接口設(shè)計(jì)
在現(xiàn)代汽車中總線技術(shù)越來越多的得到應(yīng)用,,CAN/LIN網(wǎng)絡(luò)已經(jīng)成為以分布式為基礎(chǔ)的車載電子網(wǎng)絡(luò)的主流發(fā)展方向。CAN 總線作為高速傳輸總線具有速度快,、帶寬高,、功能多的突出特點(diǎn),但其成本比較昂貴,;LIN 總線是一種低端總線,,但其在降低成本方面具有突出優(yōu)勢,適合對(duì)網(wǎng)絡(luò)速度要求不高,、實(shí)時(shí)性不強(qiáng)的數(shù)據(jù)的傳輸,。因此,在不需要CAN 總線的帶寬和速度的場合下,,LIN 總線補(bǔ)充了CAN 總線引導(dǎo)的汽車多路復(fù)用網(wǎng)絡(luò)的現(xiàn)有總線技術(shù),。電池的溫度、電流,、電壓檢測并不要求極高的實(shí)時(shí)性和總線速度,,因此LIN 總線能很好地契合電池管理系統(tǒng)的要求。
Dspic30f4012 芯片沒有LIN 總線的接口,,但具有SCI 通信接口,,本文選用TPIC1021 芯片作為SCI 與LIN 總線轉(zhuǎn)換的芯片,如圖3 所示,。SCI 通信引腳U1RX 與U1TX 經(jīng)過磁耦合隔離器件電氣隔離后,,分別接到LIN 驅(qū)動(dòng)器的LIN_RXD 和LIN_TXD,經(jīng)過轉(zhuǎn)換最后在LIN 引腳輸出LIN 總線信號(hào),。在底層控制器Dspic30f4012 和LIN 收發(fā)器TPIC1021 之間加上一個(gè)磁耦合隔離器件ADUM1201ARZ,用來提高電池組檢測系統(tǒng)通信的抗干擾能力和解決分布式檢測中"共地"產(chǎn)生短路的問題,有效地把各個(gè)檢測單元的電氣連接隔離開來,,同時(shí)也把底層電壓與上層LIN 總線隔離開來,。當(dāng)LIN 收發(fā)器作為主機(jī)節(jié)點(diǎn)時(shí),需要把圖3 中的J3 跳線用跳針短接,,用于從機(jī)節(jié)點(diǎn)時(shí)不要跳針短接,。
2.2 電池管理系統(tǒng)軟件設(shè)計(jì)
2.2.1 電池管理系統(tǒng)的軟件設(shè)計(jì)和總體結(jié)構(gòu)
ECU 中的軟件設(shè)計(jì)包括底層ECU 和上層ECU 軟件設(shè)計(jì)。底層ECU 的軟件設(shè)計(jì)主要包括電壓,、電流,、溫度的采集程序與采集結(jié)果的計(jì)算程序、數(shù)據(jù)通信程序,、中斷程序等,;上層ECU 的軟件設(shè)計(jì)主要包括SOC 估算程序、LIN 總線通信程序,、故障分析及報(bào)警程序,、電壓、電流,、溫度和荷電狀態(tài)等顯示程序,、時(shí)鐘程序、中斷程序等,。整個(gè)程序設(shè)計(jì)采用結(jié)構(gòu)化和模塊化的編程方法來實(shí)現(xiàn),。上層ECU 的主程序流程圖如圖4 所示。
其中,,電池的電壓檢測包括單體電池電壓的檢測和電池組電壓的檢測,。當(dāng)單體電壓超限時(shí),系統(tǒng)能夠判斷超限單體電池的編號(hào),,判斷單體電池是低電壓超限還是高電壓超限,,在顯示器上顯示并且有聲音報(bào)警。電池組電壓超限時(shí)程序能夠分析出是何種原因超限,,以此來進(jìn)入保護(hù)程序,。電池溫度的檢測包括單體電池溫度的檢測和環(huán)境溫度的檢測,當(dāng)溫度超限時(shí),,系統(tǒng)通過檢測到的數(shù)據(jù)能分析溫度超限的原因,,以此進(jìn)入保護(hù)程序,。電池的荷電狀態(tài)超限主要是指電池剩余電量過低,,繼續(xù)放電可能會(huì)影響電池的壽命。
2.2.2 LIN 通信的實(shí)現(xiàn)
LIN 協(xié)議是一種開放的總線協(xié)議,,一個(gè)完整的報(bào)文幀由報(bào)文頭和響應(yīng)組成,。每一次數(shù)據(jù)的傳送都由主機(jī)節(jié)點(diǎn)開始,,標(biāo)志著一次數(shù)據(jù)通信過程報(bào)文幀的開始[3].
圖5 為5 號(hào)單體磷酸鐵鋰電池LIN 總線標(biāo)識(shí)符場,以此為例說明LIN 總線標(biāo)識(shí)符場的設(shè)定,。5 號(hào)單體電池ID 位為0101,所以此節(jié)單體電池的ID 為0x5,ID4,、ID5 設(shè)為01,即設(shè)定發(fā)送的數(shù)據(jù)場字節(jié)為4 個(gè)字節(jié),通過前面的奇偶校驗(yàn)得到奇偶校驗(yàn)值為0,、1,如圖5 所示,。
由于各個(gè)信號(hào)的范圍不同,電壓,、電流,、溫度信號(hào)所用到的數(shù)據(jù)位數(shù)也不同,電壓的范圍在0~5 V 內(nèi),,電流在0~20 A內(nèi),,溫度在-40~125 ℃范圍內(nèi),所以本文在數(shù)據(jù)場中用第1個(gè)字節(jié)和第4 個(gè)字節(jié)的低兩位,,共10 位來表示電壓,;用第2個(gè)字節(jié)和第4 個(gè)字節(jié)的中間4 位,共12 位來表示電流,;用第3 個(gè)字節(jié)和第4 個(gè)字節(jié)的高兩位,,共10 位來表示溫度。由于電壓,、電流,、溫度都精確到小數(shù)點(diǎn)后,在數(shù)據(jù)場中表示小數(shù)比較復(fù)雜,,本文用實(shí)際參數(shù)值的10 倍或100 倍在數(shù)據(jù)幀中表示,,如圖6 所示。
表1 為各單體電池所對(duì)應(yīng)的LIN 總線節(jié)點(diǎn)的ID 資源分配表,。
上層ECU作為LIN總線的主機(jī)節(jié)點(diǎn),,當(dāng)LIN主機(jī)節(jié)點(diǎn)向單體電池從機(jī)節(jié)點(diǎn)請(qǐng)求數(shù)據(jù)時(shí),LIN 總線上將進(jìn)行從機(jī)節(jié)點(diǎn)到主機(jī)節(jié)點(diǎn)的數(shù)據(jù)傳輸,,此時(shí)LIN 主機(jī)節(jié)點(diǎn)向總線發(fā)送報(bào)文幀頭,,總線上的LIN 從機(jī)節(jié)點(diǎn)接收?qǐng)?bào)文幀頭后,判斷是否與自己的ID 匹配,,若匹配發(fā)送報(bào)文幀響應(yīng),,LIN 主機(jī)節(jié)點(diǎn)接收?qǐng)?bào)文幀響應(yīng),完成主機(jī)節(jié)點(diǎn)的數(shù)據(jù)請(qǐng)求,。
2.2.3 電池SOC 的估算和運(yùn)行控制策略
在對(duì)SOC 進(jìn)行估算時(shí),,一個(gè)準(zhǔn)確和合適的模型是非常需要的,對(duì)于Kalman 濾波算法來說精確的SOC 的估算是建立在精確的電池模型的基礎(chǔ)上。Thevenin 模型是目前來說比較準(zhǔn)確的模型,,該模型對(duì)電池的外特性的描述采用電池電動(dòng)勢,、一個(gè)純電阻和一個(gè)容阻回路串聯(lián)的方法來實(shí)現(xiàn),其電氣模型的數(shù)學(xué)關(guān)系如下:
式(1)中k 為k 時(shí)刻,,E(k)為電池端電壓,,V(k)是電池電動(dòng)勢,R1 是電池的歐姆內(nèi)阻,,R2 是電池的極化內(nèi)阻,,Uc 是電池的極化電壓,電容R2C 回路是用于模擬電池極化過程中的動(dòng)態(tài)特性,??紤]到溫度影響的情況下,電池的電動(dòng)勢與荷電狀態(tài)有式(3)的關(guān)系:
式中:F【Soc(k)】 是電池與電動(dòng)勢的函數(shù)關(guān)系,, Soc(k)表示電池在不同溫度下電動(dòng)勢相對(duì)于參考條件下的變化量,。通過以上公式,在進(jìn)行離散化后得到狀態(tài)空間方程如下,。
狀態(tài)空間方程準(zhǔn)確地給出了系統(tǒng)相關(guān)的系數(shù)矩陣A(K),、B(K)、C(K),、D(K)和常數(shù)矩陣W(K),、V(K),基于以上方程及相關(guān)矩陣,,可以得到擴(kuò)展Kalman 濾波估算算式,。
擴(kuò)展Kalman 濾波算法由濾波器計(jì)算和濾波器增益計(jì)算兩部分組成:濾波器計(jì)算由式(6)~(8)完成,在k 時(shí)刻,,由式(7)利用(k-1)時(shí)刻的濾波結(jié)果得到SOC 的預(yù)測值,,再根據(jù)狀態(tài)空間方程(6)得到在k 時(shí)刻的狀態(tài)變量預(yù)測值V(K),并與實(shí)際測量值比較后得到預(yù)測誤差,,然后根據(jù)式(8)對(duì)狀態(tài)變量的預(yù)測值修正,,得到新的濾波結(jié)果。濾波器增益計(jì)算由式(9)~(11)完成,,式中Q和R 分別是噪聲W (k)和V (k)的方差陣,。
3 實(shí)驗(yàn)結(jié)果分析
本設(shè)計(jì)的底層ECU 的電路板如圖7 所示,每個(gè)單體電池上都會(huì)固定一塊底層ECU 的電路板,。
在不同的充電策略下來檢驗(yàn)電池管理系統(tǒng)的工作情況,,通過檢測電池組中各個(gè)單體電池的充放電電壓、電流,、溫度,、SOC 等參數(shù),與實(shí)際值相比較來說明系統(tǒng)的檢測精度,如圖8所示,,其中數(shù)據(jù)每分鐘記錄一次,橫坐標(biāo)為時(shí)間min.
本設(shè)計(jì)設(shè)定充放電時(shí)電壓上限為3.65 V,電壓下限為2.95 V.溫度報(bào)警為上限80 ℃,。實(shí)驗(yàn)對(duì)電池進(jìn)行充電,,最終充電電壓均在3.53~3.62 V,充電過程最大偏差50 mV,其中電池電壓誤差小于1%要求;此外,,溫度測量誤差滿足1%要求,,電流測量精度為1%,SOC 誤差在8%以內(nèi)。當(dāng)對(duì)單體電池實(shí)施人為過電壓時(shí),,系統(tǒng)能及時(shí)進(jìn)行報(bào)警和顯示,。通過實(shí)驗(yàn)表明本電池管理系統(tǒng)能達(dá)到預(yù)期的電池參數(shù)檢測的目標(biāo),且都能滿足精度要求,。
4 結(jié)論
本文設(shè)計(jì)開發(fā)了一種磷酸鐵鋰電池管理系統(tǒng),,基于分布式方法檢測各個(gè)單體電池的參數(shù),引入了LIN 總線技術(shù),,進(jìn)一步降低了系統(tǒng)的成本,。本系統(tǒng)實(shí)現(xiàn)了電池實(shí)時(shí)監(jiān)測與保護(hù)、SOC 估算,、LIN 總線通信等功能,。該系統(tǒng)結(jié)構(gòu)簡單、測量精度較高,、能有效地保護(hù)電池組,,用LIN 總線代替常用的CAN 或RS232 通信,為設(shè)計(jì)新型電動(dòng)汽車電池管理系統(tǒng)提供了重要依據(jù),。