0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

車載ECU嵌入式設(shè)備的診斷測(cè)試 - 服務(wù)

上海控安 ? 來(lái)源:上??匕? ? 作者:上海控安 ? 2022-09-28 10:06 ? 次閱讀

作者 |李偉 上??匕舶踩珳y(cè)評(píng)中心安全測(cè)評(píng)部總監(jiān)

來(lái)源 |鑒源實(shí)驗(yàn)室

引言:前兩篇文章(汽車電子架構(gòu)和CAN網(wǎng)絡(luò)基礎(chǔ),車載ECU嵌入式軟件的測(cè)試入門)我們講了汽車電子架構(gòu)和網(wǎng)絡(luò)歷史,分享汽車測(cè)試中的小知識(shí),本章節(jié)我們將從診斷服務(wù)測(cè)試開始給大家細(xì)說(shuō)測(cè)試相關(guān)知識(shí)。我們一直強(qiáng)調(diào),CAN網(wǎng)絡(luò)通信是ECU中非常重要的基本功能,診斷服務(wù)就是基于CAN網(wǎng)絡(luò)實(shí)現(xiàn)的非常重要的基本功能。在實(shí)際項(xiàng)目中,ECU的CAN網(wǎng)絡(luò)測(cè)試內(nèi)容項(xiàng)比較多,供應(yīng)商和主機(jī)廠測(cè)試,跟網(wǎng)絡(luò)底層相關(guān)的CAN協(xié)議一致性測(cè)試之類,比如電平、通信速率、信號(hào)的各種精度等,還包括EMC測(cè)試,環(huán)境可靠性測(cè)試等等。我們這里主要講上層的相關(guān)應(yīng)用測(cè)試。

01

診斷相關(guān)基礎(chǔ)小知識(shí)

1.1 診斷地址

ECU的診斷地址,跟以太網(wǎng)設(shè)備間通訊地址設(shè)置不一樣。在以太網(wǎng)中每個(gè)設(shè)備都有一個(gè)唯一標(biāo)識(shí)符MAC地址。設(shè)備間的單播通訊如下圖所示:

pYYBAGMzrCSAR2pqAABNQQVgOm4446.png

圖 1

以太網(wǎng)絡(luò)的端口地址直接對(duì)應(yīng)物理設(shè)備,設(shè)備出廠時(shí)Mac地址直接燒錄在網(wǎng)卡的E2PROM中,從以太網(wǎng)地址配置上也可以看出兩者間的對(duì)應(yīng)關(guān)系。ECU的診斷地址是不一樣的,不存在類似以太網(wǎng)那樣的通訊端口,沒有像以太網(wǎng)那樣地址跟設(shè)備端口的綁定關(guān)系,廠商也不會(huì)有一個(gè)唯一地址在出廠時(shí)燒錄進(jìn)CAN處理芯片中,我們可以把它理解為邏輯上的地址。ECU接收到診斷請(qǐng)求時(shí),檢查數(shù)據(jù)幀的接收地址是否跟本ECU配置的診斷地址一致,如果一致則接收并處理,不一致就丟棄。發(fā)送數(shù)據(jù)時(shí)則在數(shù)據(jù)幀對(duì)應(yīng)位置寫入配置好的本ECU診斷通訊響應(yīng)CANID。通過下圖我們可以直觀的看到診斷通訊關(guān)系。

poYBAGMzrCSATjw_AABMi23zdAI392.png

圖 2

1.2物理尋址和功能尋址

在1.1章節(jié)中我們通過以太網(wǎng)的設(shè)備間單播通訊來(lái)類比解釋了CAN網(wǎng)絡(luò)兩個(gè)ECU間的一般通訊。我們知道以太網(wǎng)有單播、組播、和廣播通訊,對(duì)應(yīng)CAN網(wǎng)絡(luò)有物理尋址(Physical Address)和功能尋址(FunctionalAddress)。

我們通過一個(gè)生活中的例子來(lái)說(shuō)明物理尋址和功能尋址的區(qū)別。比如我們?cè)诮y(tǒng)計(jì)辦公室員工的核酸檢測(cè)情況時(shí),統(tǒng)計(jì)人員分別找到每個(gè)員工進(jìn)行詢問,這種方式就類似物理尋址,是一對(duì)一的通訊;統(tǒng)計(jì)人員在辦公室吼一嗓子“大家核酸都做過了么,分別私下跟我說(shuō)下”,然后每個(gè)員工單獨(dú)回復(fù)統(tǒng)計(jì)員,這種一對(duì)多的詢問就類似功能尋址。

通過上述例子,我們可以知道ECU間點(diǎn)對(duì)點(diǎn)通訊是物理尋址實(shí)現(xiàn),一對(duì)多發(fā)出請(qǐng)求是通過功能尋址實(shí)現(xiàn)。這里我們強(qiáng)調(diào)下即使請(qǐng)求報(bào)文是功能尋址,響應(yīng)端發(fā)送回復(fù)報(bào)文時(shí)依然是使用物理尋址來(lái)進(jìn)行答復(fù)(不是功能尋址答復(fù))。在實(shí)際項(xiàng)目中很多ECU的功能尋址地址通常都是0x7DF,具體項(xiàng)目中ECU地址是多少需要查閱項(xiàng)目對(duì)應(yīng)的診斷規(guī)范文檔。

通過上面兩個(gè)章節(jié)的講解,我們可以知道ECU通常情況下會(huì)有3個(gè)地址,分別對(duì)應(yīng)物理尋址的發(fā)和收,以及功能地址。

我們要注意的是CAN網(wǎng)絡(luò)是總線型網(wǎng)絡(luò),采用的是CSMA/CA機(jī)制。ECU間的物理尋址和功能尋址的通訊報(bào)文在物理層面上其實(shí)都是以廣播的形式存在的,所有廣播域內(nèi)的ECU均能收到該通訊報(bào)文,至于收到該廣播報(bào)文后如何處理,ECU對(duì)比報(bào)文的目的地址跟自身的物理尋址接收地址和功能尋址地址是否匹配,然后再?zèng)Q定后續(xù)操作。

02

統(tǒng)一診斷服務(wù)(UDS)

UDS的全稱為Unified Diagnostic Services,關(guān)于UDS的詳細(xì)描述和定義,大家可以查閱ISO 14229標(biāo)準(zhǔn)的系列文件來(lái)深入了解。網(wǎng)絡(luò)上能夠找到的關(guān)于UDS的文章非常多,我們這里從通俗易懂的角度給大家進(jìn)行介紹,適合測(cè)試工程師快速入門,然后在實(shí)際項(xiàng)目中有工作經(jīng)歷之后可以通過其他方式再深入了解相關(guān)知識(shí)。

之所以一直強(qiáng)調(diào)UDS功能比較重要和基礎(chǔ),是因?yàn)閁SD功能在車輛生產(chǎn)和使用過程中對(duì)很多其他功能模塊和基本操作有直接的影響。首先在車輛生產(chǎn)線下線時(shí),產(chǎn)線電檢會(huì)使用電檢儀通過UDS對(duì)多個(gè)ECU寫入很多必要的預(yù)設(shè)值信息,如寫入對(duì)應(yīng)車輛的VIN碼、零件號(hào)、物流信息等,還可以激活某些特定設(shè)置,或者鎖定一些特定狀態(tài)以防止零部件的隨意變更等等。車輛在4S店進(jìn)行維護(hù)保養(yǎng)時(shí),ECU固件的升級(jí)、故障碼的讀取和消除等等,也是通過OBD口連接使用UDS相關(guān)服務(wù)來(lái)完成的。

在上一篇文章中我們提到了,CAN網(wǎng)絡(luò)上設(shè)備間通信基本可以分為3種情況,分別是:設(shè)備周期性主動(dòng)發(fā)送一些狀態(tài)報(bào)文;某個(gè)條件發(fā)生改變并符合設(shè)定要求,從而被動(dòng)觸發(fā)型信號(hào)發(fā)送;查詢和回復(fù)型信號(hào)。這里查詢和回復(fù)型主要就是UDS功能產(chǎn)生的。

為了方便理解,我們可以不是很準(zhǔn)確地把UDS看作一個(gè)應(yīng)用層協(xié)議(實(shí)際肯定不準(zhǔn)確),因?yàn)樵陧?xiàng)目開發(fā)、測(cè)試、標(biāo)定、排錯(cuò)等過程中接觸最多的就是應(yīng)用層相關(guān)的功能。

基于查詢和回復(fù)這種問答式通信方法,在CAN網(wǎng)絡(luò)上可以實(shí)現(xiàn)很多功能,如獲取信息、寫入信息、會(huì)話控制、重啟設(shè)備、上傳下載等等。我們把每種實(shí)現(xiàn)了特殊功能的查詢和回復(fù)稱為一種服務(wù),UDS總體上有6大類,共26種不同服務(wù)。至于在具體項(xiàng)目中,網(wǎng)絡(luò)架構(gòu)工程師和系統(tǒng)設(shè)計(jì)工程師會(huì)根據(jù)實(shí)際情況對(duì)ECU支持的UDS服務(wù)種類進(jìn)行裁剪,所以一般情況下ECU支持的服務(wù)種類要少于26種,通常還會(huì)對(duì)服務(wù)的對(duì)子功能做自定義設(shè)計(jì)。

2.1 請(qǐng)求報(bào)文

請(qǐng)求報(bào)文的格式比較簡(jiǎn)單,通常由3部分組成,首先是Service ID固定長(zhǎng)度1字節(jié),Service ID直接表明了本服務(wù)支持的功能類型,就是前面我們說(shuō)的26種服務(wù)中的一種,Sub-Function是對(duì)應(yīng)的具體服務(wù)的每個(gè)子功能項(xiàng)設(shè)置,有的服務(wù)有多個(gè)子功能,也有的服務(wù)沒有子功能,所以Sub-Function項(xiàng)是可選項(xiàng),最后Parameter項(xiàng)是對(duì)應(yīng)到最詳細(xì)子功能的屬性參數(shù)配置項(xiàng),屬性參數(shù)的配置也是根據(jù)實(shí)際情況來(lái)進(jìn)行配備。

pYYBAGMzrCSAIbclAAAWM2gBWjo239.png

圖 3

通常Parameter在具體項(xiàng)目中是工程師自定義最多的對(duì)象,也有主機(jī)廠在診斷規(guī)范中會(huì)自定義子服務(wù)。

我們舉一個(gè)常見的服務(wù)來(lái)給大家說(shuō)明下,如10服務(wù)。Service ID是10,功能是用來(lái)做會(huì)話控制,子功能通常是3個(gè),分別為01、02、03,沒有parameter參數(shù),3個(gè)子功能分別代表了3種不同會(huì)話模式。在某個(gè)主機(jī)廠的診斷規(guī)范中自定了子功能04,為特殊場(chǎng)景自定義了該會(huì)話模式。綜上所述10服務(wù)的請(qǐng)求報(bào)文通常會(huì)有:10 01、10 02、10 03。

2.2 響應(yīng)報(bào)文

對(duì)應(yīng)于UDS請(qǐng)求報(bào)文,ECU通常有3種不同的響應(yīng)處理。

1)Positive Response正響應(yīng)

正響應(yīng)是ECU對(duì)接收到的請(qǐng)求給予明確的成功內(nèi)容結(jié)果返回,意味著請(qǐng)求得到成功執(zhí)行。例如請(qǐng)求是讀取車輛VIN碼,正響應(yīng)就是回答VIN是XXX。

正響應(yīng)返回的報(bào)文格式跟請(qǐng)求報(bào)文類似分為3個(gè)部分,首先是Response SID是對(duì)請(qǐng)求服務(wù)的回顯,Response SID的值為請(qǐng)求報(bào)文中SID + 0x40;其他兩部分內(nèi)容為Sub-Function和Parameter,這兩部分的內(nèi)容根據(jù)具體情況確定,在項(xiàng)目診斷規(guī)范中有明確規(guī)定。

正響應(yīng)的報(bào)文格式如下圖所示:

poYBAGMzrCSADk9sAAAW1t2uUb0640.png

圖 4

例如:請(qǐng)求10 01,正響應(yīng)為50 01;請(qǐng)求22 XX XX,正響應(yīng)為62 XX XX XX。

2)Negative Response負(fù)響應(yīng)

負(fù)響應(yīng)是ECU收到請(qǐng)求之后,無(wú)法對(duì)請(qǐng)求的內(nèi)容正確執(zhí)行,回復(fù)了失敗,并附帶了失敗的原因。

負(fù)響應(yīng)回復(fù)報(bào)文的格式同樣可以分為3個(gè)部分,首先第一個(gè)字節(jié)是0x7F,表明請(qǐng)求失敗,第二個(gè)字節(jié)為請(qǐng)求的服務(wù)ID,第三個(gè)字節(jié)為失敗原因代碼NRC。NRC代碼具體對(duì)應(yīng)的失敗原因可以查閱NRC的表格來(lái)確定,在具體的項(xiàng)目中這部分內(nèi)容可以查閱項(xiàng)目中的零部件網(wǎng)絡(luò)診斷規(guī)范,在文章中我們多次提及了該文檔,這個(gè)文檔是由車型項(xiàng)目組的網(wǎng)絡(luò)電子架構(gòu)團(tuán)隊(duì)負(fù)責(zé)整體匯總發(fā)布,零部件的產(chǎn)品系統(tǒng)設(shè)計(jì)工程師負(fù)責(zé)維護(hù)和變更,所以在實(shí)際項(xiàng)目中可以找這兩個(gè)崗位的工程師獲取。

負(fù)響應(yīng)報(bào)文格式如下圖所示:

pYYBAGMzrCSAFSDOAAARfMLaYJw253.png

圖 5

例如:請(qǐng)求10 02,負(fù)響應(yīng)7F 10 7E,7F表明該相應(yīng)失敗,對(duì)應(yīng)的失敗服務(wù)是10,失敗原因是7E,查閱NRC表知道7E的含義是“Sub-function not supported in active session”,提醒使用請(qǐng)求10 02子功能請(qǐng)求時(shí)不應(yīng)該在當(dāng)前會(huì)話模式下,當(dāng)前的會(huì)話模式不支持10 02子功能請(qǐng)求使用。

3)無(wú)響應(yīng)

無(wú)響應(yīng)的出現(xiàn)是網(wǎng)絡(luò)架構(gòu)部門為了降低CAN網(wǎng)絡(luò)上報(bào)文環(huán)境的復(fù)雜情況而做的設(shè)計(jì)。目的是不回復(fù)請(qǐng)求方正響應(yīng)數(shù)據(jù)幀,即,當(dāng)即將答復(fù)的響應(yīng)幀為正響應(yīng)時(shí),不發(fā)送響應(yīng)幀。

無(wú)響應(yīng)是通過請(qǐng)求報(bào)文中子功能的抑制肯定響應(yīng)指示位實(shí)現(xiàn)的。在某些服務(wù)的子功能中,最高的bit7位置為1時(shí)即設(shè)置為正響應(yīng)抑制,該位置為0時(shí)關(guān)閉響應(yīng)抑制。支持響應(yīng)抑制設(shè)置的服務(wù)有10、11、28、3E、85等等。

poYBAGMzrCWAJk6LAAA_aXFG3-I136.png

圖 6

例如:發(fā)送10 81,當(dāng)回復(fù)是正響應(yīng)時(shí),ECU不答復(fù);發(fā)送10 82,答復(fù)7F 10 7E,同樣是請(qǐng)求帶正響應(yīng)抑制,但是ECU執(zhí)行失敗,此時(shí)則進(jìn)行了回復(fù)。

我們之前強(qiáng)調(diào),可以把UDS視為應(yīng)用層協(xié)議,各主機(jī)廠對(duì)規(guī)范的自定義空間比較大,可以自由進(jìn)行定制化修改。我在一個(gè)項(xiàng)目中遇到工程師設(shè)計(jì)了負(fù)響應(yīng)抑制,跟本章節(jié)我們前面內(nèi)容說(shuō)的場(chǎng)景恰好相反,前面我們細(xì)說(shuō)了當(dāng)ECU響應(yīng)為正響應(yīng)時(shí)進(jìn)行抑制,只回復(fù)失敗。在一個(gè)項(xiàng)目中我遇到的是某些特定服務(wù)ECU正常發(fā)送正響應(yīng),只有負(fù)響應(yīng)被抑制處理。所以診斷規(guī)范的自定義操作空間較大,測(cè)試設(shè)計(jì)時(shí)一定要仔細(xì)查閱相關(guān)規(guī)范。

2.3通訊幀

在上一章節(jié)中我們使用了一些服務(wù)來(lái)舉例,實(shí)例中包含了的是有效的數(shù)據(jù)內(nèi)容,在CAN網(wǎng)絡(luò)上進(jìn)行UDS報(bào)文傳輸時(shí),CAN網(wǎng)絡(luò)的特性對(duì)于傳輸內(nèi)容長(zhǎng)度有一定要求,普通的CAN數(shù)據(jù)幀每幀8字節(jié)長(zhǎng)度,在這個(gè)長(zhǎng)度的報(bào)文上傳輸U(kuò)DS協(xié)議數(shù)據(jù)時(shí)肯定會(huì)受到相應(yīng)的限制,如果1幀報(bào)文長(zhǎng)度不滿足載荷需要,那就需要使用多條數(shù)據(jù)幀來(lái)信息承載。

1)單幀通訊

我們?cè)谏弦徽鹿?jié)列舉的例子內(nèi)容長(zhǎng)度均比較短,7個(gè)字節(jié)的單個(gè)數(shù)據(jù)幀足夠使用,這樣的數(shù)據(jù)幀為單幀。

我們通過工具來(lái)查看網(wǎng)絡(luò)上服務(wù)問答真實(shí)數(shù)據(jù)報(bào)文形式,如下所示:

pYYBAGMzrCWAG9M9AADch6Nrwec305.png

圖 7

我們可以看到兩條報(bào)文:報(bào)文1),Tester傳輸,ECU接收ID717,數(shù)據(jù)長(zhǎng)度8字節(jié),我們使用了SID10的會(huì)話控制服務(wù),發(fā)送了報(bào)文“02 10 01”,其中首字節(jié)“02”表明本報(bào)文后面有效數(shù)據(jù)長(zhǎng)度為2字節(jié),第二字節(jié)“10”表明服務(wù)為SID10,第三字節(jié)“01”表明子功能為01,剩余4-8字節(jié)使用AA自動(dòng)補(bǔ)全。報(bào)文2) Tester接收,ECU發(fā)送ID71F,數(shù)據(jù)長(zhǎng)度8字節(jié),正響應(yīng)SID10的會(huì)話控制服務(wù),發(fā)送了報(bào)文“02 50 01”,其中首字節(jié)“02”表明本報(bào)文后面有效數(shù)據(jù)長(zhǎng)度為2字節(jié),第二字節(jié)“50”表明SID10+0x40屬于SID10服務(wù)的正響應(yīng),第三字節(jié)“01”是對(duì)應(yīng)子功能。

2)多幀通訊

當(dāng)一個(gè)數(shù)據(jù)幀7個(gè)字節(jié)不能完成一次通訊時(shí),就需要把數(shù)據(jù)拆分到多個(gè)數(shù)據(jù)幀進(jìn)行傳輸。我們同樣通過下面的實(shí)例來(lái)進(jìn)行講解。

poYBAGMzrCWAQXoDAACMxUJaM1s730.png

圖 8

我們首先看請(qǐng)求報(bào)文“03 22 F1 80”,首字節(jié)“03”表明報(bào)文后面有3字節(jié)有效數(shù)據(jù),第二字節(jié)“22”表明是SID22讀取服務(wù),22服務(wù)沒有子功能,第三、四字節(jié)是$22服務(wù)讀取的參數(shù);返回報(bào)文的首幀為“10 10 62 F1 80 56 30 2E”,第一個(gè)字節(jié)“10”表明本條回復(fù)報(bào)文是多幀的第一幀,第二字節(jié)“10”表明后繼有效數(shù)據(jù)長(zhǎng)度為0x10字節(jié),換成10進(jìn)制為16字節(jié),第三字節(jié)“62”是正響應(yīng)服務(wù)SID22+0x40,第四、五字節(jié)表明Parameter參數(shù)為F1 80,后繼的有效數(shù)據(jù)13字節(jié)的信息即為F1 80的讀取值;第三幀報(bào)文“30 00 00 00 00 00 00 00”,為多幀的流控幀,提示首個(gè)響應(yīng)報(bào)文成功發(fā)送,繼續(xù)發(fā)送剩余幀;第四幀“21 30 30 2E 30 30 46 42”首字節(jié)“21”表明是多幀的第二幀,本幀其余字節(jié)均為有效數(shù)據(jù)內(nèi)容;第五幀“22 4C 42 31 AA AA AA AA”,首字節(jié)“22”表明是多幀的第三幀,因全部多幀的有效長(zhǎng)度在第一幀中記錄為16字節(jié),所以至此第三響應(yīng)幀時(shí)有效數(shù)據(jù)內(nèi)容只有3個(gè)字節(jié),加上首字節(jié)的序號(hào)位,前4字節(jié)為有效位,剩余4字節(jié)自動(dòng)填充。

03

部分診斷服務(wù)

本章節(jié)我們對(duì)用到的一些服務(wù)做簡(jiǎn)單介紹,后續(xù)使用最頻繁的服務(wù)我們會(huì)單獨(dú)講解。

1)$3E服務(wù)

$3E服務(wù)的用處是提示ECU狀態(tài)保持,如擴(kuò)展會(huì)話的狀態(tài)在一段時(shí)間后自動(dòng)退出到默認(rèn)會(huì)話,使用3E服務(wù)可以將會(huì)話保持在擴(kuò)展會(huì)話模式下。

請(qǐng)求格式為3E 00和3E 80,其中3E 80即為正響應(yīng)抑制,不需要ECU回復(fù)。3E 00的正響應(yīng)回復(fù)報(bào)文格式為7E 00。

2)$11服務(wù)

$11服務(wù)的作用是將ECU進(jìn)行復(fù)位,最常用的有3個(gè)子服務(wù),分別是01、02、03,04、05分別是使能和禁用快速休眠,0x40-0x7E為主機(jī)廠和零部件供應(yīng)商自定義字段。

11 01硬復(fù)位ECU,即要求ECU執(zhí)行電池?cái)嚯姷皆O(shè)備上電的重啟;11 02車輛點(diǎn)火復(fù)位,即要求ECU執(zhí)行車輛整車電源從off到on狀態(tài)下的設(shè)備復(fù)位;11 03軟復(fù)位ECU,即要求ECU執(zhí)行應(yīng)用程序重啟,相當(dāng)于熱啟動(dòng)。

11服務(wù)發(fā)送請(qǐng)求報(bào)文后,不一定有響應(yīng)報(bào)文,因?yàn)镋CU執(zhí)行成功就是設(shè)備重啟,所以有主機(jī)廠要求11服務(wù)支持正響應(yīng)抑制標(biāo)識(shí),會(huì)要求發(fā)送11 81。

3)$31服務(wù)

$31Routine服務(wù)基本上是廠家定制操作最多的服務(wù),廠家可以預(yù)設(shè)值很多操作,然后通過31服務(wù)來(lái)調(diào)用執(zhí)行。比如可以讓進(jìn)行ECU狀態(tài)檢查,讓ECU通過預(yù)設(shè)算法生成特定數(shù)據(jù),然后根據(jù)這些特定數(shù)據(jù)生成狀態(tài),可以通過31服務(wù)鎖定這些狀態(tài),這個(gè)功能在主機(jī)廠鎖定車輛上配套ECU零部件時(shí)會(huì)經(jīng)常用到,這樣一旦鎖定了當(dāng)前車輛ECU,其他任何人都不能隨意更換,車主想要對(duì)這些ECU進(jìn)行更換維修只能到指定正規(guī)的4S店完成,零部件一旦隨意更換,通過31服務(wù)調(diào)用執(zhí)行生成的狀態(tài)鎖定數(shù)據(jù)跟車輛不匹配,更換的ECU根本無(wú)法正常使用。當(dāng)然這只是31服務(wù)的一個(gè)設(shè)計(jì)功能。

31服務(wù)由4部分組成,第一部分SID31;第二部分子功能,分別是01啟動(dòng)、02停止、03查詢;第三部分要調(diào)用執(zhí)行的routineID,這部分開始有主機(jī)廠自定義;第四部分可選的routine控制參數(shù),跟第三部分的routineID是對(duì)應(yīng)的,也是主機(jī)廠自定義內(nèi)容。例如:31 01 08 09,讓ECU調(diào)用執(zhí)行08 09routine,ECU執(zhí)行成功反饋71 01 08 09,執(zhí)行過程出現(xiàn)一些問題,條件不滿足會(huì)返回71 01 08 09 xx yy,其中xx yy是不滿足的條件,這里的不滿足條件指的是執(zhí)行當(dāng)前31服務(wù)時(shí)的一些ECU其他信息預(yù)置條件,如執(zhí)行當(dāng)前服務(wù)需要已經(jīng)生成了XX信息,已經(jīng)鎖定了XX狀態(tài)等,可以理解為服務(wù)的內(nèi)部執(zhí)行錯(cuò)誤。當(dāng)然如果返回7F 31 7E同樣是執(zhí)行失敗,失敗的原因可以查找NRC,NCR中的錯(cuò)誤我們可以把他理解為服務(wù)外部錯(cuò)誤,如執(zhí)行安全等級(jí)不正確,會(huì)話模式不正確,子功能不存在,超出范圍限制等等,NRC錯(cuò)誤跟上面的不滿足條件失敗是兩種類型。

04

UDS的測(cè)試

UDS的測(cè)試通常在收到首個(gè)軟件版本后就開始執(zhí)行了,測(cè)試的時(shí)間段主要集中在OTS造車前,OTS開閥前必須確定UDS功能正常無(wú)故障。

UDS的測(cè)試設(shè)計(jì)依據(jù)最重要的文檔就是零部件的網(wǎng)絡(luò)診斷規(guī)范,在規(guī)范中詳細(xì)定義零部件支持的所有服務(wù),以及服務(wù)的所有子功能和屬性參數(shù)。

通常UDS的功能測(cè)試設(shè)計(jì)重點(diǎn)在功能正常執(zhí)行場(chǎng)景部分,按照服務(wù)、子功能、功能屬性參數(shù)列舉所有請(qǐng)求報(bào)文,分別在不同會(huì)話模式和安全控制模式下,測(cè)試物理尋址、功能尋址的返回情況。正常測(cè)試還需要對(duì)會(huì)話返回的NRC進(jìn)行測(cè)試,這一部分內(nèi)容通常會(huì)被測(cè)試工程師遺漏,因?yàn)镹RC中有部分的測(cè)試條件難以預(yù)置。

UDS功能還需要進(jìn)行異常測(cè)試的設(shè)計(jì),這部分的測(cè)試設(shè)計(jì)通常可以跟NRC部分合并進(jìn)行。

在設(shè)計(jì)DTC故障場(chǎng)景模擬時(shí),需要特別注意電源短路的模擬,需要跟硬件工程師確認(rèn)是否對(duì)電源供電,線路板PCB靜電泄放等做保護(hù)性設(shè)計(jì),否則容易造成板卡燒壞。

雖然我們是執(zhí)行UDS的功能測(cè)試,不需要對(duì)通訊的時(shí)隙精度等進(jìn)行驗(yàn)證,報(bào)文響應(yīng)間隔時(shí)間的精度,超時(shí)時(shí)間范圍精度這些時(shí)間相關(guān)測(cè)試,通常跟信號(hào)電平等等一起在開發(fā)早期完成。但我們還是建議在測(cè)試設(shè)計(jì)上加入執(zhí)行時(shí)間監(jiān)控測(cè)試,以及報(bào)文間隔不同時(shí)隙的測(cè)試。如多幀發(fā)送或響應(yīng)時(shí),幀間不同時(shí)間間隔設(shè)置的影響;會(huì)話自動(dòng)退出的時(shí)間是否在設(shè)計(jì)要求內(nèi);$30服務(wù)不同發(fā)送時(shí)間間隔對(duì)會(huì)話保持的影響等等。這部分功能在開發(fā)初期通常比較容易出現(xiàn)問題。

審核編輯 黃昊宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 汽車電子
    +關(guān)注

    關(guān)注

    3023

    文章

    7836

    瀏覽量

    166074
  • ecu
    ecu
    +關(guān)注

    關(guān)注

    14

    文章

    877

    瀏覽量

    54368
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    ECU故障診斷工具 如何選擇合適的ECU

    數(shù)據(jù)監(jiān)控和執(zhí)行元件測(cè)試。這些功能是診斷工具的核心,能夠幫助技師識(shí)別和解決問題。 2. 兼容性 選擇ECU故障診斷工具時(shí),首先要考慮的是工具的兼容性。一個(gè)好的
    的頭像 發(fā)表于 11-05 10:23 ?148次閱讀

    什么是嵌入式?一文讀懂嵌入式主板

    在現(xiàn)代科技浪潮中,嵌入式技術(shù)已成為支撐各種智能設(shè)備和系統(tǒng)運(yùn)行的核心力量。那么,究竟什么是嵌入式?嵌入式系統(tǒng),顧名思義,是將計(jì)算機(jī)的硬件和軟件嵌入
    的頭像 發(fā)表于 10-16 10:14 ?421次閱讀

    車載診斷之法規(guī)協(xié)議 |OBDonUDS和ZEVonUDS

    提到車載診斷,大家首先想到的是UDS(UnifiedDiagnosticServices)協(xié)議。UDS可以用于ECU診斷、參數(shù)配置和刷寫等領(lǐng)域。與排放相關(guān)的
    的頭像 發(fā)表于 10-10 08:05 ?1113次閱讀
    <b class='flag-5'>車載</b><b class='flag-5'>診斷</b>之法規(guī)協(xié)議 |OBDonUDS和ZEVonUDS

    嵌入式主板是什么意思?嵌入式主板全面解析

    嵌入式主板,通常被稱為嵌入式系統(tǒng)的核心組件,是一種用于控制和數(shù)據(jù)處理的計(jì)算機(jī)硬件,其設(shè)計(jì)旨在嵌入特定設(shè)備中執(zhí)行專門任務(wù)。嵌入式主板如同是
    的頭像 發(fā)表于 09-30 10:05 ?328次閱讀

    嵌入式工控主板在智慧醫(yī)療診斷設(shè)備中的應(yīng)用

    嵌入式工控主板在智慧醫(yī)療診斷設(shè)備中的應(yīng)用廣泛且深入,其高集成度、低功耗、高性能等特點(diǎn)使得它成為現(xiàn)代醫(yī)療設(shè)備中不可或缺的一部分。以下是對(duì)嵌入式
    的頭像 發(fā)表于 07-11 10:51 ?362次閱讀
    <b class='flag-5'>嵌入式</b>工控主板在智慧醫(yī)療<b class='flag-5'>診斷</b><b class='flag-5'>設(shè)備</b>中的應(yīng)用

    嵌入式開發(fā)者的未來(lái)

    測(cè)試這些產(chǎn)品的硬件和軟件。汽車行業(yè):現(xiàn)代汽車包含大量的嵌入式系統(tǒng),例如車載娛樂系統(tǒng)、發(fā)動(dòng)機(jī)控制單元、自動(dòng)駕駛系統(tǒng)等。在這個(gè)領(lǐng)域,工程師可以從事嵌入式軟件開發(fā)、系統(tǒng)集
    的頭像 發(fā)表于 06-23 08:10 ?315次閱讀
    <b class='flag-5'>嵌入式</b>開發(fā)者的未來(lái)

    Vector推出符合ISO 26262最高安全標(biāo)準(zhǔn)的ECU嵌入式軟件

    ? Vector推出符合ISO 26262最高安全標(biāo)準(zhǔn)的ECU嵌入式軟件,遠(yuǎn)遠(yuǎn)超越市場(chǎng)常規(guī)標(biāo)準(zhǔn)。該軟件可以確??煽窟\(yùn)行,因此尤其適用于自動(dòng)駕駛和線控底盤系統(tǒng)。新軟件已應(yīng)用于Vector
    的頭像 發(fā)表于 06-03 17:21 ?700次閱讀

    嵌入式熱門發(fā)展方向有哪些?

    熱門發(fā)展方向,包括但不限于: 1.物聯(lián)網(wǎng): 隨著物聯(lián)網(wǎng)的快速發(fā)展,嵌入式系統(tǒng)在物聯(lián)網(wǎng)領(lǐng)域的應(yīng)用也越來(lái)越廣泛。嵌入式系統(tǒng)可以用于物聯(lián)網(wǎng)設(shè)備的控制、監(jiān)測(cè)和數(shù)據(jù)處理等方面。例如,在服務(wù)領(lǐng)域,
    發(fā)表于 04-11 14:17

    圓滿收官|飛凌嵌入式CACLP 2024精彩回顧

    本屆CACLP,飛凌嵌入式展示了多款嵌入式主控產(chǎn)品,這些產(chǎn)品覆蓋了體外診斷、醫(yī)學(xué)影像、生命體征監(jiān)測(cè)以及新興的5G醫(yī)療應(yīng)用等多個(gè)領(lǐng)域,充分體現(xiàn)了飛凌嵌入式在醫(yī)療
    的頭像 發(fā)表于 03-22 10:48 ?392次閱讀
    圓滿收官|飛凌<b class='flag-5'>嵌入式</b>CACLP 2024精彩回顧

    嵌入式fpga是什么意思

    嵌入式FPGA是指將FPGA技術(shù)集成到嵌入式系統(tǒng)中的一種解決方案。嵌入式系統(tǒng)是一種為特定應(yīng)用而設(shè)計(jì)的計(jì)算機(jī)系統(tǒng),它通常包括處理器、內(nèi)存、外設(shè)接口等組件,并且被嵌入到更大的
    的頭像 發(fā)表于 03-15 14:29 ?1170次閱讀

    鎧俠正式發(fā)布業(yè)界首款車載UFS 4.0嵌入式閃存

    存儲(chǔ)器解決方案的全球領(lǐng)導(dǎo)者鎧俠株式會(huì)社宣布,該公司已開始提供業(yè)界首款面向車載應(yīng)用的通用閃存(UFS)4.0版嵌入式閃存設(shè)備的樣品。
    的頭像 發(fā)表于 02-22 16:21 ?938次閱讀

    嵌入式學(xué)習(xí)步驟

    開發(fā)板上測(cè)試固件以及在實(shí)際設(shè)備上進(jìn)行測(cè)試嵌入式系統(tǒng)的多樣化發(fā)展,它將更為廣泛地應(yīng)用于各個(gè)領(lǐng)域,實(shí)現(xiàn)智能化、網(wǎng)絡(luò)化、自動(dòng)化的目標(biāo)。同時(shí),隨著人工智能和機(jī)器學(xué)習(xí)技術(shù)的發(fā)展,
    發(fā)表于 02-02 15:24

    啥是嵌入式?嵌入式都有啥?薪資如何?前景如何

    嵌入式系統(tǒng)(Embedded Systems)是一種特殊類型的計(jì)算機(jī)系統(tǒng),被嵌入到其他設(shè)備或系統(tǒng)中,用于執(zhí)行特定的任務(wù)或控制特定的功能。這些系統(tǒng)通常設(shè)計(jì)用于特定的應(yīng)用領(lǐng)域,具有特定的硬件和軟件要求
    的頭像 發(fā)表于 01-17 16:39 ?772次閱讀
    啥是<b class='flag-5'>嵌入式</b>?<b class='flag-5'>嵌入式</b>都有啥?薪資如何?前景如何

    什么是嵌入式系統(tǒng)?嵌入式系統(tǒng)的具體應(yīng)用

    嵌入式,一般是指嵌入式系統(tǒng)。用于控制、監(jiān)視或者輔助操作機(jī)器和設(shè)備的裝置。
    的頭像 發(fā)表于 12-20 13:33 ?2350次閱讀

    嵌入式開發(fā)測(cè)試秘訣

    嵌入式軟件開發(fā)過程中,花在測(cè)試和花在編碼的時(shí)間比通常在3:1左右(實(shí)際上可能更多)。這個(gè)比例會(huì)隨著工程師編程、測(cè)試水平的提高而不斷下降,但無(wú)論如何,軟件測(cè)試都是
    的頭像 發(fā)表于 11-24 16:18 ?494次閱讀