汽车电子架构必备技能一文读懂AUTOSAR腾讯云开发者社区

该标准的目的是提供一套规范,描述基本软件模块,定义程序连接,并在标准化格式的基础上实施进一步开发的通用方法。这种标准化格式可确保该标准适用于不同制造商的车辆,同时也可由这些车辆中使用的不同电子设备制造商实施。

AUTOSAR口号:“Cooperateonstandardsandcompeteonimplementation.”

即“在标准上合作,在实现上竞争”

AUTOSAR之所以如此重要,主要是因为它使得汽车行业能够应对不断增长的车辆复杂性和快速变化的技术需求。

有了AUTOSAR,就可以开发独立的软件,这些软件可以在不同的系统或ECU中转移或使用。因此,它可以适用于不同的车辆、平台或硬件。

以下是AUTOSAR的重要性:

软件独立性和可移植性:AUTOSAR标准允许开发独立的软件组件,这些组件可以在不同的汽车系统或电子控制单元(ECU)中自由移植和重用。这意味着汽车制造商可以更轻松地在不同车型、平台或硬件配置中使用相同的软件功能,从而降低了开发和维护成本。

应对车辆复杂性:当代汽车的复杂性不断增加,每辆车通常包含超过100个ECU,并且每个ECU都执行数千种功能。AUTOSAR通过提供一种统一的软件架构和标准化的接口,使得管理和维护这些复杂系统变得更加容易。

全行业标准化:AUTOSAR是由全球主要汽车制造商和供应商共同开发的标准,这意味着它得到了广泛的行业支持和认可。这种标准化使得汽车生态系统更加健壮,并促进了行业内部的合作和互操作性。

因此,汽车制造巨头们迫切需要联合起来,使软件独立于硬件。为了实现这一目标,他们将AUTOSAR定为全行业标准,这是软件可重复使用的核心解决方案。使得软件开发变得更加灵活、高效和可持续。

AUTOSAR标准采用了三层架构,包括以下组成部分:

运行环境(RTE):运行环境是AUTOSAR架构中的中间件,负责实现软件组件与基础软件之间的通信。RTE提供了一种标准化的通信机制,使得不同的软件组件能够相互交互和通信,而无需了解底层基础软件的具体细节。这种解耦合的设计有助于提高系统的灵活性和可维护性。

应用层(AplicationLayer):应用层包含与RTE通信的应用软件组件。这些组件实现了汽车系统的具体功能,例如引擎控制、制动系统、安全功能等。应用层通过RTE与基础软件和其他应用组件进行通信,从而实现系统级别的功能和服务。

这三层代表了AUTROSARClassic平台架构,其重要意义在于实现了电子控制单元(ECU)内部和之间的通信。此外,应用软件的开发和使用与平台无关,无需了解下层。

除经典平台外,后来还开发了更新的AUTOSAR自适应平台架构(AP,AUTOSARAdaptivePlatformArchitecture),与AUTOSAR经典平台(CP,AUTOSARClassicPlatform)不同的是,在经典平台(CP)中,单个车辆ECU静态集成到系统中,并且以后不能更改初始配置,而这种新平台的主要优势是在运行期间将应用程序集成到系统中。

在本章中我们使用经典平台(CP)来解释AUTOSAR架构中最重要的部分和元素。

虚拟功能总线(VFB)就像是一个通信中心,负责处理SWC之间的通信。但是,在系统配置完成之前,每个组件与电子控制单元(ECU)之间的连接还没有确定。只有在系统配置完成后,才能确定将哪些SWC分配给哪个ECU。因此,虚拟总线实际上代表了ECU内部以及ECU之间的通信,而且该虚拟总线是一组尚未部署到特定电子控制单元的RTE接口。由于通信是通过端口进行的,因此通信接口必须与这些端口相连。

另外,每个软件组件都包含一个或多个运行项,它们实际上包含了该软件组件的实现,并使其具有可执行性。这些运行项可以看作是软件组件内部的小程序,包含了代码或指令集的一部分,让软件组件能够执行具体的任务。这些可运行程序可以通过两种方式激活:

循环激活:(取决于周期和调度程序)根据预定的周期和调度程序进行激活。就像定时器一样,软件组件会定期执行任务,以确保系统的正常运行。

事件发生后激活:(如接收数据)当某个事件发生时,例如接收到特定的数据或触发了特定的条件,就会激活相应的运行项。这种方式类似于按下按钮或收到信息后的响应动作,根据需要执行相应的任务。

在AUTOSAR体系结构中,软件组件(SWC)和基础软件(BSW)之间的通信是通过运行时环境(RTE)接口实现的。这意味着软件组件只能通过RTE接口与其他组件和/或基础软件模块进行通信。这种设计不仅确保了软件组件之间的独立性,还确保了软件组件与各个电子控制单元(ECU)之间的独立性。

运行时环境(RTE)是一个抽象层,它管理着操作系统、通信服务、硬件接口以及软件组件之间的工作调度。换句话说,它像是汽车电子系统的“大管家”,负责协调各种任务的执行和信息的传递。通过RTE,软件组件可以在不了解底层细节的情况下与其他组件进行通信,从而提高了系统的灵活性和可扩展性

在AUTOSAR中,RTE(运行时环境)可以帮助软件组件(SWC)进行两种不同类型的通信:

客户端/服务器通信有两种工作模式:同步和异步。在同步模式下,客户端发起通信请求,服务器执行所请求的服务,并对请求做出响应。在异步模式下,客户端和服务器在不同的上下文中工作,通信请求和响应是分离的。软件组件可以根据需要充当客户端或服务器,这取决于其实现方式。

发送方/接收方通信有两种模式:显式(使用显式RTEAPI调用来接收和发送部分数据)和隐式(在调用可运行组件之前,RTE自动读取某些数据集)。发送方/接收方通信可进一步划分如下:

举个例子:就像你发送短信或邮件给朋友一样。在显式模式下,你明确地给朋友发信息,她明确地收到并回复。在隐式模式下,你把信息放在一个地方,朋友会在需要的时候读取它。在汽车系统中,软件组件可以明确地发送和接收信息,或者在需要时RTE自动处理信息的传输。

基础软件(BSW)由基础软件模块(BSWM)组成,它是软件文件(代码和说明)的集合,定义了ECU上的某些基本软件功能。基础软件由3层组成:

服务层(ServicesLayer)-这是基础软件的最上层。I/O访问由ECU抽象层组织,服务层提供以下服务:

ECU抽象层(ECUAbstractionLayer)-为设备提供应用程序接口,与设备的位置无关。该层的任务是使上层独立于ECU硬件布局。

微控制器抽象层(MicrocontrollerAbstractionLayer)-这是基础软件的最底层。该层包含直接访问微控制器、内部外设和外部设备内存映射微控制器的驱动程序。微控制器抽象层的任务是使高层独立于微控制器。

复杂设备驱动程序(ComplexDeviceDrivers)-通过直接访问微控制器来控制特殊传感器和执行器。它们是AUTOSAR分层软件架构中的特例。

举个例子:

让我们以汽车的ABS(防抱死制动系统)为例来说明基本软件(BSW)的层次结构和功能:

服务层:

ECU抽象层:

ABS系统可以通过ECU抽象层与车辆的任何ECU进行通信,而不需要关心具体的ECU硬件布局。这意味着ABS系统可以与各种车辆硬件配置兼容,而无需进行修改。

微控制器抽象层:

复杂设备驱动程序:

在ABS系统中,可能会存在与特殊传感器或执行器直接交互的驱动程序,如轮速传感器或制动阀。这些驱动程序直接控制这些设备的操作,以实现ABS系统的功能。

通过这些层次结构,ABS系统可以在不同的车辆配置和硬件环境中运行,同时保持其功能和性能不变。

即使是世界最大的汽车软件公司也在其工作中实施AUTOSAR并开发软件解决方案,因为AUTOSAR的目标包括对不同车辆和平台变体的可扩展性、软件的可移植性、对可用性和安全要求的考虑、不同合作伙伴之间的协作、资源的可持续利用以及整个软件产品生命周期内的可维护性。

THE END
1.汽车Autosar软件架构是什么在AUTOSAR架构中,系统软件被规规整整的进行了分层,看起来井然有序,如同一篇逻辑清晰的文章。整个架构从上到下分层依次为:应用层(Application Software Layer),运行时环境(Runtime Environment,RTE),基础软件层(Basic Software Layer,BSW),微控制器(Microcontroller)。每层之间为保持独立性,每一层只能https://baijiahao.baidu.com/s?id=1752012330619463160&wfr=spider&for=pc
2.AUTOSAR架构概述autosar是什么AUTOSAR架构概述 AUTOSAR整体思路概述 一、总体概述 AUTOSAR是Automotive Open System Architecture(汽车开放系统架构)的首字母缩写,是一家致力于制定汽车电子软件标准的联盟。AUTOSAR是由全球汽车制造商、部件供应商及其他电子、半导体和软件系统公司联合建立,各成员保持开发合作伙伴关系。自2003年起,各伙伴公司携手合作,https://blog.csdn.net/ChenGuiGan/article/details/81605822
3.[AutoSAR系列]1.3AutoSar架构江阴雨辰互联[AutoSAR系列] 1.3 AutoSar 架构 依AutoSAR及经验辛苦整理,原创保护,禁止转载。 专栏《深入浅出AutoSAR》 1. 整体架构 ? 图片来源: AutoSar 官网 从官往图中可以看出autosar作为汽车ECU软件架构,是通过分层来实现软硬件隔离。就像大多数操作系统一样,通过分层实现软件架构的最通用化。 https://www.yc00.com/web/1701955606a1162495.html
4.AUTOSAR软件架构模型图mob64ca12eb7baf的技术博客AUTOSAR(AUTomotive Open System ARchitecture)是一种开放的汽车软件架构标准,旨在提高汽车软件的可移植性、可重用性和互操作性。随着汽车行业对复杂性和功能需求的不断增加,采用标准化架构变得尤为重要。本文将介绍AUTOSAR软件架构的基本组成部分,并通过示例代码展示如何实现这些概念。 https://blog.51cto.com/u_16213411/12485630
5.autosar架构用什么语言autosar架构用什么语言 AUTOSAR(汽车开放系统架构)是一种用于汽车软件开发的标准,它支持多种编程语言。以下是一些常用的AUTOSAR支持的编程语言: 1. C语言:C语言是AUTOSAR中最常用的编程语言之一,因为它具有高性能和跨平台兼容性。许多底层驱动程序和硬件抽象层都是用C语言编写的。 2. C++语言:C++语言在AUTOSAR中https://m.yiche.com/baike/460937.htm
6.AUTOSAR?软件架构NXP半导体了解面向i.MX应用处理器的AUTOSAR MCAL。 更多文档 面向MPC56xx和MPC57xx微控制器的车规级软件解决方案 工业和汽车产品的电子控制开发商面临严峻挑战,即如何将产品快速推向市场并提供更强的功能安全和信息安全。 观看视频 AUTOSAR (经典平台)软件 软件解决方案提供开放式汽车软件架构,帮助您应对代码日益复杂的挑战。 https://www.nxp.com.cn/design/automotive-software-and-tools/autosar:AUTOSAR-HOME
7.AUTOSAR从入门到精通100讲(一)2013年到2016年期间,先后发布了AUTOSAR Classic Platform 4.1.0,4.2.1,4.2.2,4.3.0。2014年6月AUTOSAR发布了Acceptance Test 1.0.0,用于AUTOSAR架构的认证。从此AUTOSAR更加完善。截止到2016年,AUTOSAR成员超过了191个。 · 2017年新的AUTOSAR自适应平台成立 https://www.pianshen.com/article/31752648109/
8.AUTOSAR架构让代码改变世界haAUTOSAR 架构 AUTOSAR 软件架构 1、AUTOSAR 软件 2、AUTOSAR 运行时环境(RTE) 3、AUTOSAR 基本软件 (BSW) 1.服务:诊断协议等系统服务及NVRAM管理 2.通信:CAN、Lin、FlexRay及网络管理 3.操作系统 4.微控制器抽象层(MCAL:micro-Controller Abstract Layer)https://www.cnblogs.com/hkj8808/p/10495717.html
9.AUTOSRAParasoft中国官网AUTOSAR(汽车开放系统架构)为现代C++软件开发开发了一个标准,称为AUTOSAR C++ 14。Parasoft对该标准的覆盖范围最广。https://www.parasoftchina.cn/solutions/autosar/