CAN和光纖實現(xiàn)電動汽車動力電池組采集系統(tǒng)
本系統(tǒng)采用8051 系列的C 語言進行軟件編程,按照模塊化設計思想進行編寫,包括主程序、CAN 初始化程序、CAN發(fā)送數據程序、CAN 接收數據程序、A /D 轉換及定時中斷程序等。CAN初始化程序用來實現(xiàn)CAN 工作時的參數設置,主要包括工作方式的設置、時鐘輸出寄存器的設置、接受屏蔽寄存器和接收代碼寄存器的設置、總線定時器的設置、輸出控制寄存器的設置、中斷允許寄存器的設置和總線波特率的設置。系統(tǒng)主程序流程設計如圖4 所示,主要包括初始化和主循環(huán)部分。

圖4 系統(tǒng)主程序流程圖
3 基于USB-CAN的數據采集
LabVIEW主要用于儀器控制、數據采集、數據分析等領域,是一個功能強大、方便靈活的虛擬儀器開發(fā)環(huán)境,它提供了大量的連接機制,通過DLLs、共享庫、ActiveX等途徑實現(xiàn)與外部程序代碼或軟件系統(tǒng)的連接。
本系統(tǒng)的上位機設計采用USB-CAN模塊與電池管理系統(tǒng)BMU進行數據通信,通過USB-CAN模塊對CAN總線上的數據進行實時采集。Virtual CAN Interface(VCI)函數庫是專門為ZLGCAN設備在PC上使用而提供的應用程序接口。庫里的函數從ControlCAN.dll中導出,在LabVIEW中可以通過調用動態(tài)鏈接庫的方法直接使用這些庫函數實現(xiàn)對電池組數據的實時顯示、存儲與分析,更好的記錄電池組動態(tài)的各個參數。上位機主要功能是對電壓、電流、溫度數據實時曲線顯示,數據記錄與歷史數據顯示,并且對電池組參數進行統(tǒng)計分析,包括動態(tài)運行過程中單節(jié)電池最高電壓、最低電壓、最大輸出電流、最大反向制動電流、瞬時功率、累計消耗能量等參數。VCI 函數的使用流程如圖5 所示。實踐證明此方法高效可靠,能夠很好地滿足數據采集的要求。

圖5 VCI 函數的使用流程圖
評論