你的位置:宁夏伦茂科技有限公司 > 新闻动态 > AutoSAR Dem确立项梳理
发布日期:2024-09-28 15:52 点击次数:143
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
共享不易,恳请点个【再看】
本站仅提供存储处事,总共履行均由用户发布,如发现存害或侵权履行,请点击举报。Powered by 宁夏伦茂科技有限公司 @2013-2022 RSS地图 HTML地图
Copyright Powered by站群系统 © 2013-2024