劉耿峰,張向文,2
(1.桂林電子科技大學電子工程與自動化學院,廣西桂林 541004;2.廣西自動檢測技術與儀器重點實驗室(桂林電子科技大學),廣西桂林 541004)
動力電池組是電動汽車重要的能量來源,動力電池組由大量的單體通過串并聯(lián)的方式組成,通過電池管理系統(tǒng)(battery management system,BMS)可以優(yōu)化單體的充放電管理,延長電動汽車的續(xù)航里程。電池荷電狀態(tài)估計(state of charge,SOC)作為BMS 最重要的任務之一,對電池的安全運行和智能充放電優(yōu)化管理具有重要意義[1]。電池組在日常的使用中需要將電池SOC控制在正常范圍內,防止電池過充過放,可以較大程度地確保電池的使用安全[2]。另外,通過溫度控制可以防止電池過熱爆炸起火,通過均衡管理可以降低單體電池之間的電壓差,延長電池組的使用壽命。因此BMS 通過測量電池的電壓、電流和溫度,不僅需要進行電池組的充放電管理、均衡管理和熱管理,而且要能夠較精確地估計電池的SOC,同時實現(xiàn)對電池組運行狀況的監(jiān)控報警功能。
目前BMS 的研究重點主要集中在電池信息采集處理、電池均衡管理、SOC估算方法和上位機通信等幾個方面[3]。尚麗平等[4]設計了一種鋰電池組實時主動均衡BMS 健康管理系統(tǒng),通過鋰電池組總電壓給單體充電的形式實現(xiàn)了供能過程中單體電壓實時在線均衡調節(jié),但是缺少對電池SOC的估算。李頂根等[5]設計了基于CAN 通信的BMS 系統(tǒng)并將檢測結果在上位機上進行顯示和記錄,未涉及到溫度管理與均衡控制等方面。汪陽雄等[6]設計實現(xiàn)了一款BMS 上位機模塊,利用串口HMI 觸摸屏實現(xiàn)充放電管理及對電池狀態(tài)參數(shù)閾值的設定。張捍東等[7]設計的BMS 管理系統(tǒng)實現(xiàn)了參數(shù)采集、信息顯示、安全報警等功能,但僅給出了SOC估算的仿真結果。羅勇等[8]提出一種基于容量修正的安時積分SOC估算方法,通過充放電實驗得到不同倍率、庫侖效率、溫度等對電池容量的修正因子,最后使用帶修正因子的安時積分法估算SOC。綜上所述,目前的BMS 仍有待進一步完善其功能完整性,特別是提高SOC實時在線估算的精度。
本文針對電動汽車動力電池組的智能充放電管理需求,設計了一款由飛思卡爾MC9S12XEP100 控制并級聯(lián)兩片LTC6804 芯片作為多節(jié)電池監(jiān)控器的鋰電池充放電智能管理系統(tǒng),實現(xiàn)對19 節(jié)磷酸鐵鋰電池的電壓、電流和溫度實時監(jiān)控、電壓均衡控制、數(shù)據(jù)存儲、熱管理和上位機顯示等功能。同時,通過開路電壓和安時積分融合方法實現(xiàn)SOC的實時在線估計。下文首先給出設計的BMS 整體結構,然后具體介紹各功能模塊的設計以及SOC估計算法的實現(xiàn),最后采用Arbin 電池測試設備對上述功能以及SOC估計算法進行測試和驗證。
本文設計的BMS 整體結構如圖1 所示。主要功能模塊包括:主控制器模塊,電壓采集模塊,電流采集模塊,溫度控制模塊,均衡控制模塊,數(shù)據(jù)存儲模塊以及人機接口模塊。
圖1 BMS 系統(tǒng)整體結構簡圖
圖1中,主控制器模塊由飛思卡爾單片機MC9S12XEP100及最小系統(tǒng)電路組成;通過SPI接口級聯(lián)兩片LTC6804-2 電池組監(jiān)控芯片來采集電壓和溫度,并實現(xiàn)均衡控制;由霍爾電流傳感器測量充放電電流,由ATD 功能送至主控芯片處理;數(shù)據(jù)存儲模塊SD 卡由SPI接口實現(xiàn);通過GPIO 口控制繼電器通斷進行散熱控制和充放電控制;人機界面通過SCI通信模塊與主控芯片進行通信,實現(xiàn)電池狀態(tài)的顯示與報警功能。
本設計的控制器采用飛思卡爾16 位汽車級微控制器MC9S12XEP100,由標準的片上外設組成,包括串行通信接口(SCI)、串行外設接口(SPI)、增強捕獲定時器(ECT)等眾多擴展功能,具有低成本,低功耗與兼容性高等特點,在汽車工業(yè)領域廣泛應用。同時,該控制器自帶基于2.0B 標準和J1939 協(xié)議的CAN 總線通訊,可用于連接整車控制器做后續(xù)開發(fā)。圖2 為主控制器的最小系統(tǒng)電路。
圖2 最小系統(tǒng)硬件電路
電壓采集模塊選擇凌力爾特公司的第三代電池組監(jiān)視芯片LTC6804,每片可測量多達12 節(jié)串聯(lián)電池的電壓,常應用于電動汽車的電源系統(tǒng)或電網(wǎng)能量存儲中。芯片內置isoSPITM接口,每個通道最大測量誤差1.2 mV。本設計通過級聯(lián)兩片LTC6804 來采集19 節(jié)單體電池的電壓,通過SPI 與主控制器進行通訊,電路原理圖如圖3 所示。兩片LTC6804均采用ADUM1401 數(shù)字隔離器對主控制器的SPI 接口進行信號隔離。根據(jù)LTC6804S 芯片數(shù)據(jù)手冊,ADCV 命令用于啟動電池電壓測量輸入(引腳C0 至C12),芯片內部共有四組電池電壓寄存器組CVAR-CVDR,每組電壓寄存器組由六個八位寄存器組成(如CVAR0-CVAR5),采用輪詢方式讀出寄存器值,通過數(shù)據(jù)變換即可得到每個單體電池對應電壓。
圖3 LTC6804電壓采集電路原理圖
電動汽車電池組通常由大量的單體電池串聯(lián)組成,但由于單體電池在內阻、自放電率、容量等參數(shù)上的不一致,易導致個別電池在充放電過程中過充電或者過放電,增加電池報廢的風險。因此BMS 需要設計均衡管理來盡可能地消除各單體電池的差異性,提高各電池之間容量和電壓的一致性,進而延長電池組的使用壽命。本文設計的BMS 系統(tǒng)利用外部MOSFET 和放電電阻進行電壓平衡,每片LTC6804 的S(x)引腳能夠充當一個適合于驅動外部MOSFET 的柵極的數(shù)字輸出,將一個分立型PMOS 開關器件和合適的放電電阻器連接至電池,并將柵極端子連接至S(x)輸出引腳。均衡模塊的電路原理圖如圖4 所示。當?shù)趚節(jié)電池的單體電壓低于19 節(jié)電池的最低電壓時,通過配置寄存器組的DCC[x]存儲位實現(xiàn)對電池x的放電控制。每片LTC6804 可獨立控制12 節(jié)電池的電壓均衡,當某節(jié)電池處于均衡放電時,對應的LED 會被點亮,直到達到均衡要求。
1.2.3 對照II組 2例患者,給予胰激肽原酶240 U/次,3次/d,甲鉆胺0.5 mg/次,3次/d,療程為持續(xù) 4周。
圖4 均衡管理模塊原理圖
BMS 系統(tǒng)監(jiān)控電池狀態(tài)時也需要實時測量充電放電過程的電流變化,本設計采用霍爾電流傳感器來檢測電池組的總電流。該電流傳感器采用±15 V 供電,測量輸入輸出電流的最大量程為100 A,誤差可控制在1%以內,輸出為0~4 V 電壓,再通過LM358 雙運算放大器電路將測量數(shù)據(jù)直接送入主控制器的模數(shù)轉換通道(ATD)進行處理。
由于電池組充放電過程中都會伴隨發(fā)熱現(xiàn)象,過高的環(huán)境溫度將嚴重影響電池的使用壽命。同時利用外部電阻進行電池均衡時,電阻發(fā)熱也會導致主板溫度過高,影響LTC6804 芯片的采集精度,因此整體系統(tǒng)的溫度采集分為主板溫度與電池溫度兩個部分。本設計采用單線接口方式的溫度傳感器DS18B20 監(jiān)控主板溫度,使用兩片LTC6804 的10個通用GPIO 外接負溫度系數(shù)NTC 熱敏電阻組成外部溫度探頭,用于監(jiān)控電池組環(huán)境溫度。NTC 熱敏電阻采用B值為3 470,25 ℃標稱阻值為5 kW 的熱敏電阻。本設計的散熱系統(tǒng)采用風冷,將散熱風扇安裝在電池箱的散熱點,當主板溫度或者電池組溫度超過設定閾值時,程序控制繼電器來控制散熱風扇進行降溫。
由于對電池SOC進行估算時,涉及到當前電池的狀態(tài),因此需要考慮電池上一次斷電前電池容量和測試數(shù)據(jù)的存儲。本文采用單片機內部32KB 的D-FLASH 存儲器用于存儲系統(tǒng)斷電前的電池容量和SOC等數(shù)據(jù)。同時設計了2 G 內存的SD 卡存儲模塊,將電池運行過程中的電壓電流以及SOC的變化數(shù)據(jù)存入SD 卡中,存儲的數(shù)據(jù)可通過PC 機讀取并用于后續(xù)的電池健康狀態(tài)(SOH)估算中。
電池組的充電方式采用恒流恒壓[9](constant currentconstant voltage,CC-CV)充電方式。利用Arbin 電池測試設備對電池組進行充放電測試過程中,BMS 將實時獲取每節(jié)單體電池的充電電壓及充電電流。如果檢測到單節(jié)電池充電電壓上升到3.9 V(充電截止電壓)或者下降到2.5 V(放電截止電壓)時,程序控制繼電器模塊切斷充放電電流,并通過蜂鳴器報警,防止電池被嚴重過充過放,造成不可逆的損害。
本BMS 設計的人機界面由7 寸增強型USART HMI 串口屏實現(xiàn),主控制器與人機界面之間通過USART 串口進行通訊。通過自主設計的操作界面用于顯示單體電池電壓、充放電電流、主板及電池溫度與估算的SOC,同時進行充放電控制,設置報警參數(shù)與信息存儲等功能。顯示屏界面如圖5 所示。
圖5 人機界面
對電池SOC進行準確估計,既是電動汽車估算續(xù)航里程的基本要求,也關系到電池的使用壽命及使用效率。常用的SOC估算方法有開路電壓法[10]、安時積分法、卡爾曼濾波法[11]和神經(jīng)網(wǎng)絡法[12]等。其中開路電壓法相對簡單便捷,只需要構建開路電壓(open circuit voltage,OCV)與SOC的函數(shù)曲線OCV-SOC,通過測量得到的開路電壓即可得到當前電池SOC。但是電池需要經(jīng)過長時間靜置來使電壓穩(wěn)定,若電池使用頻繁,開路電壓短時間內難以達到穩(wěn)定。安時積分法是通過累積充進和放出的電量來估算SOC,但電流采樣的誤差累積與充放電倍率等影響因素易導致估算誤差??柭鼮V波法適用于各種類型不同老化階段的電池,但是其精確性很大程度依賴于電池等效模型的建立,而且計算量比較大。而神經(jīng)網(wǎng)絡法需要大樣本數(shù)據(jù)用于建立電池模型。綜合以上方法的特點,本文采用開路電壓法與安時積分融合的改進型SOC估算方法,首先獲取電池組的開路電壓,然后根據(jù)開路電壓隨SOC變化的曲線特征,確定SOC估算的初始值,結合該初始值,通過安時積分估算SOC的實時變化。下面對該估算方法的具體步驟進行介紹:
步驟一:獲取電池組開路電壓。
使用Arbin 電池測試設備對19 節(jié)額定容量為100 Ah 的磷酸鐵鋰電池組成的電池組進行充放電實驗:恒流恒壓方式將電池組充滿電,標記滿電狀態(tài)電池組的SOC為1。然后以1C的放電電流對電池組進行放電,SOC每降低10%記錄電池在靜置狀態(tài)下的開路電壓,獲取電池OCV與SOC的對應關系,結果如表1 所示。
表1 OCV 值和SOC 的對應值
使用Matlab 對表1 的離散點進行曲線擬合,得到開路電壓與SOC的函數(shù)關系曲線如圖6 所示。
圖6 開路電壓與SOC擬合曲線
由圖6 可知,實驗采用的磷酸鐵鋰電池組SOC大于20%時,電池組處于平臺期[13]。當電池組開路電壓處于62.4~63.3 V 之間時,SOC的變化比較大,開路電壓與SOC的對應關系難以準確確定,因此本文采用兩種方式獲取SOC的值作為SOC估計算法的初始值SOC(t0)。
(1)BMS 系統(tǒng)開機后,先獲取電池組開路總電壓,若電壓大于63.3 V 或者小于62.4 V,則通過OCV-SOC曲線估算SOC(t0)。
(2)若開路總電壓處于62.4~63.3 V 之間,則采用上一次BMS 停機時存儲的SOC作為當前的SOC(t0)。
步驟二:安時積分法。
獲取SOC初始值之后,在電池組充放電過程中,結合安時積分法實現(xiàn)SOC實時在線估算。安時積分法的計算公式如下:
式中:SOC(t)為t時刻的SOC;i為測量的充放電電流,充電時為正,放電時為負;Q0為電池額定容量;η 為庫侖效率,其定義為電池的充電容量與放電容量比值,本文按照充放電效率為1 進行計算;KT為溫度系數(shù),本文取室溫(25 ℃)下KT=25℃=1,其他溫度系數(shù)按式(2)進行計算:
式中:t為放電時的環(huán)境溫度;k為溫度系數(shù),本文取溫度系數(shù)k=0.005 進行計算。
使用安時積分法時電流的采樣精度直接關系到電池SOC的估計結果。本設計采集的電流信號為離散信號,傳輸過程中易受到干擾導致信號失真。為了降低干擾的影響,采用遞推平均濾波算法來處理采集的電流信號,如式(3):
式中:t為當前時刻;y(t)為當前濾波器輸出;I(t)為當前電流采樣信號;t0為遞推濾波長度,本文選擇t0=10 s。
為了驗證設計的BMS 的可靠性,實驗測試平臺由BMS系統(tǒng)、電池組與Arbin 電池測試設備組成,以19 節(jié)額定容量為100 Ah、額定電壓為3.7 V 的串聯(lián)磷酸鐵鋰電池為測試對象,各設備連接圖如圖7 所示。
圖7 各設備連接圖
通過Arbin 設備連接電池組測試單節(jié)電池電壓與電池組總電壓,與設計的BMS 系統(tǒng)測得電壓相比,實驗結果如表2 所示。由實驗數(shù)據(jù)可得,BMS 系統(tǒng)測量單節(jié)電池電壓與Arbin設備測得的實際電壓的誤差在0.07 V 之內,符合設計要求。
表2 電池電壓比較 V
當電池電壓不一致時可開啟被動均衡功能,同時將采集的電池溫度與主板溫度與Arbin 設備測量的溫度作比較,實驗結果如表3 所示。由表3 可知,電池溫度的實際值與BMS 的測量值誤差在1 ℃以內,主板溫度的實際值與板子上DS18B20 的測量值誤差約為0.5 ℃,滿足實際應用的精度要求。
表3 溫度比較 ℃
磷酸鐵鋰電池SOC在10%~90%之間時,其電池電壓和內阻變化較為平穩(wěn),是電池運行的最佳區(qū)間。為了測試設計的SOC實時估算算法的精度,本文將電池組充電90%SOC,靜置1 h 后,分四個階段對電池組進行放電:(1)SOC為90%時,設置電池放電,當電池SOC降至70%時,停止放電并靜置30 min;(2)SOC為70%時,設置電池放電,當電池SOC降至50%時,停止放電并靜置30 min;(3)SOC為50%時,設置電池放電,當電池SOC降至30%時,停止放電并靜置30 min;(4)SOC為30%時,設置電池放電,放電至SOC降至10%。
放電過程通過模擬NEDC 工況的曲線來設置變電流的循環(huán)放電工況,具體的變電流循環(huán)曲線如圖8 所示。
圖8 變電流循環(huán)放電曲線
放電過程中,BMS 系統(tǒng)處于運行狀態(tài),采用上述的改進型估算方法對SOC進行實時估算,人機交互界面上每1 s 更新一次顯示數(shù)據(jù),單片機每30 s 記錄一次估算SOC數(shù)據(jù)存于SD卡中。同時使用傳統(tǒng)的開路電壓結合安時積分方法估算SOC,將兩種方法估算的SOC與實際SOC進行對比。圖9(a)描繪了改進型SOC估算方法和傳統(tǒng)SOC估算方法在四個不同放電倍率階段估算的SOC與真實SOC曲線對比,由圖可以看出由于電池組OCV-SOC曲線存在平臺期,若在停機后采用開路電壓獲取初始SOC,容易造成較大誤差。而設計的改進型SOC估算方法可以根據(jù)上次停機時記錄的SOC結合當前的開路電壓獲取電池組SOC,實現(xiàn)較好地跟蹤實際SOC變化。估算的SOC與實際SOC之間誤差如圖9(b)所示,改進型算法的誤差小于1.17%,而傳統(tǒng)方法的誤差超過2.1%。同時將改進型SOC估算方法、傳統(tǒng)SOC估算方法與其他文獻的不同SOC估算方法進行對比,誤差對比結果如表4 所示。通過對比可以看出,本文提出的改進型SOC估算方法的誤差要明顯小于目前其他文獻所設計的方法。因此,本文所設計的SOC估算算法具有更高的估算精度。
圖9 真實SOC與兩種方法估算的SOC對比及誤差曲線
表4 改進型SOC 估算方法、傳統(tǒng)SOC估算方法與其他文獻的誤差對比 %
本文設計了一款由MC9S12XEP100 單片機控制并以LTC6804 作為多節(jié)電池監(jiān)控器的電動汽車動力電池組充放電管理系統(tǒng),并實現(xiàn)對多節(jié)電池單體的電壓、電流和溫度實時監(jiān)控、電壓均衡控制、數(shù)據(jù)存儲、熱管理、充放電管理和上位機顯示等功能。同時在該管理系統(tǒng)上實現(xiàn)一種開路電壓與安時積分融合的改進型SOC實時在線估算方法。最后采用ARBIN 動力電池測試平臺對設計的BMS 功能進行了功能測試,測試得到電壓誤差小于0.07 V,溫度誤差小于1 ℃,SOC估算可以較好地跟蹤實際SOC變化,估算誤差小于1.2%。另外,為了滿足電動汽車安全需要,下一步將增加高壓上下電控制和絕緣檢測等功能,以建立更完善的電池管理系統(tǒng)。