智能網(wǎng)聯(lián)汽車(chē)數(shù)據(jù)分析 課件 模塊三 CAN 總線(xiàn)數(shù)據(jù)分析技術(shù)_第1頁(yè)
智能網(wǎng)聯(lián)汽車(chē)數(shù)據(jù)分析 課件 模塊三 CAN 總線(xiàn)數(shù)據(jù)分析技術(shù)_第2頁(yè)
智能網(wǎng)聯(lián)汽車(chē)數(shù)據(jù)分析 課件 模塊三 CAN 總線(xiàn)數(shù)據(jù)分析技術(shù)_第3頁(yè)
智能網(wǎng)聯(lián)汽車(chē)數(shù)據(jù)分析 課件 模塊三 CAN 總線(xiàn)數(shù)據(jù)分析技術(shù)_第4頁(yè)
智能網(wǎng)聯(lián)汽車(chē)數(shù)據(jù)分析 課件 模塊三 CAN 總線(xiàn)數(shù)據(jù)分析技術(shù)_第5頁(yè)
已閱讀5頁(yè),還剩39頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

智能網(wǎng)聯(lián)汽車(chē)數(shù)據(jù)分析高等職業(yè)教育智能網(wǎng)聯(lián)汽車(chē)技術(shù)專(zhuān)業(yè)Contents模塊一智能網(wǎng)聯(lián)汽車(chē)數(shù)據(jù)分析概述模塊二智能網(wǎng)聯(lián)汽車(chē)串口數(shù)據(jù)分析技術(shù)模塊三CAN總線(xiàn)數(shù)據(jù)分析技術(shù)

模塊四車(chē)載以太網(wǎng)數(shù)據(jù)技術(shù)模塊五智能網(wǎng)聯(lián)汽車(chē)系統(tǒng)模塊數(shù)據(jù)分析模塊六智能網(wǎng)聯(lián)汽車(chē)常用數(shù)據(jù)標(biāo)準(zhǔn)協(xié)議模塊三智能網(wǎng)聯(lián)汽車(chē)串口數(shù)據(jù)分析技術(shù)一、CAN總線(xiàn)通信基本原理二、CAN總線(xiàn)數(shù)據(jù)分析常用軟件介紹三、RS485數(shù)據(jù)通信基本原理四、DBC文件的原理制作與使用方法五、CAN數(shù)據(jù)分析在智能網(wǎng)聯(lián)汽車(chē)方面的應(yīng)用學(xué)習(xí)目標(biāo)?知識(shí)目標(biāo)1.掌握CAN總線(xiàn)通信基本原理;2.熟知CAN總線(xiàn)數(shù)據(jù)分析常用軟件;3.熟悉CAN總線(xiàn)數(shù)據(jù)故障分析技術(shù);4.熟知DBC文件的原理和使用方法;5.熟悉CAN總線(xiàn)基礎(chǔ)數(shù)據(jù)與智能網(wǎng)聯(lián)汽車(chē)專(zhuān)用數(shù)據(jù)間的關(guān)系及分析方法。?技能目標(biāo)1.能完成DBC文件的制作;2.能完成CAN總線(xiàn)系統(tǒng)的檢測(cè);3.能運(yùn)用CANTest、CANoe測(cè)試軟件;4.能運(yùn)用CAN數(shù)據(jù)分析方法,排查常見(jiàn)的智能網(wǎng)聯(lián)汽車(chē)數(shù)據(jù)異常情況。?素養(yǎng)目標(biāo)1.通過(guò)教學(xué)活動(dòng),培養(yǎng)學(xué)生愛(ài)黨報(bào)國(guó)、敬業(yè)奉獻(xiàn)、服務(wù)人民的思想意識(shí);2.通過(guò)教學(xué)活動(dòng),培養(yǎng)學(xué)生獨(dú)立學(xué)習(xí)、分析和處理問(wèn)題的能力,嚴(yán)謹(jǐn)?shù)亻_(kāi)展工作,形成精益求精的工匠精神;3.通過(guò)技能實(shí)訓(xùn),培養(yǎng)學(xué)生團(tuán)結(jié)協(xié)作、安全生產(chǎn)、規(guī)范操作的職業(yè)素養(yǎng),弘揚(yáng)勞動(dòng)精神、奮斗精神、奉獻(xiàn)精神。

模塊三、CAN總線(xiàn)數(shù)據(jù)分析技術(shù)CAN(ControllerAreaNetwork)總線(xiàn)即控制器局域網(wǎng)總線(xiàn),是一種串行通信協(xié)議,能有效支持具有很高安全等級(jí)的分布實(shí)時(shí)控制。使用CAN連接發(fā)動(dòng)機(jī)、動(dòng)力蓄電池、驅(qū)動(dòng)電機(jī)等控制單元,具有可靠性高、實(shí)時(shí)性高、節(jié)點(diǎn)布置靈活等特性。CAN總線(xiàn)協(xié)議具有兩個(gè)國(guó)際標(biāo)準(zhǔn),分別是ISO11898和ISO11519,其中,ISO11989是40m/(1Mbit?s),ISO115119定義了通信速率為10~125kbit/s的低速CAN通信標(biāo)準(zhǔn),屬于開(kāi)環(huán)總線(xiàn),最大長(zhǎng)度為1km/(40kbit?s),由于電氣特性限制,即總線(xiàn)分布電容和分布電阻對(duì)總線(xiàn)波形的影響,CAN總線(xiàn)上最大節(jié)點(diǎn)數(shù)目為110個(gè)。目前,智能網(wǎng)聯(lián)汽車(chē)各種關(guān)鍵模塊都是采用CAN總線(xiàn)進(jìn)行數(shù)據(jù)通信交互,包括三電系統(tǒng)(蓄電池、電機(jī)、電控系統(tǒng)),傳感器系統(tǒng)(智能攝像頭、毫米波雷達(dá)、高精度衛(wèi)星定位設(shè)備),監(jiān)控系統(tǒng)(T-BOX、行駛記錄儀、OBD等),掌握CAN總線(xiàn)相關(guān)原理與技術(shù)是進(jìn)行智能網(wǎng)聯(lián)汽車(chē)系統(tǒng)搭建與故障診斷的必備技能。1.CAN工作原理CAN總線(xiàn)使用串行數(shù)據(jù)傳輸方式,且總線(xiàn)協(xié)議支持多主控制器。當(dāng)CAN總線(xiàn)上的一個(gè)節(jié)點(diǎn)發(fā)送數(shù)據(jù)時(shí),它以報(bào)文形式廣播給網(wǎng)絡(luò)中所有節(jié)點(diǎn)?。每組報(bào)文開(kāi)頭的11位字符為標(biāo)識(shí)符,定義了報(bào)文的優(yōu)先級(jí),這種報(bào)文格式稱(chēng)為面向內(nèi)容的編址方案。各節(jié)點(diǎn)根據(jù)報(bào)文開(kāi)頭的11位標(biāo)識(shí)符決定是否要接收其他節(jié)點(diǎn)發(fā)來(lái)的報(bào)文。在同一系統(tǒng)中標(biāo)識(shí)符是唯一的,不可能有兩個(gè)站發(fā)送具有相同標(biāo)識(shí)符的報(bào)文,當(dāng)幾個(gè)站同時(shí)競(jìng)爭(zhēng)總線(xiàn)讀取時(shí),這種配置十分重要。一CAN總線(xiàn)通信基本原理模塊三、CAN總線(xiàn)數(shù)據(jù)分析技術(shù)

每個(gè)節(jié)點(diǎn)都有自己的處理器和CAN總線(xiàn)接口控制器。當(dāng)一個(gè)節(jié)點(diǎn)需要發(fā)送數(shù)據(jù)到另一個(gè)節(jié)點(diǎn)時(shí),自身節(jié)點(diǎn)的處理器需要將發(fā)送的數(shù)據(jù)和自己的標(biāo)識(shí)符傳給自身的總線(xiàn)控制接口,處于準(zhǔn)備狀態(tài);當(dāng)獲取到總線(xiàn)的使用權(quán)后,轉(zhuǎn)為發(fā)送報(bào)文狀態(tài),將數(shù)據(jù)和標(biāo)識(shí)符組裝成報(bào)文,并將報(bào)文以一定格式發(fā)出,此時(shí),其他的節(jié)點(diǎn)處于接收狀態(tài)。每個(gè)處于接收狀態(tài)的站對(duì)接收到的報(bào)文進(jìn)行檢測(cè),判斷這些報(bào)文是否是發(fā)給自己的,以確定是否接收它。2.總線(xiàn)工作的特點(diǎn)(1)當(dāng)總線(xiàn)空閑時(shí),任何節(jié)點(diǎn)都可以向總線(xiàn)發(fā)送報(bào)文。如果有兩個(gè)或兩個(gè)以上的節(jié)點(diǎn)同時(shí)發(fā)送報(bào)文,就會(huì)引起總線(xiàn)訪(fǎng)問(wèn)碰撞,由發(fā)送數(shù)據(jù)的報(bào)文中的標(biāo)識(shí)符決定報(bào)文占用總線(xiàn)的優(yōu)先權(quán)。標(biāo)識(shí)符越小,優(yōu)先權(quán)越高。仲裁(Arbittration)的機(jī)制確保了報(bào)文和時(shí)間均不損失,當(dāng)具有相同標(biāo)識(shí)符的數(shù)據(jù)幀和遠(yuǎn)程幀同時(shí)發(fā)送時(shí),數(shù)據(jù)幀優(yōu)先于遠(yuǎn)程幀。在仲裁期間,每一個(gè)發(fā)送器都對(duì)發(fā)送位的電平與被監(jiān)控的總線(xiàn)電平進(jìn)行比較,如果電平相同,則這個(gè)單元可以繼續(xù)發(fā)送,如果發(fā)送的是“隱性”電平而監(jiān)視到的是“顯性”電平,那么這個(gè)單元就失去了仲裁,必須退出發(fā)送狀態(tài)。(2)總線(xiàn)上的數(shù)據(jù)以不同報(bào)文(Message)格式發(fā)送,但長(zhǎng)度受到限制。(3)在CAN中,節(jié)點(diǎn)不使用任何關(guān)于系統(tǒng)配置的報(bào)文,例如站地址,由接收節(jié)點(diǎn)根據(jù)報(bào)文本身特征判斷是否接收這幀信息。因此,系統(tǒng)擴(kuò)展時(shí)不用對(duì)應(yīng)用層以及任何節(jié)點(diǎn)的軟件和硬件做出改變,可以直接在CAN中增加節(jié)點(diǎn)。(4)要傳送的報(bào)文有特征標(biāo)識(shí)符(Tdentifier),它給出的不是目標(biāo)節(jié)點(diǎn)地址,而是這個(gè)報(bào)文本身的特征,信息以廣播方式在網(wǎng)絡(luò)上發(fā)送,所有節(jié)點(diǎn)都可以接收到,節(jié)點(diǎn)通過(guò)CAN控制器硬件對(duì)報(bào)文的標(biāo)示符濾波即可實(shí)現(xiàn)點(diǎn)對(duì)點(diǎn)、一點(diǎn)對(duì)多點(diǎn)及全局廣播等多種方式傳送接收數(shù)據(jù)。一CAN總線(xiàn)通信基本原理模塊三、CAN總線(xiàn)數(shù)據(jù)分析技術(shù)(5)數(shù)據(jù)一致性應(yīng)確保報(bào)文在CAN里同時(shí)被所有節(jié)點(diǎn)接收或同時(shí)不接收,這是配合錯(cuò)誤處理和再同步功能實(shí)現(xiàn)的。(6)位傳輸速率不同的CAN系統(tǒng)速度不同,但在一個(gè)給定的系統(tǒng)里,位傳輸速率是唯一的,并且是固定的。(7)通過(guò)發(fā)送遠(yuǎn)程幀,需要數(shù)據(jù)的節(jié)點(diǎn)請(qǐng)求另一節(jié)點(diǎn)發(fā)送相應(yīng)的數(shù)據(jù),回應(yīng)節(jié)點(diǎn)傳送的數(shù)據(jù)幀與請(qǐng)求數(shù)據(jù)的遠(yuǎn)程幀,由相同的標(biāo)識(shí)符命名。(8)總線(xiàn)有“顯性”和“隱性”兩個(gè)狀態(tài),“顯性”對(duì)應(yīng)邏輯“0”,“隱性”對(duì)應(yīng)邏輯“1”,兩個(gè)節(jié)點(diǎn)同時(shí)分別發(fā)送“0”和“1”時(shí),總線(xiàn)上呈現(xiàn)“0”。CAN總線(xiàn)采用二進(jìn)制不歸零(NRZ)編碼方式,所以,總線(xiàn)上不是“0”就是“1”,但是,CAN協(xié)議并沒(méi)有具體定義這兩種狀態(tài)的具體實(shí)現(xiàn)方式。(9)CAN節(jié)點(diǎn)能區(qū)分瞬時(shí)擾動(dòng)引起的故障和永久性故障。(10)應(yīng)答接收節(jié)點(diǎn)對(duì)正確接收的報(bào)文給出應(yīng)答,對(duì)不一致報(bào)文進(jìn)行標(biāo)記。(11)CAN通信距離最大是10km(設(shè)速率為5kbit/s),或最大通信速率為1Mbit/s(設(shè)通信距離為40m)。(12)CAN總線(xiàn)通信介質(zhì)可在雙絞線(xiàn)、同軸電纜、光纖中選擇。(13)CAN報(bào)文采用短幀結(jié)構(gòu),短的傳送時(shí)間使其受干擾概率低,并且每幀均包含CRC校驗(yàn)部分,保證了極低的數(shù)據(jù)出錯(cuò)率。一CAN總線(xiàn)通信基本原理模塊三、CAN總線(xiàn)數(shù)據(jù)分析技術(shù)3.CAN總線(xiàn)報(bào)文結(jié)構(gòu)CAN通信幀共分為數(shù)據(jù)幀、遠(yuǎn)程幀、錯(cuò)誤幀、過(guò)載幀和幀間隔五種類(lèi)型。1)數(shù)據(jù)幀數(shù)據(jù)幀結(jié)構(gòu)上由7個(gè)段組成:幀起始、仲裁段、控制段、數(shù)據(jù)段、CRC段、ACK段、幀結(jié)束。根據(jù)標(biāo)識(shí)符長(zhǎng)度的不同,又可以把數(shù)據(jù)幀分為標(biāo)準(zhǔn)幀(11位標(biāo)識(shí)符,CAN2.0A)和擴(kuò)展幀(29位標(biāo)識(shí)符,CAN2.0B)。數(shù)據(jù)幀結(jié)構(gòu)如圖3-1所示。一CAN總線(xiàn)通信基本原理模塊三、CAN總線(xiàn)數(shù)據(jù)分析技術(shù)(1)幀起始、幀結(jié)束。

幀起始和幀結(jié)束用于界定一個(gè)數(shù)據(jù)幀,無(wú)論是標(biāo)準(zhǔn)數(shù)據(jù)幀還是擴(kuò)展數(shù)據(jù)幀都包含這兩個(gè)段,幀起始由單個(gè)顯性位組成???偩€(xiàn)空閑時(shí),發(fā)送節(jié)點(diǎn)發(fā)送幀起始,其他接收節(jié)點(diǎn)同步于該幀起始位。幀結(jié)束由7個(gè)連續(xù)的隱形位組成。(2)仲裁段。CAN總線(xiàn)并沒(méi)有規(guī)定節(jié)點(diǎn)的優(yōu)先級(jí),但通過(guò)仲裁段幀ID規(guī)定了數(shù)據(jù)幀的優(yōu)先級(jí)。根據(jù)CAN2.0標(biāo)準(zhǔn)版本的不同,幀ID分為11位和29位兩種,其結(jié)構(gòu)如圖

3-2所示。一CAN總線(xiàn)通信基本原理模塊三、CAN總線(xiàn)數(shù)據(jù)分析技術(shù)①ID:標(biāo)識(shí)符。標(biāo)準(zhǔn)格式為11位(ID[0:10]);擴(kuò)展格式為29位(ID[0:10]和(ID[11:28])),前11位與標(biāo)準(zhǔn)幀的位置相同。幀ID值越小,優(yōu)先級(jí)越高。報(bào)文接收節(jié)點(diǎn)通過(guò)標(biāo)識(shí)符進(jìn)行報(bào)文濾波。②RTR:遠(yuǎn)程發(fā)送請(qǐng)求位,占1bit,為顯性。由于數(shù)據(jù)幀的RTR位為顯性電平,遠(yuǎn)程幀的RTR位為隱性電平,所以幀格式和幀ID都相同的情況下,數(shù)據(jù)幀的優(yōu)先級(jí)比遠(yuǎn)程幀的優(yōu)先級(jí)高。③SRR:替代遠(yuǎn)程請(qǐng)求位,占1bit,為顯性。④IDE:標(biāo)志位,也稱(chēng)標(biāo)識(shí)符擴(kuò)展位,占1bit。標(biāo)準(zhǔn)幀中該位位于控制段,為顯性,擴(kuò)展幀中該位位于仲裁段,為隱性。由于標(biāo)準(zhǔn)幀的IDE位為顯性電平,擴(kuò)展幀的IDE位為隱性電平,對(duì)于前11位ID相同的標(biāo)準(zhǔn)幀和擴(kuò)展幀,標(biāo)準(zhǔn)幀優(yōu)先級(jí)比擴(kuò)展幀高。CAN控制器在發(fā)送數(shù)據(jù)的同時(shí)監(jiān)測(cè)數(shù)據(jù)線(xiàn)的電平是否與發(fā)送數(shù)據(jù)對(duì)應(yīng)電平相同,如果不同,則停止發(fā)送并做其他處理。如果該位屬于仲裁段,則退出總線(xiàn)競(jìng)爭(zhēng);如果該位處于其他段,則產(chǎn)生錯(cuò)誤事件(幀ACK時(shí)間段或被動(dòng)錯(cuò)誤標(biāo)志傳輸期間除外)。假設(shè)節(jié)點(diǎn)A、B和C都發(fā)送相同格式相同類(lèi)型的幀,如標(biāo)準(zhǔn)格式數(shù)據(jù)幀,它們競(jìng)爭(zhēng)總線(xiàn)的過(guò)程如圖3-3所示。一CAN總線(xiàn)通信基本原理模塊三、CAN總線(xiàn)數(shù)據(jù)分析技術(shù)節(jié)點(diǎn)B的ID第5位為隱性,節(jié)點(diǎn)AC的ID第5位為顯性,總線(xiàn)電平為顯性,則節(jié)點(diǎn)B退出總線(xiàn)競(jìng)爭(zhēng)。節(jié)點(diǎn)C的ID第3位為隱性,節(jié)點(diǎn)A的ID第3位為顯性,總線(xiàn)電平為顯性,則節(jié)點(diǎn)C退出總線(xiàn)競(jìng)爭(zhēng)。(3)控制段??刂贫喂玻段?,標(biāo)準(zhǔn)幀的控制段由擴(kuò)展幀標(biāo)志位IDE、保留位r0和數(shù)據(jù)長(zhǎng)度代碼DLC組成,展幀控制段則由IDE、r1、r0和DLC組成。其結(jié)構(gòu)如圖3-4所示。①I(mǎi)DE:同仲裁段。②r0、r1:保留位0和1,各占1bit,用隱性電平填充。③DLC:數(shù)據(jù)長(zhǎng)度代碼,占4BIT,采用BCD編碼,范圍0~8。一CAN總線(xiàn)通信基本原理模塊三、CAN總線(xiàn)數(shù)據(jù)分析技術(shù)(4)數(shù)據(jù)段。

一個(gè)數(shù)據(jù)幀傳輸?shù)臄?shù)據(jù)量為0~8?jìng)€(gè)字節(jié),這種短幀結(jié)構(gòu)使得CAN總線(xiàn)實(shí)時(shí)性很高,非常適合汽車(chē)和工業(yè)控制場(chǎng)合應(yīng)用,同時(shí)其數(shù)據(jù)量小,被干擾的概率小,抗干擾能力強(qiáng)。(5CRC段。CAN總線(xiàn)采用CRC校驗(yàn)進(jìn)行數(shù)據(jù)檢錯(cuò),CRC校驗(yàn)值存放于CRC段,CRC校驗(yàn)段由15位CRC值和1位CRC界定符構(gòu)成。(6)ACK段。

當(dāng)一個(gè)接收節(jié)點(diǎn)接收的幀起始到CRC段之間的內(nèi)容沒(méi)有發(fā)生錯(cuò)誤時(shí),它將在ACK段發(fā)送一個(gè)顯性電平。2)遠(yuǎn)程幀

遠(yuǎn)程幀是指由總線(xiàn)上的節(jié)點(diǎn)發(fā)出,用于請(qǐng)求其他節(jié)點(diǎn)發(fā)送具有同一標(biāo)識(shí)符的數(shù)據(jù)幀。當(dāng)某個(gè)節(jié)點(diǎn)需要數(shù)據(jù)時(shí),可以發(fā)送遠(yuǎn)程幀請(qǐng)求另一節(jié)點(diǎn)發(fā)送相應(yīng)數(shù)據(jù)幀。與數(shù)據(jù)幀相比,遠(yuǎn)程幀結(jié)構(gòu)上無(wú)數(shù)據(jù)段,由6個(gè)段組成,也分為標(biāo)準(zhǔn)格式和擴(kuò)展格式。其結(jié)構(gòu)如圖3-5所示。一CAN總線(xiàn)通信基本原理模塊三、CAN總線(xiàn)數(shù)據(jù)分析技術(shù)3)錯(cuò)誤幀任何單元,一旦檢測(cè)到總線(xiàn)錯(cuò)誤就發(fā)出錯(cuò)誤幀。盡管CAN總線(xiàn)可靠性很高,但依然可能出現(xiàn)錯(cuò)誤,CAN總線(xiàn)的錯(cuò)誤類(lèi)型總共有5種。(1)CRC錯(cuò)誤:發(fā)送節(jié)點(diǎn)計(jì)算得到的CRC值與接收節(jié)點(diǎn)收到的CRC值不一致時(shí)發(fā)生該錯(cuò)誤。(2)格式錯(cuò)誤:傳輸?shù)臄?shù)據(jù)幀格式與任何一種合法的幀格式不符時(shí)發(fā)生該錯(cuò)誤。(3)應(yīng)答錯(cuò)誤:發(fā)送節(jié)點(diǎn)在ACK階段沒(méi)有接收到應(yīng)答信號(hào)時(shí)發(fā)生該錯(cuò)誤。(4)位發(fā)送錯(cuò)誤:發(fā)送節(jié)點(diǎn)在發(fā)送時(shí)發(fā)現(xiàn)總線(xiàn)電平與發(fā)送電平不一致時(shí)發(fā)生該錯(cuò)誤。一CAN總線(xiàn)通信基本原理數(shù)據(jù)幀和遠(yuǎn)程幀的區(qū)別見(jiàn)表3-1。模塊三、CAN總線(xiàn)數(shù)據(jù)分析技術(shù)一CAN總線(xiàn)通信基本原理(5)位填充錯(cuò)誤:通信線(xiàn)纜上傳輸信號(hào)違反“位填充”規(guī)則時(shí)發(fā)生該錯(cuò)誤。當(dāng)出現(xiàn)以上錯(cuò)誤類(lèi)型之一時(shí),發(fā)送或接收節(jié)點(diǎn)將發(fā)送錯(cuò)誤幀。錯(cuò)誤幀的結(jié)構(gòu)如圖3-6所示。其中錯(cuò)誤標(biāo)識(shí)分為主動(dòng)錯(cuò)誤標(biāo)識(shí)和被動(dòng)錯(cuò)誤標(biāo)識(shí)。為防止自身由于某些原因?qū)е聼o(wú)法正常接收的節(jié)點(diǎn)一直發(fā)送錯(cuò)誤幀,干擾其他節(jié)點(diǎn)通信,CAN總線(xiàn)規(guī)定了節(jié)點(diǎn)的3種狀態(tài)及其行為,如圖3-7所示。4)過(guò)載幀過(guò)載幀用于為先行和后續(xù)的數(shù)據(jù)幀或者遠(yuǎn)程幀之間提供附加延時(shí),保證接收端能夠來(lái)得及處理前面收到的數(shù)據(jù)。過(guò)載幀包括過(guò)載標(biāo)志和過(guò)載界定符,其結(jié)構(gòu)如圖3-8所示。由于存在多個(gè)節(jié)點(diǎn)同時(shí)過(guò)載且過(guò)載幀發(fā)送有時(shí)間差問(wèn)題,可能出現(xiàn)過(guò)載標(biāo)志疊加后超過(guò)6個(gè)位的現(xiàn)象。模塊三、CAN總線(xiàn)數(shù)據(jù)分析技術(shù)一CAN總線(xiàn)通信基本原理5)幀間隔幀間隔用于將數(shù)據(jù)幀或遠(yuǎn)程幀和它們之前的幀分隔開(kāi)來(lái),但過(guò)載幀和錯(cuò)誤幀前面不會(huì)插入幀間隔。(1)幀間隔過(guò)后,如果無(wú)節(jié)點(diǎn)發(fā)送幀,則總線(xiàn)進(jìn)入空閑。(2)幀間隔過(guò)后,如果被動(dòng)錯(cuò)誤節(jié)點(diǎn)要發(fā)送幀,則先發(fā)送8?jìng)€(gè)隱性電平的傳輸延遲,再發(fā)送幀。4.CAN報(bào)文解析案例(1)某汽車(chē)的部分協(xié)議。通信協(xié)議規(guī)定的在蓄電池管理系統(tǒng)(BMS)與整車(chē)控制系統(tǒng)(VCU)之間傳輸?shù)膱?bào)文,格式見(jiàn)表3-2。模塊三、CAN總線(xiàn)數(shù)據(jù)分析技術(shù)一CAN總線(xiàn)通信基本原理十六進(jìn)制的幀ID實(shí)際上是由29位標(biāo)識(shí)符轉(zhuǎn)換而來(lái),幀ID格式見(jiàn)表3-3。P為優(yōu)先級(jí),有3位,可以有8?jìng)€(gè)優(yōu)先級(jí)(0~7),R為保留位,有1位,固定為0;DP為數(shù)據(jù)頁(yè),有1位,固定為0;PF為報(bào)文的代碼,有8位;PS為報(bào)文的目標(biāo)地址(也就是報(bào)文的接收方),有8位;SA為報(bào)文的源地址(也就是報(bào)文的接收方),有8位。通信協(xié)議規(guī)定的在蓄電池管理系統(tǒng)(BMS)與整車(chē)控制系統(tǒng)(VCU)之間傳輸?shù)臄?shù)據(jù)類(lèi)型定義見(jiàn)表3-4。模塊三、CAN總線(xiàn)數(shù)據(jù)分析技術(shù)一CAN總線(xiàn)通信基本原理根據(jù)需要的幀ID,即可在數(shù)據(jù)列查找到相應(yīng)的數(shù)據(jù)幀。以表3-3中報(bào)文的幀ID:1818D0F3為例,假設(shè)其對(duì)應(yīng)的數(shù)據(jù)幀為:ce0d006d1100。(2)查找BMS與VCU之間的報(bào)文內(nèi)容。根據(jù)通信協(xié)議換算一個(gè)幀ID。在表3-3ID對(duì)應(yīng)的列中:P為優(yōu)先級(jí),6轉(zhuǎn)化為二進(jìn)制110;R、DP固定為0;PF為8位的報(bào)文代碼,24轉(zhuǎn)化為二進(jìn)制00011000;PS為8位的目標(biāo)地址,即整車(chē)控制系統(tǒng)的地址,在協(xié)議中它的地址定義為208,轉(zhuǎn)化為二進(jìn)制11010000;SA為8位的源地址,即BMS的地址,在協(xié)議中它的地址為243,轉(zhuǎn)化為二進(jìn)制11110011;根據(jù)表3-3,這些代碼合起來(lái)為11000000110001101000011110011,轉(zhuǎn)化為十六進(jìn)制幀ID為1818D0F3。根據(jù)幀ID查找相應(yīng)的報(bào)文。通常接收到的CAN報(bào)文由很多部分組成,見(jiàn)表3-5。模塊三、CAN總線(xiàn)數(shù)據(jù)分析技術(shù)一CAN總線(xiàn)通信基本原理(3)報(bào)文解析。上文提及收到的報(bào)文中數(shù)據(jù)幀為:ce0d006d1100。根據(jù)表3-2報(bào)文格式和表3-4數(shù)據(jù)類(lèi)型定義,得出:①表3-2中規(guī)定報(bào)文的第一、二字節(jié)表示總線(xiàn)電壓,且兩字節(jié)數(shù)據(jù)中,低字節(jié)在前,高字節(jié)在后。由表3-4知,總電壓的比例因子為0.1V/bit。所以,在上面的數(shù)據(jù)中,“0dce”代表總電壓,轉(zhuǎn)化為十進(jìn)制3534,乘以0.1V的單位,則得到總電壓值為353.4V。②表3-2中規(guī)定報(bào)文的第三、四字節(jié)表示總電流。由表3-4知,總電流的比例因子為0.1A/bit,偏移量為-32000。所以,在上面的數(shù)據(jù)中“7d00”代表總電流,轉(zhuǎn)化為十進(jìn)制32000,乘以0.1,再加上-3200的偏移量等于0,則說(shuō)明此時(shí)電池組沒(méi)有被充電或放電,電流為0A。③表3-2中規(guī)定報(bào)文的第六、七字節(jié)表示最高電池模塊電壓。由表3-4知,單體最高電池電壓的比例因子為0.01V/bit,最高4位代表箱號(hào),低12位代表電壓。所以,在上面的數(shù)據(jù)中“116d”代表最高電池電壓及位置,其中“1”代表箱號(hào),即最高蓄電池電壓在第1箱,“16d”代表最高蓄電池電壓,轉(zhuǎn)化為十進(jìn)制365,乘以0.01V的單位,則得到最高蓄電池電壓為3.65V。模塊三、CAN總線(xiàn)數(shù)據(jù)分析技術(shù)CANTest通用測(cè)試軟件是一個(gè)專(zhuān)門(mén)用來(lái)對(duì)所有的ZLGCAN系列板卡進(jìn)行測(cè)試的軟件工具,此軟件操作簡(jiǎn),容易上手,通過(guò)運(yùn)用此軟件可以非常方便地對(duì)板卡進(jìn)行測(cè)試。CANTest測(cè)試軟件可進(jìn)行數(shù)據(jù)收發(fā)、查詢(xún)等基本傳輸功能,是CAN總線(xiàn)測(cè)試的必備軟件。CAN接口函數(shù)庫(kù)提供給用戶(hù)進(jìn)行上位機(jī)二次開(kāi)發(fā),可以自行編程進(jìn)行數(shù)據(jù)收發(fā)、處理等,其主界面如圖3-9所示。二CAN總線(xiàn)數(shù)據(jù)分析常用軟件介紹模塊三、CAN總線(xiàn)數(shù)據(jù)分析技術(shù)1.設(shè)備類(lèi)型選-在進(jìn)行操作之前,首先需從“類(lèi)型”菜單中選擇想要操作的設(shè)備類(lèi)型,如圖3-10所示。此時(shí)會(huì)彈出“選擇設(shè)備”對(duì)話(huà)框,在這個(gè)對(duì)話(huà)框中可以選擇想要打開(kāi)的設(shè)備索引號(hào)和CAN通道,以及設(shè)置CAN的初始化參數(shù),然后點(diǎn)“確定”按鈕來(lái)打開(kāi)設(shè)備操作窗口,如圖3 ̄11所示?;蛘咭部梢渣c(diǎn)擊“確定并啟動(dòng)CAN”按鈕打開(kāi)設(shè)備操作窗口并自動(dòng)打開(kāi)設(shè)備和啟動(dòng)CAN通道。二CAN總線(xiàn)數(shù)據(jù)分析常用軟件介紹模塊三、CAN總線(xiàn)數(shù)據(jù)分析技術(shù)2.濾波設(shè)置在設(shè)備操作窗口中可以點(diǎn)擊“濾波設(shè)置”按鈕進(jìn)行濾波設(shè)置,如果不需要設(shè)置濾波,可以略過(guò)此步驟,如圖3-12所示。此時(shí)會(huì)彈出“濾波設(shè)置”對(duì)話(huà)框,在其中先選擇濾波模式,然后通過(guò)設(shè)定濾波器來(lái)設(shè)置需要過(guò)濾的CAN幀,如圖3-13所示。3.啟動(dòng)CAN點(diǎn)擊“啟動(dòng)”按鈕啟動(dòng)CAN通道,此時(shí)接收到的CAN數(shù)據(jù)將會(huì)自動(dòng)在數(shù)據(jù)列表中顯示,如圖3-14所示。二CAN總線(xiàn)數(shù)據(jù)分析常用軟件介紹模塊三、CAN總線(xiàn)數(shù)據(jù)分析技術(shù)4.獲取設(shè)備信息在啟動(dòng)CAN通道后,選擇“設(shè)備操作”菜單中的“設(shè)備信息”選項(xiàng)來(lái)獲得當(dāng)前設(shè)備的詳細(xì)信息,如圖3-15所示?5.發(fā)送數(shù)據(jù)當(dāng)啟動(dòng)CAN成功后,在圖3-16所示界面中設(shè)置好要發(fā)送的CAN幀各項(xiàng)參數(shù),然后點(diǎn)擊“發(fā)送”按鈕就可以發(fā)送數(shù)據(jù)了。其中,發(fā)送格式下拉框中的“自發(fā)自收”選項(xiàng)表示發(fā)送出去的CAN幀自己也能收到,這個(gè)選項(xiàng)在測(cè)試的時(shí)候才需用到,在實(shí)際的應(yīng)用中選用“正常發(fā)送”選項(xiàng)。二CAN總線(xiàn)數(shù)據(jù)分析常用軟件介紹模塊三、CAN總線(xiàn)數(shù)據(jù)分析技術(shù)還可以點(diǎn)擊“高級(jí)操作”標(biāo)簽進(jìn)入高級(jí)操作頁(yè)面,在此頁(yè)面可以設(shè)置每次發(fā)送多個(gè)不同的CAN幀(最多可設(shè)置100幀)和每幀之間間隔、每批之間間隔,如圖3-17所示。二CAN總線(xiàn)數(shù)據(jù)分析常用軟件介紹6.接收時(shí)間標(biāo)識(shí)“接收時(shí)間標(biāo)識(shí)”按鈕下可以選擇原始值和實(shí)際時(shí)間,如圖3-18所示。模塊三、CAN總線(xiàn)數(shù)據(jù)分析技術(shù)8.實(shí)時(shí)保存與停止保存當(dāng)需要長(zhǎng)時(shí)間記錄報(bào)文時(shí),需要使用實(shí)時(shí)保存功能,當(dāng)軟件緩沖區(qū)記錄滿(mǎn)之后,轉(zhuǎn)存到硬盤(pán)中的文件(CSV格式),軟件緩沖區(qū)清空。報(bào)文文件名可以自動(dòng)依次編號(hào),需要在啟動(dòng)之前使用此功能,注意保存位置不能指定在C盤(pán),否則可能導(dǎo)致無(wú)法保存,點(diǎn)擊停止保存時(shí),則不進(jìn)行轉(zhuǎn)存。二CAN總線(xiàn)數(shù)據(jù)分析常用軟件介紹(1)原始值:CAN卡接收到幀時(shí)的板卡時(shí)間,單位為0.1ms,板卡上電后開(kāi)始計(jì)時(shí),僅有智能CAN卡才有時(shí)間標(biāo)識(shí)。(2)實(shí)際時(shí)間(s):以電腦的時(shí)間為準(zhǔn)進(jìn)行記錄,單位為s。7.DBC解碼與按ID分類(lèi)顯示點(diǎn)擊“DBC”后,打開(kāi)DBC界面,可以導(dǎo)入需要的DBC文件進(jìn)行幀解碼(解碼顯示在界面下方,默認(rèn)自帶J1939解碼),或者使用此界面對(duì)CAN幀進(jìn)行按ID分類(lèi)的顯示,即“ID固定,數(shù)據(jù)變化”,有變化的數(shù)據(jù)段會(huì)標(biāo)紅,如圖3-19所示。模塊三、CAN總線(xiàn)數(shù)據(jù)分析技術(shù)三CAN總線(xiàn)數(shù)據(jù)故障分析技術(shù)CAN總線(xiàn)是當(dāng)前應(yīng)用最廣泛的現(xiàn)場(chǎng)總線(xiàn)之一,但其復(fù)雜的故障排查經(jīng)常困擾到應(yīng)用工程師CAN總線(xiàn)故障的原因多種多樣,如節(jié)點(diǎn)發(fā)送周期異常、節(jié)點(diǎn)掉線(xiàn)甚至整條總線(xiàn)被拖垮。一個(gè)故障節(jié)點(diǎn)或者隱患節(jié)點(diǎn)往往會(huì)危害到整個(gè)產(chǎn)品的安全,新能源車(chē)的控制總線(xiàn)中,故障節(jié)點(diǎn)導(dǎo)致儀表盤(pán)數(shù)據(jù)更新滯后、顯示錯(cuò)誤,會(huì)導(dǎo)致駕駛員判斷錯(cuò)誤引發(fā)道路安全事故??偩€(xiàn)故障案例如圖3-20所示。模塊三、CAN總線(xiàn)數(shù)據(jù)分析技術(shù)三CAN總線(xiàn)數(shù)據(jù)故障分析技術(shù)1.線(xiàn)路和模塊的基本檢查(1)線(xiàn)路的基本檢查?線(xiàn)路的基本檢查分為對(duì)輸入線(xiàn)路的檢查和對(duì)輸出線(xiàn)路的檢查。①對(duì)輸入線(xiàn)路的檢查:首先,要找到輸入的管腳(各種車(chē)型的管腳定義不同);然后將輸入的管腳與模塊斷開(kāi);最后對(duì)線(xiàn)路是否有信號(hào)輸入進(jìn)行檢查。②對(duì)輸出線(xiàn)路的檢查:首先,確定輸出的線(xiàn)路是否斷線(xiàn)或搭鐵,將管腳與模塊斷開(kāi)后測(cè)量,然后是測(cè)量線(xiàn)路是否有輸出;最后將模塊和管腳連接后檢查。(2)模塊的基本檢查。模塊的基本檢查包括對(duì)電源線(xiàn)、地線(xiàn)、喚醒線(xiàn)、CAN總線(xiàn)的檢查。①電源線(xiàn)的檢查:模塊上一般有4根左右的電源線(xiàn),在模塊正常工作時(shí),每個(gè)電源都應(yīng)該有24V的電壓。②地線(xiàn)的檢查:模塊上一般都有2~3根地線(xiàn),在模塊工作時(shí),這些地線(xiàn)都要和全車(chē)的地線(xiàn)接觸良好。③喚醒線(xiàn)的檢查:每個(gè)模塊都要有1根喚醒線(xiàn),在模塊工作時(shí)有24V的電壓。④CAN總線(xiàn)的檢查:CAN傳輸有兩根信號(hào)線(xiàn),在工作時(shí)都是2.4V左右的電壓,2.CAN總線(xiàn)故障原因CAN總線(xiàn)系統(tǒng)中擁有1個(gè)CAN控制器、1個(gè)信息收發(fā)器、2個(gè)數(shù)據(jù)傳輸終端及2條數(shù)據(jù)傳輸總線(xiàn),除了數(shù)據(jù)總線(xiàn)外,其他元件都置于各控制單元的內(nèi)部,分析CAN總線(xiàn)系統(tǒng)產(chǎn)生故障的原因一般有以下三種?。(1)電源系統(tǒng)引起的故障:汽車(chē)電控模塊的工作電壓一般在10.5~15.0V,如果汽車(chē)電源系統(tǒng)提供的工作電壓不正常,就會(huì)使得某些電控模塊出現(xiàn)短暫的不正常工作,這會(huì)引起整個(gè)汽車(chē)CAN總線(xiàn)系統(tǒng)出現(xiàn)通信不暢。模塊三、CAN總線(xiàn)數(shù)據(jù)分析技術(shù)三CAN總線(xiàn)數(shù)據(jù)故障分析技術(shù)(2)CAN總線(xiàn)系統(tǒng)的鏈路故障:當(dāng)出現(xiàn)通信線(xiàn)路的短路、斷路或線(xiàn)路物理性質(zhì)變化引起通信信號(hào)衰減或失真時(shí),都會(huì)導(dǎo)致多個(gè)電控單元工作不正常,使CAN總線(xiàn)系統(tǒng)無(wú)法工作。(3)CAN總線(xiàn)系統(tǒng)的節(jié)點(diǎn)故障:節(jié)點(diǎn)是汽車(chē)CAN總線(xiàn)系統(tǒng)中的電控模塊,因此節(jié)點(diǎn)故障就是電控模塊的故障。它包括:軟件故障,即傳輸協(xié)議或軟件程序有缺陷或沖突,從而使汽車(chē)CAN總線(xiàn)系統(tǒng)通信出現(xiàn)混亂或無(wú)法工作,這種故障一般會(huì)成批出現(xiàn);硬件故,一般是電控模塊芯片或集成電路故障,造成汽車(chē)CAN總線(xiàn)系統(tǒng)無(wú)法正常工作。3.CAN總線(xiàn)系統(tǒng)的檢測(cè)1)終端電阻值測(cè)量終端電阻測(cè)量步驟如下:(1)將蓄電池正、負(fù)極接線(xiàn)柱上的導(dǎo)線(xiàn)(電纜)拆下。(2)等待大約5min,直到所有的電容器都充分放電。(3)使用萬(wàn)用表,連接測(cè)量導(dǎo)線(xiàn),測(cè)量終端電阻的總阻值并做好記錄。(4)將一個(gè)帶有終端電阻電控單元(如發(fā)動(dòng)機(jī)電控單元)的線(xiàn)束插頭拔下來(lái),觀察終端電阻的總阻值是否發(fā)生變化。(5)將第一個(gè)電控單元(帶有終端電阻,如發(fā)動(dòng)機(jī)電控單元)的線(xiàn)束插頭連接好,再將第二個(gè)電控單元(帶有終端電阻,如ABS電控單元)的線(xiàn)束插頭拔下來(lái),觀察終端電阻的總阻值是否發(fā)生變化。模塊三、CAN總線(xiàn)數(shù)據(jù)分析技術(shù)三CAN總線(xiàn)數(shù)據(jù)故障分析技術(shù)(6)分析測(cè)量結(jié)果。終端電阻測(cè)量結(jié)果分析:當(dāng)帶有終端電阻的兩個(gè)控制單元并聯(lián)時(shí),單獨(dú)測(cè)量一個(gè)終端電阻大約為120Ω,總阻值約為60Ω時(shí),據(jù)此可以判斷終端電阻正常,但是總的電阻不一定就是60Ω,其相應(yīng)阻值依賴(lài)于總線(xiàn)的結(jié)構(gòu)。因此,我們可以在測(cè)量總阻值時(shí),通過(guò)將一個(gè)帶有終端電阻的控制單元插頭拔下,觀察總阻值是否發(fā)生變化來(lái)判斷故障。當(dāng)拔下一個(gè)帶有終端電阻的控制單元插頭后測(cè)量的阻值沒(méi)有發(fā)生變化,則說(shuō)明系統(tǒng)中存在問(wèn)題,可能是被拔下的控制單元電阻損壞或是CAN總線(xiàn)出現(xiàn)斷路。如果在拔除電控單元后顯示阻值變?yōu)闊o(wú)窮大,那么,或者是未被拔除的電控電源電阻損壞,或者是到該電控單元的CAN總線(xiàn)導(dǎo)線(xiàn)出現(xiàn)斷路故障。2)電壓的測(cè)量測(cè)量CAN-Low或CAN-High的對(duì)地電壓。以寶馬5系轎車(chē)CAN總線(xiàn)系統(tǒng)為例:(1)PT-CAN的CAN-Low對(duì)地電壓大約為2.4V,CAN-High對(duì)地電壓大約為2.6V;(2)K-CAN的CAN-Low對(duì)地電壓大約為4.8V,CAN-High對(duì)地電壓大約為0.2V。注意:上述電壓數(shù)值根據(jù)總線(xiàn)負(fù)載變化可有約100mV的偏差。3)CAN總線(xiàn)系統(tǒng)的波形測(cè)量CAN總線(xiàn)系統(tǒng)正常波形是CAN-High和CAN-Low電壓相等、波形相同、極性相反,通過(guò)使用博世FSA740綜合檢測(cè)儀測(cè)量波形可以輕松判斷故障。測(cè)量方法:將儀器第一通道的紅色測(cè)量端子接CAN-High線(xiàn),第二通道的紅色測(cè)量端子接CAN-Low線(xiàn),二者的黑色測(cè)量端子同時(shí)搭鐵。此時(shí),可以在同一界面下同時(shí)顯示CAN-High和CAN-Low的同步波形。模塊三、CAN總線(xiàn)數(shù)據(jù)分析技術(shù)三CAN總線(xiàn)數(shù)據(jù)故障分析技術(shù)4)波形分析(1)CAN-High對(duì)地短路:CAN-High的電壓置于0V、CAN-Low的電壓電位正常,在此故障下,變?yōu)閱尉€(xiàn)工作狀態(tài)。(2)CAN-High對(duì)正極短路:CAN-High的電壓大約為12V、CAN-Low的電壓電位正常,在此故障下,變?yōu)閱尉€(xiàn)工作狀態(tài)。(3)CAN-Low對(duì)地短路:CAN-Low的電壓置于0V、CAN-High的電壓電位正常,在此故障下,變?yōu)閱尉€(xiàn)工作狀態(tài)。(4)CAN-Low對(duì)正極短路:CAN-Low的電壓大約為12V、CAN-High的電壓電位正常,在此故障下,變?yōu)閱尉€(xiàn)工作狀態(tài)。(5)CAN-High對(duì)正極通過(guò)連接電阻短路:CAN-High線(xiàn)的隱性電壓電位拉向正極方向,正常值應(yīng)大約為0V,受連接電阻所影響,電阻越小隱性電壓電位越大,在沒(méi)有連接電阻的情況下,該電阻值位于蓄電池電壓。(6)CAN-High通過(guò)連接電阻對(duì)地短路:CAN-High的顯性電位移向搭鐵方向,正常值應(yīng)為大約4V,受連接電阻所影響,電阻越小,則顯性電壓越小,在沒(méi)有連接電阻的情況下短路,則該電壓為0V。(7)CAN-Low對(duì)正極通過(guò)連接電阻短路:CAN-Low線(xiàn)的隱性電壓電位拉向正極方向,正常值應(yīng)大約為5V,受連接電阻所影響,電阻越小則隱性電壓電位越大,在沒(méi)有連接電阻的情況下,該電阻值位于蓄電池電壓。(8)CAN-Low通過(guò)連接電阻對(duì)地短路:CAN-Low的隱性電壓電位拉向0V方向,正常值應(yīng)大約為5V,受連接電阻所影響,電阻越小則隱性電壓越小,在沒(méi)有連接電阻的情況下,該電壓值為0V。模塊三、CAN總線(xiàn)數(shù)據(jù)分析技術(shù)三CAN總線(xiàn)數(shù)據(jù)故障分析技術(shù)(9)CAN-High與CAN-Low相交:兩線(xiàn)波形呈現(xiàn)電壓相等、波形相同、極性相同。5)讀取測(cè)量數(shù)據(jù)塊使用博世FSA740綜合檢測(cè)儀或其他專(zhuān)用檢測(cè)儀讀取某控制單元數(shù)據(jù)塊,如果顯示1,表明被撿控制單元工作正常,如果顯示0,則表明被撿控制單元工作不正常,其原因可能是線(xiàn)路斷路或該控制單元損壞。模塊三、CAN總線(xiàn)數(shù)據(jù)分析技術(shù)四DBC文件的原理、制作與使用方法1.DBC文件DBC是DatabaseCan的縮寫(xiě),其代表的是CAN的數(shù)據(jù)庫(kù)文件,是VectorInformatikGm-bH公司在20世紀(jì)90年代開(kāi)發(fā)的。在這個(gè)文件中把CAN通信的信息定義得非常完整清楚,而CAN網(wǎng)絡(luò)的通信就是依據(jù)這個(gè)文件的描述進(jìn)行的,Vector數(shù)據(jù)庫(kù)文件(.abc)實(shí)際上已成為標(biāo)識(shí)CAN通信的行業(yè)標(biāo)準(zhǔn),正是因?yàn)橛辛怂趴梢允沟谜麄€(gè)CAN網(wǎng)路的節(jié)點(diǎn)控制器無(wú)差錯(cuò)地協(xié)同同步開(kāi)發(fā)。DBC文件是一個(gè)基于ASCⅡ的轉(zhuǎn)換文件,用來(lái)給CAN幀內(nèi)傳輸?shù)臄?shù)據(jù)添加標(biāo)識(shí)名稱(chēng)、縮放比例、偏移量和定義信息。對(duì)于任何給定的CANID,DBC文件能標(biāo)識(shí)CAN幀中的部分或全部數(shù)據(jù)。CAN幀中的數(shù)據(jù)可以分解為8?jìng)€(gè)單字節(jié)值、64個(gè)一位值、1個(gè)六十四位值或這些值的任意組合———DBC文件可用于標(biāo)識(shí)、縮放和補(bǔ)償所有這些值代表的數(shù)據(jù),或其中的任何一個(gè)值所表示的數(shù)據(jù)。2.創(chuàng)建DBC文件創(chuàng)建DBC文件,首先需要選擇合適的工具。本書(shū)所述的工具是Vector公司的產(chǎn)品,配合CANoe一起使用的CANdbeditor,是一款專(zhuān)門(mén)用來(lái)編輯DBC文件的軟件,可以直接在Vector的官網(wǎng)進(jìn)行下載,如圖3-21所示。模塊三、CAN總線(xiàn)數(shù)據(jù)分析技術(shù)四DBC文件的原理、制作與使用方法(2)新建一個(gè)數(shù)據(jù)庫(kù)文件。在DBC編輯界面下,點(diǎn)擊“File”選項(xiàng),然后創(chuàng)建數(shù)據(jù)庫(kù)文件,會(huì)出現(xiàn)如圖3 ̄23所示的模板選擇對(duì)話(huà)框。可以根據(jù)需要使用的環(huán)境選擇相應(yīng)的模板,例如在這里我們選擇“CANoetemplate.bdc”,進(jìn)入如圖3-24所示界面。為創(chuàng)建的數(shù)據(jù)庫(kù)文件命名,這個(gè)由操作者自己定義,只要符合命名的規(guī)則即可。創(chuàng)建好文件名稱(chēng)之后,則進(jìn)入到了編輯界面,如圖3-25所示。(3)創(chuàng)建數(shù)值表。創(chuàng)建數(shù)值表的意義是為了給后續(xù)創(chuàng)建的信號(hào)提供解釋。創(chuàng)建數(shù)值表需要在數(shù)值表的視圖中操作,通過(guò)主菜單的“View”可以將視圖切換到“valuetable”界面,打開(kāi)“valuetable”界面之后,在空白處右鍵選擇“new”即可新建,如圖3-26所示。例如這里我們定義名稱(chēng)為“running_sts_coding”,然后在“valuedescription”中做一下定義,如圖3-27所示。點(diǎn)擊確定,數(shù)值表中就會(huì)出現(xiàn)我們剛剛定義的這個(gè)數(shù)值,如圖3-28所示。(1)打開(kāi)DBC編輯軟件。在打開(kāi)的CANoe工程中,選擇菜單Tool,找到“CANbd++Editor”,如圖3-22所示,點(diǎn)擊“CANbd++Editor”后即可打開(kāi)DBC編輯界面。模塊三、CAN總線(xiàn)數(shù)據(jù)分析技術(shù)四DBC文件的原理、制作與使用方法模塊三、CAN總線(xiàn)數(shù)據(jù)分析技術(shù)四DBC文件的原理、制作與使用方法(4)創(chuàng)建Signal,關(guān)聯(lián)相應(yīng)的數(shù)值表。前面提到的創(chuàng)建數(shù)值表只是一個(gè)準(zhǔn)備,真正有意義的是信號(hào),而數(shù)值表就是為信號(hào)服務(wù)的,因?yàn)閿?shù)值表中對(duì)數(shù)值含義的解釋可以完成對(duì)信號(hào)含義的解釋。通過(guò)菜單“view”將視圖切換為“overview”,如圖3-29所示。然后在Signals的位置點(diǎn)擊右鍵,選擇新建,打開(kāi)如圖3-30所示界面。模塊三、CAN總線(xiàn)數(shù)據(jù)分析技術(shù)四DBC文件的原理、制作與使用方法本例中,我們?cè)凇癉efinition”選項(xiàng)卡下,將“Name”修改為“motor_run_sts”,將“l(fā)ength[Bit]”修改為“1”,在“ValueTable”后選項(xiàng)框內(nèi),選擇“running_sts_coding”,在“ValueTable”位置,選擇我們?cè)谏弦徊浇⒌臄?shù)值表,這樣就將信號(hào)和數(shù)值表鏈接起來(lái)了,同時(shí)也完成了信號(hào)的創(chuàng)建。點(diǎn)擊確定以后,如圖3-31所示,在視圖中新增了一個(gè)剛剛建立的信號(hào)。(5)創(chuàng)建Message。CAN通信的載體是幀,也就是消息,而不是單純一個(gè)一個(gè)的信號(hào),是把很多的信號(hào)封裝到消息幀里面以幀的格式進(jìn)行傳輸?shù)?,所以在建立了Signal之后還需要將信號(hào)封裝到幀中,那么就需要首先創(chuàng)建Message,在“overview”的界面中,Messages位置點(diǎn)擊右鍵,選擇新建,彈出如圖3-32所示界面。在Message中則需要定義清楚幀的ID是多少、幀的類(lèi)型是什么、幀的長(zhǎng)度是多少、由哪個(gè)節(jié)點(diǎn)發(fā)送、發(fā)送的周期是多少等。本例中,我們?cè)凇癉efinition”選項(xiàng)卡下,將“Name”修改為“Motor_sts”,將“ID”修改為“0x573”。然后,在“Signals”選項(xiàng)卡中關(guān)聯(lián)幀的信號(hào),本例中,我們選擇之前創(chuàng)建的信號(hào)“motor_run_sts”,如圖3-33所示。模塊三、CAN總線(xiàn)數(shù)據(jù)分析技術(shù)四DBC文件的原理、制作與使用方法(6)創(chuàng)建網(wǎng)絡(luò)節(jié)點(diǎn)?定義消息的時(shí)候需要有發(fā)送的節(jié)點(diǎn),那么這個(gè)節(jié)點(diǎn)就是CAN通信中的網(wǎng)絡(luò)節(jié)點(diǎn),這個(gè)節(jié)點(diǎn)也是需要進(jìn)行定義的,方法同樣很簡(jiǎn)單,在“overview”界面內(nèi)的Networks處,點(diǎn)擊右鍵,選擇新建,打開(kāi)如圖3-35所示界面。定義之后在Messages界面就出現(xiàn)一幀新的消息,如圖3-34所示。模塊三、CAN總線(xiàn)數(shù)據(jù)分析技術(shù)四DBC文件的原理、制作與使用方法這里可以定義節(jié)點(diǎn)名稱(chēng)和節(jié)點(diǎn)地址,這里的地址有別于前面Message中涉及的ID,這是兩個(gè)不同的概念。本例中,我們?cè)凇癉efinition”選項(xiàng)卡下,將“Name”修改為“TCU”。然后在“TxMessage”選項(xiàng)卡中設(shè)置發(fā)送的消息,因?yàn)檫@時(shí)第一個(gè)節(jié)點(diǎn)還沒(méi)有可接收的消息,所以只能設(shè)置發(fā)送的消息。本例中,之前我們創(chuàng)建了一幀消息,所以設(shè)置如圖3-36所示消息。設(shè)置完成之后,將左側(cè)的視圖展開(kāi),如圖

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論