本文框架

  • 1.概述
  • 2. BswM属性介绍
    • 2.1 模式仲裁
      • 2.1.1 Rules
      • 2.1.2 LogicalExpression
    • 2.2 模式控制
    • 2.3 基本控制过程
  • 3. BswM功能介绍
    • 3.1 WakeUp
    • 3.2 RUN
    • 3.3 POSTRUN
    • 3.4 PrepareShutDown
    • 3.5 Wait for Nvm
  • 4. BswM配置
  • 5.模式管理系列文章汇总

1.概述

BswM(Basic software Management)即基础软件管理模块,它的职责是根据简单的仲裁规则对来自应用层SWCs或其他底层BSW模块的模式请求进行仲裁,并根据仲裁结果执行相应的操作。
如上描述中提到的,其核心为规则(Rule)与操作(Action)。
其在Autosar的层级如下:

2. BswM属性介绍

在进行具体功能介绍前,先对BswM的基本属性进行下介绍,方便大家有基本认识后再去深究。对BswM属性介绍还是按模式仲裁(Rule)与模式控制(Action)两个方面进行:

2.1 模式仲裁

模式仲裁是BswM模块基于一定的规则去做判断,涉及的概念有Rules、LogicalExpression、Condition。

2.1.1 Rules

即模式判断的条件或规则,如if…else…

2.1.2 LogicalExpression

条件的逻辑组合,几个条件组合在一起并通过与或非等组成条件判断的最终表达式。
如下图中的Normal_Mode = True Ifc1_Bus_Off=False

2.2 模式控制

模式的控制是根据设定的规则对模式请求作出仲裁后执行的一系列操作,涉及的概念有:Action、ActionList(AL)
如下图所示,BswM可能包括多个ActionLists,每个ActionList也可以包括多个Acions。ActionList中的元素可以是具体的动作也可以是另一个ActionList的引用,或者也可以是仲裁模式可执行的规则。

2.3 基本控制过程

下图显示了模式请求的最小处理循环:

  1. 模式请求的SWC通过其请求的接口像BswM请求模式A,BswM通过其接收端口接收请求;
  2. BswM对收到的模式请求根据其制定的规则进行仲裁;
  3. 根据仲裁结果执行相应的ActionList;
  4. 在执行ActionList时,BswM可通过RTE将仲裁结果反馈个给模式请求者。

3. BswM功能介绍

在了解完BswM的基本运转思路后,我们进一步学习下其Autosar中的具体应用。在另一篇介绍EcuM的文章中也曾提及,BswM的模式管理的阶段为OS运行期间,即在StartOS后开始BswM_Init(),在关闭ShutDownOS前进行BswM_Deinit()。
如下图BswM参与控制ECU的状态分有:WAKEUP、RUN、POSTRUN、PrepareShutDown及Wait for Nvm。后续将对状态间的转换进行详细描述。

3.1 WakeUp

当ECU处于WakeUp状态时,BswM会根据EcuM是否有确认的唤醒源或者ComM是否有通信请求,来进行仲裁:
如有确认的唤醒源或者ComM有通信请求则执行的操作为将ECU状态由 WakeUp→RUN
反之,如没有确认的唤醒源且ComM没有通信请求则状态切换为:WakeUp→PrepareShutDown

3.2 RUN

RUN状态为ECU正常工作状态,当ECU没有Run Request且所有通道没有通讯请求或强制关闭所有Run Request时将切换状态为RUN→POSTRUN

3.3 POSTRUN

POSTRUN为Prepare Shutdown前的一个状态,该状态下如果ECU又有Run Request或者有效唤醒事件或者存在通讯请求时将重新切换状态:POSTRUN→RUN
否则将继续进入下一个状态:POSTRUN→PrepareShutDown

3.4 PrepareShutDown

当ECU处于PrepareShutDown状态后将进入开启定时器等待写Nvm的阶段PrepareShutDown→Wait for Nvm

3.5 Wait for Nvm

在Wait for Nvm阶段如果存在有效唤醒源,且关闭运行的请求被释放后仍可回到WakeUp阶段,即Wait for Nvm→WakeUp,继续BswM的控制。
但如果以上都没有发生,ECU将会继续选择进一步的模式为休眠(GoHalt/GoPoll)或ShutDown(GoDown)。
对应的状态变换:
Wait for Nvm→Sleep
Wait for Nvm→ShutDown

4. BswM配置

一般BswM在Davinci Configurator中采用其默认选项自动配置,工具也支持用户自己加一些特殊的需求,本部分暂时不做过多介绍,后续如有同学感兴趣再一起进行探讨。

5.模式管理系列文章汇总

1)Autosar模式管理系列介绍02-EcuM
2)Autosar模式管理系列介绍03-WdgM
3)Autosar架构下BswM模式切换详细介绍

Autosar模式管理系列介绍01-BswM相关推荐

  1. AUTOSAR从入门到精通100讲(二十七)-AutoSar模式管理总揽

    介绍下AUTOSAR中的模式管理(Mode Manager)的机理.了解模式管理之前,先解释下三个重要的概念:模式.状态和阶段. Mode(模式) 模式是运行在车辆中的各种状态机(不仅仅是ECU状态管 ...

  2. 【系列】如何管理数据团队01

    ​作者介绍 @周哈哈哈 数据分析专家,10多年工作经验. 先后任职于艾瑞咨询,电信,网易,美图等. 现于某互联网独角兽担任数据部门负责人, 致力于企业数据化管理和应用, 利用小团队,创造大价值. &q ...

  3. PMBOK项目管理知识体系指南第七版管理模型介绍系列

    本文内容结构 一.PMBOK7th 管理模型介绍系列-Cynefin框架简介 1.前言 2.Cynefin框架简介 3.如何确定问题所属区域 4.如何处理每个域的问题 5.总结 (本文作者:苏宁金融- ...

  4. linux磁盘管理系列三:LVM的使用

    2019独角兽企业重金招聘Python工程师标准>>> linux磁盘管理系列三:LVM的使用 LVM是什么 LVM是Linux操作系统的逻辑卷管理器. 现在有两个Linux版本的L ...

  5. Exchange Server 2003多服务器安装以及管理工具介绍

    Exchange服务器系列课程之二--Exchange Server 2003多服务器安装以及管理工具介绍 http://www.z8soft.com/article/server| 2011年4月1 ...

  6. UDS诊断系列介绍08-19服务

    本文框架 1. 系列介绍 1.1 19服务概述 1.2 DTC故障码定义 1.3 DTC状态位 2. 19服务常用子服务 2.1 19 01服务 2.2 19 02服务 2.3 19 04服务 2.4 ...

  7. UDS诊断系列介绍13-31服务

    本文框架 1. 系列介绍 1.1 31服务概述 2. 31服务请求与应答 2.1 31服务请求 2.2 31服务正响应 2.3 31服务否定响应 3. Autosar系列文章快速链接 1. 系列介绍 ...

  8. 【ENVI入门系列】01.ENVI产品简介与入门

    [ENVI入门系列]01.ENVI产品简介与入门 (2014-09-22 10:18:21) 转载▼ 标签: 杂谈 分类: ENVI 版权声明:本教程涉及到的数据仅供练习使用,禁止用于商业用途. 目录 ...

  9. 达梦数据库DM8-DM管理工具介绍和简单使用

    达梦数据库DM8-DM管理工具介绍和简单使用 系列文章目录 本文环境 1.DM管理工具介绍 2.DM管理工具简单使用 1.打开DM管理工具 2.数据库连接 3.DM管理工具常用功能介绍 系列文章目录 ...

最新文章

  1. 镜像浏览器_Docker 企业级私有镜像仓库 Harbor 部署
  2. 利用 pywin32 操作 excel
  3. python 文本相似度_python实现余弦相似度文本比较
  4. 月薪11万招数据工程师,看到要求我傻眼了!
  5. 开发人员需要了解的渐进式Web应用程序
  6. TDD、BDD、ATDD、DDD 软件开发模式
  7. python描述器 触发事件_Python描述器引导(转)
  8. JAVA当中数组学习(初级)
  9. 海洋cms v6.53 v6.54版本漏洞复现
  10. 苹果app代码行数统计
  11. python中的猴子补丁Monkey Patch
  12. 5.ESL笔记:线性模型与高斯-马尔科夫定理
  13. linux支持的阵列硬盘柜,在Linux上玩好 硬盘 阵列
  14. 牛客网 SQL17 10月的新户客单价和获客成本
  15. 无线路由器打印机服务器设置,newifi新路由打印机服务器设置全教程
  16. chaigpt对接Siri
  17. Postman下载及使用技巧
  18. ZBar扫描二维码乱码
  19. android Cannot access com.xxx
  20. 存储计算机当前正执行的应用程序,存储计算机当前正在执行的应用程序和相应的数据的存储器是什么...

热门文章

  1. F - Supermarket
  2. 欢迎来到 VOXEL WARS!
  3. 今日头条的排名算法_今日头条搜索seo排名怎么做 今日头条搜索排名规则
  4. quartus增量编译
  5. 短进程优先算法(C,Java实现)
  6. 谨以此文,谨言慎行。
  7. 中台之上(二):为什么业务架构存在 20 多年,技术人员还觉得它有点虚?
  8. 企业服务器3d建模系统,3d云设计服务器
  9. AD定义pcb外形为异形
  10. 10个没有结过婚的牛人