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

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

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

基于ODX診斷測(cè)試開發(fā)(1):ODX數(shù)據(jù)庫剖析

北匯信息POLELINK ? 2022-07-27 15:28 ? 次閱讀

1.ODX簡(jiǎn)介

由ASAM組織提出的診斷數(shù)據(jù)交互格式,全稱為Open Diagnostic Data Exchange,包含ODX2.0.1和ODX2.2.0規(guī)范,兩個(gè)版本之間不兼容。ISO收錄了其中ASAM ODX2.2.0規(guī)范,即ODX規(guī)范ISO-22901,主要用于描述整車以及ECU的診斷數(shù)據(jù),方便供應(yīng)商與OEM、產(chǎn)品開發(fā)與售后間的數(shù)據(jù)交互。ODX使用統(tǒng)一建模語言(UML)圖描述,數(shù)據(jù)交互格式使用可擴(kuò)展標(biāo)記語言(XML)存儲(chǔ)記錄數(shù)據(jù)。便于承載從設(shè)計(jì)、開發(fā)、測(cè)試、生產(chǎn)及售后維護(hù)的全流程工作。

2.ODX文件類型

ODX2.2.0(ISO-22901)將ODX文件分為如下類型:

  • odx-c/-cs:通訊參數(shù),如會(huì)話層、傳輸層時(shí)間參數(shù)以及邏輯地址等通訊相關(guān)信息
  • odx-d:ECU診斷層規(guī)范(包含ECU所有診斷服務(wù)以及診斷使用的數(shù)據(jù))
  • odx-v:車輛信息(-v文件可以包含整車所有控制器拓?fù)浣Y(jié)構(gòu),診斷儀可以通過logic link選擇需要診斷的ECU)
  • odx-e:ECU配置(產(chǎn)線ECU配置信息)
  • odx-f:ECU編程數(shù)據(jù)(ECU刷寫相關(guān)數(shù)據(jù),如checksum和簽名信息等)
  • odx-fd:功能字典(車輛功能信息庫,如中控鎖功能包含四個(gè)車門功能信息)
  • odx-m:多ECU功能規(guī)范(定義了同時(shí)和多個(gè)ECU進(jìn)行通訊的方法)

2.1.PDX文件

PDX文件可作為各類型ODX文件的容器,將相關(guān)ODX文件打包為PDX文件(.pdx),并且作為輸入物導(dǎo)入診斷工具。

2.2.ODX包目錄文件index.xml

ODX包目錄由一個(gè)CATALOG實(shí)例表示,它提供了存儲(chǔ)在相應(yīng)PDX包中的所有文件的列表。

元素“FILE”的內(nèi)容代表PDX中包含的文件,

元素“CATEGORY”內(nèi)容如下:

  • ODX-DATA:適用于所有ODX文件
  • ODX-JOB:適用于java-files,class-files,jar-files,dll-files
  • LIB:所有被JOB使用或?qū)氲奈募?/li>
  • PROGRAMMING-DATA:用于控制器編程的bin/hex文件

pYYBAGLg3QuAGr8GAAJT-uLYGpM105.png

2.3.車輛信息odx-v

odx-v文件主要作為診斷儀訪問ECU的入口,包含兩個(gè)重要元素:

  • Info-Component(該元素包含OEM、Vehicle-Model、Model-year、Vehicle-Type等)。
  • Vehicle-Information(該元素包含Vehicle-Connector、Physical-Vehicle-Link、Logical-Link等),診斷儀可以使用Logic-Link信息在PDX包中尋找包含目標(biāo)ECU的Base-Variant文件,然后診斷儀就可以與ECU通訊了,當(dāng)然也要確認(rèn)ECU的變體信息ECU-Variant。

pYYBAGLg3SCAYV_3AAFx_hhldvE532.png

pYYBAGLg3S2AIlxnAADauKlPwaI199.png

2.4.通信參數(shù)odx-c/odx-cs

odx-c描述應(yīng)用層、傳輸層、物理層適用的是哪版規(guī)范(如CAN總線對(duì)應(yīng)的規(guī)范分別是14229、15765、11898),其中應(yīng)用層(如P2、P2*等)、傳輸層(As、Bs、Br、Cs、Cr、STMin等)、物理層(ID等)分別對(duì)應(yīng)一個(gè)odx-cs文件。

poYBAGLg3T-AQ16DAABoyxIl2CE514.png

2.4.1.通信參數(shù)規(guī)范引用

poYBAGLg3WSAH0OEAAEswHM2mu0401.png

2.4.2.通信參數(shù)規(guī)范定義應(yīng)用層、傳輸層、物理層適用的規(guī)范

pYYBAGLg3XSALxHHAAFF7Ci_Too795.png

2.4.3.傳輸層參數(shù)定義

pYYBAGLg3YKAcgPUAAF2uueeUK0261.png

為了減少數(shù)據(jù)冗余,odx-c/cs參數(shù)為默認(rèn)值,對(duì)于ECU差異性數(shù)據(jù)可以用元素SIMPLE-VALUE對(duì)應(yīng)用的通信參數(shù)重新賦值。

poYBAGLg3Y-AEtUbAAEbYlPtbbc417.png

2.5.診斷層odx-d

odx-d文件包含控制器的所有診斷數(shù)據(jù),如服務(wù)、DTC、DID、RID、數(shù)據(jù)類型等信息,odx-d元素分類如下:

poYBAGLg3Z-ADjclAACI7Sh7CGc970.png

  • PROTOCOL:定義了某種診斷層協(xié)議(如UDS/OBD)
  • FUNCTIONAL_GROUP:定義了多個(gè)ECU共同支持的服務(wù)或數(shù)據(jù)
  • BASE-VARIANT:代表一個(gè)具體ECU,每個(gè)ECU只有一個(gè)BASE-VARIANT,它繼承PROTOCOL和FUNCTIONAL-GROUP,可以對(duì)上面兩層的診斷服務(wù)與數(shù)據(jù)進(jìn)行引用,也可以對(duì)繼承的服務(wù)和數(shù)據(jù)進(jìn)行修改
  • ECU_VARIANT:各個(gè)ECU的具體實(shí)現(xiàn),如BCM有多種配置,不同配置的BCM數(shù)據(jù)也存在差異
  • ECU-SHARED-DATA:是一個(gè)數(shù)據(jù)庫,由上述4層對(duì)其進(jìn)行引用

2.5.1.層級(jí)繼承關(guān)系

odx支持值繼承,相較于其他數(shù)據(jù)庫ODX文件更加靈活,各層級(jí)間繼承關(guān)系如下:

pYYBAGLg3bKASz9AAAC4jnrxLfU620.png

  • ECU-SHARED-DATA可被其它層繼承,但不能繼承其它層;
  • PROTOCOL可繼承ECU-SHARED-DATA;
  • FUNCTIONAL-GROUP可繼承PROTOCOL和ECU-SHARED-DATA;
  • BASE-VARIANT可繼承 FUNCTIONAL-GROUP、ECU-SHARED-DATA、PROTOCOL;
  • ECU-VARIANT可繼承ECU-SHARED-DATA、BASE-VARIANT。

2.5.2.層級(jí)繼承關(guān)系示例

pYYBAGLg3c6AGgFmAAEZ6MH_Q0w400.png

pYYBAGLg3diAX4TkAAEzhcY-fOI384.png

2.5.3.UDS請(qǐng)求報(bào)文示例

pYYBAGLg3emAH3UpAAETT22CixU363.png

引用“DLC.UDS.ESD.Generic_UDS_Services.RQ.Req_Tester_Present”。

pYYBAGLg3fmAKPHGAAE50DC99P4997.png

2.5.4.UDS肯定應(yīng)答報(bào)文示例

pYYBAGLg3haAXwzfAAEGjVqtSSs330.png

引用“DLC.UDS.ESD.Generic_UDS_Services.PR.Pos_Resp_Tester_Present”。

pYYBAGLg3puAaEI6AAFIUuZbfVg073.png

2.5.5.UDS否定應(yīng)答示例

poYBAGLg3q6AY5L9AAErcp5JRhs189.png

引用“DLC.UDS.ESD.Generic_UDS_Services.DOP.ISO_NRC_definition”。

poYBAGLg3ryAQExVAAEqDzwMDGk540.png

引用“DLC.UDS.ESD.Generic_UDS_Services.DOP.NRC_10”。

poYBAGLg3seAMvUwAADDK-FNApw023.png

3.總結(jié)

ISO-22901是標(biāo)準(zhǔn)的ODX規(guī)范,各個(gè)OEM會(huì)按照自己的需求編寫企業(yè)級(jí)的AGL(Authoring Guide Line)文件,用于定義ODX文件結(jié)構(gòu),便于診斷數(shù)據(jù)工程師開發(fā)、維護(hù)ODX文件,所以AGL文件對(duì)ODX數(shù)據(jù)解析起著指導(dǎo)性作用。

北匯信息專注于汽車電子測(cè)試、與眾多OEM合作,在總線網(wǎng)絡(luò)診斷測(cè)試開發(fā)相關(guān)領(lǐng)域積累了豐富的經(jīng)驗(yàn)。本篇文章簡(jiǎn)單介紹了ODX數(shù)據(jù)結(jié)構(gòu),ODX協(xié)議規(guī)則還有很多,限于篇幅,不做一一介紹了,下篇系列文章將分享為了實(shí)現(xiàn)診斷相關(guān)的測(cè)試,ODX數(shù)據(jù)解析的過程和方法,敬請(qǐng)持續(xù)關(guān)注。

參考文獻(xiàn)

[1]ISO 22901-1

聲明:本文內(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)投訴
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    數(shù)據(jù)庫是哪種數(shù)據(jù)庫類型?

    數(shù)據(jù)庫是一種部署在虛擬計(jì)算環(huán)境中的數(shù)據(jù)庫,它融合了云計(jì)算的彈性和可擴(kuò)展性,為用戶提供高效、靈活的數(shù)據(jù)庫服務(wù)。云數(shù)據(jù)庫主要分為兩大類:關(guān)系型數(shù)據(jù)庫
    的頭像 發(fā)表于 01-07 10:22 ?77次閱讀

    ODX診斷數(shù)據(jù)庫轉(zhuǎn)換工具 - DDC

    INTEWORK-DDC (Diagnostic Database Convertor) 是將診斷調(diào)查問卷轉(zhuǎn)換為標(biāo)準(zhǔn)ODX(2.2.0)數(shù)據(jù)庫的工具。DDC工具可以將易于溝通交流的Excel
    的頭像 發(fā)表于 12-31 11:22 ?98次閱讀
    <b class='flag-5'>ODX</b><b class='flag-5'>診斷</b><b class='flag-5'>數(shù)據(jù)庫</b>轉(zhuǎn)換工具 - DDC

    基于ODX的工程診斷儀 - DST.Tester

    INTEWORK-DST(Tester Option,以下簡(jiǎn)稱DST.Tester)是經(jīng)緯恒潤(rùn)自主研發(fā)的工程診斷儀,適用于新車型和ECU的診斷和刷寫。DST.Tester不僅支持多種ISO協(xié)議,也可以按照客戶需求開發(fā)刷寫流程,滿
    的頭像 發(fā)表于 12-30 17:00 ?110次閱讀
    基于<b class='flag-5'>ODX</b>的工程<b class='flag-5'>診斷</b>儀 - DST.Tester

    數(shù)據(jù)庫數(shù)據(jù)恢復(fù)—Mysql數(shù)據(jù)庫表記錄丟失的數(shù)據(jù)恢復(fù)流程

    Mysql數(shù)據(jù)庫故障: Mysql數(shù)據(jù)庫表記錄丟失。 Mysql數(shù)據(jù)庫故障表現(xiàn): 1、Mysql數(shù)據(jù)庫表中無任何
    的頭像 發(fā)表于 12-16 11:05 ?179次閱讀
    <b class='flag-5'>數(shù)據(jù)庫</b><b class='flag-5'>數(shù)據(jù)</b>恢復(fù)—Mysql<b class='flag-5'>數(shù)據(jù)庫</b>表記錄丟失的<b class='flag-5'>數(shù)據(jù)</b>恢復(fù)流程

    數(shù)據(jù)庫數(shù)據(jù)恢復(fù)—MYSQL數(shù)據(jù)庫ibdata1文件損壞的數(shù)據(jù)恢復(fù)案例

    mysql數(shù)據(jù)庫故障: mysql數(shù)據(jù)庫文件ibdata1、MYI、MYD損壞。 故障表現(xiàn):1、數(shù)據(jù)庫無法進(jìn)行查詢等操作;2、使用my
    的頭像 發(fā)表于 12-09 11:05 ?179次閱讀

    數(shù)據(jù)庫數(shù)據(jù)恢復(fù)—通過拼接數(shù)據(jù)庫碎片恢復(fù)SQLserver數(shù)據(jù)庫

    一個(gè)運(yùn)行在存儲(chǔ)上的SQLServer數(shù)據(jù)庫,有1000多個(gè)文件,大小幾十TB。數(shù)據(jù)庫每10天生成一個(gè)NDF文件,每個(gè)NDF幾百GB大小。數(shù)據(jù)庫包含兩個(gè)LDF文件。 存儲(chǔ)損壞,數(shù)據(jù)庫
    的頭像 發(fā)表于 10-31 13:21 ?265次閱讀
    <b class='flag-5'>數(shù)據(jù)庫</b><b class='flag-5'>數(shù)據(jù)</b>恢復(fù)—通過拼接<b class='flag-5'>數(shù)據(jù)庫</b>碎片恢復(fù)SQLserver<b class='flag-5'>數(shù)據(jù)庫</b>

    在嵌入式開發(fā)領(lǐng)域,有哪些好用的國(guó)產(chǎn)工具?

    商:經(jīng)緯恒潤(rùn) 功能:將Excel格式的診斷調(diào)查問卷轉(zhuǎn)換為標(biāo)準(zhǔn)ODX格式文件,生成的ODX文件兼容市面上主流的診斷、測(cè)試開發(fā)商的軟件產(chǎn)品。 特
    的頭像 發(fā)表于 10-23 09:21 ?229次閱讀

    數(shù)據(jù)庫數(shù)據(jù)恢復(fù)—SQL Server數(shù)據(jù)庫出現(xiàn)823錯(cuò)誤的數(shù)據(jù)恢復(fù)案例

    SQL Server數(shù)據(jù)庫故障: SQL Server附加數(shù)據(jù)庫出現(xiàn)錯(cuò)誤823,附加數(shù)據(jù)庫失敗。數(shù)據(jù)庫沒有備份,無法通過備份恢復(fù)數(shù)據(jù)庫。
    的頭像 發(fā)表于 09-20 11:46 ?372次閱讀
    <b class='flag-5'>數(shù)據(jù)庫</b><b class='flag-5'>數(shù)據(jù)</b>恢復(fù)—SQL Server<b class='flag-5'>數(shù)據(jù)庫</b>出現(xiàn)823錯(cuò)誤的<b class='flag-5'>數(shù)據(jù)</b>恢復(fù)案例

    恒訊科技分析:sql數(shù)據(jù)庫怎么用?

    SQL數(shù)據(jù)庫的使用通常包括以下幾個(gè)基本步驟: 1、選擇數(shù)據(jù)庫系統(tǒng): 選擇適合您需求的SQL數(shù)據(jù)庫系統(tǒng),如MySQL、PostgreSQL、Microsoft SQL Server、SQ
    的頭像 發(fā)表于 07-15 14:40 ?375次閱讀

    HarmonyOS開發(fā)案例:【搭建關(guān)系型數(shù)據(jù)庫】(4)

    本節(jié)將介紹如何調(diào)用關(guān)系型數(shù)據(jù)庫接口在本地搭建數(shù)據(jù)庫,并讀寫相應(yīng)的用戶數(shù)據(jù)。
    的頭像 發(fā)表于 05-11 10:27 ?918次閱讀
    HarmonyOS<b class='flag-5'>開發(fā)</b>案例:【搭建關(guān)系型<b class='flag-5'>數(shù)據(jù)庫</b>】(4)

    數(shù)據(jù)庫數(shù)據(jù)恢復(fù)—raid5陣列上層Sql Server數(shù)據(jù)庫數(shù)據(jù)恢復(fù)案例

    數(shù)據(jù)庫數(shù)據(jù)恢復(fù)環(huán)境: 5塊硬盤組建一組RAID5陣列,劃分LUN供windows系統(tǒng)服務(wù)器使用。windows系統(tǒng)服務(wù)器內(nèi)運(yùn)行了Sql Server數(shù)據(jù)庫,存儲(chǔ)空間在操作系統(tǒng)層面劃分了三個(gè)邏輯分區(qū)
    的頭像 發(fā)表于 05-08 11:43 ?524次閱讀
    <b class='flag-5'>數(shù)據(jù)庫</b><b class='flag-5'>數(shù)據(jù)</b>恢復(fù)—raid5陣列上層Sql Server<b class='flag-5'>數(shù)據(jù)庫</b><b class='flag-5'>數(shù)據(jù)</b>恢復(fù)案例

    如何從0到1設(shè)計(jì)診斷系統(tǒng)

    診斷系統(tǒng)設(shè)計(jì)主要涵蓋了診斷方案設(shè)計(jì)、診斷需求定義和診斷數(shù)據(jù)庫開發(fā)。本文會(huì)逐一介紹這些環(huán)節(jié),以便更
    的頭像 發(fā)表于 04-26 17:59 ?1219次閱讀
    如何從0到<b class='flag-5'>1</b>設(shè)計(jì)<b class='flag-5'>診斷</b>系統(tǒng)

    ?通過Modbus讀寫數(shù)據(jù)庫中的數(shù)據(jù)

    用Modbus poll測(cè)試了,以下是智能網(wǎng)關(guān)的網(wǎng)絡(luò)參數(shù)和測(cè)試截圖: 通過智能網(wǎng)關(guān)的串口同樣可以讀寫數(shù)據(jù)庫。IGT-SER系列智能網(wǎng)關(guān)也支持作為Mobus主站,讀取Modbus從站/服務(wù)端的
    發(fā)表于 03-14 13:44

    數(shù)據(jù)庫數(shù)據(jù)恢復(fù)】Oracle數(shù)據(jù)庫ASM實(shí)例無法掛載的數(shù)據(jù)恢復(fù)案例

    oracle數(shù)據(jù)庫ASM磁盤組掉線,ASM實(shí)例不能掛載。數(shù)據(jù)庫管理員嘗試修復(fù)數(shù)據(jù)庫,但是沒有成功。
    的頭像 發(fā)表于 02-01 17:39 ?537次閱讀
    【<b class='flag-5'>數(shù)據(jù)庫</b><b class='flag-5'>數(shù)據(jù)</b>恢復(fù)】Oracle<b class='flag-5'>數(shù)據(jù)庫</b>ASM實(shí)例無法掛載的<b class='flag-5'>數(shù)據(jù)</b>恢復(fù)案例

    IZYTRONIQ測(cè)試軟件介紹——管理測(cè)試設(shè)備數(shù)據(jù)庫

    一款完整的用于管理和記錄測(cè)試過程的數(shù)據(jù)庫軟件IZYTRONIQ
    的頭像 發(fā)表于 01-11 11:11 ?418次閱讀
    IZYTRONIQ<b class='flag-5'>測(cè)試</b>軟件介紹——管理<b class='flag-5'>測(cè)試</b>設(shè)備<b class='flag-5'>數(shù)據(jù)庫</b>