當(dāng)前位置:汽車配件110網(wǎng) >> 汽修百科 >> 汽車構(gòu)造維修 >> CAN總線的特點(diǎn)及J1939協(xié)議通信原理、內(nèi)容和應(yīng)用 |
互聯(lián)網(wǎng) jiaer.qx 汽車構(gòu)造維修 2008-06-11
眾多國(guó)際知名汽車公司早在20世紀(jì)80年代就積極致力于汽車網(wǎng)絡(luò)技術(shù)的研究及應(yīng)用。迄今已有多種網(wǎng)絡(luò)標(biāo)準(zhǔn),如專門用于貨車和客車上的SAE的J1939、德國(guó)大眾的ABUS、博世的CAN、美國(guó)商用機(jī)器的AutoCAN、ISO的VAN、馬自達(dá)的PALMNET等。 在我國(guó)的轎車中已基本具有電子控制和網(wǎng)絡(luò)功能,排放和其他指標(biāo)達(dá)到了一定的要求。但貨車和客車在這方面卻遠(yuǎn)未能滿足排放法規(guī)的要求。計(jì)劃到2006年,北京地區(qū)的貨車和客車的排放要滿足歐Ⅲ標(biāo)準(zhǔn)。因此,為了滿足日益嚴(yán)格的排放法規(guī),載貨車和客車中也必須引入計(jì)算機(jī)及控制技術(shù)。采用控制器局域網(wǎng)和國(guó)際公認(rèn)標(biāo)準(zhǔn)協(xié)議J1939來搭建網(wǎng)絡(luò),并完成數(shù)據(jù)傳輸,以實(shí)現(xiàn)汽車內(nèi)部電子單元的網(wǎng)絡(luò)化是一種迫切的需要也是必然的發(fā)展趨勢(shì)。 1 CAN總線特點(diǎn)及其發(fā)展 控制器局域網(wǎng)絡(luò)(CAN)是德國(guó)Robert bosch公司在20世紀(jì)80年代初為汽車業(yè)開發(fā)的一種串行數(shù)據(jù)通信總線。CAN是一種很高保密性,有效支持分布式控制或?qū)崟r(shí)控制的串行通信網(wǎng)絡(luò)。CAN的應(yīng)用范圍遍及從高速網(wǎng)絡(luò)到低成本底多線路網(wǎng)絡(luò)。在自動(dòng)化電子領(lǐng)域、發(fā)動(dòng)機(jī)控制部件、傳感器、抗滑系統(tǒng)等應(yīng)用中,CAN的位速率可高達(dá)1Mbps。同時(shí),它可以廉價(jià)地用于交通運(yùn)載工具電氣系統(tǒng)中,如燈光聚束、電氣窗口等,可以替代所需要的硬件連接。它采用線性總線結(jié)構(gòu),每個(gè)子系統(tǒng)對(duì)總線有相同的權(quán)利,即為多主工作方式。CAN網(wǎng)絡(luò)上任意一個(gè)節(jié)點(diǎn)可在任何時(shí)候向網(wǎng)絡(luò)上的其他節(jié)點(diǎn)發(fā)送信息而不分主從。網(wǎng)絡(luò)上的節(jié)點(diǎn)可分為不通優(yōu)先級(jí),滿足不同的實(shí)時(shí)要求。采用非破壞性總線裁決技術(shù),當(dāng)兩個(gè)節(jié)點(diǎn)(即子系統(tǒng))同時(shí)向網(wǎng)絡(luò)上傳遞信息時(shí),優(yōu)先級(jí)低的停止數(shù)據(jù)發(fā)送,而優(yōu)先級(jí)高的節(jié)點(diǎn)可不受影響地繼續(xù)傳送數(shù)據(jù)。具有點(diǎn)對(duì)點(diǎn)、一點(diǎn)對(duì)多點(diǎn)及全局廣播接收傳送數(shù)據(jù)的功能。 隨著CAN在各種領(lǐng)域的應(yīng)用和推廣,對(duì)其通信格式的標(biāo)準(zhǔn)化提出了要求。1991年9月Philips Semiconductors制定并發(fā)布了CAN技術(shù)規(guī)范(Versio 2.0)。該技術(shù)包括A和B兩部分。2.OA給出了CAN報(bào)文標(biāo)準(zhǔn)格式,而2.OB給出了標(biāo)準(zhǔn)的和擴(kuò)展的兩種格式。1993年11月ISO頒布了道路交通運(yùn)輸工具-數(shù)據(jù)信息交換-高速通信局域網(wǎng)(CAN)國(guó)際標(biāo)準(zhǔn)ISO11898,為控制局域網(wǎng)的標(biāo)準(zhǔn)化和規(guī)范化鋪平了道路。美國(guó)的汽車工程學(xué)會(huì)SAE于2000年提出的J1939,成為貨車和客車中控制器局域網(wǎng)的通用標(biāo)準(zhǔn)。 2.J1939協(xié)議通信原理及內(nèi)容 (1)J1939與CAN J1939是一種支持閉環(huán)控制的在多個(gè)ECU之間高速通信的網(wǎng)絡(luò)協(xié)議岡。主要運(yùn)用于載貨車和客車上。它是以CAN2.0為網(wǎng)絡(luò)核心。表1介紹了CAN2.0的標(biāo)準(zhǔn)和擴(kuò)展格式,及J1939協(xié)議所定義的格式。表2則給出了J1939年的一個(gè)協(xié)議報(bào)文單元的具體格式。可以看出,J1939標(biāo)識(shí)符包括:PRIORTY(優(yōu)先權(quán)位);R(保留位);DP(數(shù)據(jù)頁(yè)位);PDU FORMAAT(協(xié)議數(shù)據(jù)單元);PDU SPECIFIC(擴(kuò)展單元)和SOURCE ADDRESS(源地址)。而報(bào)文單元還包括64位的數(shù)據(jù)場(chǎng)。 表1 CAN2.0的標(biāo)準(zhǔn)和擴(kuò)展格式及J1939協(xié)議所定義的格式 CAN擴(kuò)展幀格式 SOF 11位標(biāo)識(shí)符 SRR IDE 18位擴(kuò)展標(biāo)識(shí)符 J1939幀格式 幀起始位 優(yōu)先權(quán)3位 R位(保) 數(shù)據(jù)頁(yè)DP PF格式6位 SRR位 擴(kuò)展標(biāo)識(shí) PF PS格式(8位) 源地址(8位) CAN 1 2~4 5 6 7~12 13 14 15 16 17~24 25~32 幀位置 28~26 25 24 23~18 17 16 15~8 7~0 表2 J1939協(xié)議報(bào)文單元的具體格式 一個(gè)J1939協(xié)議報(bào)文單元 PRIORITY R DP PDU FORMAT PDU SPECIFIC SOURCE ADDRESS DATA FIELD 3 1 1 8 8 8 0~64 (2)數(shù)據(jù)傳轉(zhuǎn)協(xié)議 J1939通信中的核心是負(fù)責(zé)數(shù)據(jù)傳輸?shù)膫鬏攨f(xié)議。它的功能分為兩部分: (1)數(shù)據(jù)的拆分打包和重組。一個(gè)J1939的報(bào)文單元只有8個(gè)字節(jié)的數(shù)據(jù)場(chǎng)。因此如果所要發(fā)送的數(shù)據(jù)超過了8字節(jié),就應(yīng)該分成幾個(gè)小的數(shù)據(jù)包分批發(fā)送。數(shù)據(jù)場(chǎng)的第一個(gè)字節(jié)從1開始作為報(bào)文的序號(hào),后7個(gè)字節(jié)用來存放數(shù)據(jù)。所以可以發(fā)送255×7=1785個(gè)字節(jié)的數(shù)據(jù)。報(bào)文被接收以后按序號(hào)重新組合成原來的數(shù)據(jù)。 (2)連接管理。主要對(duì)節(jié)點(diǎn)之間連接的建立和關(guān)閉,數(shù)據(jù)的傳送進(jìn)行管理。其中定義了5種幀結(jié)構(gòu):發(fā)送請(qǐng)求幀、發(fā)送清除幀、結(jié)束應(yīng)答幀、連接失敗幀以及用來全局接收的廣播幀。節(jié)點(diǎn)之間的連接通過一個(gè)節(jié)點(diǎn)向目的地址發(fā)送一個(gè)發(fā)送請(qǐng)求幀而建立。在接收發(fā)送請(qǐng)求幀以后,節(jié)點(diǎn)如果有足夠的空間來接收數(shù)據(jù)并且數(shù)據(jù)有效,則發(fā)送一個(gè)發(fā)送清除幀,開始數(shù)據(jù)的傳送。如果存儲(chǔ)空間不夠或者數(shù)據(jù)無效等原因,節(jié)點(diǎn)需要拒絕連接,則發(fā)送連接失敗幀,連接關(guān)閉。如果數(shù)據(jù)接收全部完成。則節(jié)點(diǎn)發(fā)送一個(gè)結(jié)束應(yīng)答幀,連接關(guān)閉。 (3)J1939的參數(shù)格式 J1939中還定義了參數(shù)的具體格式,如標(biāo)識(shí)符、優(yōu)先級(jí)、數(shù)據(jù)長(zhǎng)度、參數(shù)的范圍等。參數(shù)又劃分為狀態(tài)參數(shù)和測(cè)量參數(shù)。狀態(tài)參數(shù)表示具有多態(tài)信號(hào)的某一種狀態(tài),如發(fā)動(dòng)機(jī)剎車使能/禁能、巡航控制激活/關(guān)閉,扭矩/速度控制超載模式、錯(cuò)誤代碼等。而測(cè)量參數(shù)則表示所接收到的信號(hào)的值的具體大小,如缸內(nèi)爆發(fā)壓力、最大巡航速度、發(fā)動(dòng)機(jī)轉(zhuǎn)速等。 3.J1939協(xié)議的應(yīng)用 (1)J1939應(yīng)用于網(wǎng)絡(luò)構(gòu)建 J1939網(wǎng)絡(luò)層中定義了如何構(gòu)建網(wǎng)絡(luò)及連接的功能。網(wǎng)絡(luò)層的功能包括數(shù)據(jù)的過濾、重新打包和轉(zhuǎn)發(fā)。分別由以下各部分實(shí)現(xiàn)。 a.中繼器?梢栽鰪(qiáng)數(shù)據(jù)信號(hào),使數(shù)據(jù)傳輸更遠(yuǎn)的距離。 b.網(wǎng)橋。數(shù)據(jù)的轉(zhuǎn)發(fā)和過濾。它可以把網(wǎng)絡(luò)拆解成網(wǎng)絡(luò)分支、分割網(wǎng)絡(luò)數(shù)據(jù)流,隔離分支中發(fā)生的故障,這樣就可以減少每個(gè)網(wǎng)絡(luò)分支的數(shù)據(jù)信息流量而使每個(gè)網(wǎng)絡(luò)更有效,提高整個(gè)網(wǎng)絡(luò)效率。 c.路由?梢允咕W(wǎng)絡(luò)段具有獨(dú)立的地址空間不同的數(shù)據(jù)傳輸率和媒介。 d.網(wǎng)關(guān)。可以在不同的協(xié)議和數(shù)據(jù)設(shè)置的網(wǎng)段之間傳送數(shù)據(jù)。圖1為典型的汽車網(wǎng)絡(luò)連接。 (2)J1939應(yīng)用于故障診斷 J1939包括在線故障診斷功能,由診斷應(yīng)用層定義。診斷應(yīng)用層面向以下幾方面。 a.安全。在數(shù)據(jù)鏈路層上定義一個(gè)安全的框架,使得符合工業(yè)標(biāo)準(zhǔn)的開發(fā)工具執(zhí)行必要的診斷任務(wù)。包括獲取診斷信息,獲取節(jié)點(diǎn)配置信息,標(biāo)定控制模式。但對(duì)非開放型的數(shù)據(jù)加密。 b.連接。建立J1939網(wǎng)絡(luò)節(jié)點(diǎn)與開發(fā)工具之間的連接。連接器的設(shè)計(jì)也必須符合J1939協(xié)議。 c.診斷狀態(tài)數(shù)據(jù)支持。提供一系列的數(shù)據(jù)格式。包括讀取出錯(cuò)數(shù)據(jù)、清除錯(cuò)誤數(shù)據(jù)、監(jiān)測(cè)通信參數(shù)、獲取節(jié)點(diǎn)的配置以及其他的一些信息。 d.診斷測(cè)試支持?梢允归_發(fā)工具把各種控制節(jié)點(diǎn)放到具體的測(cè)試模式中以正確設(shè)計(jì)子網(wǎng)體系。診斷工具通過連接器與其他節(jié)點(diǎn)進(jìn)行通信以獲取診斷數(shù)據(jù)。因此所有的控制節(jié)點(diǎn)都應(yīng)該具備以下功能:讀取診斷故障代碼、清除診斷故障代碼、獲取實(shí)時(shí)信息。而診斷故障代碼記載了出錯(cuò)的參數(shù)及所在的節(jié)點(diǎn)等主要信息。 駕駛室監(jiān)視儀 網(wǎng)橋 傳動(dòng)系統(tǒng) 發(fā)動(dòng)機(jī)系統(tǒng) 制動(dòng)系統(tǒng) 制動(dòng)器 路由 拖車機(jī)構(gòu) 網(wǎng)橋 到下一拖車系統(tǒng) 250 K 拖車子網(wǎng) 軸/懸掛系統(tǒng) 制動(dòng) 照明 牽引動(dòng)力總線 圖1 典型汽車網(wǎng)絡(luò)連接 4.節(jié)點(diǎn)設(shè)計(jì)及數(shù)據(jù)通信 最小化節(jié)點(diǎn)的主控制芯片采用51系列的單片機(jī),控制器采用PHILIPS公司的SJA1000,控制器接口采用82c250。 為了構(gòu)建CAN總線局域網(wǎng)絡(luò),采用了研華公司生產(chǎn)的雙端口CAAN控制卡PCL-841,每塊PCL-841卡集成了兩塊PHILIPS的SJA1000控制器和82c250控制器接口。這樣兩塊控制卡就有四個(gè)端□,相當(dāng)于四個(gè)獨(dú)立的節(jié)點(diǎn),用數(shù)據(jù)線連接起來,就組成了基本的CAN局域網(wǎng)。如圖2所示。 節(jié)點(diǎn)1 節(jié)點(diǎn)2 節(jié)點(diǎn)3 節(jié)點(diǎn)4 PC機(jī) CAN總線 圖2 CAN局域網(wǎng) 軟件的編寫主要包括對(duì)寄存器的配置、硬件初始化、中斷調(diào)用、數(shù)據(jù)通信幾大模塊。中斷調(diào)用中包括數(shù)據(jù)中的中斷接收、中斷發(fā)送,以及錯(cuò)誤處理、報(bào)警等模塊。通信模塊又分為數(shù)據(jù)的發(fā)送、接收、請(qǐng)求等。 綜上所述,J1939通信協(xié)議解決了如下問題。 (I)優(yōu)先權(quán)問題。如自動(dòng)換擋要求減油門,巡航控制同時(shí)要求增油,而ASR則要求減油門以維持驅(qū)動(dòng)軸的低扭矩。根據(jù)重要程度,則應(yīng)確定換擋優(yōu)先,協(xié)議能定義各個(gè)子系統(tǒng)的優(yōu)先權(quán)順序。 (2)靈活性問題。因?yàn)楦鱾(gè)子系統(tǒng)都是不同類型的控制系統(tǒng),網(wǎng)絡(luò)應(yīng)具備將各個(gè)子系統(tǒng)有機(jī)地融合在一起的能力。 (3)可擴(kuò)展性。即需要增加新的子系統(tǒng)時(shí),不需要對(duì)基本系統(tǒng)作修改。 (4)獨(dú)立性。每個(gè)子系統(tǒng)都可以獨(dú)立工作,某個(gè)子系統(tǒng)出現(xiàn)故障時(shí)并不影響其他系統(tǒng)的正工作。 (5)為滿足不同控制系統(tǒng)的要求,應(yīng)具有高的數(shù)據(jù)傳輸速率帶寬,具有通用的故障診斷接口診斷協(xié)議。 (6)車輛狀態(tài)共享。如發(fā)動(dòng)機(jī)轉(zhuǎn)速、車速、輪速等數(shù)據(jù)必須各子系統(tǒng)共享,數(shù)據(jù)的傳輸及刷新時(shí)間取決于各個(gè)子系統(tǒng)的特性,并由此決定優(yōu)先權(quán) |
|
|
湘公網(wǎng)安備 43120202000083號(hào)