You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将Dem内部DataElement映射至Dcm的ReadDataByIdentifier服务对应DID?

问题解答

核心配置逻辑梳理

你遇到的本质是AUTOSAR架构中Dem(诊断事件管理)与Dcm(诊断通信管理)的职责边界问题:

  • Dem负责诊断数据的存储、内部管理,所以你能通过配置DemDataClass关联内部数据(比如DEM_AGINGCTR)并绑定到DemDidClass,这是Dem自身的内部数据映射机制。
  • Dcm则负责诊断服务的外部通信交互,它本身不直接管理Dem的内部数据,而是通过标准化的AUTOSAR接口与Dem交互,所以无法像Dem那样直接配置内部数据到DID的映射。

正确的配置映射步骤

要把Dem的这个内部数据映射到Dcm的ReadDataByIdentifier服务对应的DID,需要在Dcm侧做以下配置:

  • 在Dcm中定义目标DID:创建DcmDid配置项,指定对应的DID编号(比如符合ISO 15031或自定义编号)。
  • 关联Dem数据读取接口:在DcmDid的配置中,将DcmDidAccessMethod设为DCM_DID_ACCESS_DEM,并通过DcmDidDemRef关联到你之前配置好的DemDidClass。
  • 配置权限与访问规则:根据需求设置DcmDidSecurityAccess(如果需要安全访问)、DcmDidReadWritePermission等参数,确保服务调用合法。

为什么Dcm不能像Dem那样直接配置?

这是AUTOSAR的架构设计决定的:

  • Dem专注于诊断数据的生命周期管理(存储、老化、故障触发等),内部数据映射是其核心功能的一部分,所以配置更直接。
  • Dcm作为通信网关,需要兼容多种诊断服务规范(ISO 14229等),同时要对接多个模块(Dem、EcuM、NvM等),它的配置逻辑更偏向服务路由与接口适配,而非直接管理数据内容,因此不能直接复用Dem的内部数据配置方式。

注:你提到的手动实现方式(比如自定义读取函数)是可行的,但通过上述AUTOSAR标准配置方式,能更好地保证模块间的兼容性和可维护性。

内容的提问来源于stack exchange,提问作者Torsten Knodt

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.24 11:57:18