《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 面向異構(gòu)網(wǎng)絡(luò)的整車(chē)控制器標(biāo)定系統(tǒng)的實(shí)現(xiàn)
面向異構(gòu)網(wǎng)絡(luò)的整車(chē)控制器標(biāo)定系統(tǒng)的實(shí)現(xiàn)
2015年電子技術(shù)應(yīng)用第12期
張俊峰,,肖 兵,,童天涯
華南理工大學(xué) 自動(dòng)化科學(xué)與工程學(xué)院,,廣東 廣州510640
摘要: 為了滿(mǎn)足日益復(fù)雜的新能源汽車(chē)電控系統(tǒng)的標(biāo)定要求,,采用工業(yè)界廣泛認(rèn)可的匹配標(biāo)定規(guī)范ASAP作為標(biāo)定系統(tǒng)軟件開(kāi)發(fā)標(biāo)準(zhǔn),,采用國(guó)際通用的XCP標(biāo)定協(xié)議,,基于TI公司的多核芯片TMS320F28M35E20B,,實(shí)現(xiàn)了一套面向異構(gòu)網(wǎng)絡(luò)的新能源車(chē)整車(chē)控制器測(cè)量與標(biāo)定系統(tǒng),。主要包括A2L文件解析器的設(shè)計(jì),、測(cè)量和標(biāo)定模塊的設(shè)計(jì)、XCP協(xié)議棧的實(shí)現(xiàn)及底層軟件系統(tǒng)的設(shè)計(jì),。軟件系統(tǒng)采用模塊化和分層表示,,結(jié)構(gòu)清晰,成功在實(shí)驗(yàn)室臺(tái)架上完成測(cè)量標(biāo)定工作,,效果良好,。
中圖分類(lèi)號(hào): TP319
文獻(xiàn)標(biāo)識(shí)碼: A
DOI:10.16157/j.issn.0258-7998.2015.12.035

中文引用格式: 張俊峰,肖兵,,童天涯. 面向異構(gòu)網(wǎng)絡(luò)的整車(chē)控制器標(biāo)定系統(tǒng)的實(shí)現(xiàn)[J].電子技術(shù)應(yīng)用,,2015,41(12):133-136.
英文引用格式: Zhang Junfeng,,Xiao Bing,,Tong Tianya. The implementation of vehicle controller calibration system for heterogeneous network[J].Application of Electronic Technique,2015,,41(12):133-136.
The implementation of vehicle controller calibration system for heterogeneous network
Zhang Junfeng,,Xiao Bing,Tong Tianya
School of Automation Science and Engineering,,South China University of Technology,,Guangzhou 510640,China
Abstract: In order to satisfy increasing complex calibration requirements of new energy automotive electronic control system, using the widely accepted industry norms ASAP as the software development standards of calibration system, and using the internationally accepted XCP calibration protocol, based on TI′s multi core singlechip TMS320F28M35E20B, implement a measurement and calibration system for vehicle control of new energy vehicles. It mainly includes the design of A2L file parser, measurement and calibration module, XCP protocol stack and the underlying software system. Software is represented based on modular and hierarchical structure. The measurement and calibration system is verified on laboratory bench successfully with good results.
Key words : XCP Protocol,;A2L file parser,;measurement and calibration,;heterogeneous network;vehicle controller

   

0 引言

    由于新能源汽車(chē)車(chē)載網(wǎng)絡(luò)的復(fù)雜性,,傳統(tǒng)汽車(chē)領(lǐng)域的測(cè)量與標(biāo)定工具并不適合新能源汽車(chē)的研發(fā)需求,。新的通訊方式和標(biāo)定協(xié)議也在不斷發(fā)展并得到應(yīng)用,如歐洲汽車(chē)公司成立的標(biāo)準(zhǔn)化組織ASAP于1992年推出了基于CAN(Controller Area Network)總線(xiàn)的CCP協(xié)議以及其后的升級(jí)版本XCP協(xié)議,。在車(chē)載控制器的匹配過(guò)程中,,需要根據(jù)整車(chē)的各種性能要求(如動(dòng)力性、經(jīng)濟(jì)性,、排放及輔助功能等)來(lái)調(diào)整,、優(yōu)化和確定整車(chē)上各ECU(電子控制單元)的運(yùn)行及控制參數(shù)的控制算法[1]。新能源汽車(chē)整車(chē)控制器包含并涉及多門(mén)學(xué)科的多個(gè)系統(tǒng),,如機(jī)械傳動(dòng)領(lǐng)域,、電機(jī)驅(qū)動(dòng)領(lǐng)域和電化學(xué)等,它的本質(zhì)就是一種異構(gòu)網(wǎng)絡(luò),。由于傳統(tǒng)的標(biāo)定系統(tǒng)沒(méi)有基于較好的標(biāo)準(zhǔn)和協(xié)議規(guī)范,,也無(wú)法適應(yīng)新能源車(chē)內(nèi)部復(fù)雜異構(gòu)網(wǎng)絡(luò)的苛刻需求,而國(guó)外產(chǎn)品產(chǎn)業(yè)鏈價(jià)格昂貴且技術(shù)開(kāi)放度差,,從而實(shí)現(xiàn)一套面向異構(gòu)網(wǎng)絡(luò)的新能源車(chē)整車(chē)控制器測(cè)量與標(biāo)定系統(tǒng)具有極高的應(yīng)用價(jià)值,。

1 XCP協(xié)議介紹

    XCP協(xié)議是基于不同通訊平臺(tái)的測(cè)量標(biāo)定協(xié)議的總稱(chēng),可以基于CAN總線(xiàn),、LIN總線(xiàn),、USB總線(xiàn)等不同總線(xiàn),最常見(jiàn)的是“XCP on CAN”,。CAN總線(xiàn)是德國(guó)BOSCH公司為現(xiàn)代汽車(chē)應(yīng)用領(lǐng)域推出的一種多主局域網(wǎng),。它實(shí)現(xiàn)了汽車(chē)電子的網(wǎng)絡(luò)化,大幅度減少了汽車(chē)內(nèi)的線(xiàn)束,,實(shí)現(xiàn)了數(shù)據(jù)共享[2],。圖1為“XCP on CAN”的消息幀結(jié)構(gòu),幀頭為空,,幀尾為填充位,,消息最大長(zhǎng)度為8 B,ID標(biāo)識(shí)域用來(lái)辨識(shí)數(shù)據(jù)包類(lèi)型和數(shù)據(jù)區(qū)內(nèi)容,,F(xiàn)ILL為對(duì)齊選項(xiàng),,DAQ為DTO(Data Transfer Object)數(shù)據(jù)包在數(shù)據(jù)請(qǐng)求列表中的索引,時(shí)間表示域?yàn)榭蛇x項(xiàng),,DATA存放相應(yīng)數(shù)據(jù)[3],。XCP協(xié)議通訊模式采用主從通訊方式,主機(jī)發(fā)送命令,,從機(jī)應(yīng)答,。XCP數(shù)據(jù)包分為兩種類(lèi)型:指令傳輸包CTO(Command Transfer Object)和同步數(shù)據(jù)包DTO[4-6],,主機(jī)發(fā)送不同的CTO建立與從機(jī)的邏輯連接,請(qǐng)求從機(jī)回應(yīng)DTO,,另外CTO可以請(qǐng)求啟動(dòng)DAQ(數(shù)據(jù)采集)模式定時(shí)發(fā)送數(shù)據(jù),。

jsj5-t1.gif

2 標(biāo)定系統(tǒng)總體架構(gòu)

    如圖2所示,整個(gè)標(biāo)定系統(tǒng)框架遵循ASAP標(biāo)準(zhǔn)和XCP通訊協(xié)議,。上位機(jī)通過(guò)Kvaser設(shè)備將USB信號(hào)轉(zhuǎn)為CAN信號(hào)與整車(chē)控制器進(jìn)行通訊,。A2L文件獨(dú)立于上位機(jī)和整車(chē)控制器,完成整車(chē)控制器所有相關(guān)參數(shù)的詳細(xì)定義和描述,,上位機(jī)通過(guò)讀取A2L文件來(lái)完成對(duì)整車(chē)控制器的測(cè)量和標(biāo)定工作,。整車(chē)控制器通過(guò)不同的總線(xiàn)接口與外部子系統(tǒng)相連,不同的總線(xiàn)接口與子系統(tǒng)構(gòu)成了復(fù)雜的異構(gòu)網(wǎng)絡(luò),。

jsj5-t2.gif

    該標(biāo)定系統(tǒng)以PC機(jī)作為上位機(jī),,主要集成測(cè)量、標(biāo)定和診斷模塊,、數(shù)據(jù)庫(kù)管理模塊,、XCP協(xié)議解析模塊及A2L文件解析器。測(cè)量,、標(biāo)定和診斷窗口采用C#技術(shù)搭建,,可實(shí)現(xiàn)ECU數(shù)據(jù)的監(jiān)測(cè)、在線(xiàn)修改和故障診斷功能,。數(shù)據(jù)庫(kù)模塊可根據(jù)用戶(hù)需求完成對(duì)相關(guān)參數(shù)值的存儲(chǔ)、修改,、刪除及查找功能,。A2L文件解析器集成于上位機(jī)中,完成A2L文件的讀取和解析,,將相關(guān)參數(shù)的定義轉(zhuǎn)換為相應(yīng)存儲(chǔ)格式存儲(chǔ),,依此,上位機(jī)可精確找出具體參數(shù)的詳細(xì)地址,、大小和數(shù)據(jù)格式等信息,。XCP協(xié)議解析模塊完成XCP協(xié)議的封裝和解析。

    底層標(biāo)定軟件由XCP Driver,、CAN Driver,、應(yīng)用層程序組成。XCP Driver實(shí)現(xiàn)整個(gè)XCP協(xié)議的協(xié)議層,,包括XCP命令的解析,、處理、回復(fù)及數(shù)據(jù)的采集等,;CAN Driver作為XCP傳輸層,,與PC機(jī)標(biāo)定軟件進(jìn)行通訊,;應(yīng)用層程序主要實(shí)現(xiàn)對(duì)特定任務(wù)的調(diào)度。其中,,XCP Driver層可根據(jù)數(shù)據(jù)包的形式判斷是指令數(shù)據(jù)包CTO還是同步數(shù)據(jù)包DTO,,從而決定調(diào)用的是命令處理機(jī)還是DAQ處理機(jī)。

3 標(biāo)定系統(tǒng)上位機(jī)的實(shí)現(xiàn)

3.1 A2L文件解析器的設(shè)計(jì)

    A2L文件以模塊為單元進(jìn)行層次劃分,,每個(gè)模塊以/begin開(kāi)頭,,以/end來(lái)結(jié)尾,MEASUREMENT模塊描述了監(jiān)測(cè)參數(shù)的詳細(xì)信息,,CHARACTERTSTIC模塊定義了標(biāo)定參數(shù)的詳細(xì)信息,,它們的數(shù)據(jù)格式參考關(guān)鍵字RECORD_LAYOUT,轉(zhuǎn)換方法參考關(guān)鍵字COMPU_METHOD[4],。將A2L文件按照文件信息來(lái)處理,,逐行讀取并進(jìn)行字符串操作,取出其中描述的關(guān)鍵信息,,按照轉(zhuǎn)換方式轉(zhuǎn)換即可轉(zhuǎn)換為相應(yīng)物理值,。因?yàn)榻馕鲞^(guò)程比較復(fù)雜,采用先進(jìn)后出的數(shù)據(jù)結(jié)構(gòu)來(lái)建立相應(yīng)關(guān)鍵字和嵌套關(guān)鍵字的邏輯關(guān)系,,A2L文件解析流程如圖3所示,。

jsj5-t3.gif

3.2 XCP協(xié)議驅(qū)動(dòng)程序的設(shè)計(jì)

    PC機(jī)與ECU間基于XCP協(xié)議的通訊方式為標(biāo)準(zhǔn)通訊模式,即PC機(jī)發(fā)出命令得到ECU的應(yīng)答后才能發(fā)出下一條命令,。為了滿(mǎn)足基本要求,,上位機(jī)中設(shè)計(jì)了4個(gè)XCP功能函數(shù),分別為建立對(duì)話(huà)函數(shù),、參數(shù)標(biāo)定函數(shù),、同步數(shù)據(jù)傳輸函數(shù)以及結(jié)束對(duì)話(huà)函數(shù)。XCP功能函數(shù)列表如表1所示,。

jsj5-b1.gif

    Setting_Up_Session()函數(shù)建立會(huì)話(huà)連接并完成主從信息的交換,。Calibration()函數(shù)可完成參數(shù)的標(biāo)定功能。DAQ_data_transfer()函數(shù)可調(diào)用DAQ處理機(jī)監(jiān)測(cè)數(shù)據(jù),。結(jié)束會(huì)話(huà)函數(shù)Closing_session()結(jié)束XCP對(duì)話(huà),。

4 底層軟件系統(tǒng)的設(shè)計(jì)

    XCP的數(shù)據(jù)包分為兩種類(lèi)型,指令數(shù)據(jù)包(CTO)和同步數(shù)據(jù)包(DTO),,上位機(jī)發(fā)送指令包時(shí),,經(jīng)過(guò)XCP傳輸層將CAN信息發(fā)送給XCP驅(qū)動(dòng)層進(jìn)行解析處理,從中獲得指令碼,,從CMD函數(shù)列表中運(yùn)行對(duì)應(yīng)指令碼的執(zhí)行函數(shù),,進(jìn)行相應(yīng)處理并返回結(jié)果,XCP傳輸層將結(jié)果傳輸至CAN總線(xiàn)。當(dāng)上位機(jī)發(fā)送同步數(shù)據(jù)包時(shí),,ECU開(kāi)啟DAQ模式,,從事先已經(jīng)配置好的DAQ列表中,根據(jù)對(duì)應(yīng)內(nèi)存地址及地址長(zhǎng)度信息,,將對(duì)應(yīng)內(nèi)存中的數(shù)據(jù)通過(guò)XCP傳輸層傳輸至CAN總線(xiàn),。每次執(zhí)行完CAN的發(fā)送和接收后,都要執(zhí)行發(fā)送和接收完處理,,設(shè)置狀態(tài)位,,釋放緩沖區(qū)數(shù)據(jù),以便于開(kāi)始下一波處理,。

    通過(guò)設(shè)計(jì)不同的函數(shù)接口,,將CAN傳輸層和CAN驅(qū)動(dòng)層以及應(yīng)用層銜接起來(lái),實(shí)現(xiàn)基于XCP協(xié)議的數(shù)據(jù)通訊,。各類(lèi)函數(shù)接口和邏輯關(guān)系如圖4所示,。

jsj5-t4.gif

    各接口功能定義如下:

    (1)Can_Init函數(shù)完成CAN模塊的初始化;

    (2)XcpRx_CallBack函數(shù)對(duì)接收到的CAN數(shù)據(jù)進(jìn)行初步解析后放入相應(yīng)通道的接收緩沖區(qū)中,,設(shè)置接收緩沖區(qū)的狀態(tài),;

    (3)XcpTx_CallBack函數(shù)對(duì)發(fā)送完CAN數(shù)據(jù)后進(jìn)行發(fā)送完處理,管理發(fā)送緩沖區(qū),;

    (4)Can_Transmit函數(shù)完成對(duì)應(yīng)郵箱中數(shù)據(jù)的發(fā)送,,即CAN數(shù)據(jù)發(fā)送函數(shù);

    (5)Xcp_Init函數(shù)完成XCP驅(qū)動(dòng)模塊的初始化工作,;

    (6)Cmd_Professor函數(shù)查詢(xún)各通道中的命令并進(jìn)行解析,,調(diào)用相應(yīng)函數(shù)列表中的處理函數(shù)去執(zhí)行命令;

    (7)Daq_Processor函數(shù)完成DAQ模式的處理,,根據(jù)配置將DAQ列表指向的內(nèi)容發(fā)送出去,;

    (8)Xcp_Event函數(shù)用于應(yīng)用層觸發(fā)事件,可根據(jù)要求進(jìn)行同步數(shù)據(jù)傳輸,。

    應(yīng)用層用于對(duì)不同任務(wù)間的指揮和調(diào)度,系統(tǒng)測(cè)量與標(biāo)定總流程圖如圖5所示,。系統(tǒng)開(kāi)始工作時(shí),,執(zhí)行CONNECT命令,建立主從設(shè)備間的連接,;讀取ECU的參數(shù)描述文件,,即A2L文件;開(kāi)始進(jìn)行系統(tǒng)初始化,,包括CAN初始化,,XCP初始化,DAQ列表的配置及標(biāo)定參數(shù)內(nèi)存的初始化;接下來(lái)分析主機(jī)發(fā)送過(guò)來(lái)的會(huì)話(huà)命令,,如果是開(kāi)啟DAQ模式,,則執(zhí)行DAQ的自動(dòng)開(kāi)啟發(fā)送,在系統(tǒng)主循環(huán)程序中周期執(zhí)行DAQ列表處理任務(wù),,周期由DAQ列表所配置的周期決定,;如果是參數(shù)標(biāo)定命令,則在A2L文件中查找參數(shù)的相關(guān)信息,,將標(biāo)定值下載到RAM,,從而完成在線(xiàn)標(biāo)定,為了保證掉電不丟失,,需要將相應(yīng)標(biāo)定數(shù)據(jù)燒寫(xiě)進(jìn)FLASH單元,;執(zhí)行完判斷處理后進(jìn)入系統(tǒng)主循環(huán),循環(huán)遍歷是否有XCP命令處理等其他任務(wù),,有則執(zhí)行,,無(wú)則繼續(xù)等待。

jsj5-t5.gif

5 標(biāo)定系統(tǒng)的應(yīng)用

    將多核芯片為主控芯片的ECU通過(guò)接線(xiàn)端子與實(shí)驗(yàn)室控制模擬臺(tái)架相連接,,在PC端通過(guò)監(jiān)控標(biāo)定軟件界面來(lái)查看各類(lèi)傳感器采集信號(hào)和整車(chē)控制器的一些重要參數(shù)的實(shí)時(shí)信息,,并可以針對(duì)點(diǎn)火提前角、噴氣脈寬,、替代率等重要參數(shù)進(jìn)行在線(xiàn)修改和查看比較,,以曲線(xiàn)的形式展現(xiàn)結(jié)果。通過(guò)標(biāo)定軟件控制節(jié)氣門(mén)閥片的位置,,改變和調(diào)節(jié)噴氣脈寬來(lái)對(duì)不同工況進(jìn)行優(yōu)化,,經(jīng)過(guò)大量實(shí)驗(yàn),標(biāo)定的噴氣脈寬MAP圖如圖6所示,,相應(yīng)的外特性曲線(xiàn)如圖7所示,。

jsj5-t6.gif

jsj5-t7.gif

    上位機(jī)中的標(biāo)定軟件采用C#語(yǔ)言進(jìn)行開(kāi)發(fā),利用WPF技術(shù)創(chuàng)建控件并完成封裝,,將圖形與代碼完美隔離開(kāi)來(lái),,提高界面的美觀(guān)性、通用性和可移植性,。上位機(jī)的測(cè)量標(biāo)定工作可監(jiān)測(cè)到整車(chē)控制器的主要參數(shù)以及傳感器的采集信號(hào),,分別以報(bào)文表、儀表盤(pán)和波形圖的形式顯示給用戶(hù),,其中包括蓄電池電壓,、電池溫度、噴氣脈寬等重要參數(shù),。示例界面獲取的是不同轉(zhuǎn)速情況下的噴氣脈寬值,,通過(guò)標(biāo)定系統(tǒng)改變不同轉(zhuǎn)速值,,可得到相應(yīng)噴氣脈寬值變化情況。測(cè)量標(biāo)定界面如圖8所示,。

jsj5-t8.gif

6 總結(jié)

    經(jīng)過(guò)上述的研究和開(kāi)發(fā),,通過(guò)實(shí)驗(yàn)室配有整車(chē)控制器ECU的臺(tái)架上試驗(yàn),驗(yàn)證了實(shí)時(shí)監(jiān)測(cè)和在線(xiàn)標(biāo)定功能,。其特色在于該標(biāo)定系統(tǒng)主要適用于新能源汽車(chē),,可通過(guò)對(duì)整車(chē)控制器的標(biāo)定實(shí)現(xiàn)復(fù)雜異構(gòu)網(wǎng)絡(luò)系統(tǒng)的標(biāo)定和優(yōu)化,采用國(guó)際ASAP標(biāo)準(zhǔn)和通用XCP協(xié)議,,具有較好的移植性和通用性,。

參考文獻(xiàn)

[1] 李計(jì)融,鐘再敏.車(chē)載控制器匹配標(biāo)定ASAP標(biāo)準(zhǔn)綜述[J].汽車(chē)技術(shù),,2004,,10:1-4.

[2] 顧衛(wèi)鋼.手把手教你學(xué)DSP—基于TMS320X281x[M].北京:北京航空航天大學(xué)出版社,2011.

[3] ASAM_XCP_Part2-Protocol-Layer-Specification_V1.0.0.

[4] ASAM_XCP_Part3-Transport-Layer-Specification_XCP onCAN_V1.0.0.

[5] 宋維群,,楊世春,,李明,等.基于ASAM標(biāo)準(zhǔn)的標(biāo)定數(shù)據(jù)庫(kù)邏輯分析與編程實(shí)現(xiàn)[J].汽車(chē)技術(shù),,2012(1):10-13.

[6] ASAM_XCP_Part4-Interface-Specification_V1.0.0.

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載。