女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

UDS診斷服務響應規則介紹

智能汽車電子與軟件 ? 來源:電控知識搬運工 ? 2023-08-15 17:00 ? 次閱讀

來源:電控知識搬運工

車輛的診斷需要有Tester端和ECU端,Tester端和ECU端通過一問一答的形式進行通信,因而Tester端和ECU端都需要遵循同樣的診斷通信協議,常用的診斷協議有ISO 14230,ISO 15031,ISO 15765,還有我們熟悉的ISO 14229就是UDS協議,在協議里面定義了診斷的請求,診斷響應的報文格式,以及ECU怎樣處理診斷請求報文,以及診斷服務的應用。

UDS是Unified Diagnostic Services的縮寫,在國際標準ISO 14229-1中定義,UDS標準中除了定義服務的用法,以及服務的格式以外,還定義了一些標準化的數據,而到OEM要使用UDS協議時,除了要使用標準定義的服務以及標準數據以外,還要依據自身的情況,定義屬于OEM的特定數據,比如說,定義所要遵循的服務,需要支持的DID,需要支持的DTC等這些內容,這樣形成的符合某OEM的診斷規范才能用于ECU診斷功能的開發以及驗證。

隨著車輛ECU的增多,車輛網絡拓撲結構也越來越負責,比如說一輛車需要有多種總線(CAN總線,LIN,以太網,FlexRay),所以在2013年釋放的UDS協議中,除了對通用診斷服務的定義以外,還增加了關于UDS在各個總線中應用的定義。

如果我們說UDS診斷服務是實現人或設備與ECU控制器交流的一種語言,那么診斷服務的響應規則就如同是語法,而SID(Service ID)定義就如同詞匯。因此了解響應規則和SID的意義就基本能了解與ECU溝通的方法和含義。本文先來介紹一下響應規則。

1.尋址方式

在總線上往往有著眾多ECU設備,作為診斷設備既可以與所有的ECU一起溝通,也可以指定某一個ECU單獨溝通。所以尋址方式就有功能尋址(Functionally Addressed)和物理尋址(Physically Addressed)兩種。

功能尋址

功能尋址可以廣播診斷請求Request,同時等待總線上的ECU給與響應。

6414823c-3b48-11ee-9e74-dac502259ad0.jpg

物理尋址

物理尋址指定發送特定診斷請求Request,等待指定ECU給與響應。

6433f270-3b48-11ee-9e74-dac502259ad0.jpg

因此我們的診斷報文一般會有三個CAN ID,其中DiagRequest(診斷物理請求報文)和DiagState(診斷功能請求報文)是ECU接收來自Client的報文,而DiagRespone(診斷響應報文)是ECU反饋的報文。

例如下圖的0x7FF和0x731分別是功能請求報文和物理請求報文,而0x7B1則是診斷響應報文。

644f58ee-3b48-11ee-9e74-dac502259ad0.jpg

2.請求和響應格式

診斷請求Request

UDS服務中共定義了26個服務請求SID(Service ID),每個SID代表了一類指令。由于有些服務請求還需要表達具體的功能類型,比如是開啟還是關閉,是讀取還是修改等,因此UDS中還定義了Sub-function來補充SID的意圖。另外服務請求有時候還需要告知ECU具體的參數信息Parameter,例如計數信息。因此診斷請求的格式基本上是SID + Sub-function + Parameter三部分組成的,其中SID一個byte,Sub-function一個byte(其中最高位是禁止肯定響應指示位,0則表示需要肯定響應,1則表示禁止肯定響應),Parameter根據具體情況定義。

6472ef66-3b48-11ee-9e74-dac502259ad0.jpg

肯定響應Postive Response

收到Client的診斷請求后,ECU可能反饋肯定響應或者否定響應。肯定響應在診斷請求的SID上+0x40表示確認。例如診斷請求SID為0x10,則肯定響應反饋0x50。

6487ce90-3b48-11ee-9e74-dac502259ad0.jpg

否定響應Negative Response

USD診斷服務的否定響應中包含有導致否定響應原因的編碼,稱為否定響應碼(NRC, Negative Response Code)。否定響應碼的取值范圍為0x00 - 0xFF,被分為三組:

0x00:服務器內部實現否定響應碼判斷邏輯時使用,表示要給出肯定響應。

0x01 – 0x7F:診斷通信相關的否定響應碼。

0x80 – 0xFF:服務器收到診斷服務請求時,由于某些條件不滿足要求而給出的否定響應碼。給出這些否定響應碼而不是給出0x22的目的是為了提供請求的服務不能被執行的更詳細的原因。

當ECU反饋為否應響應時格式為,NR_SI(否定響應服務碼0x7F) + SID(否定的請求服務SID)+ NRC(否定響應碼,表示否定的理由)。

64a9b7da-3b48-11ee-9e74-dac502259ad0.jpg

這里列舉了常用的診斷服務所支持的否定響應碼。如下表:

64be6068-3b48-11ee-9e74-dac502259ad0.jpg

否定響應碼定義及其取值

下表中列出了ISO14229-1:2013(E)中定義的否定響應碼及其使用條件。

64eff2f4-3b48-11ee-9e74-dac502259ad0.jpg

審核編輯:湯梓紅

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 控制器
    +關注

    關注

    114

    文章

    16960

    瀏覽量

    182884
  • 以太網
    +關注

    關注

    40

    文章

    5582

    瀏覽量

    174772
  • CAN
    CAN
    +關注

    關注

    57

    文章

    2885

    瀏覽量

    466721
  • 總線
    +關注

    關注

    10

    文章

    2947

    瀏覽量

    89339
  • ecu
    ecu
    +關注

    關注

    14

    文章

    914

    瀏覽量

    55439

原文標題:UDS診斷服務響應規則介紹

文章出處:【微信號:智能汽車電子與軟件,微信公眾號:智能汽車電子與軟件】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦
    熱點推薦

    UDS在CAN和以太網上的實現方案

    JTAG是針對MCU或者SOC這種芯片的調試接口協議,而UDS更像是針對整個ECU的調試接口。UDS簡單來說是一種Client/Server的通信服務,即Tester(診斷儀)向ECU
    發表于 11-28 09:56 ?8199次閱讀
    <b class='flag-5'>UDS</b>在CAN和以太網上的實現方案

    TSMaster 的 CAN UDS 診斷操作指南(上)

    TSMaster可以少代碼甚至零代碼就可以完成診斷流程開發,診斷開發人員只需要熟悉診斷流程,就能打通研發、產線、售后整條鏈路環節。TSMaster的UDS
    的頭像 發表于 06-08 08:21 ?4298次閱讀
    TSMaster 的 CAN <b class='flag-5'>UDS</b> <b class='flag-5'>診斷</b>操作指南(上)

    TSMaster 的 CAN UDS 診斷操作指南(下)

    上期,我們主要介紹UDS診斷模塊的創建以及TSMaster基礎診斷配置。很多客戶表示意猶未盡。因此我們將繼續帶來《TSMaster的CANUDS
    的頭像 發表于 06-18 08:21 ?2899次閱讀
    TSMaster 的 CAN <b class='flag-5'>UDS</b> <b class='flag-5'>診斷</b>操作指南(下)

    Aurix TC364D是否可以通過某些UDS服務停用HSM?

    無法更新,因為 HSM 無法驗證。 我們無法連接 JTAG 或其他 UCB,因此唯一的辦法是通過診斷插座(UDS 服務)停用它。 請問誰有經驗? 非常感謝。
    發表于 05-20 07:19

    UDS診斷命令備忘錄

    UDS實踐性強,邏輯復雜,很多服務非要體驗過一次才能理解,導致包括我在內的初學者感覺晦澀難懂,不明覺厲,因此將自己的理解寫下來、整理下來,與君共勉。零、UDS診斷命令備忘錄一、簡介
    發表于 08-26 16:09

    OBDII與UDS的區別是什么

    PrimaryECU在已經開發完UDS診斷的基礎上增加OBD II診斷一、OBD II與UDS的區別?這里主要介紹
    發表于 02-23 06:55

    基于MM32F0140系列MCU實現UDS Bootloader的設計

    。例如,將CAN 總線接口連接到 MCU,并將 UDS 請求發送到 MCU。當 MCU 支持 UDS 服務時,它將根據客戶端發出的請求做出相應的響應。  為什么用 Bootloader
    發表于 09-15 16:35

    UDS診斷協議在純電動汽車電機控制器中的應用說明

      針對UDS診斷協議在電動汽車電機控制器中的應用問題,利用UDS診斷協議中各項服務的功能,同時根據電機控制器的功能需求,實現
    發表于 04-02 17:16 ?8次下載

    UDS基礎知識介紹

    UDS(Unified Diagnostic Services 統一的診斷服務)是一種通用的診斷服務標準,用于汽車電子控制單元(ECU)的
    的頭像 發表于 05-30 10:57 ?1.4w次閱讀
    <b class='flag-5'>UDS</b>基礎知識<b class='flag-5'>介紹</b>

    UDS常用診斷服務

    UDS診斷概述 UDS(Unified Diagnostic Services,統一的診斷服務診斷
    的頭像 發表于 06-12 10:36 ?2w次閱讀
    <b class='flag-5'>UDS</b>常用<b class='flag-5'>診斷</b><b class='flag-5'>服務</b>

    UDS之19服務中04子服務:讀取快照數據

    作者|小懶小編|吃不飽在車載診斷中常用的診斷協議有ISO14229等,在協議中主要定義了診斷請求、診斷響應的報文格式及ECU該如何處理
    的頭像 發表于 04-23 09:32 ?3393次閱讀
    <b class='flag-5'>UDS</b>之19<b class='flag-5'>服務</b>中04子<b class='flag-5'>服務</b>:讀取快照數據

    淺析UDS中的肯定響應抑制SPRMIB

    UDS協議中,有些診斷服務是帶有子功能的。子功能參數的取值范圍為0x00 - 0x7F。細心的同學應該發現了,子功能參數占用了一個字節,可用的數值范圍為0~0xFF。
    的頭像 發表于 07-27 14:18 ?5003次閱讀
    淺析<b class='flag-5'>UDS</b>中的肯定<b class='flag-5'>響應</b>抑制SPRMIB

    UDS診斷服務介紹之31服務

    根據ISO14119-1標準中所述,診斷服務31服務主要用于實現針對某類測試場景,非正常工況下的程序活動以及其他擦除內存等連續性操作步驟的集合。
    的頭像 發表于 08-08 10:48 ?1.5w次閱讀
    <b class='flag-5'>UDS</b><b class='flag-5'>診斷</b><b class='flag-5'>服務</b><b class='flag-5'>介紹</b>之31<b class='flag-5'>服務</b>

    汽車UDS協議棧與XCP協議棧

    UDS協議棧 汽車UDS協議棧是一種用于汽車電子控制單元(ECU)之間進行診斷和通信的標準協議。UDS(Unified Diagnostic Services)協議定義了一組
    的頭像 發表于 10-27 16:35 ?5073次閱讀
    汽車<b class='flag-5'>UDS</b>協議棧與XCP協議棧

    UDS之29服務:認證服務

    汽車工業的很多領域都有嚴格的國際標準,其中針對車載診斷的ISO14229規定了車載診斷服務的通用需求(UDS),UDS主要應用于OSI模型的
    的頭像 發表于 11-30 08:24 ?2768次閱讀
    <b class='flag-5'>UDS</b>之29<b class='flag-5'>服務</b>:認證<b class='flag-5'>服務</b>