吴忠躺衫网络科技有限公司

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

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

3天內不再提示

基于ODX診斷測試開發(fā)(2): ODX數(shù)據(jù)庫解析

北匯信息POLELINK ? 2023-02-13 13:54 ? 次閱讀

作者 | zh小編 | 吃不飽上回系列文章《基于ODX診斷測試開發(fā)(1): ODX數(shù)據(jù)庫剖析》簡單介紹了ODX文件類型及各個文件層級結構,本期我們來詳細介紹下ODX數(shù)據(jù)庫如何解析。
在展開正文之前,先說明一下,此文介紹的解析ODX數(shù)據(jù)庫的目的所在。針對涉及診斷功能類(如DTC等)測試的項目,實現(xiàn)過程大致為兩步:先通過CANoe-CAPL完成通用的診斷功能測試腳本的開發(fā);當針對具體ECU實施測試時,依據(jù)該ECU的診斷數(shù)據(jù)表,完成上述通用腳本的參數(shù)配置,可以手動配置(效率較低)或通過解析診斷數(shù)據(jù)表完成自動配置。過往項目中,診斷數(shù)據(jù)表既有Excel表格也有ODX格式。為此,北匯開發(fā)了診斷數(shù)據(jù)表的解析模塊(支持Excel和ODX格式),實現(xiàn)對測試腳本參數(shù)的自動配置,從而提高效率。

01ODX實現(xiàn)方式
ODX使用統(tǒng)一建模語言UML類圖來描述的,ODX數(shù)據(jù)又是通過XML文件格式來儲存的。我們知道類包含屬性和方法,同時具有封裝、繼承、多態(tài)等特點。那么如何將UML映射為XML呢?ISO22901-1規(guī)范做出如下規(guī)定:

規(guī) 定

將UML類映射為XML的元素; 如果UML中類的屬性有《attr》標記,則將該屬性映射為XML元素的屬性;如果UML中類的屬性無《attr》標記,則映射為XML元素的子元素。如果UML屬性有《content》標記,則映射為XML元素的內容; 如果類B通過Aggregation和composition和類A建立聯(lián)系,則類B映射為XML 類A元素的子元素; 如果類B通過association和類A產(chǎn)生關聯(lián),則在XML中通常以引用的方式實現(xiàn),如《snref》,《snpathref》或《odxlink》; UML類圖中的繼承關系,在XML中以的方式實現(xiàn);注:Aggregation、composition和association為UML類圖之間的關系,在這里不做詳細介紹。
圖1和圖2就是根據(jù)以上規(guī)則,將UML轉化為XML的例子。e7554108-a8c3-11ed-ad0d-dac502259ad0.png圖1
e76fca96-a8c3-11ed-ad0d-dac502259ad0.png圖2

02ODX繼承-值繼承
值繼承屬于ODX中的核心概念,面向對象繼承的概念用于診斷數(shù)據(jù)模型具有如下優(yōu)點:

多個ECU變體對診斷數(shù)據(jù)的復用;

對于ECU應用于多個項目的情況,可以提取公共數(shù)據(jù),ECU變體中只保留不同的數(shù)據(jù),從而減少數(shù)據(jù)冗余;

提供了數(shù)據(jù)安全和可集成性。

在上一期我們簡單介紹了下ODX繼承,為了避免數(shù)據(jù)的重復冗余,ODX將診斷層分為了5個層級。如圖3所示,其中,Protocol具有一般性,ECU Variant具有特殊性,ECU Shared Data類似一個library,可以為其他層提供數(shù)據(jù)和服務。
e79771ea-a8c3-11ed-ad0d-dac502259ad0.png圖3
我們知道,ODX中的繼承關系,在XML中以的方式實現(xiàn)的,如果繼承的數(shù)據(jù)中有部分數(shù)據(jù)不適用,可以通過去除不適用的數(shù)據(jù)。從圖4的例子中可以看出,該ECU不支持level3和level4解鎖等級。
e7af1570-a8c3-11ed-ad0d-dac502259ad0.png圖4

03ODX解析思路簡介
當我們拿到一份ODX或者PDX(PDX是將一系列ODX文件打包)時,如何開展解析工作呢?

首先找到ECU的Base Variant文件。

在Base Variant中查找繼承關系。

在Base Variant文件中查找對應的ECU變體即ECU Variant。

在ECU Variant文件中查找對應的診斷服務和數(shù)據(jù)。

e7c8da96-a8c3-11ed-ad0d-dac502259ad0.png圖5

04ODX解析實踐
根據(jù)章節(jié)3的ODX解析思路,獲得的解析結果見圖6、7和8。其中ECU Shared Data作為library,提供了通用的診斷服務,見圖6;而ECU變體BCM 88890251 A除了繼承Base Variant的通用診斷服務,還增加了多個DID、RID、IO Control,同時去除了19 15、27 05和27 06這些不適用的服務。圖8展示了ODX中包含的多種數(shù)據(jù)類型,這里不再詳細介紹。e7deaeac-a8c3-11ed-ad0d-dac502259ad0.png圖6
e819599e-a8c3-11ed-ad0d-dac502259ad0.png圖7
e83bac2e-a8c3-11ed-ad0d-dac502259ad0.png圖8

05總結
相較于傳統(tǒng)的Excel格式的診斷數(shù)據(jù)交換的不便性,ODX統(tǒng)一了診斷文件的格式,在研發(fā)、測試、生產(chǎn)和售后等部門傳遞交換時,不需要進行格式轉換,因此,很多OEM開始使用ODX。目前,北匯已經(jīng)開發(fā)基于ODX的診斷自動化測試方案,感興趣的小伙伴可以一起交流。

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

    關注

    8

    文章

    5379

    瀏覽量

    127071
  • 開發(fā)
    +關注

    關注

    0

    文章

    370

    瀏覽量

    40920
收藏 人收藏

    評論

    相關推薦

    Oracle數(shù)據(jù)庫的多功能集成開發(fā)環(huán)境

    Oracle數(shù)據(jù)庫的多功能集成開發(fā)環(huán)境 快捷菜單中的可視化對象編輯器 上下文感知的SQL代碼補全、智能格式化和重構 逐步執(zhí)行的自動調試功能 多功能數(shù)據(jù)檢索、存儲和管理 數(shù)據(jù)庫模式和表
    的頭像 發(fā)表于 01-14 13:52 ?116次閱讀
    Oracle<b class='flag-5'>數(shù)據(jù)庫</b>的多功能集成<b class='flag-5'>開發(fā)</b>環(huán)境

    MySQL數(shù)據(jù)庫的安裝

    MySQL是一個開源免費的關系型數(shù)據(jù)庫管理系統(tǒng),由瑞典MySQL AB 公司開發(fā),目前屬于 Oracle 旗下公司。 MySQL 最流行的關系型數(shù)據(jù)庫管理系統(tǒng),在 WEB 應用方面MySQL是最好
    的頭像 發(fā)表于 01-14 11:25 ?131次閱讀
    MySQL<b class='flag-5'>數(shù)據(jù)庫</b>的安裝

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    Oracle數(shù)據(jù)恢復—異常斷電后Oracle數(shù)據(jù)庫報錯的數(shù)據(jù)恢復案例

    Oracle數(shù)據(jù)庫的在線文件,需要恢復zxfg用戶的數(shù)據(jù)。 Oracle數(shù)據(jù)庫恢復方案: 檢測數(shù)據(jù)庫故障;嘗試掛起并修復數(shù)據(jù)庫
    的頭像 發(fā)表于 09-30 13:31 ?383次閱讀
    Oracle<b class='flag-5'>數(shù)據(jù)</b>恢復—異常斷電后Oracle<b class='flag-5'>數(shù)據(jù)庫</b>啟<b class='flag-5'>庫</b>報錯的<b class='flag-5'>數(shù)據(jù)</b>恢復案例

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

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

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

    2、安裝數(shù)據(jù)庫軟件: 在您的服務器或本地計算機上安裝所選的數(shù)據(jù)庫軟件。 3、配置數(shù)據(jù)庫服務器: 根據(jù)需要配置數(shù)據(jù)庫服務器設置,包括內存分
    的頭像 發(fā)表于 07-15 14:40 ?413次閱讀

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

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

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

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

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

    用Modbus poll測試了,以下是智能網(wǎng)關的網(wǎng)絡參數(shù)和測試截圖: 通過智能網(wǎng)關的串口同樣可以讀寫數(shù)據(jù)庫。IGT-SER系列智能網(wǎng)關也支持作為Mobus主站,讀取Modbus從站/服務端的
    發(fā)表于 03-14 13:44
    大发888爱好| 新全讯网3344666| 百家乐官网庄河闲的赌法| 百家乐博娱乐网赌百家乐的玩法技巧和规则| 百家乐官网闲9点| 战神娱乐城| 水果机遥控| 百家乐单机版游戏下载| 百家乐官网真人斗地主| 百家乐笑话| 百家乐官网资深| 博彩通百家乐官网概率| 御匾会百家乐的玩法技巧和规则| 百家乐官网娱乐网代理佣金| 百家乐官网真钱在线| 博彩现金开户| 大发888优惠红利代码| 百家乐对付抽水| 百家乐视频一下| 师宗县| 大发888注册网址| 水果机器| 威尼斯人娱乐城海立方| 新世百家乐的玩法技巧和规则 | 百家乐官网官网下载| 利来娱乐网| bet365百家乐| 公海百家乐的玩法技巧和规则 | 广州百家乐官网扫描分析| 百家乐论坛| 大发888娱乐城备用网址| 大发888游戏官方下| 威尼斯人娱乐骰宝| 威尼斯人娱乐城位置| 威尼斯人娱乐城 色情| 百家乐娱乐平台代理佣金| 百家乐官网庄闲桌| 百家乐官网龙虎台布作弊技巧| 百家乐官网最新打法| 大发888 漏洞| 澳门金沙|