包 敏
BO Min
(長沙市電子工業(yè)學校,長沙 410008)
電動汽車引領著汽車技術的發(fā)展方向,具有低排放甚至零排放、熱輻射低、噪音低且環(huán)境友好等特點,是節(jié)能、環(huán)保和可持續(xù)發(fā)展的新型交通工具,具有廣闊的發(fā)展前景[1]。在產(chǎn)業(yè)過程中,蓄電池及其管理系統(tǒng)作為主要的動力源部件是其中最為重要的一個環(huán)節(jié)。電池管理系統(tǒng)能夠實現(xiàn)實時監(jiān)測電池參數(shù)并估計其荷電狀態(tài)(SOC),為駕駛員提供剩余電量、續(xù)駛里程等信息;能防止電池過充、過放、過壓、過流、過高溫,其優(yōu)劣直接決定著動力電池組的使用壽命,一個合適的電池管理系統(tǒng)能夠在充分發(fā)揮電池優(yōu)越性能的同時,給予電池最佳的保護,保證電池性能,延長電池壽命,降低電動汽車運行成本[2]。本文給出了一種基于CAN總線的電動汽車電池管理系統(tǒng)的軟件設計。
電池管理系統(tǒng)的主要原理可歸納為[1]:數(shù)據(jù)采集電路采集電池的相關重要數(shù)據(jù),如:母線電壓,電流,溫度等,再發(fā)送給中央控制單元進行分析和處理,由系統(tǒng)內(nèi)的控制 模塊發(fā)出控制指令,記錄實時數(shù)據(jù),對應的執(zhí)行單元作出動作,進行調(diào)控?,F(xiàn)在主流的電池管理系統(tǒng)一般是采用分布式結構,包含以下的主要功能部分:數(shù)據(jù)采集、剩余電量(SOC)估計、控制部分、安全管理和數(shù)據(jù)通訊[3]。
1)數(shù)據(jù)采集。數(shù)據(jù)采集是電池管理系統(tǒng)中最重要和最基本的功能,SOC估計,控制執(zhí)行,安全管理等等都是以采集到的數(shù)據(jù)為依據(jù)的。
2)剩余電量(SOC)估計。電池管理系統(tǒng)的一個核心就是電池剩余電量的估計?,F(xiàn)有的SOC估計方法有安時計量法、開路電壓法與電動勢法、內(nèi)阻法、神經(jīng)網(wǎng)絡、卡爾曼濾波法、模糊預測法等[4,5]。
3)控制部分??刂撇糠忠獙崿F(xiàn)的功能有:控制充電過程等。
4)安全管理。安全管理包括了熱管理,單體電池壓力檢測等等。
5)數(shù)據(jù)通訊。在現(xiàn)有的電池管理通信方式中主要還是采用CAN總線通信方式。
電池管理系統(tǒng)的主要功能是檢測電池包的電流、電壓、過電流、漏電流、溫度等數(shù)據(jù),同時在運行過程中估計電池的剩余容量并做出各種錯誤報警。如圖1所示為系統(tǒng)的主程序流程圖:
各子模塊測量所在電池包的單體電壓和溫度,將數(shù)據(jù)通過CAN總線報送母控制器,母模塊完成電壓、電流、過電流、漏電流等數(shù)據(jù)測量,同時控制熱管理風機的啟停,將重要數(shù)據(jù)信息整車通過CAN總線報送至整車控制器。
這里的溫度傳感器DS18B20與微處理器間采用串行數(shù)據(jù)傳送,因此,在對DS1820進行讀寫編程時,必須嚴格的保證讀寫時序,否則將無法讀取測溫結果。函數(shù)說明,本程序多個功能函數(shù),分別是:
1)端口初始化函數(shù),設置各端口的初始工作狀態(tài)。
2)串口通信相關函數(shù):
圖1 系統(tǒng)軟件流程圖
3)DS18B20操作相關函數(shù):
如表1所示是利用“匹配ROM”指令實現(xiàn)對指定DS18B20的操作。先對DS18B20進行復位初始化操作,然后發(fā)送“匹配ROM”指令,緊跟著就要發(fā)送指定DS18B20的ROM序列號,DS18B20對ROM序列號進行比較,如果與自己的相同,則執(zhí)行下面的指令,如果不同,則不再執(zhí)行后面指令。
在程序中本文對指定DS18B20操作的步驟是:
1)復位;
2)發(fā)送跳過ROM指令;
3)發(fā)送溫度轉換命令;
4)延時1S,等待DS18B20完成溫度采集;
5)復位;
6)發(fā)送“匹配ROM”指令;
7)發(fā)送指定ROM的64位序列號;
8)發(fā)送讀內(nèi)部RAM命令;
9)將采集到的溫度值進行處理;
表1 對指定DS18B20進行操作的控制流程
10)延時4S,然后跳到步驟1),重復步驟1)-8),完成下一次溫度測量。
數(shù)據(jù)采集程序使用定時器中斷,周期為30ms,每采集一次數(shù)據(jù)計算變量加一,采集對象為電流和,電壓,數(shù)據(jù)采集控制程序將采集到的數(shù)據(jù)存放在數(shù)據(jù)緩沖區(qū),在下一個采集周期結束后,有主程序處理數(shù)據(jù)。如圖2所示為數(shù)據(jù)采集流程圖。
圖2 母線電壓、電流采集流程圖
系統(tǒng)的每個采集子板周期性采集底層數(shù)據(jù),并作出處理,然后定時向主板發(fā)送數(shù)據(jù)。工作狀態(tài)可以分為[6]:
1)上電診斷狀態(tài):系統(tǒng)上電后,完成初始化,發(fā)送網(wǎng)絡初始化信息,同時隨時接收其它節(jié)點的網(wǎng)絡初始化信息。通過網(wǎng)絡初始化信息的交換,主控制器判斷整個網(wǎng)絡是否完成初始化過程,同時啟動命令則進入正常工作狀態(tài)。
2)正常工作狀態(tài):在正常工作狀態(tài)下,個單元之間通過以CAN總線進行通信,以實現(xiàn)傳感器測量數(shù)據(jù)的共享、控制指令的發(fā)送和接收等。當休眠條件滿足時,控制模塊從正常工作狀態(tài)轉入休眠狀態(tài);當CAN模塊故障計數(shù)器的計數(shù)值滿足條件后,各模塊從正常工作狀態(tài)轉入總線關閉狀態(tài)。
3)休眠狀態(tài):該狀態(tài)下,系統(tǒng)處于低功耗模式。一旦接收到喚醒信號或遠程喚醒信號,就從休眠狀態(tài)轉入正常工作狀態(tài)其間需要使用網(wǎng)絡初始化信息。
4)總線關閉狀態(tài):關閉狀態(tài)的系統(tǒng)復位CAN模塊,重建連接;如果幾次連接失敗,則轉為看門狗復位,并向主控制器請求重新進入工作狀態(tài)。
5)掉電狀態(tài):關閉電源時,控制單元所處的狀態(tài)。
CAN控制器有6種工作方式:配置方式、關閉方式、正常工作方式、監(jiān)聽方式、自檢方式和錯誤方式。
CAN模塊通訊部分主要由初始化子程序,報文接收子程序和報文發(fā)送子程序組成,各子程序流程圖如圖3和圖4所示:
圖3 CAN報文收發(fā)流程圖
圖4 CAN通信初始化流程圖
本文首先分析了電池管理系統(tǒng)的主要功能,在此基礎上對系統(tǒng)總體流程圖及其各個分塊予以了描述,并描述了CAN通訊的程序設計,CAN通訊還給出了協(xié)議的制定依據(jù)和報文設置。
[1] 陳清泉,孫逢春,祝嘉光,等.現(xiàn)代電動汽車技術[M].北京:北京理工大學出版社,2002
[2] 陳思忠,林程.電動汽車開發(fā)的關鍵技術及前景[M].北京:北京理工大學,2002
[3] 成濤,王軍平,陳全世.電動汽車SOC估計方法原理與應用[J].電池,2004,34(5):34-45
[4] 楊朔,何莉萍,鐘志華.電動汽車蓄電池荷電狀態(tài)的卡爾曼濾波估計[J].貴州工業(yè)大學學報(自然科學版),2004,33(1):99-102
[5] Pritpal Singh, Craig Fennie, Jr David Reisner.Fuzzy Logic Modelling of State-of-charge and Available Capacity of Nickel/metal Hydride Batteries[J].Journal of Power Sources, 2004, 136(2):123-134
[6] 闕子揚.混合動力汽車電池管理學的研究[D].哈爾濱:哈爾濱工業(yè)大學,2007,28-33