AUTOSAR简介

2023-05-16

1. 简介

AUTOSAR全称为“AUTomotive Open System ARchitecture”,译为“汽车开放系统体系结构”;
AUTOSAR是一家由汽车电子、半导体和软件行业的汽车制造商供应商服务提供商等公司组成的全球开发合作伙伴组织;
AUTOSAR定义了三个文档组Classic Platform(CP)Adaptive Platform(AP)Foundation(FO),基于CP和AP的ECU基于共同标准FO实现彼此连接;

来自一个技术人的学习建议:
Q:初次学习AUTOSAR应该从哪些文件入手呢?
A:AUTOSAR是一个庞大的标准,包含了超过200份规范和20000个需求。建议从阅读标准中的Layed Software Architecture文档入手。接下来可以学习AUTOSAR方法论规范(Methodology)。在接下来就是有选择性的阅读AUTOSAR模板规范(TPS)和BSW的软件规范(SWS)了。

2. AUTOSAR核心思想

AUTOSAR提倡“在标准上合作,在实现上竞争”原则;
AUTOSAR核心思想是“统一标准,分散实现、集中配置”,即统一的开放平台、软件系统层次化模块化,降低应用与平台耦合性、统一格式的配置信息,集中配置生成系统;
一个汽车电子应用系统可包含多个相互关联的AUTOSAR组件。组件通过虚拟功能总线(VFB)提供标准通信机制与服务实现平台无关性

3. AUTOSAR功能

主要功能,如下图所示:
主要功能示意图

  • 汽车功能可用性安全性需求
  • 保持汽车电子系统一定冗余
  • 移植到不同汽车的不同平台;
  • 将标准的基本系统功能转化为标准软件模块
  • 通过网络共享软件功能
  • 集成多个开发商提供的软件模块
  • 更好的进行软件维护
  • 充分利用硬件平台处理能力
  • 汽车电子软件的更新与升级

AUTOSAR在汽车领域的应用,如下图所示:
AUTOSAR应用领域
AUTOSAR模块功能,如下图所示:
模块概述

4. AUTOSAR标准分类

4.1 Classic Platform(CP)

CP框架进行方法(软件开发作业的流程和输入输出的形式的定义)以及应用程序接口(API)的标准化;
CP架构在最高抽象级别上区分了在微控制器上运行的三个软件层:应用程序、运行时环境 (RTE) 和基本软件 (BSW):

  • 应用软件层大多独立于硬件;
  • 软件组件之间的通信通过RTE访问BSW;
  • RTE表示应用程序的完整接口;
  • BSW分为三个主要层和复杂驱动因素:服务、ECU抽象、微控制器抽象,服务分为代表系统、内存、通信服务基础结构;
    CP结构图

4.2 Adaptive Platform(AP)

AP实现了 AUTOSAR Runtime for Adaptive Applications (ARA);
Adaptive标准主要针对自动驾驶和娱乐系统应用相关的标准;
AP有两种类型的接口可用:服务和 API;
AP模块结构,如下图所示:
AP结构图
AP功能概述(图片来源于“搞一下汽车电子”):
AP功能概述

4.3 Foundation(FO)

FO目的是在 AUTOSAR 平台之间实现互操作性;
FO包含AUTOSAR平台之间共享的常见要求和技术规范;
FO结构图

4.4 Acceptance Test Classic Platform(AT)

AT结构图

4.5 Application Interface(AI)

AI结构图

5. AUTOSAR 软件架构

AUTOSAR软件架构图

5.1 应用层

应用层包括应用软件组件传感器执行器软件组件;
应用层软件组件通过RTE进行内部通信ECU资源访问

5.2 运行环境层

RTE层与ECU、具体应用相关,应该为每个ECU分别实现;
RTE层为组件之间的通信提供了支持
RTE层实现应用软件与硬件的无关性;

5.3 系统服务层

系统服务层包括通信服务操作系统,如操作系统服务、汽车网络管理、管理服务、存储服务、诊断服务、ECU状态管理;
系统服务层的实现与微控制器、ECU、具体应用相关;

5.3.1 操作系统

AUTOSAR操作系统不但以OSEK/VDX系统作为基础,同时也做了功能扩展,如下:

  • 核心功能添加了软硬件计数器、带有时间同步的任务表、堆栈监控功能;
  • 保护功能添加了时间同步保障、内存保护、服务保护、操作系统应用(任务执行、中断、延时、确定功能)、确定与非确定代码功能;
    ->时间同步保障:实现系统任务表时间同步、对芯片时间片的静态分配;
    ->内存保护:堆栈、私有数据、代码端的保护,分离不同应用程序在内存的物理位置;
    ->服务保护:避免错误、破坏性的系统调用;
    ->确定与非确定代码功能:确定代码可五点调用系统应用,不确定代码只能在一定限制下调用;

操作系统的扩展属性分级,如下:

  • 扩展等级1:运用于普通的实时操作系统,包括任务管理、事件触发机制、计数、定时、消息传递等;
  • 扩展等级2:OSEK系统和时间同步保障,有响应快、延时少、精准度搞;
  • 扩展等级3:OSEK系统和内存保护,保障系统运行中不发生内存冲突;
  • 扩展等级4:OSEK系统和时间同步保障、内存保护系统组成;

操作系统实现要求,如下:

  • 静态配置;
  • 实时系统特性;
  • 优先级机制;
  • 运行可靠,有自维护功能;
  • 系统开销小,不需要外部资源;

5.4 微控制器抽象层

微控制器抽象层实现的不同硬件接口的统一,实现了对硬件的封装;
微控制器抽象层包括控制器驱动、管理微控制器的外设,如DIO、ADC、PWM、EEPROM、Flash、CCU、SPI、I2C等驱动;

5.5 复杂驱动模块

复杂驱动模块是复杂传感器执行器操作模块的映射

6. 软件框架

软件框架包括SWC、RTE、BS三个模块,模块定义如下:
SWC:应用层软件标准的定义;
RTE:应用层和基础层的接口;
BS:硬件驱动、网络通信、实时任务调度等底层服务程序,:BS又分为以下4个部分:

  • 服务层
  • ECU抽象层
  • 微控制器层
  • 复杂驱动层

软件架构的详细划分,如下图所示:
抽象架构

6.1 SWC

6.1.1 SWC概念

SWC是封装的、规范的、可重用的软件模块;
SWC是组织系统的基础单位;
SWC由核心功能(构建功能执行代码)端口(输入端口和输出端口)接口(VFB支持的两种通信接口,C/S通信接口和S/R通信接口)组成,如下图所示:
SWC结构示意图

  • AUTOSAR一个功能可由多个SWC组成;
  • 每个SWC封装某个应用的部分功能;
  • 所有的SWC都必须映射到唯一的物理ECU中;

SWC功能**<示例>**,如下图所示:
功能实例

6.1.2 SWC要求

  • 所需数据与所能提供数据
  • 运行时需要的系统资源
  • 对基础硬件和软件的要求
  • 实现的功能

6.1.3 SWC独立性

  • MCU型号无关
  • 映射方式无关
  • 与其他SWC位置无关
  • 与系统中的SWC个数无关

6.2 RTE

RTE是ECU内部和ECU之间的信息交互中心;
RTE提供了通信抽象层,相同的接口与服务让不同ECU内部模块及ECU之间实现信息共享;
RTE将针对特定的ECU或系统配置进行裁剪(具体要求视ECU而定);

6.3 BS

BS为SWC提供了基本服务;
BS处理标准规范和ECU自带功能模块,还包括服务(诊断协议、NVRAM、Flash和内存管理)、通信(网络框架(CAN、LIN、FlexRay)、I/O管理、网络管理)等;
BS结构,如下图所示:
BS结构图
注:OSEK基础标准包括:实时操作系统(OSEK-OS)、通信子系统(OSEK-COM)、网络管理系统(OSEK-NM);

6.4 VFB

VFB将软件构件间、软件构件与基础软件间的通信进行了抽象;
VFB是虚拟硬件和独立映射系统的集合;
VFB为构件提供了标准的通信机制和服务;
VFB包含SWC标准化接口、设备驱动(底层软件中实现)、ECU抽象层(底层软件中实现)、AUTOSAR服务(底层软件中实现);
VFE的特点,如下:

  • 所有的VFB都连接在VFB上;
  • VFB保证SWC之间、SWC与ECU之间的可靠通信;
  • VFB是SWC独立于硬件的基础;
  • VFB简化了SWC的设计;
    VFB通信方式,如下:
  1. C-S通信
    CS通信模型
  2. S-R通信
    SR通信模型

VFB结构原理图,如下所示:
VFB工作原理图

7. AUTOSAR接口分类

AUTOSAR支持三种不同的接口,分别是AUOSAR接口、标准化AUTOSAR接口、标准化接口;如下图所示:
接口结构图
AUOSAR接口:描述原件接收和发送的数据和服务;
标准AUOSAR接口:AUOSAR框架定义的接口;
标准化接口:软件中具有的API;

基于AUTOSAR的ECU软件结构,如下图所示:
ECU软件结构

8. 规范与标准

8.1 SOME/IP

  1. AUTOSAR_PRS_SOMEIPProtocol.pdf
    Scalable service-Oriented MiddlewarE over IP简称为SOME/IP,译为“基于IP可扩展的服务中间件”;
    属于AUTOSAR Foundation(FO)部分;
    该文档定义了SOME/IP协议规范,包括消息格式、传输标准等。

  2. AUTOSAR_PRS_SOMEIPServiceDiscoveryProtocol.pdf
    SOMEIP Service Discovery简称为SOME/IP-SD,译为“SOME/IP服务发现”;
    属于AUTOSAR Foundation(FO)部分;
    该文档定义了SOME/IP-SD协议规范,SOME/IP-SD是基于SOME/IP进行实现的。

  3. AUTOSAR_SWS_SOMEIPTransportProtocol.pdf
    SOME IP Transport Protocol简称为SOME/IP-TP,译为“SOME/IP传输协议”;
    属于AUTOSAR Classic Platform(CP)部分;
    该文档定义了大SOME/IP数据包的分段与重组规范,以及SOME/IP-TP实现方法与接口标准。

  4. AUTOSAR_SWS_SOMEIPTransformer.pdf
    SOME IP Transformer简称为SOME/IP Transformer,译为“SOME/IP装换器”;
    属于AUTOSAR Classic Platform(CP)部分,是对“序列化”部分的一个补充;
    该文档定义Transformer的实现,实现可配置的数据序列化和反序列化;

  5. AUTOSAR_SWS_ServiceDiscovery.pdf
    Service Discovery简称SD,译为“服务发现”;
    属于AUTOSAR Classic Platform(CP)部分;
    定义了AUTOSAR的SD软件规范;

  6. AUTOSAR_PRS_TestabilityProtocolAndServicePrimitives.pdf
    Test ability Protocol And Service Primitives译为“测试能力协议和服务原语”;
    UpperTester简称为UT,译为“上限测试”;
    属于AUTOSAR Classic Platform(CP)部分;
    该文档定义了UT基于以太网传输的通信指令格式,该控制指令默认使用的是UDP:1000进行传输,指令格式使用类似SOME/IP的格式进行封装。
    汽车以太网测试之UpperTester

参考文章

汽车电子与软件 - 系列分享
详解AUTOSAR分层架构与软件组件
该文章中的绝大部分内容来自:微信读书《汽车嵌入式系统原理、设计与实现》- AUTOSAR体系简介,此处仅仅作为一个知识的传播;

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

AUTOSAR简介 的相关文章

  • 来来来!我告诉你 AUTOSAR架构深度解析从入门到放弃

    如何快速学习AUTOSAR 关于AUTOSAR的背景和架构信息 xff0c 这里就不详细展开了 大家可以参看 xff1a AUTOSAR的分层架构 一文了解 今天我们重点讲讲如何快速学习AUTOSAR架构的方法 如何获取规范文档 xff1f
  • 3.Adaptive AUTOSAR 架构详解

    3 1 逻辑层架构 下面显示了AP的逻辑架构 xff0e AA xff08 adaptive application 在ARA AUTOSAR Runtime for Adaptive Applications 上运行 ARA包含了所有功能
  • AUTOSAR——AUTOSAR基础

    一 AUTOSAR AUTOSAR全称为 AUTomotive Open System ARchitecture xff0c 译为 汽车开放系统体系结构 二 AUTOSAR核心思想 1 xff09 提倡 在标准上合作 xff0c 在实现上竞
  • 1、AUTOSAR简介

    AUTOSAR xff08 AUTotmotive Open System ARchitecture xff09 汽车开放系统架构是由全球各大汽车整车厂 汽车零部件供应商 汽车电子软件系统公司联合建立的一套标准协议 xff0c 是对汽车技术
  • Autosar CAN通讯——CANSM

    关于CANSM参考 xff1a https zhuanlan zhihu com p 126073070
  • AUTOSAR简介

    1 简介 AUTOSAR全称为 AUTomotive Open System ARchitecture xff0c 译为 汽车开放系统体系结构 xff1b AUTOSAR是一家由汽车电子 半导体和软件行业的汽车制造商 供应商 服务提供商等公
  • 基于PREEvision的AUTOSAR Adaptive设计

    导读 xff1a 为适应汽车智能化 网联化等的发展趋势 xff0c 应对汽车E E系统开发面临的高性能处理器的应用 自动驾驶的软件实现 高带宽通信需求 车与外界的互联互通等的挑战 xff0c AUTOSAR组织推出了AUTOSAR Adap
  • CP AUTOSAR 简介

    嵌入式系统不支持硬件抽象 xff0c 使得我们每次在进行新的处理器更换之后 都需要进行重新进行底层软件的开发 2003年建立autosar 组织 autosar官方文档非常长2万多页 xff0c 从这里可以看出什么 xff1f 1 auto
  • AUTOSAR的E2E通信安全

    AUTOSAR标准的安全通信为支持功能安全 xff0c AUTOSAR标准结合ISO 26262功能安全标准 xff0c 在基础软件层从安全执行 安全通信以及安全内建测试三个方面做出了规范 xff0c 并规范 AUTOSAR标准的安全通信
  • AP AUTOSAR——Network Management

    16 Network Management 16 1 What is Network Management 网络管理是Adaptive Platform Services中的一个功能集群 作为AP AUTOSAR平台的服务 xff0c 网络
  • Adaptive AUTOSAR——Execution Management(VRTE 3.0 R21-11)

    ChatGPT回答 xff1a Adaptive AUTOSAR Execution Management 模块是用于管理软件执行的模块 xff0c 其主要功能包括 xff1a 任务调度 xff1a 支持对任务进行调度和执行 xff0c 以
  • Adaptive AUTOSAR 文档官方如何阅读

    目前很多关于 Adaptive AUTOSAR 的文章都是官方文档的简化翻译 xff0c 不如直接看官方文档更全面深入 Adaptive AUTOSAR 文档官方下载地址 Adaptive Platform AUTOSAR https ww
  • AUTOSAR E2E & SecOC Comparison

    AUTOSAR E2E amp SecOC Comparison 前面已经介绍过了E2E 和 SecOC CMAC 了 xff0c 既然2者都可以进行数据完整性保护 xff0c 那么2者有什么区别呢 下面基于我的经验所总结 欢迎补充 xff
  • Adaptive Autosar 整体架构理解

    1 总体说明 xff08 图片来源主要来源于Simulink 以及 Vector xff09 在Autosar官网 xff08 autosar org xff09 上 xff0c 目前CLASSIC PLATFORM 更新到4 4版本 xf
  • Adaptive Autosar通讯层:ARA::COM中的Instance Identifiers

    一般概念 实例标识符 在收发两端都是要用的 是很核心的概念 proxy端用来搜索服务 xff0c skeleton端用来创建服务实例 站在API的角度来看 xff0c 这样的识别符是和特定的技术绑定的 所以 xff0c 标识符的结构和内容都
  • 【AUTOSAR】【以太网】TCPIP

    目录 一 概述 二 约束和假设 三 依赖模块 3 1 EthIf 3 2 EthSM 3 3 SoAd 3 4 KeyM 3 5 CSM 四 功能说明 4 1 系统扩展性 4 2 IPv4 4 2 1 IPv4 4 2 2 ARP 4 2
  • PHY- PHY芯片概述

    1 PHY概述 关于Internet Protocal的分层模型可以参考文章 Internet Protocal OSI模型中的网络分层模型 下面我们讲讲底层以太网控制器和收发器的知识 其主要是处理OSI模型中的物理层和链路层的事情 在CA
  • Classic AUTOSAR专题

    往期小怿向各位小伙伴介绍了Classic AUTOSAR专题之I O模块 相信看过的小伙伴对Classic AUTOSAR的I O模块已经有基本的认知了 本期为大家介绍 AUTOSAR模块之诊断模块 内容超丰富 将分两期推出哦 目录 1 概
  • SOTA机制详解

    1 SOTA的定义 SOTA即软件在线升级 Software updates Over The Air 是指在不连接烧写器的情况下 通过CAN UART或其它通讯方式 实现应用程序的更新 在进行SOTA时 需要把旧的应用程序擦除 把新的应用
  • IPC-核间通讯

    1 IPC通讯是AUTOSAR体系结构中的核心组成部分 它使得不同的软件组件可以相互通信 协同工作 从而实现整车系统的功能 IPC可以理解为核间通讯 就是一个芯片有多个核 现在想让多核之间通信 达到下面几个目的 数据共享 不同的软件组件之间

随机推荐

  • C语言volatile的作用及使用场景介绍

    简介 volatile 先从基础的知识说起吧 xff0c 这样也有个来龙去脉 我们都知道 xff0c 程序运行后 xff0c 程序的数据都会被从磁盘加载到内存里面 xff08 主存 xff09 而当局部的指令被执行的时候 xff0c 内存中
  • SNMPv3报文

    相应的数字表示 xff08 对象标识符OID xff0c 唯一标识一个MIB对象 xff09 为 xff1a 1 3 6 1 2 1 4 3 图2 MIB树结构 当网络管理协议在报文中使用MIB变量时 xff0c 每个变量名后还要加一个后缀
  • 详解C语言中volatile关键字

    volatile提醒编译器它后面所定义的变量随时都有可能改变 xff0c 因此编译后的程序每次需要存储或读取这个变量的时候 xff0c 都会直接从变量地址中读取数据 如 果没有volatile关键字 xff0c 则编译器可能优化读取和存储
  • EtherCAT从站学习笔记——2.4通信模式

    在实际的控制系统中 xff0c 应用程序之间一般有两种类型的数据交换形式 xff1a 时间关键数据 time critical 和非时间关键数据 non time critial 时间关键表示特定的动作必须在确定的时间内完成或处理 xff0
  • 在linux下利用ls命令进行模糊查找

    如上图 xff0c 我们当前路径下有三个文件 xff0c 分别为helloworld c以及helloworld和1 c xff0c 直接输入命令ls则显示所有文件 xff0c 我们可以利用ls 加 的方向进行模糊查找 输入ls 目录名 形
  • 树莓派第一次开机自动连接WIFI(不用显示屏方法)

    当我们把树莓派系统镜像烧录到SD卡之后 xff0c 我们在windows看到的TF卡变成了空间很小的名为boot的盘 xff0c 我们在此目录下新建一个名为wpa supplicant conf空白文件 xff0c 并在其中加入以下代码 c
  • linux交叉编译时报错 libfreetype.so: file not recognized: File format not recognized

    root 64 ubuntu home linuxsystemcode 04th print info arm none linux gnueabi gcc finput charset 61 GBK o example1 example1
  • 神经网络epoch和batch的粗浅理解

    关于神经网络epoch和batch的理解 理解粗浅 xff0c 仅为个人想法 xff0c 提前感谢指正 epoch 一个epoch代表全部数据进入网络一次 xff0c 这个时候 xff0c 整个网络结构只对这批数据全部走完一次 xff0c
  • 目标检测与位姿估计(二十三):OpenCV+Aruco完成目标检测

    一份识别图像图像中所有Aruco的代码 include lt opencv2 core core hpp gt include lt opencv2 imgproc imgproc hpp gt include lt opencv2 hig
  • 随记(2):PP-Tracking工具

    目标跟踪任务意义 需求 xff1a 自动驾驶 智慧城市 安防领域面向车辆 行人 飞行器等快速运行的物体实时跟踪及分析 算法优势 xff1a 单纯的目标检测算法只能输出目标的定位 43 分类 xff0c 无法对移动的目标具体的运动行为及运动特
  • 【ROS&GAZEBO】多旋翼无人机仿真(一)——搭建仿真环境

    ROS amp GAZEBO 多旋翼无人机仿真 xff08 一 xff09 搭建仿真环境 ROS amp GAZEBO 多旋翼无人机仿真 xff08 一 xff09 搭建仿真环境 ROS amp GAZEBO 多旋翼无人机仿真 xff08
  • 【ROS&GAZEBO】多旋翼无人机仿真(三)——自定义多旋翼模型

    ROS amp GAZEBO 多旋翼无人机仿真 xff08 一 xff09 搭建仿真环境 ROS amp GAZEBO 多旋翼无人机仿真 xff08 二 xff09 基于rotors的仿真 ROS amp GAZEBO 多旋翼无人机仿真 x
  • 当使用CUBEMX,STM32F429阿波罗开发板的PCF8574与1-Wire冲突的解决办法。

    hello 大家好 xff01 距离上次写博客还是上半年呢 这几个月做了很多实验 xff0c 不过都很懒 xff0c 一直没有写上来 准备慢慢补回来 下面是我在使用原子哥的STM32F429的开发板做温度传感器项目的小实验时遇到的问题 1
  • 【ROS&GAZEBO】解决“is neither a launch file in package ”的问题

    这两天有小伙伴问到在安装完rotors后出现如下问题 xff1a 这个问题其实是ros环境没有配置好 xff0c 运行下面的命令 xff0c 将catkub ws加入ros的工作空间 span class token function mk
  • 【ROS&GAZEBO】多旋翼无人机仿真(七)——四元数姿态控制

    ROS amp GAZEBO 多旋翼无人机仿真 xff08 一 xff09 搭建仿真环境 ROS amp GAZEBO 多旋翼无人机仿真 xff08 二 xff09 基于rotors的仿真 ROS amp GAZEBO 多旋翼无人机仿真 x
  • 【DRONECAN】(一)介绍

    DRONECAN 前言 笔者最近因为项目需要用到CAN通信 xff0c 所以研究了一下飞控上基于CAN的协议 xff0c 目前在Ardupilot和PX4中用的是DRONECAN xff0c DRONECAN是基于CAN的通信协议 xff0
  • 普通人对AI的看法

    就发展前景来看 xff0c 人工智能无疑将是现阶段与今后很长时间内的全球性热点 这是一个可以预见性的历史潮流 xff0c 无可阻挡 xff0c 一旦它出现一定会对现代互联网的结构会产 生颠覆性的改变 它将重新定义现代互联网的理念 xff0c
  • java+postgis实现根据两点生成模拟轨迹gps数据

    java 43 postgis实现根据两点生成模拟轨迹gps数据 文章目录 java 43 postgis实现根据两点生成模拟轨迹gps数据前言一 实现流程1 请求参数2 功能流程3 postgis重要使用函数介绍4 生成的GPS模拟轨迹点
  • Docker更新springboot容器镜像

    下载安装partainer 拉取镜像 docker pull portainer portainer ce 运行容器 docker run d p 9000 9000 v var run docker sock var run docker
  • AUTOSAR简介

    1 简介 AUTOSAR全称为 AUTomotive Open System ARchitecture xff0c 译为 汽车开放系统体系结构 xff1b AUTOSAR是一家由汽车电子 半导体和软件行业的汽车制造商 供应商 服务提供商等公