AutoSAR Dem建立项梳理


发布日期:2025-12-25 16:38    点击次数:63

AutoSAR Dem建立项梳理

Dem厚爱DTC的解决,包括冻结帧、膨胀数据、运行轮回、debounce战略等。

从最表层来看,Dem分别是DemConfigSet、DemGeneral两大部分。其中DemConfigSet是围绕Event的建立,DemGeneral厚爱DTC和Event的通用部分,包括冻结帧、膨胀帧、使能条款、运行轮回等。

图片

DemGeneral

DemGeneral分小部分,通用建立、冻结帧建立、膨胀数据建立。

通用建立:

DemAvailabilitySupport:界说是否复旧通过 Dem_SetEventAvailable接口开采Event的灵验性 ,用于在运行时切换事件的可用性。

DemBswErrorBufferSize:建立BSW Event的数目,在Event建立里,需要建立event是BSW_KIND还是SWC_KIND;

DemClearDTCBehavior:界说Dcm讲演投降反映的时机。

VOLATILE:Dem打消RAM中的DTC数据之后,Dcm讲演投降反映;

NONVOLATILE_TRIGGER:Dem打消RAM中数据况兼启动NVM打消数据,Dcm讲演投降反映;

NONVOLATILE_FINISH:Dem打消RAM中数据,同期启动并完成NVM打消数据,Dcm讲演投降反映。

DemClearDTCLimitation:DTC打消建立;

ALL_SUPPORTED_DTCS:复旧统统的DTC值;

ONLY_CLEAR_ALL_DTCS: 仅复旧打消统统DTC;

ONLY_CLEAR_SINGLE_AND_ALL_DTCS:复旧单个和统统DTC打消;

DemDataElementDefaultEndianness:界说数据元素的字节序;

DemDebounceCounterBasedSupport、 DemDebounceTimeBasedSupport :界说是否复旧计数或计时debounce。这个建立截至了Event中debounce解决。

DemDtcStatusAvailabilityMask:开采0x19职业复旧的景况位;

DemEnvironmentDataCapture:开采冻结帧和膨胀数据的获得是同步还是异步,也等于在现时周期,还是下个周期;

·DemEventCombinationSupport:是否复旧多个Event映射到一个DTC;

·DemEventDisplacementStrategy:建立DTC的替代战略,这AutoSAR提供了几种,也不错自界说。

·DemEventMemoryEntryStorageTrigger:界说冻结帧和膨胀数据的触发存储的条款,一般是选test_fail,意味着test_fail从0—>1触发。

·DemGeneralInterfaceSupport:环境数据和event status篡改是否,提供callback接口,一般选拔false;

·DemImmediateNvStorageLimit:界说NVM立即写的截至数目,DemGeneral/DemImmediateNvStorageSupport和DemConfigSet/DemDTCClass/DemImmediateNvStorage需要开启;

·DemMaxNumberEventEntryEventBuffer:界说环境数据缓存的大小;

·DemMaxNumberPrestoredFF:界说预存储快照的最大数目;一般存储的冻结帧里有快速变化的数据,需要建立;

·DemResetConfirmedBitOnOverflow:界说当事件存储被取代时,confirmed位是否复位,一般开采为true;

·DemStatusBitHandlingTestFailedSinceLastClear:界说老化和内存替代后是否开采“TestFailedSinceLastClear”景况位。

·DemStatusBitStorageTestFailed:界说testfail位是否存储;

·DemSuppressionSupport:界说是否复旧DTC大略Event扼制;

·DemTypeOfDTCSupported:界说DTC的要津;

·DemTypeOfFreezeFrameRecordNumeration:界说如何分派快照号

·DemNvRamBlockIds:开采Event Memory数目,从NvM援用;

·DemOperationCycle:运行轮回开采,这里诚然不错建立不同的运行轮回,可是轮回的轨则还是需要在代码里去完了;

·DemStorageCondition:开采环境数据是否不错存储;用于Event援用;

·DemDTCofgroup:不错将DTC分红不同的组,背面会详备讲。

冻结帧建立:

1.DemDataElementClass:用于建立所需的冻结帧数据以及膨胀数据,这些数据不错来自模块界说好的,也不错通过SR接口获得,

2.DemDidClass:界说冻结帧的数据的DID;

3.DemFreezeFrameClass:选拔需要参考的DemDidClass;

4.DemFreezeFrameRecRecordClass:界说冻结帧的触发条款,以及是否更新;

5.DemFreezeFrameRecNumClass:对需要record的数据进行打包成一个冻结帧结构;

关于快照数据:不错选拔一个DID映射一个数据,这么的克己是数据和DID明确的,明白也便捷,其时短处是占的空间大,每个DID需要占2个byte;另外一种有盘算是用一个DID界说一大块内存,表层软件去作念数据打包,这么就浅显空间,短处等于需要我方打包,以及上位机按照下位机的要津进行数据明白。

膨胀数据:

1.DemExtendedDataRecorderClass:选拔DemDataElementClass中的数据,并开采更新战略以及数据ID;

2.DemExtendedDataClass:打包膨胀数据,用于Event援用。

DemConfigSet

DemConfigSet这个菜单主如果围绕Event来张开建立的。最初来梳理一下Event和DTC的一些基础信息。

Event是指系统会诊事件,Dem用EventId来鉴别不同的会诊事件,时时使用来说Event和DTC是逐一双应的,可是如果是使用Event combination,则不错多个Event对一个DTC。

Event的基础信息包括Event Priority、Event occurrence、Event Kind。

1.Event Priority是指事件的优先级,其中1暗示优先级最高,数据越大优先级越低;

2.Event occurrence主如果证据DemGeneral中建立的DemOccurrenceCounterProcessing来解决,一种是testfailbit 0—>1,一种是在confirm bit为1的情况下,testfail bit 0—>1,两者统计的大小会出入1.

3.Event kind主如果将Event分为BSW和SWC两种,在DemGeneral中也建立了BSWerror的buffer大小。其两者的区别是,BSW kind是通过建立来商量到Dem模块,比如在Busoff故障,不错成功在CANSM中成功商量Dem。

4.BSW和SWC的区别在与,在Dem_PreInit后,就不错解决BSW kind故障,而SWC kind需要在Dem_Init后才智解决。

图片

Event dependencies

Event之间的依赖盘算是过滤部分级联故障以及浅显存储。其主要通过DemComponent来完了的,比如传感自己发生故障,这时轨则器读取的数据也应该无效。

一个DemComponent是若干event的纠合,在DemComponent里面,故障事件有优先级,当一个DemComponent里面最高优先级的故障事件景况为Failed导致其他故障事件景况也为Failed,大略父节点DemComponent的景况为Failed导致子节点DemComponent内的故障事件景况Failed,这种故障叫作念畅达造作(CONSECUTIVE FAULT),其他被以为是偶发造作(CAUSAL FAULT)。另外如果DemComponent里面故障事件优先级被忽略,那么仅有当父节DemComponent的景况为Failed导致子节点DemComponent内的故障事件景况酿成Failed被称作是畅达造作(CONSECUTIVE FAULT)。畅达故障则不会纪录环境数据。

图片

1.DTC  format是指DTC的要津,分别为15031和14229两种,15031的要津为U150293,14229为D50293。

2.DTC severity是指用于暗示故障的严重进程,主要从售后的角度来看,分为,立即查验、下次查验、立即维修。

3.DTC significance 是用于鉴别是ECU或系统的fault还是外部fault。

4.Suppress DTC output是指DemGeneral中DemSuppressionSupport 建立参数,如果参数建立为true,则不错通过Dem_SetDTCSuppression 接口扼制某些DTC,扼制后对外是不见解的。

5.DTC group只需要一个参数就不错详情,等于DTC的界限(下界),上图中两个DTC组它们的各自参数等于该组DTC的下界,一个DTC组中的包含的DTC是该组建立的DTC界限与本组紧接的下一组的界限之间的DTC,可是不包括这两个界限。这就不错用于0x14或0x85职业进行单独操作。现时里面预制了两个组如下。

图片

DemConfigSet-Debounce战略

基于计数器的Debounce战略

在这种战略下,Dem模块会提供一个计数器(fault detection counter)用来纪录判断的后果,当Diagnostic Monitor上报至dem的景况为prefailed,计数器会按步长加多,当上报景况为prepassed,计数器按步长减少。

图片

1、5暗示JumpDown功能,

3、4暗示JumpUp功能,

2暗示现时计数器小于DemDebounceCounterJumpDownValue ,是以JumpDown功能莫得激活,

6暗示DemDebounceCounterJumpDownValue ,

7暗示DemDebounceCounterJumpUpValue,

8暗示DemDebounceCounterFailedThreshold ,

9暗示DemDebounceCounterPassedThreshold ,

10、12暗示故障说明,由于计数器的值达到了fail的限值,

11故障归附,由于计数器的值达到pass的限值,

13暗示Dem承袭的景况为failed,是以故障成功置位;

14暗示Dem接到的景况为passed,是以故障归附;

15暗示DemDebounceCounterIncrementStepSize,

16暗示DemDebounceCounterDecrementStepSize,

基于次数的debounce波及的建立项含义如下:

1、FDC(fault detection counter):造作计数器,其畛域为-128~127;

2、DemDebounceCounterFailedThreshold:故障从prefailed景况跳转至failed的限值;

3、DemDebounceCounterPassedThreshold:故障从prepassed景况跳转至passed景况的限值。

4、DemDebounceCounterIncrementStepSize:当Diagnostic Monitor上报Prefailed,造作计数器的加多量;

5、DemDebounceCounterDecrementStepSize:当Diagnostic Monitor上报Prepassed,造作计数器减极少;

6、DemDebounceCounterJumpDown:是否使能JumpDown功能,JumpDown功能是指当上一次Diagnostic Monitor上报的景况是prefailed,而这次上报的是prepassed,且现时计数器的值大于DemDebounceCounterJumpDownValue,造作计数器的值会重置为DemDebounceCounterJumpDownValue。如果JumpDown功能回绝,计数器按照步长减少。

7、DemDebounceCounterJumpDownValue:当JumpDown功能使能,该变量界说了计数器的重置值。

8、DemDebounceCounterJumpUp:是否使能JumpUp功能,JumpUp功能是指当上一次Diagnostic Monitor上报的景况是prepassed,而这次上报的是prefailed,且现时计数器的值小于DemDebounceCounterJumpUpValue,造作计数器的值会重置为DemDebounceCounterJumpUpValue。如果JumpUp功能回绝,计数器按照步长加多。

9:DemDebounceCounterJumpUpValue:当JumpUp功能使能,该变量界说了计数器的重置值。

基于技术的Debounce战略

计数器的运转值为0,其畛域为-128~127,当Dem承袭到Diagnostic Monitor发送的景况值动手计数,计数器的增长办法有承袭到的景况决定,当计数器的值在一定技术达到阈值,完成这次判断,如果在未达到阈值之前,Dem收到的景况发生变化,计数器会从头动手计数,况兼计数办法也发生飘摇。

图片

t failed:暗示故障failed需要的技术,该值等于DebounceTimeBasedTaskTime乘以DemDebounceTimeFailedThreshold;

t passed:暗示故障passed需要的技术,该值等于DebounceTimeBasedTaskTime乘以DemDebounceTimePassedThreshold;

1、暗示Diagnostic Monitor传至Dem的景况为prefailed;并进程t failed技术故障景况编程failed;

2、暗示Diagnostic Monitor传至Dem的景况为prepassed;此时计数器从头动手计数;

3、由于2技术动手计数未达到阈值时,Dem承袭的景况发生变化,此时计数器动手从头计数,并计数办法发生变化,进程t failed技术后,故障景况编程failed。

4、Dem承袭到的景况为failed,是以故障成功置位了;

5、Dem承袭到的景况为passed,是以故障成功归附了;

6、暗示故障已发生;

7、暗示故障未发生;

关于基于技术Debounce的战略主要建立以下几个参数:

1、DebounceTimeBasedTaskTime:该变量界说基本的检测周期

2、DemDebounceTimeFailedThreshold:界说故障景况从prefailed跳转至failed需要几许个DebounceTimeBasedTaskTime周期;

3、DemDebounceTimeFailedThreshold:界说故障景况从prepassed跳转至passed需要几许个DebounceTimeBasedTaskTime周期;

end

共享不易,恳请点个【再看】

本站仅提供存储职业,统统推行均由用户发布,如发现存害或侵权推行,请点击举报。