AUTOSAR架构的通信系统研究
#AUTOSAR架构的通信系统研究
参考
Classic Autosar 专栏;
AUTOSAR 专栏 1;
AUTOSAR 专栏 2;
AUTOSAR架构深度解析从入门到放弃;
AUTOSAR 专栏 3;
图解AUTOSAR(二)——分层模型及标准化的应用接口;
AUTOSAR 专栏 4
文章介绍了AUTOSAR体系架构,对AUTOSAR COM规范基于信号的通信机制及其特有的传输模式切换系统进行了分析,旨在实现一种符合AUTOSAR COM规范的通信系统。
AUTOSAR体系架构
AUTOSAR即汽车开放系统构架(Automotive Open System Architecture),是汽车制造商、部件供应商及其他相关行业共同合作,为汽车电子提出的开放式标准和架构,以便应用于不同的汽车和平台,提高软件复用性,降低开发成本。当前的汽车电子软件开发大多采用私有的解决方案,很少能在不同制造商之间进行交换,随着功能的发展,对软件标准化的需求越来越迫切。AUTOSAR使得不同的开发者能够“在标准上合作,在实现上竞争”。
AUTOSAR采用分层的体系架构,如图1所示,从上至下依次为应用层、RTE层、服务层、ECU抽象层和微控制器抽象层,还有一个复杂驱动模块。一般情况下,每一层只能使用下一层的接口,并向上一层提供接口。
图1 AUTOSAR体系架构
AUTOSAR COM
AUTOSAR COM是AUTOSAR标准的一部分,它是从OSEK COM标准的基础上发展而来的。AUTOSAR COM提供了一种标准化的访问汽车通讯系统和ECU(Electronic Control Unit)通讯的方式,提出了一个在不同速率的总线网络之间进行数据交换的方法。它为汽车控制单元应用软件提供了一个统一的通信环境,为内部和外部通信定义了公共的软件通信接口和行为,增强了应用软件模块的可移植性。
AUTOSAR COM提供了基本的通信服务,它有明确的上层模块RTE(Runtime Environment)和下层模块PDU Router。
在发送过程中,应用层调用COM层提供的信号或信号组发送函数,根据配置,信号或信号组的数据经过字节顺序转换后被更新到I-PDU(Interaction Layer Protocol Data Unit)中相应的位置中。AUTOSAR COM规范中同一I-PDU可以设置两种发送模式,对其中各信号的传输模式条件进行计算,I-PDU选择其中一种发送模式进行发送。然后启动发送死限监控,调用PduR_ComTransmit()函数将I-PDU发送到底层。
在接收过程中,当底层接收到I-PDU时,底层将调用COM层提供的指示函数Com_RxIndication(),取消并重启接收死限监控,将I-PDU的数据从底层拷贝到COM中。调用信号或信号组的接收函数后,该I-PDU中的信号或信号组将经过字节顺序转换、符号扩展和接收过滤后,数据被拷贝到应用层。
通信系统核心模块的实现
通信系统主要实现信号或信号组的收发功能,以下主要介绍信号发送的实现。首先简要介绍一下AUTOSAR COM中特有的传输模式切换。
传输模式切换
AUTOSAR COM规范定义了4种信号传输模式:
- 直接/N次传输模式
- 周期传输模式
- 混合传输模式
- None传输模式。
在AUTOSAR COM规范中允许为每个I-PDU静态配置两种不同的传输模式。
在AUTOSAR COM规范中通过传输模式切换,来选择I-PDU中的其中一种传输模式进行传输。
- 首先使用过滤机制判断I-PDU中各信号的发送模式条件,同时更新I-PDU中的信号;
- 再通过各信号的判断结果来计算该I-PDU的TMS(transmission mode selector)。若至少有一个C( Si,IPDUk)为True,则TMS为True;若所有C(Si,IPDUk)都为False,则TMS为False。其中C(Si,IPDUk)为传输模式条件该条件与IPDUk中的信号Si相关。
传输模式的选择计算过程如图2所示。
图2 传输模式选择
下面通过一个用例简要说明传输模式的切换。
用例中进行周期传输和直接/N次传输之间的切换(N=3)。
根据I-PDU的传输配置,当TMS(transmission mode selector)判断为真时,设置传输模式为周期传输,反之为直接/N次传输。上层给定值V=a(此时TMS判断为真),进行周期传输;当值V更新为b时(此时TMS判断为假),进行直接/N次传输模式,传输三次。由图3可知,随着V值的更新该I-PDU的传输模式在这两种传输模式之间切换。
图3 传输模式选择用例
信号发送的实现
- 首先根据该信号的相关配置,判定其是内部消息还是外部消息。
- 对于内部发送,直接将信号数据复制到接收信号数据区,并执行通知操作;
- 对于外部发送,若该信号发送属性为触发,则该信号所属的I-PDU将立即发送(除非该I-PDU发送模式为周期传输模式),若该信号发送属性为延迟,则不进行传输,发送时,信号经过字节顺序转换后数据被复制到I-PDU中,同时设置相关更新位信息,然后根据该I-PDU的TMS切换传输模式,进行传输并设置启动相关定时器。各传输模式的传输过程与OSEK COM中大致相同。
信号发送流程如图4所示。
图4 信号发送流程
信号接收的实现
- 首先判定是内部信号还是外部信号。
- 对于内部接收,直接将信号数据复制到接收信号数据区;
- 对于外部接收,首先判断对于的I-PDU组是否启动,若启动,返回E_OK,否则返回COM_STOP,取消并重启该I-PDU的相关死限监控定时器,将数据复制到I-PDU数据区,I-PDU中的信号经过字节书序转换、符号扩展和过滤机制后,复制到接收信号数据区,再执行通知操作,通知上层软件调用相关API函数接收信号。
信号接收流程如图5所示。
图5 信号接收流程
AUTOSAR架构的通信系统研究相关推荐
- 贯穿整个AUTOSAR架构的Interface
注:本文首发于公众号"嵌入式软件实战派". 随着新时代技术的发展,欧洲大地出现了个AUTOSAR,搞得各大车厂要装上AUTOSAR的设备才能在竞争白热化的车市中夺得一席之地.这不O ...
- autosar架构详细介绍_【技术】基于AUTOSAR的电机驱动系统分析
来源 | 前瞻情报部 作者 | 汽车软件 进圈 | "动力总成测试群",关注本公众号后,添加文末主编微信,备注"进圈" 前言 纯电动汽车和混合动力汽车是新能源汽 ...
- tms570 can 接收大量数据_CAN通讯系列--AUTOSAR架构的CAN Interface7
上篇文章简介了AUTOSAR架构的CAN Driver模块,本文将更进一步,来了解CAN Driver模块对接的唯一上层模块--CAN Interface. 9 CAN interface CAN I ...
- AUTOSAR从入门到精通100讲(三十三)-AutoSar架构中的诊断事件管理
Dem在AutoSar架构中的角色和位置 Dem(Diagnostic Event Manager)诊断事件管理,属于Autosar BSW(Basic Software)中的系统服务,在整个架构中所 ...
- AUTOSAR从入门到精通100讲(十三)--autosar架构中的ARXML
在AUTOSAR架构下,ARXML文件作为通用配置文件或数据库文件,在数据传输和存储中起到关键作用 什么是XML? XML(eXtensible Markup Language)可扩展标记语言,是一种 ...
- AUTOSAR架构软件结构简介
近年随着汽车电子化.智能化发展,汽车CAN总线上搭载的ECU日益增多.各汽车制造商车型因策略不同ECU数目略有不同,但据统计平均一台车约为25个模块,某些高端车型则高达百余个.同时娱乐信息系统作 ...
- AUTOSAR架构的故事(干货)
本文来源于"嵌入式软件实战派". 1 AUTOSAR架构概览 之前文章<老板说项目要上AUTOSAR,我慌得一批>讲过,在新世纪,汽车产业蓬勃发展,欧洲大陆的车企们,瞄 ...
- AUTOSAR架构概述
AUTOSAR整体思路概述 一.总体概述 AUTOSAR是Automotive Open System Architecture(汽车开放系统架构)的首字母缩写,是一家致力于制定汽车电子软件标准的联盟 ...
- Classic AutoSAR架构基础入门(CP)
文章目录 1.AutoSAR标准规范 1.AutoSAR标准规范 AUTOSAR主要分为三大层级:应用层(对应ASW).RTE和基础软件BSW. 主要模块如下图所示: 从下至上 Micorocontr ...
最新文章
- R语言使用ggplot2包使用geom_violin函数绘制分组小提琴图(配置边界颜色)实战
- KVM虚拟机内无agent情况下的监控方法
- 一家创业公司的5年架构变迁史
- Java Web(5) Spring 下使用Junit4 单元测试
- android自定义url协议,Android自定义URL方案…?
- 【cocos2d-x 手游研发----地图活起来了】
- 绝对经典的滑轮新闻显示(javascript+css)
- AI之语音转写项目实践
- java 求球体表面积_java设计:计算圆的面积和球体的体积,在一个类中用两种方法实现...
- 接口测试用例设计:常见问题和风险
- 如何利用语音评测技术设计英语口语选择题
- Docker——使用docker工具管理软件/组件的运行,镜像、容器、数据卷的基本概念,常用指令,使用docker搭建Java微服务运行环境
- VuePress构建一个文档管理网站
- mysql 循环之continue
- 作为校招loser,我如何在一年半后的社招中咸鱼翻身
- ozip解密_ozip解包工具下载oppo刷机包ozip解包一加ops解包
- please tell me who you are?
- 无极-怎一个“烂”字了得?
- 取得执业药师证后,你可能会遇到的各种问题!
- word排版-章节大写图片题注小写(带章节号:图1.1,图2.1)