当前位置: 首页 > news >正文

模式管理与网络通信管理笔记

一、关于模式的管理

1. AUTOSAR的BSWM

1)模式通知的方式
  • 功能定位:BSWM是AUTOSAR BSW层中负责管理各模块状态协调与动作执行的模式管理中心
  • 核心机制
    • 信息汇聚:接收来自应用层(ASW)和基础软件层(BSW)的模式信息
    • 中心调度:根据模式信息触发预定动作的执行
    • 状态管理:按照规则建立ECU各状态模式,统一响应状态改变
  • 通知来源
    • RTE层通知:
      • 触发源:ASW层的SWC(Software Component)通过Model Declaration Group发起
      • 路径:通知经RTE层传递至BSWM模块
      • 特点:适用于应用层触发的模式转换
    • BSW层直连:
      • 触发源:其他BSW层模块(如通信栈、诊断模块等)
      • 路径:通过内置服务函数直接通知BSWM
      • 特点:适用于底层模块状态变更通知
2)动作执行的方式

在这里插入图片描述

  • 执行原则:在接收状态转换通知后,协调各模块执行匹配动作
  • 服务函数方式
    • 实现途径:
      • 调用BSW层预定义的服务接口
      • 触发ASW层组件提供的服务函数
    • 特点:
      • 标准化程度高
      • 执行流程固定
      • 适用于常规模式切换场景
  • 回调函数方式
    • 实现机制:
      • 允许用户自定义回调函数
      • 通过函数指针实现动态绑定
    • 优势:
      • 灵活性:可自由组织执行逻辑
      • 可配置性:在代码生成阶段支持重写
      • 扩展性:便于添加特殊处理逻辑
    • 应用场景:需要特殊处理或非标准流程的模式转换
3)工具操作
  • BSWM配置文件夹介绍
    • 创建BSWM模块:
      • 模块位置:在model management下创建BSWM模块,位于bsw models专用文件夹内
      • 文件管理:建议使用单独的arxml文件保存,因其具有高度复用特性
      • 模块结构:包含general和config两大配置选项
    • BSWM的general配置:常用功能使能开关
      • 关键配置项:
        • CAN SM管理:通过SM enable开关控制是否管理CAN SM模块
        • 通信功能:需开启rb com enable、dcm enable支持
        • 错误检测:develop an error detect功能需启用
        • 网络管理:以太网状态管理(internet state manager)必须打开
        • 特殊协议:未使用FLEXRAY时应设为FALSE
        • GL39协议:仅使用GL39 tp部分时不需开启dcm和nm功能
    • BSWM的general配置:主函数运行周期
      • 周期设置:
        • 重要性:BSWM模块对系统状态响应要求高
        • 推荐值:采用1毫秒短周期运行主函数
        • 考虑因素:需平衡响应速度与系统负载
    • BSWM的general配置:debug enable等其它功能
      • 调试支持:
        • debug enable:辅助调试操作建议开启
        • 中断队列:rb interrupt queen max默认设为1
      • 可选功能:
        • SD模块:未使用service discovery功能时应关闭
        • 版本API:veriminfo API根据版本号获取需求决定
    • BSWM的general配置:回调函数头文件声明
      • 回调管理:
        • 头文件声明:手写回调函数需在此声明函数原型
        • 模式关联:BSWM根据模式调用特定回调函数
        • 添加方式:根据实际需求酌情添加引用声明
    • BSWM的general配置:配置建议
      • 优化原则:
        • 功能精简:未使用功能应设为FALSE
        • 系统简化:减少不必要功能可降低调试工作量
        • ECU适配:配置需匹配整个ECU的功能需求
    • BSWM的config配置:三个配置选项
      • 配置结构:
        • arbitration:模式判定管理中心
        • data type mapping:模式数据映射关系
        • mode control:模式相关动作配置
    • BSWM的config配置:arbitration
      • 核心功能:
        • 模式仲裁:提供模式判定的依据标准
        • 状态管理:作为系统模式管理中心
    • BSWM的config配置:data type mapping
      • 映射关系:
        • 参数解析:建立传入数据与模块状态的映射
        • 必要性:BSWM需通过映射理解参数含义
        • 配置内容:需引用各模块的模式声明
    • BSWM的config配置:mode control
      • 动作配置:
        • 模式响应:定义不同模式下执行的动作
        • 执行逻辑:基于当前模式触发相应操作
    • BSWM模块:高度复用
      • 设计特性:
        • 复用优势:模块设计支持跨项目高度复用
        • 配置继承:不建议使用vcu starter新建的BSWM
    • BSWM模式管理:
      • 数据类型映射:
        • 映射定义:将模式与数据类型进行映射,例如将枚举量映射成unsigned int 8类型
        • 配置位置:在software文件夹下的data types/data type mapping sets中定义
        • 应用场景:application data type需要映射时,需在此创建专属映射供BSWM模块使用
      • 模式仲裁:
        • 组成要素:
          • Logical expression(逻辑表达式)
          • Mode conditions(模式情形)
          • Mode request ports(模式请求接口)
          • BSWM rules(BSWM规则)
        • 工作流程:
          • 模式请求接口收集模式数据
          • 模式情形进行初步判断
          • 逻辑表达式进行仲裁
          • 根据仲裁结果触发相应规则
      • BSWM模式请求端口配置:
        • 数据源类型:
          • BSWM自身状态通知
          • CAN SM等标准模块状态指示
          • 应用层SWC的模式通知
          • 自定义模式请求
        • 配置选项:
          • 处理类型选择(immediate/differed)
          • 初始化值定义
          • 模式源声明配置
      • 条件配置:
        • 典型条件类型:
          • 启动阶段定义
          • 非易失存储定义
          • 复位通信控制
          • 网络管理
        • 判断依据:
          • 基于MDG组数据
          • 基于DCM等模块通知
          • 仲裁准则(等于/不等于)
        • 状态声明:可使用MDG组状态或其他BSW模块标准状态
      • 逻辑表达式:
        • 功能:将一个或多个conditions进行逻辑运算
        • 参数引用:
          • 可引用conditions
          • 可引用其他逻辑表达式
          • 可自引用
        • 仲裁网络:形成复杂逻辑关系,最终输出判断结果
      • 规则触发:
        • 关键配置项:
          • 默认规则状态
          • 逻辑表达式引用
          • 成立/不成立时的动作列表
        • 执行机制:根据仲裁结果触发action list中的内容
      • BSWM模式控制:
        • 动作配置:
          • 动作类型:
            • 上电初始化
            • 模式切换
            • RTE定时器启动
            • 状态请求
            • 功能停止
          • 实现方式:
            • 使用预设标准动作
            • 通过call out函数自定义
        • 动作序列:
          • 组成方式:将多个action按顺序组合
          • 注意事项:
            • 需注意动作执行顺序
            • 确保功能引用正确
            • 形成完整的动作链
          • 调用方式:由rules中的action list引用触发

二、网络状态管理

  1. 启动阶段管理
    • MOD request port来源:由BSW的MDG模块提供,用于判定当前ECU状态
    • 启动状态类型:
      • Startup One:默认上电启动状态
      • Startup Two:次级启动状态
    • 状态判定逻辑:通过逻辑表达式判断Startup One与Startup Two之间的转换关系
  2. 状态控制器拉起
    • BSW MSW动作:
      • 通过Action List中的Switch Run动作触发
      • 初始化所有通信相关模块
    • 网络请求流程:
      • BSW模块调用Comm中的网络管理通道
      • 拉起控制器状态
    • 总线管理器类型:
      • KSM(CAN状态管理器)
      • LIN SM(LIN状态管理器)
      • Ethernet TSM(以太网状态管理器)
  3. 仲裁机制
    • 仲裁依据:基于BSW MSW规则集中的逻辑表达式
    • 执行过程:
      • 引用BSW MSW Switch Run动作
      • 通过Action List确定具体执行类型
    • 网络管理:
      • 按照初始化顺序触发网络请求
      • 通过Comm模块协调各总线状态

三、COM构成

  • 通道管理机制:在COM的config set中管理CAN和LIN两个通道,将用户使用需求提供给BSW M调用
  • 工作流程:BSW M触发动作后通知COM启动网络通道,例如CAN通道的启动管理
  • 层级关系:COM作为中间层,向上对接用户需求,向下管理具体通信通道

四、CANSM模块

  • 功能定位:专门管理从属的CAN通道,通过CANSM模块实现对MCAL层的控制
  • 状态管理:负责将控制器节点切换为start/stop/sleep等状态,完成网络管理使能
  • 协同机制:需要与BSW模块协同使用,形成完整的模式管理中心
  1. 模式管理架构
    • 管理维度:
      • 通信控制器状态:硬件层面的工作状态
      • 通信模式状态:协议栈层面的通信模式
      • 网络管理状态:网络唤醒/睡眠状态
      • DCM状态:诊断通信管理状态
    • 集中管理:所有状态由BSW M统一处理,实现中心化调度
  2. AUTOSAR模式管理
    • 决策机制:BSW M汇总各模块模式状态信息,综合决断ECU当前应执行的动作
    • 优势特点:
      • 统一管理复杂的控制器状态
      • 便于未来进行集中动作调度
      • 提供标准化的状态转换接口
    • 学习建议:需要结合BSW模块整体学习SM LINUX、SM FLEXRAY等模式管理模块

五、知识小结

知识点核心内容关键配置/实现要点模块关联性
BSWM模块功能负责BSW层模块间状态管理与动作执行的模式管理中心• 汇聚应用层/BSW层模式信息
• 触发预定动作执行
• 实现软件中心调度
与RTE/COM/EcuM/NM等模块深度耦合
模式通知机制两种触发方式:
1. 通过RTE发起模式转换通知
2. BSW模块直接服务函数通知
• ASW层SWC通过Mode Declaration Group通知
• 标准模块(如CANSM)通过内置服务函数通知
RTE作为核心中转层
动作执行方式1. 调用服务函数
2. 回调函数机制
• 回调函数支持代码生成阶段配置重写
• 提供更高灵活性
依赖Service Layer接口
BSWM配置架构三级配置体系:
1. Arbitration(仲裁)
2. Data Type Mapping
3. Mode Control
• 逻辑表达式实现复杂状态机仲裁
• Action List支持多动作序列化执行
需与MDG(Mode Declaration Groups)配合
启动流程管理典型状态切换链:
Startup One→Startup Two→Run
• 通过Mode Condition判断启动阶段
• 关联网络管理/通信控制初始化
与EcuM启动流程协同
网络状态管理统一协调通信控制器状态切换:
• CAN/LIN状态机管理
• NM状态同步
• 通过ComM_RequestCom等标准接口控制
• 需配置通道映射关系
依赖ComM/CANSM模块
开发实践要点1. 周期配置(建议1ms)
2. 按需启用功能模块
3. 回调函数头文件声明
• 在General配置启用所需模块管理功能
• 通过Callout实现自定义逻辑
需考虑代码复用性
调试关键项1. 模式仲裁逻辑验证
2. 动作序列完整性检查
3. 状态同步时序
• 使用Debug Enable配置项
• 重点监控Logical Expressions输出
涉及多模块联调
http://www.dtcms.com/a/474999.html

相关文章:

  • 创建一个免费网站商城类网站风格
  • 翼城网站建设做音乐头像网站
  • commons-digester3(XML解析框架)
  • 静态网站开发学网站开发看什么书
  • OpenAI Agents 记忆管理示例
  • 网站 做 app开发工具wordpress页眉插件
  • 做网站用的什么服务器建筑模板怎么装
  • 网站后台文档深圳做h5网站设计
  • Git版本控制的讲解及详细的安装流程
  • 珠海市手机网站建设公司邗江区做网站
  • 深圳营销型网站建设服务商网站开发与部署
  • 北京建网站 优帮云建设企业网站地址
  • 邢台住房和城乡建设部网站西安网页设计工资
  • 网站加后台广州建设外贸网站
  • Ape.Volo项目启动前端项目时报错“digital envelope routines::unsupported”
  • 全球算力投资激增与人工智能产业演进:多维度分析与未来展望
  • 网站建设岗位廉政风险防控正规的网页制作
  • 东莞高埗网站建设简易网站建设维护
  • C#中堆和栈的概念
  • 安康网站制作青岛网站建站团队
  • 域名估价哪个网站准确江西恒通建设工程有限公司网站
  • 沈阳黑酷做网站建设优化公司怎么样jsp mysql 网站开发
  • 网站开发使用云数据库技术教程制作图片的软件加字体
  • 防火墙的类别和登录Web的方法
  • 江西教育网站建设成都短视频代运营
  • 鸿运通网站建设怎么样马鞍山网站建设费用
  • Agent S / Agent S2 的架构、亮点与局限
  • [数据结构] 哈希表
  • 网站域名后缀那个好中山做网站费用
  • Linux系统编程—Linux进程信号