AUTOSAR中,,診斷相關(guān)的BSW模塊有DCM(Diagnostic Communication Manager),、DEM(Diagnostic Event Manager)、FIM(Function Inhibition Manager),。其中DEM負(fù)責(zé)處理診斷故障相關(guān)的數(shù)據(jù),。DEM不僅提供故障信息給DCM,也提供接口給應(yīng)用層和其他BSW模塊,。上述模塊通過(guò)對(duì)應(yīng)接口交互時(shí),,產(chǎn)生大量診斷信息,這些信息如何處理需要提前定義,,而這脫離不了配置工具的使用,,本文探討CANdelaStudio如何支持診斷信息配置。 ECU診斷功能實(shí)現(xiàn)時(shí),,ECU診斷故障數(shù)據(jù)存儲(chǔ)方式,、數(shù)據(jù)屬性定義等對(duì)診斷開發(fā)至關(guān)重要。這些信息均可以使用CANdelaStudio編輯,,生成CDD文件,。 CANdelaStudio編輯生成的CDD文件可以導(dǎo)入配置工具DaVinci Configurator,不僅簡(jiǎn)化了DaVinci Configurator配置工作,,而且使得項(xiàng)目組成員協(xié)同工作更標(biāo)準(zhǔn)化,,降低了溝通和維護(hù)成本。 CANdelaStudio還支持將CDD文件導(dǎo)出符合AUTOSAR標(biāo)準(zhǔn)的DEXT(Diagnostic Extract Template)文件,。DEXT最初在AUTOSAR 4.2.1中發(fā)布,,用于描述診斷功能交換數(shù)據(jù),即ARXML文件。 CANdelaStudio從12.0版本開始,,依照AUTOSAR 4.4 DEXT定義,,增加了對(duì)DEM模塊Event數(shù)據(jù)的配置功能。這樣就解決了將CDD或DEXT文件導(dǎo)入配置工具DaVinci Configurator后,,一些DEM的配置參數(shù)還需要手動(dòng)配置的問(wèn)題,。新功能使診斷開發(fā)者在開發(fā)初期,通過(guò)編輯CDD文件,,就能夠建立DTC和對(duì)應(yīng)Event的關(guān)系,,從而減少手動(dòng)配置帶來(lái)的錯(cuò)誤,提高開發(fā)效率,。 在CANdelaStudio中,,Events的配置界面在Diagnostic Instance ”Fault Memory”按鈕下(黃色閃電?),配置界面如下圖所示: 主要分為三個(gè)部分:Events,、DTC Event Mapping,、Event Master Data。 在車輛系統(tǒng)中,,Monitor監(jiān)測(cè)硬件,、通信或者算法等相關(guān)故障,當(dāng)監(jiān)測(cè)到錯(cuò)誤時(shí),,會(huì)上報(bào)一個(gè)診斷Event,,如下圖。DEM接收來(lái)自SWC或其他BSW(如,,CANSM)模塊報(bào)告的Event,,通過(guò)檢查存儲(chǔ)條件決定是否要將該Event對(duì)應(yīng)的故障信息進(jìn)行存儲(chǔ),因此定義清楚Event的相關(guān)屬性是基礎(chǔ),。 Event定義屬性 Kind:Event類型,,包括SWC和BSW兩種。 Operation Cycle:監(jiān)測(cè)Event開始和結(jié)束的條件,。 Debounce Algorithm:目前CANdelaStudio只支持DEM去抖,,DEM去抖算法包括基于時(shí)間去抖和基于計(jì)數(shù)器去抖。 Failure Cycle Counter Threshold:在ISO 14229-1中也被稱作“Trip Counter”,,當(dāng)計(jì)數(shù)器達(dá)到閾值后,,DTCStatus字節(jié)中的bit3 ConfirmedDTC置1 ,這個(gè)閾值定義幾個(gè)操作循環(huán)(Operation Cycle)故障確認(rèn),。比如:設(shè)置閾值為3,,某個(gè)事件在3個(gè)Operation Cycle中均上報(bào)過(guò)Failed,則bit3 ConfirmedDTC 將置1 ,。 Enable Conditions:處理Event的預(yù)檢查條件,如:車速>0km/h與否,,診斷電壓超限與否,。當(dāng)DEM收到某個(gè)Event狀態(tài)為(pre)Passed或(pre)Failed時(shí),,DEM均應(yīng)先檢查Enable Conditions。當(dāng)條件不滿足時(shí),,DEM不執(zhí)行故障信息處理動(dòng)作,。 Storage Conditions:當(dāng)報(bào)告Event狀態(tài)為Failed時(shí), DEM應(yīng)檢查Storage Condition來(lái)判斷是否應(yīng)該存儲(chǔ)該Event故障信息,如果條件滿足則進(jìn)一步根據(jù)存儲(chǔ)策略執(zhí)行存儲(chǔ)動(dòng)作,,反之不存儲(chǔ)故障信息,。 Recoverable in Same Operation Cycle:當(dāng)前Operation Cycle中,某Event狀態(tài)出現(xiàn)過(guò)Failed,,此時(shí)報(bào)告Event狀態(tài)為Passed,,此項(xiàng)配置為False時(shí),應(yīng)忽略報(bào)告的Passed結(jié)果,,保持Failed結(jié)果,;配置為true時(shí),恢復(fù)Failed記錄信息,。 Prestore Freeze Frame:表示Event發(fā)生時(shí),,Event相關(guān)的Freeze Frame數(shù)據(jù)是否應(yīng)該預(yù)存儲(chǔ)。Event出現(xiàn)甚至還沒(méi)有完成去抖時(shí),,相關(guān)的Freeze 數(shù)據(jù)已經(jīng)獲取并且數(shù)據(jù)快速變化,。 …In Memory: 指Freeze Frame預(yù)存儲(chǔ)在非易失性存儲(chǔ)還是易失性存儲(chǔ)。 Clear Allowed:
If Clear Denied:執(zhí)行清除故障信息請(qǐng)求,,DTCStatus字節(jié)是否會(huì)發(fā)生變化。 Indicator Connection:定義駕駛員的提示設(shè)備,,如:發(fā)動(dòng)機(jī)故障指示燈,。 AUTOSAR定義的Operation Cycle包括:Undefined,、Ignition、Warmup,、Power,、Time、OBD Driving Cycle,、Other,。 AUTOSAR定義的Indicator包括:undefined、Protect Lamp,、Warning,、Amber Warning Lamp、Malfunction Indicator Lamp,、Red Stop Lamp,; AUTOSAR定義的去抖參數(shù)包括(基于Counter):
結(jié)語(yǔ) CANdelaStudio作為診斷數(shù)據(jù)庫(kù)編輯工具,,編輯的CDD文件,,可以應(yīng)用在如下幾個(gè)方面:
隨著CANdelaStudio版本迭代,,增加了更多的新特性。比如:CANdelaStudio 12.0版本之后增加了Event編輯功能,,這一新增功能擴(kuò)展了CDD中的診斷數(shù)據(jù),,使得診斷開發(fā)者能夠在診斷開發(fā)初期,就能夠快速建立DTC和對(duì)應(yīng)Event的關(guān)系,,從而減少手動(dòng)配置配置工具帶來(lái)的錯(cuò)誤,,提高開發(fā)效率。 說(shuō)明:本文主體內(nèi)容由賢妻完成,。 |
|
來(lái)自: 開心果NeedCar > 《待分類》