基于CAN總線(xiàn)的電動(dòng)汽車(chē)動(dòng)力電池組采集系統設計
1 基于CAN 總線(xiàn)的系統硬件設計
CAN 總線(xiàn)是目前世界上最流行的汽車(chē)控制與測試間的一種串行數據通信協(xié)議,具有實(shí)時(shí)性強、抗干擾能力強、結構簡(jiǎn)單、應用方便、價(jià)格低廉等特點(diǎn)[4],通信速率可達1 Mbps,使得CAN 總線(xiàn)在電動(dòng)汽車(chē)應用上成為發(fā)展趨勢。
圖1 為一般電動(dòng)車(chē)CAN 總線(xiàn)網(wǎng)絡(luò )框圖。CAN 總線(xiàn)接口電路的核心是使用8 位高性能的片內含CAN 控制器的P87C591 作為CAN 通信控制器,以完成CAN 的通信協(xié)議,而CAN 總線(xiàn)收發(fā)器的主要功能是增大通信距離,提高系統的瞬間抗干擾能力,保護總線(xiàn),降低射頻干擾(RFI)等。
圖1 一般電動(dòng)車(chē)CAN 總線(xiàn)網(wǎng)絡(luò )框圖
本系統中共有16 組,每組有10 節電池串聯(lián),每1 個(gè)電池組配置1 個(gè)測量單元。每個(gè)單元采用一種設計非常簡(jiǎn)化的電池測量方法,由一個(gè)IC 集成了大部分電池參數的采集任務(wù),結構簡(jiǎn)單,精度高,可靠性高。本設計采用電池管理芯片LTC6802,它通過(guò)一個(gè)1 MHz 串行接口進(jìn)行通信,并包括溫度傳感器輸入、12 位ADC 和一個(gè)精準的電壓基準。每個(gè)LTC6802 能測量12 只單獨電池,實(shí)現了0.12%(在室溫條件下)和0.22%(在-40 ℃至+85 ℃的溫度范圍內)的準確度,能夠承受60 V 的共模電壓,完全適合在電池組高共模電壓的要求。LTC6802 采用串行外部設備接口(SPI) 進(jìn)行命令和數據通信, 本論文使用P87C591 的IO 模擬SPI 工作方式與LTC6802 進(jìn)行數據通信,此方法可以更充分地使用硬件資源(見(jiàn)圖2 所示)。
圖2 基于CAN總線(xiàn)的電池組ECU采集系統的結構
每個(gè)測量單元的控制器均采用內部集成了CAN控制器SJA1000和A/D模數轉換模塊的單片機P87C591芯片,其主要功能是提供電池組的電壓和溫度信息,并將采集的信號通過(guò)CAN總線(xiàn)發(fā)送給電池管理ECU,其中CAN通訊接口電路如圖3所示。
圖3CAN通訊接口電路
電池組的ECU 與電池管理ECU 組成一個(gè)CAN 總線(xiàn)網(wǎng)絡(luò ),網(wǎng)絡(luò )拓撲結構為總線(xiàn)形,傳輸介質(zhì)為雙絞線(xiàn),傳輸協(xié)議為CAN2.0B。電池管理ECU 為雙CAN 控制器結構,一個(gè)CAN控制器與電池組ECU 組成電池管理系統內部的CAN 網(wǎng)絡(luò ),另一個(gè)CAN 控制器與汽車(chē)中其他控制系統組成整車(chē)光纖CAN 總線(xiàn)網(wǎng)絡(luò ),能實(shí)現多機通信,并達到上位機控制和電池組狀態(tài)信息的采集。
2 系統軟件設計
本系統采用8051 系列的C 語(yǔ)言進(jìn)行軟件編程,按照模塊化設計思想進(jìn)行編寫(xiě),包括主程序、CAN 初始化程序、CAN發(fā)送數據程序、CAN 接收數據程序、A /D 轉換及定時(shí)中斷程序等。CAN初始化程序用來(lái)實(shí)現CAN 工作時(shí)的參數設置,主要包括工作方式的設置、時(shí)鐘輸出寄存器的設置、接受屏蔽寄存器和接收代碼寄存器的設置、總線(xiàn)定時(shí)器的設置、輸出控制寄存器的設置、中斷允許寄存器的設置和總線(xiàn)波特率的設置。系統主程序流程設計如圖4 所示,主要包括初始化和主循環(huán)部分。
圖4 系統主程序流程圖[next]
3 基于USB-CAN的數據采集
LabVIEW主要用于儀器控制、數據采集、數據分析等領(lǐng)域,是一個(gè)功能強大、方便靈活的虛擬儀器開(kāi)發(fā)環(huán)境,它提供了大量的連接機制,通過(guò)DLLs、共享庫、ActiveX等途徑實(shí)現與外部程序代碼或軟件系統的連接。
本系統的上位機設計采用USB-CAN模塊與電池管理系統BMU進(jìn)行數據通信,通過(guò)USB-CAN模塊對CAN總線(xiàn)上的數據進(jìn)行實(shí)時(shí)采集。Virtual CAN Interface(VCI)函數庫是專(zhuān)門(mén)為ZLGCAN設備在PC上使用而提供的應用程序接口。庫里的函數從ControlCAN.dll中導出,在LabVIEW中可以通過(guò)調用動(dòng)態(tài)鏈接庫的方法直接使用這些庫函數實(shí)現對電池組數據的實(shí)時(shí)顯示、存儲與分析,更好的記錄電池組動(dòng)態(tài)的各個(gè)參數。上位機主要功能是對電壓、電流、溫度數據實(shí)時(shí)曲線(xiàn)顯示,數據記錄與歷史數據顯示,并且對電池組參數進(jìn)行統計分析,包括動(dòng)態(tài)運行過(guò)程中單節電池最高電壓、最低電壓、最大輸出電流、最大反向制動(dòng)電流、瞬時(shí)功率、累計消耗能量等參數。VCI 函數的使用流程如圖5 所示。實(shí)踐證明此方法高效可靠,能夠很好地滿(mǎn)足數據采集的要求。
圖5 VCI 函數的使用流程圖
圖6 與圖7 是電池組實(shí)時(shí)采集的單節電池電壓與總電流實(shí)時(shí)曲線(xiàn),可以看出電池在工作過(guò)程中電壓會(huì )有一定差別,這也是由于電池特性不一致所引起的。從圖7 中可以看出,電池組在運行過(guò)程中最大放電電流可達到300 A,電流負值表示電動(dòng)車(chē)在反向制動(dòng)時(shí)的充電電流,最大可達-200 A。由于電池總是工作在充電放電過(guò)程中,所以對于電池動(dòng)態(tài)數據的采集與分析是必不可少的一個(gè)環(huán)節。通過(guò)數據的采集、存儲與分析,可以準確地判斷電池的實(shí)際狀態(tài),為建立電池數據庫提供數據資源。
圖6 單節電池電壓實(shí)時(shí)曲線(xiàn)
圖7 總電流實(shí)時(shí)曲線(xiàn)
此外,本系統還有一個(gè)自動(dòng)生成運行報告的功能,通過(guò)實(shí)際路況的數據采集對數據進(jìn)行統計分析。運行報告內容包括:電池組動(dòng)態(tài)一致性、最高電壓、最低電壓、平均電壓、輸出最大電流、最大制動(dòng)電流、輸出能量、反向制動(dòng)能量、最高溫度、最低溫度等。
4 結論
根據鋰離子電池車(chē)載系統的特殊環(huán)境及對電池參數的測試要求, 本系統采用CAN和光纖通信技術(shù),使用電池管理專(zhuān)用IC,使系統的實(shí)時(shí)性、可靠性和抗干擾能力大大增強, 而且系統易于擴展,靈活性好,能夠準確采集電池的各個(gè)參數,準確地采集數據并預測電池的運行狀態(tài),從而提高了電池組的使用壽命。此外,本文還對系統進(jìn)行上位機的軟件設計與開(kāi)發(fā),能夠采集并存儲大量的測試數據,為建立完善的電池組數據庫提供了可靠的數據資源,對電池技術(shù)的發(fā)展與完善作出可靠的實(shí)驗數據。本系統還可以通過(guò)打開(kāi)保存的數據文件,經(jīng)分析計算電池組一致性、電池組容量、電池組內阻等重要參數,統計分析電池狀態(tài),打印電池運行報告。
評論