[Adaptive AUTOSAR学习] Platform Health Management平台健康管理 功能安全模块 -- Adaptive Platform PHM

[Adaptive AUTOSAR学习] Platform Health Management平台健康管理 功能安全模块 -- Adaptive Platform PHM
最新回答
睫毛下的眼泪坠落花已枯萎

2021-06-11 00:19:49

Adaptive AUTOSAR中的Platform Health Management(PHM)模块是用于监控应用程序运行状态并在故障时触发恢复操作的核心功能安全组件,其通过多种监控模式和恢复策略保障系统可靠性。

一、PHM模块核心功能与交互机制

PHM模块通过监控受监控实体(SE)的运行状态,在检测到错误或故障时执行预定义的恢复操作。其核心交互对象包括:

  • Execution Management(EM):PHM通过调用GetAllProcessState()获取所有进程状态,EM在状态变更时通过ProcessChanged()通知PHM。
  • State Management(SM):当监控模式(机器状态与功能组状态组合)变更时,SM通过FunctionGroupState参数向PHM发送通知。
  • 诊断管理与安全应用:PHM将错误信息上报至诊断模块或转发至安全应用,实现复杂错误响应。

二、受监控实体(SE)的监控模式

SE的监控模式通过机器状态功能组状态的组合定义全局状态,例如:

  • 机器状态:运行、待机、故障等。
  • 功能组状态:初始化、正常执行、安全降级等。

状态变更时,SM模块通过FunctionGroupState参数通知PHM,触发状态仲裁与控制流程。此机制与Classic AUTOSAR中的看门狗管理(WdgM)类似,但扩展了功能组维度的监控。

三、PHM的四大监控功能

PHM提供以下监控类型,均基于应用/服务主动报告或外部数据输入:

  1. Alive Supervision

    监控SE的执行频率是否异常(如过高或过低)。

    通过ReportCheckpoint接口接收应用报告的存活信号。

  2. Deadline Supervision

    验证SE是否在规定时间内完成执行步骤。

    适用于实时性要求高的任务(如控制循环),超时触发恢复操作。

  3. Logical Supervision

    检查SE的执行流程是否符合设计逻辑(如状态机跳转顺序)。

    通过ReportCheckpoint报告关键节点状态,PHM验证逻辑一致性。

  4. Health Channel Supervision

    集成外部监控结果(如RAM测试、电压监控、操作系统状态)。

    通过ReportHealthStatus接口接收数据,支持多源健康信息融合。

四、故障恢复操作策略

PHM定义了六种恢复操作,由集成人员在Manifest文件中配置:

  1. 功能组状态切换:向SM请求切换至安全状态(如降级运行模式)。
  2. 强制状态切换:向EM请求进入不可恢复状态(如紧急停止)。
  3. 进程重启:通过EM重新启动故障进程。
  4. 看门狗重置:触发硬件看门狗执行系统复位。
  5. 诊断上报:将错误信息发送至诊断管理模块(如DTC记录)。
  6. 安全应用响应:转发错误至安全应用层,执行自定义逻辑(如冗余切换)。
五、状态仲裁与控制机制

PHM的动作执行分为两阶段:

  1. 状态仲裁

    基于条件(Conditions)、表达式(Expressions)、规则(Rules)评估系统状态。

    规则触发条件包括:

    立即触发:规则值达到阈值时立即执行。

    变更触发:仅当规则结果与上次不同时执行。

    仲裁逻辑与Classic AUTOSAR的BswM模块类似,但扩展了多源健康数据支持。

  2. 状态控制

    根据仲裁结果选择恢复操作,例如:

    若Logical Supervision检测到状态机异常,触发进程重启。

    若Health Channel报告电压过低,切换至低功耗模式并上报诊断。

六、与Classic AUTOSAR的对比

PHM在Adaptive平台中的设计延续了CP中WdgM的核心思想(如Alive/Deadline监控),但扩展了以下能力:

  • 功能组状态管理:支持复杂系统级状态切换。
  • 多源健康数据融合:通过Health Channel集成外部监控结果。
  • 动态恢复策略:恢复操作可由安全应用层自定义扩展。

总结:Adaptive AUTOSAR的PHM模块通过多维度监控与灵活恢复策略,为高复杂性软件系统提供了功能安全保障。其设计兼顾了实时性(如Deadline Supervision)与可扩展性(如Health Channel),适用于自动驾驶、域控制器等对可靠性要求严苛的场景。