1. 引言 (Introduction)
- 目的 (Scope):本应用说明提供了在配备了诊断栈和内存栈的现有RTA-CAR项目中配置诊断事件管理器(DEM)的详细概览。
- 工具链 (Tool-chain):假定你使用的是RTA-CAR 12.0.1工具链,包括ISOLAR-AB、RTA-RTE、RTA-BSW和RTA-OS等组件。
2. 功能概述 (Functional Overview)
- DEM:在AUTOSAR中,DEM是一个中央软件组件,负责监控系统以检测可能指示故障的事件,并管理这些事件的报告。
3. 通过DEM的旅程 (Journey through DEM)
- 事件检测 (Event Detection):DEM的初始操作是检测来自ECU或ABS的软件组件以及传感器和执行器等硬件组件的诊断事件。
- 事件评估 (Event Evaluation):DEM评估事件数据以确定其严重性级别。
- 事件反应 (Event Reaction):根据事件的严重性级别,DEM可能触发特定的诊断动作。
- 事件报告 (Event Reporting):DEM管理向其他组件报告诊断事件。
- 事件存储 (Event Storage):DEM也能处理和存储诊断事件的历史数据。
4. 工作流 (Workflow)
- 工作流摘要 (Workflow Summary):从DEM创建到DemGeneral配置,再到DemConfig配置,包括DTC、事件参数、数据元素类等。
- BswM配置 (BswM Configuration):将DEM集成到BswM模块中,以便在启动时初始化。
- EcuM配置 (EcuM Configuration):DEM模块需要区分预初始化模式和完全初始化模式(操作模式)。
5. 配置细节 (Configuration Details)
- DemGeneral参数 (DemGeneral Parameters):包括事件老化、清除DTC行为、数据元素默认字节序等设置。
- DemEventMemorySet:设置永久存储和主要存储的事件数量和DTC类型。
- DemClient:创建访问DEM API的客户端。
- DemOperationCycles:配置操作周期,DEM在这些周期内定期检查诊断事件。
- DemRbGeneral:配置通用的DEM行为和设置。
6. 特定组件配置 (Specific Component Configuration) 续
- DemNvRamBlockId:定义DEM模块使用的非易失性内存块的标识符,这些块用于存储诊断事件相关的数据。
7. 消抖和DTC属性 (Debounce and DTC Attributes) 续
- DemDebounceCounterBasedClass:如果启用基于计数器的消抖,需要配置消抖行为、计数器增减步长、失败和通过阈值等参数。
- DemDTCAttributes:定义了与DTC相关的属性,如老化允许、老化周期计数器阈值、DTC优先级、事件重要性、立即存储到非易失性内存等。
8. DemDTC和DemComponents配置 (DemDTC and DemComponents Configuration)
- DemDTC:为每个DTC配置信息,包括功能单元、DTC严重性、DTC值以及与DTC属性的关联。
- DemComponents:配置车辆中可以生成DTC的各个组件或子系统,包括组件ID、是否忽略事件优先级、每个点火周期内允许的恢复次数等。
9. DemEventParameter配置 (DemEventParameter Configuration)
- DemEventParameter:配置与可以触发DTC的事件相关的参数,包括事件可用性、确认阈值、事件ID、事件类型以及与组件类、DTC和操作周期的关联。
10. 特定组件配置 (Specific Component Configuration) 续
- DemFreezeFrameClass:定义了冻结帧类,用于在诊断事件发生时捕获系统状态的快照。这包括了对冻结帧数据结构的配置,如引用相关的DID。
11. 消抖机制配置 (Debounce Mechanism Configuration)
- DemDebounceCounterBasedClass:如果选择了基于计数器的消抖,需要设置消抖行为、计数器增减步长、失败和通过的阈值等参数。这些参数定义了如何通过内部计数器来处理事件的消抖。
12. DTC属性和DTC配置 (DTC Attributes and DTC Configuration)
- DemDTCAttributes:为DTC配置属性,如老化是否允许、老化周期计数器阈值、DTC的优先级、事件的重要性、是否立即存储到非易失性内存等。
- DemDTC:为每个DTC配置具体的信息,包括功能单元、DTC的严重性、DTC值,以及与DTC属性的关联。
13. 组件配置 (Component Configuration)
- DemComponents:配置车辆中可能生成DTC的各个组件或子系统,包括组件的唯一标识符、是否忽略事件的优先级、在一个点火周期内允许的恢复次数等。
22. 事件参数配置 (Event Parameter Configuration)
- DemEventParameter:配置与特定事件相关的参数,这些参数可以触发DTC。包括事件的可用性、确认阈值、事件的唯一标识符、事件类型,以及与组件类、DTC和操作周期的关联。
14. BswM模块配置 (BswM Module Configuration)
- 动作项 (Action Items):在BswM模块中创建动作项,这些动作项将在系统启动和关闭时初始化和关闭DEM。
- 动作列表项 (Action List Items):将动作项添加到BswM的动作列表中,确保在系统启动和关闭时执行相应的初始化和关闭操作。
15. EcuM和DCM配置 (EcuM and DCM Configuration)
- EcuM配置:将DEM的预初始化函数添加到EcuM的初始化列表中,以便在系统启动时进行必要的初始化。
- DCM配置:配置UDS 0x19服务,用于读取诊断事件存储。这涉及到编辑DcmDsdServiceTable,添加新服务,并配置服务的诊断会话和子服务的可用性。
16. BSW代码生成 (BSW Code Generation)
- 生成BSW代码:在生成BSW代码时,确保在生成器中选择DEM,以便生成包含DEM模块的代码。
17. 系统更新 (System Update)
- SWC更新:在BSW代码生成后,需要更新软件组件以集成新的DEM配置,并确保系统可以正确地使用新的配置。
总结
这份文档是一个全面的技术指南,提供了在RTA-CAR项目中配置DEM的详细步骤。它涵盖了DEM的基本概念、事件处理机制、数据存储、内存管理、与系统其他组件的交互,以及如何生成和集成BSW代码。遵循这份指南,开发者可以确保DEM能够有效地监控、报告并处理车辆系统中的诊断事件。
具体截图以及文档下载地址:
https://download.csdn.net/download/qq_36750998/89624637