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