基于CCP電池控制器在線(xiàn)標定系統的研究方案
3.1 系統構成
標定系統的軟件設計主要分為兩個(gè)部分:CAN Driver 和* Driver。本方案的BCU 采 用Freescale 公司的MC9S12DT128 單片機,芯片整合了CAN 通訊模塊,因此可以直接應用 芯片提供的接口發(fā)送CAN數據。* Driver 是標定系統的核心部分,它主要通過(guò)調用CAN Driver 實(shí)現與上位機標定軟件的通信,從而進(jìn)行對BCU 的在線(xiàn)標定。
3.2 實(shí)現過(guò)程
標定系統的實(shí)現過(guò)程如下:
(1)上層標定軟件部分定義List 的數目、各List 中的ODT 數目以及各ODT 中的元素數目。
(2)BCU 按照上層的定義,確定自己的數據結構。即上下層都定義一個(gè)三維的數組(List, ODT,Element),用來(lái)存放映射關(guān)系。
(3)上層通過(guò)協(xié)議命令初始化ODT 。首先, 上層發(fā)送GET_DAQ_SIZE 命令(參數為L(cháng)ist 號),得到指定的List 大小(number of ODT in this list),并得到該List 中DTO 的第一個(gè)PID 號。然后,上層發(fā)送SET_DAQ_PTR 命令(參數為L(cháng)ist 號、ODT 號、ODT 中的元素號),指 定需要初始化的參數單元。
最后, 上層根據SET_DAQ_PTR 命令設置的具體元素,發(fā)送 WRITE_DAQ 命令(參數為DAQ 元素的byte 大小,DAQ 元素的地址),反復通過(guò)SET_PTR 和WRITE_DAQ 兩條命令,初始化完一個(gè)具體的ODT 表,然后初始化完一個(gè)具體的List 表,最后初始化完所有的List 表格。至此,初始化ODT 工作結束。
(4)開(kāi)始和停止DAQ 數據的傳輸。上層發(fā)送START_STOP 命令,指定的ODT 數據開(kāi)始上 傳。ODT 將其中的每個(gè)元素復制到其對應的DTO(8 個(gè)字節,1 個(gè)PID 號,7 個(gè)存放數據) 中,然后以Data AcquisitionMessage 的形式返回給上層的標定系統。DAQ 模式到此為止。
4 BCU 在線(xiàn)標定的具體實(shí)現
根據 BCU 實(shí)際運行的需要,需要標定的參數設定為電池電壓、溫度、SOC、SOH 以及 可提供的充放電功率。主設備與BMS 間的通信需要ASAP2 數據庫文件(*.a2l)的支持。 該數據庫記錄了BCU 中各參數的詳細信息.包括參數在控制器中的存儲地址、存儲結構、 數據類(lèi)型和偏移量等。主設備需要通過(guò)該文件來(lái)對BCU 的參數尋址。主設備訪(fǎng)問(wèn)某個(gè)變量 時(shí),在該數據庫文件中根據變量名,找到該變量在控制器中的存儲地址、數據長(cháng)度等信 息,進(jìn)行修改操作。通過(guò)BCU 單片機軟件生成的smart linker map file(*.map)文件,該文件 中包括程序中所有變量的詳細信息,按照ASAP2 數據庫文件的格式做相應的轉換,提供給 標定的上位機軟件。
5 結語(yǔ)
該 BCU 標定軟件經(jīng)過(guò)多次實(shí)車(chē)調試,此標定系統運行穩定可靠,能夠對汽車(chē)系統中的 ECU 進(jìn)行在線(xiàn)標定,并可以針對不同用戶(hù)需求提供不同的定制功能。這個(gè)采用* 協(xié)議的 汽車(chē)發(fā)動(dòng)機標定系統具有符合國際通用標準、通用性好、對不同硬件與不同需求適應性強 的特點(diǎn),因此有很好的開(kāi)發(fā)應用前景。
本文作者創(chuàng )新點(diǎn):應用* 協(xié)議實(shí)現對BCU 的實(shí)時(shí)監控和參數的在線(xiàn)標定。
評論