详细介绍了看门狗在AUTOSAR(AUTomotive Open System ARchitecture)体系结构中的不同监控模式,以及如何配置这些模式。
引言
本应用指南将介绍RTA-BSW看门狗堆栈支持的监控模式类型,以及如何配置每种模式。
范围
本文将指导你了解看门狗堆栈支持的监控类型,并说明如何配置这些模式。
定义和缩写
- Wdg/WDG: 看门狗
- WdgIf: 看门狗接口
- WdgM: 看门狗管理器
- SE: 受监控实体(Supervised Entity)
- BSW: AUTOSAR基础软件,与硬件无关的服务层
- RTE: AUTOSAR运行时环境
- OS: AUTOSAR操作系统
- Confgen: BSW配置生成
- API: 应用程序编程接口
- RE: 可运行实体(Runnable Entity)
- PPort: 提供者端口
- RPort: 需求者端口
- CPT: 组件
- OIE: 操作调用事件
- SW/SWC: 软件/软件组件
工具链
假设你正在使用RTA-CAR 9.2.1工具链,包括ISOLAR-AB、RTA-RTE、RTA-BSW和RTA-OS的特定版本。
条件
假设读者对AUTOSAR方法和架构有良好的了解,并且正在使用标准VRTA启动套件的最新版本。
看门狗监控解释
每个被看门狗监控的实体称为受监控实体(SE)。一个软件组件或BSW服务组件可能有零个、一个或多个这样的受监控实体。受监控实体可以是软件的单个部分、函数组或单个函数的定义,只要在该软件内部调用了一系列检查点。这些检查点的集合称为图,至少应该有一个初始检查点,并在配置中描述了每个检查点之间适当的转换。
监控类型
- 存活监控(Alive Supervision)
- 截止监控(Deadline Supervision)
- 逻辑监控(Logical Supervision)
逻辑监控
逻辑监控是最简单的监控类型。通过配置一系列检查点和它们之间的转换,可以描述必须达到的检查点的控制流程及顺序。只要检查点的顺序正确,看门狗就会满意,不会有看门狗重置。如果检查点的顺序不正确,看门狗将改变本地监控状态机的状态。
截止监控
截止监控可用于监视功能看似异步或“发射后不管”的受监控实体的运行。你可以为图中每个检查点设置到达的最小和最长时间。
存活监控
存活监控可用于检查执行周期性任务是否激活了可接受次数。你可以通过为图中每个检查点设置到达次数的下限和上限来配置WdgM进行检查。
看门狗状态
文档详细描述了本地和全局看门狗状态机的状态和转换。
配置工作流程
- 创建Wdg、WdgIf、WdgM模块
- 生成BSW
- 向将与WdgM接口的SWC添加接口和端口
- 重新生成组件代码框架
- 定义并实现你的受监控实体
创建Wdg、WdgIf、WdgM模块
创建Wdg、WdgIf和WdgM的新BSW模块,并配置它们。
配置SE和逻辑监控
创建受监控实体并确定所需的检查点,然后配置内部转换以定义SE的逻辑监控。
配置模式和其他监控
配置至少一种模式,并设置此模式为初始模式。在模式内,你可以为存活监控、截止监控或外部逻辑监控创建规则。
生成BSW
创建BSW配置后,必须在BSW代码生成步骤中启用/选择要生成的模块,然后重新生成BSW。
向SWC添加端口
生成WdgM组件时,还会生成一些必要的接口。例如,为WdgM组件创建了一些客户端服务器接口。
创建PPorts
在SWC编辑器中打开’MasterSWC’并使用’WdgM_LocalSupervision’客户端服务器接口创建2个RPorts。
创建服务器调用点
转到“函数”选项卡,然后是“服务器调用点”选项卡,并选择可运行的RE_RunTest。
连接端口
现在需要将WdgM组件上的端口连接到我们的组合中的MasterSWC。
映射可运行实体到任务
需要将处理CheckpointReached函数的函数映射到OS任务,以便它们知道何时运行以及哪个任务负责执行此操作。
重新运行BSW配置生成
更新顶级组合后,必须更新ECU FlatView SWCD文件。
重新生成RTE
保存项目并重新生成RTE。这将在RTE中创建我们一直在配置的功能。
重新生成组件代码框架
重新生成MasterSWC的组件代码框架,以了解如何使用异步调用检查点。
定义并实现你的受监控实体
最后一步是为受监控实体创建代码,并在该函数中添加对检查点的调用。
生成MCAL
现在必须为你的Wdg配置生成MCAL。
构建
使用你的构建系统构建你的ECU。
这份文档提供了全面的指导,涵盖了从创建和配置看门狗模块到生成代码和构建ECU的整个流程。
文档免费下载链接:
https://download.csdn.net/download/qq_36750998/89620032