張儀棟 , 謝東坡
(1.重慶車輛檢測研究院有限公司,重慶 401122;2.國家客車質(zhì)量監(jiān)督檢驗中心,重慶 401122)
汽車道路性能測試是汽車新產(chǎn)品進(jìn)入市場前質(zhì)量檢驗的最后一環(huán),非常關(guān)鍵。由于其涉及參數(shù)多、參數(shù)異質(zhì)化較大、參數(shù)實時性要求高,需不同類型的數(shù)據(jù)采集單元協(xié)調(diào)完成。數(shù)采單元間數(shù)據(jù)交換,需通信總線支撐,控制器局域網(wǎng) (controller area network,CAN)是目前應(yīng)用于汽車ECU中最廣泛的總線,考慮到汽車道路性能測試與車載ECU的數(shù)據(jù)交換,CAN總線成為汽車道路性能測試系統(tǒng)最理想的選擇[1]。
在各種CAN應(yīng)用層協(xié)議中,美國電氣工程師協(xié)會(SAE)制定了適用于卡車和客車的J1939協(xié)議,它是一種支持閉環(huán)控制的在多個ECU之間高速通信的網(wǎng)絡(luò)協(xié)議,并得到了廣泛的應(yīng)用。雖然汽車道路性能測試的數(shù)采單元需要與車載ECU進(jìn)行數(shù)據(jù)交換,但數(shù)采單元間通信又有其特殊性要求,所以不能完全照搬J1939協(xié)議[2]。
本文按照制定通信協(xié)議的基本原則,在設(shè)計汽車道路性能測試系統(tǒng)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)后,基于J1939制定了適用于汽車道路性能測試系統(tǒng)的通用應(yīng)用層協(xié)議。
CAN協(xié)議的制定一般包括物理層、數(shù)據(jù)鏈路層和應(yīng)用層3個方面。目前物理層及數(shù)據(jù)鏈路層在相應(yīng)的國際標(biāo)準(zhǔn)中都進(jìn)行了完整地定義,因此CAN通信協(xié)議的制定主要集中在應(yīng)用層。
應(yīng)用層完成標(biāo)識符分配、多報文數(shù)據(jù)包的傳輸?shù)裙δ?。本文的?yīng)用層協(xié)議遵循J1939規(guī)范,充分考慮客車道路性能測試系統(tǒng)結(jié)構(gòu)特點,給每個節(jié)點都分配固定的標(biāo)識地址;同時在充分考慮各節(jié)點數(shù)據(jù)傳輸實時性要求、數(shù)據(jù)的相對重要程度、控制算法對節(jié)點處理速度的要求等因素后完成標(biāo)識符(identifier,ID)分配、定義消息周期以及確定信號與消息的映射關(guān)系等[3-4]。
圖1 J1939協(xié)議與CAN協(xié)議ID比較圖
J1939協(xié)議與CAN協(xié)議的29位ID對應(yīng)關(guān)系如圖1所示。
制定應(yīng)用層協(xié)議的基本規(guī)則如下:
(1)節(jié)點源地址(source address,SA)。網(wǎng)絡(luò)中的一個數(shù)采板對應(yīng)唯一一個SA,在選擇節(jié)點地址時按照節(jié)點重要性來排序,重要性越高的節(jié)點地址越小。地址定義使用208~231這段屬于公路用車的預(yù)留地址[5]。
(2)參數(shù)組定義及編碼。對數(shù)采板節(jié)點的參數(shù)組定義時,盡量將功能相似、刷新率相同或相近的參放在同一個參數(shù)組中,這樣可以減少報文的數(shù)量、降低總線負(fù)載;參數(shù)組既要能夠充分利用8個字節(jié)的數(shù)據(jù)寬度,又要考慮擴(kuò)展性,預(yù)留一部分字節(jié)或位,以便將來進(jìn)行修改。參數(shù)組編碼(parameter group number,PGN)由協(xié)議數(shù)據(jù)單元格式(protocal data unit format,PF)和協(xié)議數(shù)據(jù)單元特定域(protocal data unit specific,PS)2個字節(jié)數(shù)據(jù)編碼而成,按照參數(shù)組的重要程度及傳輸方式(廣播或一對一傳輸)不同分配不同的PGN號[6-7]。
(3)優(yōu)先級(priority,P)。優(yōu)先級共有 8 級,最高級0,最低級7。報文優(yōu)先級可以設(shè)置,所有從控制源發(fā)出的報文缺省優(yōu)先級為2,所有信息的、專用的、請求和應(yīng)答報文的缺省優(yōu)先級為5,根據(jù)報文實時性的要求可適當(dāng)修改優(yōu)先級,產(chǎn)品序列信息使用最低優(yōu)先級7。
汽車道路性能測試涉及的信號可歸結(jié)為6類,見表1。這些不同類型的信號通過相應(yīng)的板卡采集,板卡經(jīng)過同步時鐘信號同步后作為節(jié)點接入CAN網(wǎng)絡(luò)。圖2給出了汽車道路性能測試系統(tǒng)的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)。
考慮到系統(tǒng)的穩(wěn)定性,該網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)可掛載18個節(jié)點(圖中給出了6個),包括模擬量采集板、數(shù)字量采集板等6個類別,節(jié)點源地址SA采用J1939協(xié)議中預(yù)留碼段,實時性要求高的節(jié)點SA最??;總線兩端各加120Ω的終端匹配抑制信號反射,提高系統(tǒng)可靠性[9];波特率為500kb/s。
表1 汽車道路性能測試信號分類
圖2 客車道路性能測試系統(tǒng)的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)
J1939協(xié)議的典型參數(shù)組定義如表2所示。
表2 J1939規(guī)定的6個典型參數(shù)信息
該協(xié)議為了擴(kuò)展方便,參數(shù)組的PDU的PF值從242開始,全部采用PDU2格式(廣播傳輸),PS從0至5開始依次分配給模擬量采集板、數(shù)字量采集板、微波采集板、開關(guān)量采集板、溫度采集板、通信板。CAN報文接收時通過對屏蔽器和過濾器進(jìn)行設(shè)置,每個數(shù)采板即可接收到所需參數(shù)。當(dāng)?shù)玫侥硞€參數(shù)組幀以后,就可以根據(jù)參數(shù)所在數(shù)據(jù)域的字節(jié)位置提取其對應(yīng)的原始數(shù),再根據(jù)該參數(shù)對應(yīng)的分辨率和偏移量得到參數(shù)值,其計算公式為:參數(shù)值=參數(shù)原始數(shù)×分辨率+偏移量。參數(shù)組的各數(shù)據(jù)字節(jié)都定義為8個字節(jié),并統(tǒng)一將最后一個字節(jié)保留,用于傳輸故障診斷信息[5-6]。
表3 典型參數(shù)組定義
限于篇幅,表3僅列出了模擬量板的參數(shù)組信息。模擬量板參數(shù)組用于將數(shù)采端口定義信息(電壓極性、偏移、增益等)、AD采樣值、故障代碼等信息向全局廣播。
該協(xié)議目前已經(jīng)成功應(yīng)用在GCM06plus型機(jī)動車道路性能綜合測試儀上。該儀器的CAN網(wǎng)絡(luò)中一共有9個節(jié)點,包括:2個模擬量節(jié)點、2個數(shù)字量節(jié)點、1個GPS信號節(jié)點、1個開關(guān)量節(jié)點、1個溫度節(jié)點、2個通信節(jié)點。以汽車制動性能測試為例,各節(jié)點將采集的制動踏板力、管路壓力、車速、制動觸發(fā)標(biāo)記等信號及從車載ECU報文解析出的發(fā)動機(jī)轉(zhuǎn)速、發(fā)動機(jī)冷卻液溫度、發(fā)動機(jī)機(jī)油壓力等信號以廣播的方式在網(wǎng)絡(luò)中發(fā)布,最后通過以太網(wǎng)通信節(jié)點進(jìn)行綜合處理。圖3為測試曲線及結(jié)果,從圖中可以看出,各類參數(shù)均能按照本協(xié)議正常傳輸并滿足實時性要求。
圖3 汽車制動測試速度曲線及結(jié)果
本文對比分析了汽車道路性能測試特點及J1939協(xié)議的適用性。在借鑒J1939協(xié)議的基礎(chǔ)上,制定了汽車道路性能測試系統(tǒng)CAN總線應(yīng)用層通信協(xié)議應(yīng)遵循的基本原則。并設(shè)計了網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),給出了通信協(xié)議的具體定義,協(xié)議有效性在GCM06型機(jī)動車道路性能綜合測試儀中得到驗證。
[1]夏繼強(qiáng),李曉君.SAE J1939協(xié)議棧設(shè)計及 μC/OS-II系統(tǒng)下的開發(fā)平臺的研究 [J].汽車工程,2008,30(12):1069-1074.
[2]郭川生,潘明.基于汽車內(nèi)部網(wǎng)絡(luò)的嵌入式CAN網(wǎng)橋設(shè)計[J].儀表技術(shù)與傳感器,2009(1):45-47.
[3]韓偉偉,王建.基于SAE J1939協(xié)議的發(fā)動機(jī)虛擬儀表系統(tǒng)的開發(fā)[J].汽車科技,2009(3):24-26.
[4]夏繼強(qiáng),孫進(jìn),曹磊,等.基于SAE J1939的汽車網(wǎng)絡(luò)監(jiān)控系統(tǒng)設(shè)計[J].汽車工程,2007,29(6):528-532.
[5]李芳,張俊智.電動汽車動力總成系統(tǒng)控制器局域網(wǎng)(CAN)總線通信協(xié)議[J].機(jī)械工程學(xué)報,2008,44(5):102-107.
[6]劉和平.dsPIC通用數(shù)字信號處理控制器原理及應(yīng)用-基于dsPIC30F系統(tǒng)[M].北京:北京航天航空大學(xué)出版社,2007.
[7]王錦堅,洪添勝.基于SAE J1939協(xié)議的客車CAN總線發(fā)動機(jī)測試系統(tǒng)[J].工業(yè)控制計算機(jī),2009,22(4):82-84.
[8]蔡志偉,魏春光.基于SAE J1939協(xié)議的柴油機(jī)監(jiān)控系統(tǒng)[J].內(nèi)燃機(jī)車,2009(5):23-25.
[9]王明文.基于SAE J1939的汽車網(wǎng)絡(luò)測試系統(tǒng)設(shè)計[J].西華大學(xué)學(xué)報:自然科學(xué)版,2011,30(1):48-51.