嵌入式系统与单片机|技术阅读
登录|注册

您现在的位置是:嵌入式系统与单片机 > 技术阅读 > [Classic AUTOSAR] AUTOSAR架构中的模式管理

[Classic AUTOSAR] AUTOSAR架构中的模式管理

模式间的关系

一个系统在不同级别的颗粒度上包含众多模式,如下图所示,包含车辆模式,应用模式,ECU本地BSW模式。这些模式会互相作用/影响。

他们之间可以有这些相互作用:

  • 在不同的车辆模式下,应用可能处于不同的应用模式(比如是否处于激活状态)

  • 反过来,某些应用的操作状态可能会触发车辆模式的改变

  • 在不同的车辆和应用模式下,BSW模式也可能会变化。比如应用对于通信的需求,可能触发某一路通信网络BSW模式的变化

  • 与此同时,BSW模式变化同样可能影响应用模式或者车辆模式,例如通信网络不可用时,依赖于此通信网络工作的应用可能需要进入limp-home模式

模式请求的处理

车辆模式管理的出发点,既是分发并仲裁模式请求,根据结果来控制BSW。

因此,也就是说,对于每一个OS-Application,都需要有一个模式管理者为本地模式使用者来切换模式,控制BSW。当然,可以拥有多个模式管理者来切换不同的模式。

模式请求是一个“普通的”S/R通信,而模式切换则是一个本地服务。

如上图,模式请求方向不同的模式管理这请求模式切换,模式管理者通知模式使用者此模式切换。

车辆与应用模式管理

这个功能的主要部分由BswM模块处理。

模式请求的分发由RTE执行,RTE同时也要实现模式切换的处理。

例如,对于车辆模式,模式请求一般来自于一个统一模式请求者SWC,不同ECU的BswM都会收到这个请求。

运行在不同OS-Application的BswM可以通过SchM进行S/R通信传递模式请求。

模式处理周期

模式请求方SWC通过S-Port请求模式,RTE分发此请求,BswM通过R-Port接收此请求。

BswM根据设定的规则进行判断,如果满足规则满足触发条件,则执行对应的Action List。

执行Action List时,BswM可能会触发RTE调用模式切换接口作为最后的Action,通知模式使用者仲裁结果。

任一SWC,尤其是模式请求这,可以注册以接收此模式切换通知。

模式请求既可以来自于本地,也可以来自于其他ECU/OS-Application.

需要注意的是,模式请求方只能接受来自于本地BswM的模式切换通知。

往期回顾