一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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

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

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

AutoSAR Dem配置項基礎(chǔ)知識梳理

汽車ECU開發(fā) ? 來源:汽車ECU開發(fā) ? 2023-07-24 17:26 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

Dem負責DTC的處理,包括凍結(jié)幀、擴展數(shù)據(jù)、運行循環(huán)、debounce策略等。

從最上層來看,Dem分別是DemConfigSet、DemGeneral兩大部分。其中DemConfigSet是圍繞Event的配置,DemGeneral負責DTC和Event的通用部分,包括凍結(jié)幀、擴展幀、使能條件、運行循環(huán)等。

9b3abc50-2a03-11ee-a368-dac502259ad0.png

DemGeneral

DemGeneral分小部分,通用配置、凍結(jié)幀配置、擴展數(shù)據(jù)配置。

通用配置:

DemAvailabilitySupport:定義是否支持通過 Dem_SetEventAvailable接口設(shè)置Event的有效性 ,用于在運行時切換事件的可用性。

DemBswErrorBufferSize:配置BSW Event的數(shù)量,在Event配置里,需要配置event是BSW_KIND還是SWC_KIND;

DemClearDTCBehavior:定義Dcm回復(fù)肯定響應(yīng)的時機。

VOLATILE:Dem清除RAM中的DTC數(shù)據(jù)之后,Dcm回復(fù)肯定響應(yīng);

NONVOLATILE_TRIGGER:Dem清除RAM中數(shù)據(jù)并且啟動NVM清除數(shù)據(jù),Dcm回復(fù)肯定響應(yīng);

NONVOLATILE_FINISH:Dem清除RAM中數(shù)據(jù),同時啟動并完成NVM清除數(shù)據(jù),Dcm回復(fù)肯定響應(yīng)。

DemClearDTCLimitation:DTC清除配置;

ALL_SUPPORTED_DTCS:支持所有的DTC值;

ONLY_CLEAR_ALL_DTCS: 僅支持清除所有DTC;

ONLY_CLEAR_SINGLE_AND_ALL_DTCS:支持單個和所有DTC清除;

DemDataElementDefaultEndianness:定義數(shù)據(jù)元素的字節(jié)序;

DemDebounceCounterBasedSupport、 DemDebounceTimeBasedSupport :定義是否支持計數(shù)或計時debounce。這個配置限制了Event中debounce處理。

DemDtcStatusAvailabilityMask:設(shè)置0x19服務(wù)支持的狀態(tài)位;

DemEnvironmentDataCapture:設(shè)置凍結(jié)幀和擴展數(shù)據(jù)的獲取是同步還是異步,也就是在當前周期,還是下個周期;

?DemEventCombinationSupport:是否支持多個Event映射到一個DTC;

?DemEventDisplacementStrategy:配置DTC的替代策略,這AutoSAR提供了幾種,也可以自定義。

?DemEventMemoryEntryStorageTrigger:定義凍結(jié)幀和擴展數(shù)據(jù)的觸發(fā)存儲的條件,一般是選test_fail,意味著test_fail從0—>1觸發(fā)。

?DemGeneralInterfaceSupport:環(huán)境數(shù)據(jù)和eventstatus改變是否,提供callback接口,一般選擇false;

?DemImmediateNvStorageLimit:定義NVM立即寫的限制數(shù)量,DemGeneral/DemImmediateNvStorageSupport和DemConfigSet/DemDTCClass/DemImmediateNvStorage需要開啟;

?DemMaxNumberEventEntryEventBuffer:定義環(huán)境數(shù)據(jù)緩存的大?。?/p>

?DemMaxNumberPrestoredFF:定義預(yù)存儲快照的最大數(shù)量;一般存儲的凍結(jié)幀里有快速變化的數(shù)據(jù),需要配置;

?DemResetConfirmedBitOnOverflow:定義當事件存儲被取代時,confirmed位是否復(fù)位,一般設(shè)置為true;

?DemStatusBitHandlingTestFailedSinceLastClear:定義老化和內(nèi)存替代后是否設(shè)置“TestFailedSinceLastClear”狀態(tài)位。

?DemStatusBitStorageTestFailed:定義testfail位是否存儲;

?DemSuppressionSupport:定義是否支持DTC或者Event抑制;

?DemTypeOfDTCSupported:定義DTC的格式;

?DemTypeOfFreezeFrameRecordNumeration:定義如何分配快照號

?DemNvRamBlockIds:設(shè)置Event Memory數(shù)量,從NvM引用;

?DemOperationCycle:運行循環(huán)設(shè)置,這里雖然可以配置不同的運行循環(huán),但是循環(huán)的控制還是需要在代碼里去實現(xiàn);

?DemStorageCondition:設(shè)置環(huán)境數(shù)據(jù)是否可以存儲;用于Event引用;

?DemDTCofgroup:可以將DTC分成不同的組,后面會詳細講。

凍結(jié)幀配置:

1.DemDataElementClass:用于配置所需的凍結(jié)幀數(shù)據(jù)以及擴展數(shù)據(jù),這些數(shù)據(jù)可以來自模塊定義好的,也可以通過SR接口獲取,

2.DemDidClass:定義凍結(jié)幀的數(shù)據(jù)的DID;

3.DemFreezeFrameClass:選擇需要參考的DemDidClass;

4.DemFreezeFrameRecRecordClass:定義凍結(jié)幀的觸發(fā)條件,以及是否更新;

5.DemFreezeFrameRecNumClass:對需要record的數(shù)據(jù)進行打包成一個凍結(jié)幀結(jié)構(gòu);

對于快照數(shù)據(jù):可以選擇一個DID映射一個數(shù)據(jù),這樣的好處是數(shù)據(jù)和DID明確的,解析也方便,當時劣勢是占的空間大,每個DID需要占2個byte;另外一種方案是用一個DID定義一大塊內(nèi)存,上層軟件去做數(shù)據(jù)打包,這樣就節(jié)省空間,劣勢就是需要自己打包,以及上位機按照下位機的格式進行數(shù)據(jù)解析。

擴展數(shù)據(jù):

1.DemExtendedDataRecorderClass:選擇DemDataElementClass中的數(shù)據(jù),并設(shè)置更新策略以及數(shù)據(jù)ID;

2.DemExtendedDataClass:打包擴展數(shù)據(jù),用于Event引用。

DemConfigSet

DemConfigSet這個菜單主要是圍繞Event來展開配置的。首先來梳理一下Event和DTC的一些基礎(chǔ)信息。

Event是指系統(tǒng)診斷事件,Dem用EventId來區(qū)分不同的診斷事件,通常使用來說Event和DTC是一一對應(yīng)的,但是如果是使用Event combination,則可以多個Event對一個DTC。

Event的基礎(chǔ)信息包括Event Priority、Event occurrence、Event Kind。

1.Event Priority是指事件的優(yōu)先級,其中1表示優(yōu)先級最高,數(shù)據(jù)越大優(yōu)先級越低;

2.Event occurrence主要是根據(jù)DemGeneral中配置的DemOccurrenceCounterProcessing來處理,一種是testfailbit 0—>1,一種是在confirmbit為1的情況下,testfail bit0—>1,兩者統(tǒng)計的大小會相差1.

3.Event kind主要是將Event分為BSW和SWC兩種,在DemGeneral中也配置了BSWerror的buffer大小。其兩者的區(qū)別是,BSW kind是通過配置來關(guān)聯(lián)到Dem模塊,比如在Busoff故障,可以直接在CANSM中直接關(guān)聯(lián)Dem。

4.BSW和SWC的區(qū)別在與,在Dem_PreInit后,就可以處理BSW kind故障,而SWC kind需要在Dem_Init后才能處理。

9b5d713c-2a03-11ee-a368-dac502259ad0.png

Eventdependencies

Event之間的依賴目的是過濾部分級聯(lián)故障以及節(jié)省存儲。其主要通過DemComponent來實現(xiàn)的,比如傳感本身發(fā)生故障,這時控制器讀取的數(shù)據(jù)也應(yīng)該無效。

一個DemComponent是若干event的集合,在DemComponent內(nèi)部,故障事件有優(yōu)先級,當一個DemComponent內(nèi)部最高優(yōu)先級的故障事件狀態(tài)為Failed導致其他故障事件狀態(tài)也為Failed,或者父節(jié)點DemComponent的狀態(tài)為Failed導致子節(jié)點DemComponent內(nèi)的故障事件狀態(tài)Failed,這種故障叫做連續(xù)錯誤(CONSECUTIVE FAULT),其他被認為是偶發(fā)錯誤(CAUSAL FAULT)。

另外如果DemComponent內(nèi)部故障事件優(yōu)先級被忽略,那么僅有當父節(jié)DemComponent的狀態(tài)為Failed導致子節(jié)點DemComponent內(nèi)的故障事件狀態(tài)變成Failed被稱作是連續(xù)錯誤(CONSECUTIVE FAULT)。連續(xù)故障則不會記錄環(huán)境數(shù)據(jù)。

9b7a0662-2a03-11ee-a368-dac502259ad0.png

1.DTC format是指DTC的格式,分別為15031和14229兩種,15031的格式為U150293,14229為D50293。

2.DTC severity是指用于表示故障的嚴重程度,主要從售后的角度來看,分為,立即檢查、下次檢查、立即維修。

3.DTCsignificance 是用于區(qū)分是ECU或系統(tǒng)的fault還是外部fault。

4.SuppressDTC output是指DemGeneral中DemSuppressionSupport 配置參數(shù),如果參數(shù)配置為true,則可以通過Dem_SetDTCSuppression 接口抑制某些DTC,抑制后對外是不可見的。

5.DTCgroup只需要一個參數(shù)就可以確定,就是DTC的界限(下界),上圖中兩個DTC組它們的各自參數(shù)就是該組DTC的下界,一個DTC組中的包含的DTC是該組配置的DTC界限與本組緊接的下一組的界限之間的DTC,但是不包括這兩個界限。這就可以用于0x14或0x85服務(wù)進行單獨操作。當前內(nèi)部預(yù)制了兩個組如下。

9b9a767c-2a03-11ee-a368-dac502259ad0.png

DemConfigSet-Debounce策略

基于計數(shù)器的Debounce策略

在這種策略下,Dem模塊會提供一個計數(shù)器(fault detection counter)用來記錄判斷的結(jié)果,當Diagnostic Monitor上報至dem的狀態(tài)為prefailed,計數(shù)器會按步長增加,當上報狀態(tài)為prepassed,計數(shù)器按步長減少。

9bb965aa-2a03-11ee-a368-dac502259ad0.png

1、5表示JumpDown功能,

3、4表示JumpUp功能,

2表示當前計數(shù)器小于DemDebounceCounterJumpDownValue ,所以JumpDown功能沒有激活,

6表示DemDebounceCounterJumpDownValue ,

7表示DemDebounceCounterJumpUpValue,

8表示DemDebounceCounterFailedThreshold ,

9表示DemDebounceCounterPassedThreshold ,

10、12表示故障確認,由于計數(shù)器的值達到了fail的限值,

11故障恢復(fù),由于計數(shù)器的值達到pass的限值,

13表示Dem接收的狀態(tài)為failed,所以故障直接置位;

14表示Dem接到的狀態(tài)為passed,所以故障恢復(fù);

15表示DemDebounceCounterIncrementStepSize,

16表示DemDebounceCounterDecrementStepSize,

基于次數(shù)的debounce涉及的配置項含義如下:

1、FDC(fault detection counter):錯誤計數(shù)器,其范圍為-128~127;

2、DemDebounceCounterFailedThreshold:故障從prefailed狀態(tài)跳轉(zhuǎn)至failed的限值;

3、DemDebounceCounterPassedThreshold:故障從prepassed狀態(tài)跳轉(zhuǎn)至passed狀態(tài)的限值。

4、DemDebounceCounterIncrementStepSize:當Diagnostic Monitor上報Prefailed,錯誤計數(shù)器的增加量;

5、DemDebounceCounterDecrementStepSize:當Diagnostic Monitor上報Prepassed,錯誤計數(shù)器減少量;

6、DemDebounceCounterJumpDown:是否使能JumpDown功能,JumpDown功能是指當上一次Diagnostic Monitor上報的狀態(tài)是prefailed,而這次上報的是prepassed,且當前計數(shù)器的值大于DemDebounceCounterJumpDownValue,錯誤計數(shù)器的值會重置為DemDebounceCounterJumpDownValue。如果JumpDown功能禁止,計數(shù)器按照步長減少。

7、DemDebounceCounterJumpDownValue:當JumpDown功能使能,該變量定義了計數(shù)器的重置值。

8、DemDebounceCounterJumpUp:是否使能JumpUp功能,JumpUp功能是指當上一次Diagnostic Monitor上報的狀態(tài)是prepassed,而這次上報的是prefailed,且當前計數(shù)器的值小于DemDebounceCounterJumpUpValue,錯誤計數(shù)器的值會重置為DemDebounceCounterJumpUpValue。如果JumpUp功能禁止,計數(shù)器按照步長增加。

9:DemDebounceCounterJumpUpValue:當JumpUp功能使能,該變量定義了計數(shù)器的重置值。

基于時間的Debounce策略

計數(shù)器的初始值為0,其范圍為-128~127,當Dem接收到Diagnostic Monitor發(fā)送的狀態(tài)值開始計數(shù),計數(shù)器的增長方向有接收到的狀態(tài)決定,當計數(shù)器的值在一定時間達到閾值,完成此次判斷,如果在未達到閾值之前,Dem收到的狀態(tài)發(fā)生變化,計數(shù)器會重新開始計數(shù),并且計數(shù)方向也發(fā)生轉(zhuǎn)變。

9be474ca-2a03-11ee-a368-dac502259ad0.png

t failed:表示故障failed需要的時間,該值等于DebounceTimeBasedTaskTime乘以DemDebounceTimeFailedThreshold;

t passed:表示故障passed需要的時間,該值等于DebounceTimeBasedTaskTime乘以DemDebounceTimePassedThreshold;

1、表示Diagnostic Monitor傳至Dem的狀態(tài)為prefailed;并經(jīng)過t failed時間故障狀態(tài)編程failed;

2、表示Diagnostic Monitor傳至Dem的狀態(tài)為prepassed;此時計數(shù)器重新開始計數(shù);

3、由于2時刻開始計數(shù)未達到閾值時,Dem接收的狀態(tài)發(fā)生變化,此時計數(shù)器開始重新計數(shù),并計數(shù)方向發(fā)生變化,經(jīng)過t failed時間后,故障狀態(tài)編程failed。

4、Dem接收到的狀態(tài)為failed,所以故障直接置位了;

5、Dem接收到的狀態(tài)為passed,所以故障直接恢復(fù)了;

6、表示故障已發(fā)生;

7、表示故障未發(fā)生;

對于基于時間Debounce的策略主要配置以下幾個參數(shù):

1、DebounceTimeBasedTaskTime:該變量定義基本的檢測周期

2、DemDebounceTimeFailedThreshold:定義故障狀態(tài)從prefailed跳轉(zhuǎn)至failed需要多少個DebounceTimeBasedTaskTime周期;

3、DemDebounceTimeFailedThreshold:定義故障狀態(tài)從prepassed跳轉(zhuǎn)至passed需要多少個DebounceTimeBasedTaskTime周期;





審核編輯:劉清

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

    關(guān)注

    8

    文章

    1392

    瀏覽量

    117525
  • 計數(shù)器
    +關(guān)注

    關(guān)注

    32

    文章

    2291

    瀏覽量

    96413
  • AUTOSAR
    +關(guān)注

    關(guān)注

    10

    文章

    380

    瀏覽量

    22667
  • 觸發(fā)器
    +關(guān)注

    關(guān)注

    14

    文章

    2039

    瀏覽量

    62144
  • NVM
    NVM
    +關(guān)注

    關(guān)注

    1

    文章

    43

    瀏覽量

    19427

原文標題:AutoSAR Dem配置項梳理

文章出處:【微信號:eng2mot,微信公眾號:汽車ECU開發(fā)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    AUTOSAR存儲模塊的基礎(chǔ)知識

    AUTOSAR存儲模塊的解釋文章很多,本文整理存儲模塊基礎(chǔ)知識。
    發(fā)表于 10-08 09:30 ?8075次閱讀

    第25章 DHCP動態(tài)主機配置協(xié)議基礎(chǔ)知識

    。(本章的知識點主要整理自網(wǎng)絡(luò)) 25.1 初學者重要提示 25.2 DHCP基礎(chǔ)知識參考資料 25.3 DHCP基礎(chǔ)知識點25.4 DHCP函數(shù) 25.5總結(jié)
    發(fā)表于 11-20 14:55

    關(guān)于AUTOSAR架構(gòu)的知識點看完你就懂了

    關(guān)于AUTOSAR架構(gòu)的知識點看完你就懂了
    發(fā)表于 10-18 07:41

    C語言基礎(chǔ)知識的樹狀結(jié)構(gòu)是如何組成的

    該圖是關(guān)于C語言基礎(chǔ)知識的樹狀結(jié)構(gòu)圖,也許里面有些地方看起來不夠主流,但是可能更合理。以后將會對該圖的所有細節(jié)知識點以通俗易懂的方式逐個梳理,敬請關(guān)注!...
    發(fā)表于 11-08 07:39

    STM32的中斷基礎(chǔ)知識配置過程,絕對實用

    STM32的中斷基礎(chǔ)知識配置過程,絕對實用
    發(fā)表于 11-17 07:10

    嵌入式系統(tǒng)概述知識梳理

    《嵌入式系統(tǒng)》 |(一)嵌入式系統(tǒng)概述 知識梳理《嵌入式系統(tǒng)》 |(二)ARM Cortex M3 體系結(jié)構(gòu) 知識梳理嵌入式系統(tǒng)》 |(三) STM32最小系統(tǒng)
    發(fā)表于 12-22 06:53

    電源管理基礎(chǔ)知識電源管理基礎(chǔ)知識電源管理基礎(chǔ)知識

    電源管理基礎(chǔ)知識電源管理基礎(chǔ)知識電源管理基礎(chǔ)知識
    發(fā)表于 09-15 14:36 ?76次下載
    電源管理<b class='flag-5'>基礎(chǔ)知識</b>電源管理<b class='flag-5'>基礎(chǔ)知識</b>電源管理<b class='flag-5'>基礎(chǔ)知識</b>

    LAN9352評估板基礎(chǔ)知識配置

    本文主要介紹了LAN9352評估板基礎(chǔ)知識配置。
    發(fā)表于 06-05 17:29 ?9次下載

    適合C語言小白看的基礎(chǔ)知識梳理總結(jié)

    C語言是當代人學習及生活中的必備基礎(chǔ)知識,應(yīng)用十分廣泛,下面為大家?guī)鞢語言基礎(chǔ)知識梳理總結(jié),C語言零基礎(chǔ)入門絕對不是天方夜譚!
    的頭像 發(fā)表于 01-04 11:07 ?5057次閱讀

    OpenVINO開發(fā)配置應(yīng)必備哪些基礎(chǔ)知識

    通過第一篇文章我們已經(jīng)了解什么是OpenVINO,它的諸多功能與全應(yīng)用場景支持人工智能落地的能力。本篇我們將重點介紹OpenVINO開發(fā)流程與開發(fā)必備的基礎(chǔ)知識與相關(guān)API函數(shù)對象。 環(huán)境配置
    的頭像 發(fā)表于 05-18 09:10 ?2121次閱讀
    OpenVINO開發(fā)<b class='flag-5'>配置</b>應(yīng)必備哪些<b class='flag-5'>基礎(chǔ)知識</b>?

    嵌入式C語言基礎(chǔ)知識梳理

    該圖是關(guān)于C語言基礎(chǔ)知識的樹狀結(jié)構(gòu)圖,也許里面有些地方看起來不夠主流,但是可能更合理。以后將會對該圖的所有細節(jié)知識點以通俗易懂的方式逐個梳理,敬請關(guān)注!...
    發(fā)表于 11-03 14:06 ?13次下載
    嵌入式C語言<b class='flag-5'>基礎(chǔ)知識</b><b class='flag-5'>梳理</b>

    關(guān)于AUTOSAR-DEM模塊的簡要介紹和幾點思考

    DEM全稱“Diagnostic Event Management”,該模塊作為AUTOSAR架構(gòu)中的BSW模塊之一,對于ECU軟件開發(fā)也是必需的軟件模塊
    的頭像 發(fā)表于 04-15 17:12 ?3913次閱讀

    DEM功能詳解

    DemAUTOSAR配置最多,實現(xiàn)功能最為復(fù)雜的模塊之一,主要負責記錄故障診斷以及其關(guān)聯(lián)數(shù)據(jù),是實現(xiàn)診斷功能至關(guān)重要的模塊,本文將以最簡單的方式將
    的頭像 發(fā)表于 05-23 09:12 ?7861次閱讀
    <b class='flag-5'>DEM</b>功能詳解

    AUTOSAR Fee模塊配置詳解

    AUTOSAR Fee的配置跟Ea類似,方法都可以觸類旁通。
    的頭像 發(fā)表于 06-01 10:05 ?5883次閱讀
    <b class='flag-5'>AUTOSAR</b> Fee模塊<b class='flag-5'>配置</b>詳解

    在TI SoC上集成AUTOSAR基礎(chǔ)知識

    電子發(fā)燒友網(wǎng)站提供《在TI SoC上集成AUTOSAR基礎(chǔ)知識.pdf》資料免費下載
    發(fā)表于 10-11 11:50 ?0次下載
    在TI SoC上集成<b class='flag-5'>AUTOSAR</b>:<b class='flag-5'>基礎(chǔ)知識</b>