每一輛車都有很多功能,比如智能駕駛功能、娛樂域功能。但是無論怎么發(fā)展,我們車輛傳統(tǒng)的診斷功能都是必須要有的,而且是十分重要的。那么什么是車輛診斷呢,簡(jiǎn)單來說就是在通過診斷服務(wù)一問一答的方式,獲取車輛內(nèi)部的參數(shù)信息。
車輛診斷過程:
在我們整個(gè)汽車開發(fā)、測(cè)試、生產(chǎn)、售后服務(wù)過程中,都需要用到車輛診斷功能。但是這些都是由不同公司或者不同部門完成的,那么在各個(gè)階段我們就需要統(tǒng)一診斷數(shù)據(jù)庫,去保證整個(gè)流程中診斷需求的一致性和診斷數(shù)據(jù)的復(fù)用性。診斷數(shù)據(jù)庫需要具備機(jī)器(如軟件)可讀的特性,從而使診斷自動(dòng)化測(cè)試和診斷協(xié)議棧自動(dòng)生成成為可能。診斷數(shù)據(jù)庫平臺(tái)還需要具備良好的交互性,便于不同格式的診斷數(shù)據(jù)庫的交互和轉(zhuǎn)換。
這里就給大家開一個(gè)速成班,讓大家了解Vector診斷產(chǎn)品鏈CANdelaStudio工具,是如何生成診斷數(shù)據(jù)庫文件,保持診斷規(guī)范的一致性。
一、 CANdelaStudio簡(jiǎn)介
1.CANdelaStudio診斷規(guī)范定義
如上圖所示,就是一個(gè)典型的V-L模型,從前期開發(fā)到售后階段,以ECU的診斷數(shù)據(jù)庫(對(duì)應(yīng)于ECU的診斷需求)為核心。在開發(fā)階段根據(jù)ECU診斷數(shù)據(jù)庫,進(jìn)行ECU診斷協(xié)議棧的實(shí)現(xiàn)。測(cè)試階段根據(jù)ECU診斷數(shù)據(jù)庫,生成診斷測(cè)試規(guī)范和測(cè)試用例。生產(chǎn)階段,根據(jù)ECU診斷數(shù)據(jù)庫,開發(fā)、應(yīng)用參數(shù)化的EOL設(shè)備。售后階段,根據(jù)ECU診斷數(shù)據(jù)庫,開發(fā)、應(yīng)用參數(shù)化的診斷儀。不同階段,使用的診斷數(shù)據(jù)庫格式可能不一樣,但是所有的診斷數(shù)據(jù)庫都源于同一個(gè)數(shù)據(jù)源。基于機(jī)器可讀的診斷數(shù)據(jù)庫,實(shí)現(xiàn)診斷在開發(fā)、測(cè)試、生產(chǎn)和售后階段的需求一致性、數(shù)據(jù)復(fù)用性和診斷設(shè)備參數(shù)化。
CANdelaStudio用于定義ECU的診斷需求,支持用戶創(chuàng)建和編輯車輛ECU診斷需求,生成診斷數(shù)據(jù)庫文件(CDD),實(shí)現(xiàn)我們?cè)\斷需求的一致性。
安裝CANdelaStudio軟件后,會(huì)自帶CDDT模板,CDD文件是由CDDT模板文件生成,生成的CDD文件也可以導(dǎo)入不同軟件中。比如基于AUTOSAR體系,CDD文件可以導(dǎo)入到達(dá)芬奇軟件中,生成MICROSAR Diag部分的代碼;CDD文件可以導(dǎo)入其他Vector軟件中(CANoe、CANape、Indigo等),進(jìn)行診斷的手動(dòng)測(cè)試;還可以導(dǎo)入CANoe.DiVa軟件中生成診斷自動(dòng)化測(cè)試用例,最終在CANoe中導(dǎo)入CANoe.DiVa生成的測(cè)試用例進(jìn)行自動(dòng)化測(cè)試。
剛才說了CDD文件是由CDDT文件生成而來,那么它們之間到底有什么區(qū)別呢?CDDT文件就是CDD的模板文件。當(dāng)CDD文件生成后,我們需要明確它是由哪個(gè)CDDT文件生成。
▲CDDT文件:定義宏觀-整車級(jí)通信參數(shù)類型、服務(wù)列表、結(jié)構(gòu)、整車通用的會(huì)話模式、安全訪問、DID等
▲CDD文件:定義微觀-單個(gè)控制器級(jí)具體的通信參數(shù)、具體的服務(wù)參數(shù)、具體的會(huì)話模式、安全訪問、DID等
2.CANdelaStudio版本介紹
▲CANdelaStudio View:可以查看CDD文件,不能對(duì)CDD文件進(jìn)行編輯
▲CANdelaStudio Standard:基于CDDT編輯CDD文件,但不可以編輯CDDT文件
▲CANdelaStudio Pro:支持多語言版本
▲CANdelaStudio Admin:權(quán)限最高版本,可以編輯CDDT文件
查看軟件版本:
3.CANdelaStudio中診斷數(shù)據(jù)和架構(gòu)介紹
1)工程創(chuàng)建方法:
▲點(diǎn)擊New選擇相應(yīng)的CDDT模板來編輯數(shù)據(jù)庫保存為CDD文件
▲點(diǎn)擊Open,可以打開CDDT文件,編輯保存CDDT文件;或者打開一個(gè)CDD文件進(jìn)行編輯保存。
2)CDD文件結(jié)構(gòu)分析:
Variants:變體,CDD文件的核心內(nèi)容,包含一個(gè)ECU當(dāng)中的所有診斷服務(wù)數(shù)據(jù)。在這里出現(xiàn)了Base Variant和Variants,可以簡(jiǎn)單理解為車型分高中低配,每個(gè)配置的車型對(duì)應(yīng)一個(gè)Variant。在其他Vector工具(CANoe、Diva等)中導(dǎo)入CDD文件時(shí)可以選擇相應(yīng)Variant。
每個(gè)Variant下,都需要去選擇所支持的類(Supported Classes):
打開每個(gè)類,下面都有不同的服務(wù),比如Sessions類,下面就包含了10會(huì)話服務(wù)??梢圆榭粗С值淖庸δ芎头?wù)相關(guān)參數(shù)
再打開DID相關(guān)的類,可以去勾選是否支持可寫
3)CDD數(shù)據(jù)復(fù)用性:
在CDD里面的數(shù)據(jù)內(nèi)容Data Types、Variants、DTC、DID等,可以通過粘貼復(fù)制來完成數(shù)據(jù)復(fù)用,從CDD1到CDD2不用重新編輯
服務(wù)架構(gòu)查看:
二、編輯CDD文件工程
1.創(chuàng)建新工程
1)接下來,我們就來通過CDDT文件創(chuàng)建一個(gè)新的CDD工程:
2)編輯作者、變更歷史:Document->Revision History:
3)ECU信息描述編輯:
4)選擇相關(guān)總線接口類型:
2.通信參數(shù)編輯
通信參數(shù)設(shè)置:需要設(shè)置請(qǐng)求ID、響應(yīng)ID、時(shí)間參數(shù)、波特率等
3.DID編輯
DID是兩個(gè)字節(jié)的標(biāo)識(shí)符,不同的DID存放的數(shù)據(jù)格式不一樣,比如存放多少字節(jié)的十進(jìn)制數(shù)、ASCII碼類型數(shù)或者線性的數(shù)據(jù)等。那么在CANdelaStudio里面如何去編輯DID呢?
首先我們需要去創(chuàng)建DID,一般都是選擇在Base Variant里進(jìn)行創(chuàng)建。
步驟一:新建DID
1.選擇DIDs;2.選擇New DID;3.編輯ID和名稱。
步驟二:新建Data Type
1.選擇Data Type;2.選擇New;3.選擇需要的數(shù)據(jù)類型;4.編輯參數(shù)。
步驟三:DID與Data Type關(guān)聯(lián)
1.選擇DIDs,并選擇之前創(chuàng)建的DID;2.選擇相應(yīng)的Data Type。
為什么需要Data Type呢,因?yàn)樽x取或者寫入的DID數(shù)據(jù)都是有數(shù)據(jù)類型的,所以需要進(jìn)行關(guān)聯(lián)一個(gè)Data Type進(jìn)行解析。常見的Data Type有Raw Value(軟硬件版本號(hào));Text Table(枚舉型);Linear(線性的)。
步驟四:Class類關(guān)聯(lián)
1.選擇DID相關(guān)的Class類。
2.如果有需要定義bit的DID,先在關(guān)聯(lián)Data Type處選擇New Bitfield,然后在關(guān)聯(lián)Data Type。
無效值定義:
在定義Data Type時(shí),選擇Invalid Values,去定義無效值的類型。
激活/取消激活DID:
針對(duì)我們創(chuàng)建的DID,可以選擇進(jìn)行激活或者取消激活
4.DTC故障碼編輯
在創(chuàng)建編輯DTC之前,我們先了解一下CDD里的DTC庫:
新建DTC:
1.選擇DTC數(shù)據(jù)庫;2.點(diǎn)擊新建DTC;3.DTC參數(shù)編輯。
DTC故障碼導(dǎo)入/導(dǎo)出:
在DTC數(shù)據(jù)庫中,可以將Excle表中的DTC直接導(dǎo)入CANdelaStudio中,也可以將CANdelaStudio中的DTC導(dǎo)出成Excle表格。
將DTC庫中的DTC加載到Variant中:
在Primary Fault Memory的DTC Table中,右鍵彈出的窗口中選擇Copy & Reference from Available DTCs…,即可將DTC庫中的故障碼加載至Variant中。
雖然選擇Copy和Reference都可以加載DTC,但是如果我們?cè)贒TC庫中有修改DTC,通過Copy的方式加載的DTC在DTC Table中不會(huì)跟著DTC庫的修改而自動(dòng)更新。通過Reference的方式加載的DTC可以自動(dòng)更新。
0x19服務(wù)設(shè)置:
設(shè)置需要應(yīng)用的0x19服務(wù)
狀態(tài)掩碼設(shè)置:
1.根據(jù)需求進(jìn)行Status mask設(shè)置;2.設(shè)置請(qǐng)求的默認(rèn)值
DTC碼總覽:
在此處所有的DTC會(huì)顯示出來,可以查看DTC碼是否被應(yīng)用。
5.快照數(shù)據(jù)編輯
步驟一:1.定義所有DTC記錄的快照數(shù)據(jù)個(gè)數(shù);2.針對(duì)所有DTC,設(shè)置快照數(shù)據(jù)讀取的DID內(nèi)容。
步驟二:1.顯示所有的DTC,可以單獨(dú)選擇進(jìn)行編輯;2.可以針對(duì)單個(gè)DTC選擇需要記錄快照的DID。
步驟三:顯示快照數(shù)據(jù)的個(gè)數(shù),可設(shè)置是否支持快照數(shù)據(jù)。
6.擴(kuò)展快照數(shù)據(jù)編輯
步驟一:1.定義擴(kuò)展快照數(shù)據(jù)個(gè)數(shù);2.設(shè)置擴(kuò)展快照數(shù)據(jù)內(nèi)容。
步驟二:1.顯示所有的DTC,可以單獨(dú)選擇進(jìn)行編輯;2.設(shè)置是否支持?jǐn)U展數(shù)據(jù)。
本堂課關(guān)于CANdelaStudio之CDD文件速成的分享就到這里,請(qǐng)繼續(xù)關(guān)注我們下堂課的分享。
Vector Informatik公司是全球領(lǐng)先的分布式系統(tǒng)設(shè)計(jì)開發(fā)工具、網(wǎng)絡(luò)節(jié)點(diǎn)測(cè)試驗(yàn)證工具和嵌入式軟件組件提供商,為汽車總線網(wǎng)絡(luò)的設(shè)計(jì)、建模、仿真、分析、測(cè)試以及ECU的開發(fā)、測(cè)試、標(biāo)定和診斷等過程提供一系列強(qiáng)有力的軟硬件工具和組件,支持CAN、LIN、MOST、FlexRay、以太網(wǎng)、SAE J1939、OSEK和AUTOSAR等多種總線系統(tǒng)、協(xié)議和標(biāo)準(zhǔn)。在全球范圍內(nèi),來自汽車、商用車、工程機(jī)械和控制工程領(lǐng)域的客戶都在應(yīng)用Vector提供的解決方案和產(chǎn)品。
北匯信息作為Vector中國的合作伙伴,不僅提供相應(yīng)的工具和技術(shù)支持服務(wù)及培訓(xùn),還針對(duì)不同的應(yīng)用提供相應(yīng)的解決方案,助力中國客戶的研發(fā)效率提升。歡迎聯(lián)系北匯信息,為您答疑解惑!
注:圖中部分圖片來源于Vector
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論