來源:電控知識搬運(yùn)工
車輛的診斷需要有Tester端和ECU端,Tester端和ECU端通過一問一答的形式進(jìn)行通信,因而Tester端和ECU端都需要遵循同樣的診斷通信協(xié)議,常用的診斷協(xié)議有ISO 14230,ISO 15031,ISO 15765,還有我們熟悉的ISO 14229就是UDS協(xié)議,在協(xié)議里面定義了診斷的請求,診斷響應(yīng)的報(bào)文格式,以及ECU怎樣處理診斷請求報(bào)文,以及診斷服務(wù)的應(yīng)用。
UDS是Unified Diagnostic Services的縮寫,在國際標(biāo)準(zhǔn)ISO 14229-1中定義,UDS標(biāo)準(zhǔn)中除了定義服務(wù)的用法,以及服務(wù)的格式以外,還定義了一些標(biāo)準(zhǔn)化的數(shù)據(jù),而到OEM要使用UDS協(xié)議時(shí),除了要使用標(biāo)準(zhǔn)定義的服務(wù)以及標(biāo)準(zhǔn)數(shù)據(jù)以外,還要依據(jù)自身的情況,定義屬于OEM的特定數(shù)據(jù),比如說,定義所要遵循的服務(wù),需要支持的DID,需要支持的DTC等這些內(nèi)容,這樣形成的符合某OEM的診斷規(guī)范才能用于ECU診斷功能的開發(fā)以及驗(yàn)證。
隨著車輛ECU的增多,車輛網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)也越來越負(fù)責(zé),比如說一輛車需要有多種總線(CAN總線,LIN,以太網(wǎng),F(xiàn)lexRay),所以在2013年釋放的UDS協(xié)議中,除了對通用診斷服務(wù)的定義以外,還增加了關(guān)于UDS在各個(gè)總線中應(yīng)用的定義。
如果我們說UDS診斷服務(wù)是實(shí)現(xiàn)人或設(shè)備與ECU控制器交流的一種語言,那么診斷服務(wù)的響應(yīng)規(guī)則就如同是語法,而SID(Service ID)定義就如同詞匯。因此了解響應(yīng)規(guī)則和SID的意義就基本能了解與ECU溝通的方法和含義。本文先來介紹一下響應(yīng)規(guī)則。
1.尋址方式
在總線上往往有著眾多ECU設(shè)備,作為診斷設(shè)備既可以與所有的ECU一起溝通,也可以指定某一個(gè)ECU單獨(dú)溝通。所以尋址方式就有功能尋址(Functionally Addressed)和物理尋址(Physically Addressed)兩種。
功能尋址
功能尋址可以廣播診斷請求Request,同時(shí)等待總線上的ECU給與響應(yīng)。
物理尋址
物理尋址指定發(fā)送特定診斷請求Request,等待指定ECU給與響應(yīng)。
因此我們的診斷報(bào)文一般會有三個(gè)CAN ID,其中DiagRequest(診斷物理請求報(bào)文)和DiagState(診斷功能請求報(bào)文)是ECU接收來自Client的報(bào)文,而DiagRespone(診斷響應(yīng)報(bào)文)是ECU反饋的報(bào)文。
例如下圖的0x7FF和0x731分別是功能請求報(bào)文和物理請求報(bào)文,而0x7B1則是診斷響應(yīng)報(bào)文。
2.請求和響應(yīng)格式
診斷請求Request
UDS服務(wù)中共定義了26個(gè)服務(wù)請求SID(Service ID),每個(gè)SID代表了一類指令。由于有些服務(wù)請求還需要表達(dá)具體的功能類型,比如是開啟還是關(guān)閉,是讀取還是修改等,因此UDS中還定義了Sub-function來補(bǔ)充SID的意圖。另外服務(wù)請求有時(shí)候還需要告知ECU具體的參數(shù)信息Parameter,例如計(jì)數(shù)信息。因此診斷請求的格式基本上是SID + Sub-function + Parameter三部分組成的,其中SID一個(gè)byte,Sub-function一個(gè)byte(其中最高位是禁止肯定響應(yīng)指示位,0則表示需要肯定響應(yīng),1則表示禁止肯定響應(yīng)),Parameter根據(jù)具體情況定義。
肯定響應(yīng)Postive Response
收到Client的診斷請求后,ECU可能反饋肯定響應(yīng)或者否定響應(yīng)??隙憫?yīng)在診斷請求的SID上+0x40表示確認(rèn)。例如診斷請求SID為0x10,則肯定響應(yīng)反饋0x50。
否定響應(yīng)Negative Response
USD診斷服務(wù)的否定響應(yīng)中包含有導(dǎo)致否定響應(yīng)原因的編碼,稱為否定響應(yīng)碼(NRC, Negative Response Code)。否定響應(yīng)碼的取值范圍為0x00 - 0xFF,被分為三組:
0x00:服務(wù)器內(nèi)部實(shí)現(xiàn)否定響應(yīng)碼判斷邏輯時(shí)使用,表示要給出肯定響應(yīng)。
0x01 – 0x7F:診斷通信相關(guān)的否定響應(yīng)碼。
0x80 – 0xFF:服務(wù)器收到診斷服務(wù)請求時(shí),由于某些條件不滿足要求而給出的否定響應(yīng)碼。給出這些否定響應(yīng)碼而不是給出0x22的目的是為了提供請求的服務(wù)不能被執(zhí)行的更詳細(xì)的原因。
當(dāng)ECU反饋為否應(yīng)響應(yīng)時(shí)格式為,NR_SI(否定響應(yīng)服務(wù)碼0x7F) + SID(否定的請求服務(wù)SID)+ NRC(否定響應(yīng)碼,表示否定的理由)。
這里列舉了常用的診斷服務(wù)所支持的否定響應(yīng)碼。如下表:
否定響應(yīng)碼定義及其取值
下表中列出了ISO14229-1:2013(E)中定義的否定響應(yīng)碼及其使用條件。
審核編輯:湯梓紅
-
控制器
+關(guān)注
關(guān)注
112文章
16461瀏覽量
179580 -
以太網(wǎng)
+關(guān)注
關(guān)注
40文章
5463瀏覽量
172800 -
CAN
+關(guān)注
關(guān)注
57文章
2772瀏覽量
464452 -
總線
+關(guān)注
關(guān)注
10文章
2904瀏覽量
88433 -
ecu
+關(guān)注
關(guān)注
14文章
892瀏覽量
54781
原文標(biāo)題:UDS診斷服務(wù)響應(yīng)規(guī)則介紹
文章出處:【微信號:智能汽車電子與軟件,微信公眾號:智能汽車電子與軟件】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
UDS在CAN和以太網(wǎng)上的實(shí)現(xiàn)方案
![<b class='flag-5'>UDS</b>在CAN和以太網(wǎng)上的實(shí)現(xiàn)方案](https://file1.elecfans.com/web2/M00/B1/82/wKgaomVlSZqANyr_AABZ2w4xSNg508.png)
TSMaster 的 CAN UDS 診斷操作指南(上)
![TSMaster 的 CAN <b class='flag-5'>UDS</b> <b class='flag-5'>診斷</b>操作指南(上)](https://file.elecfans.com/web2/M00/40/07/pYYBAGJrUk2AaMaTAAAQONQtdzo461.jpg)
TSMaster 的 CAN UDS 診斷操作指南(下)
![TSMaster 的 CAN <b class='flag-5'>UDS</b> <b class='flag-5'>診斷</b>操作指南(下)](https://file.elecfans.com/web2/M00/40/07/pYYBAGJrUk2AaMaTAAAQONQtdzo461.jpg)
Aurix TC364D是否可以通過某些UDS服務(wù)停用HSM?
UDS診斷命令備忘錄
OBDII與UDS的區(qū)別是什么
基于MM32F0140系列MCU實(shí)現(xiàn)UDS Bootloader的設(shè)計(jì)
UDS診斷協(xié)議在純電動汽車電機(jī)控制器中的應(yīng)用說明
UDS基礎(chǔ)知識介紹
![<b class='flag-5'>UDS</b>基礎(chǔ)知識<b class='flag-5'>介紹</b>](https://file1.elecfans.com/web2/M00/88/DA/wKgaomR1ZhyAOB_UAAAHFRo2N5I430.jpg)
UDS之19服務(wù)中04子服務(wù):讀取快照數(shù)據(jù)
![<b class='flag-5'>UDS</b>之19<b class='flag-5'>服務(wù)</b>中04子<b class='flag-5'>服務(wù)</b>:讀取快照數(shù)據(jù)](https://file.elecfans.com/web2/M00/52/D4/pYYBAGLNkrKAeFJaAAAjXRuImx0496.png)
淺析UDS中的肯定響應(yīng)抑制SPRMIB
![淺析<b class='flag-5'>UDS</b>中的肯定<b class='flag-5'>響應(yīng)</b>抑制SPRMIB](https://file1.elecfans.com/web2/M00/8D/F5/wKgaomTCDBGAU5MjAACZffnrbt4846.jpg)
UDS診斷服務(wù)介紹之31服務(wù)
![<b class='flag-5'>UDS</b><b class='flag-5'>診斷</b><b class='flag-5'>服務(wù)</b><b class='flag-5'>介紹</b>之31<b class='flag-5'>服務(wù)</b>](https://file1.elecfans.com/web2/M00/8F/B0/wKgZomTRrcOAOyHvAAAbgkPnfxw392.png)
汽車UDS協(xié)議棧與XCP協(xié)議棧
![汽車<b class='flag-5'>UDS</b>協(xié)議棧與XCP協(xié)議棧](https://file1.elecfans.com/web2/M00/AC/8C/wKgZomU7cf6ALDbsAARu8Soz2qI651.jpg)
UDS之29服務(wù):認(rèn)證服務(wù)
![<b class='flag-5'>UDS</b>之29<b class='flag-5'>服務(wù)</b>:認(rèn)證<b class='flag-5'>服務(wù)</b>](https://file.elecfans.com/web2/M00/52/D4/pYYBAGLNkrKAeFJaAAAjXRuImx0496.png)
評論