​AUTOSAR概述

2024-10-20 15:18 来源:网络 点击:

AUTOSAR概述

AUTOSAR概述

#AUTOSAR#全称为AUTomotive Open System ARchitecture(汽车开放系统架构)。AUTOSAR是由汽车主机厂、零部件供应商、半导体厂商、软件服务商、工具提供商以及其他相关的厂商联合成立的一个组织。AUTOSAR官网解释了其建立初衷和愿景:Considering the different automotive E/E architectures in the current and future markets, the partnership established a de-facto open industry standard for an automotive software architecture. It will serve as a basic infrastructure for the management of functions within both future applications and standard software modules.

AUTOSAR的建立初衷是为了解决当前汽车电子电气架构复杂多样性,统一汽车电子电气架构标准。因为软件在汽车中的作用越来越重要,与此同时汽车的功能越来越复杂。汽车渐渐地不再只是一个运输载人工具,而是集生活娱乐、舒适与安全并行、高科技涌现的智能设备。传统的电子电气开发流程存在如下的缺陷:1.软件重用性极差;2.硬件平台各式各样,难以统一、重用;3.软件模块化极其有限;4.嵌入式系统不支持硬件抽象。

因为传统电子电气开发模式的缺陷,新项目很难重用以前的项目,几乎每一个新项目都是从头开始(从硬件开始重新设计、软件重新编写底层驱动程序和应用程序)。这种模式的开发时间需要至少2~3年时间。而汽车更新换代越来越频繁,几乎每年需要更新换代。AUTOSAR因此成立。

目前汽车中的软件代码量早已超过了1千万行,ECU的数量也超过了1百个。

AUTOSAR发展历史

AUTOSAR官网将AUTOSAR的发展分成了5大阶段:AUTOSAR成立:Initialization(2002-2003),第一阶段:Phase 1(2003-2006),第二阶段:Phase 2(2007-2009),第三阶段:Phase 3(2010-2012), 2013年开始不断更新完善:AUTOSAR continuous further development(since 2013),2017年新的AUTOSAR自适应平台成立:AUTOSAR Adaptive Platform(since 2017)。

· Initialization(2002-2003)~ AUTOSAR成立

2002年8月召开AUTOSAR项目启动会,主要确定了AUTOSAR的成员,AUTOSAR的初版目标计划。当时参加的公司成员有宝马,博世,大陆集团,戴姆勒克莱斯勒和大众汽车公司。不久之后,西门子VDO也加入了合作伙伴的行列。西门子VDO后面被大陆集团收购。

2003年7月,目前AUTOSAR Classic Platform(经典平台)的草稿版发布,也确立了AUTOSAR的核心会员Core Partner。

从AUTOSAR成立的过程中可以看出,AUTOSAR最开始只是德国汽车主机厂、德国汽车零部件供应商之间的联盟。

· Phase 1(2003-2006)~ AUTOSAR第一阶段

2003年11月、12月Ford福特汽车、PSA标致雪铁龙,Toyota丰田先后以核心会员身份加入AUTOSAR。2005年6月GM通用汽车以核心会员身份加入AUTOSAR。2005年6月发布了AUTOSAR Classic Platform 1.0。2005年8月标准化AUTOSAR工具链。2006年先后发布了AUTOSAR Classic Platform 2.0,2.1。截止2006年,AUTOSAR第一阶段开发结束,总共有113个成员(3个Premium Partner, 48个Development Partner, 52个Associate Partner, 10个Attendees)。

从AUTOSAR第一阶段发展过程中可以看出,AUTOSAR几乎涵盖了当时世界上所有主流主机厂商和汽车零部件供应商,也不再只是德国汽车行业之间的联盟了。

· Phase 2(2007-2009)~ AUTOSAR第二阶段

AUTOSAR第二阶段先后发布了AUTOSAR Classic Platform 3.0,3.1,4.0。期间,因为西门子VDO被Continental 收购,因此西门子VDO不再是AUTOSAR的核心会员。2008年10月,第一届底特律AUTOSAR Open Conference(AUTOSAR开放论坛)召开。截止2009年止,AUTOSAR成员超过了166个。

· Phase 3(2010-2012)~ AUTOSAR第三阶段

2010年到2012年,先后举办了第二届东京AUTOSAR Open Conference,第三届法兰克福AUTOSAR Open Conference,第四节巴黎AUTOSAR Open Confluence,第五届北京AUTOSAR Open Confluence。期间,AUTOSAR发布了Classic Platform 3.2,结束了第三阶段。截止2012年,AUTOSAR成员超过了170个。

· 2013年开始不断更新完善

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自适应平台成立

2017年开始,AUTOSAR开始开发AUTOSAR Adaptive Platform。此平台将主要用于域控制器,不再是单一的嵌入式软件平台。目前Adaptive platform主要用在智能驾驶,ADAS等系统中。此平台将会和目前手机、计算机十分相似。

目前AUTOSAR的组织架构如下图所示。

AUTOSAR软件架构概述

我们经常讨论的AUTOSAR主要是指Classic platform(经典平台)。AUTOSAR的最最基本的理念就是分层:将软件根据功能分为不同层级,并将各个功能模块化、标准化。AUTOSAR规范主要包含了软件架构、方法论、应用接口三部分。其中,软件架构是实现软硬件分离的关键,它使汽车嵌入式系统控制软件开发者摆脱了以往ECU软件开发与验证时对硬件系统的依赖。

在AUTOSAR软件架构中,汽车嵌入式系统软件自上而下分别为应用软件层(Application Software Layer,ASW)、运行时环境(Runtime Environment,RTE)、基础软件层(Basic Software Layer,BSW)和微控制器(Microcontroller)。为保证上层与下层的无关性,在通常情况下,每一层只能使用下一层所提供的接口,并向上一层提供相应的接口。

1.应用软件层

应用软件层(Application Software Layer,ASW)由若干个软件组件(Software Component,SWC)组成,软件组件间通过端口(Port)进行交互(软件组件之间的交互必须经过RTE层)。每个软件组件可以包含一个或者多个运行实体(Runnable Entity,RE),运行实体可以简单的理解为软件中具体的逻辑控制、算法等函数。应用软件层也必须通过RTE调用基础软件层的服务。

2.运行时环境

运行时环境(Runtime Environment,RTE)作为应用软件层与基础软件层交互的桥梁。RTE主要的作用就是实现软件组件间、基础软件间以及软件组件与基础软件之间的通信。RTE层是AUTOSAR标准化的关键。因为RTE封装了基础软件层的通信和服务,为应用层软件组件提供了标准化的基础软件和通信接口,使得应用层可以通过RTE接口函数调用基础软件的服务。此外,RTE抽象了ECU之间的通信,即RTE通过使用标准化的接口将其统一为软件组件之间的通信。这样解决了应用软件层和基础软件层之间的耦合性。比如,当底层硬件改动(如MCU更改),应用软件层也不再需要改动。

3.基础软件层

基础软件层(Basic Software Layer,BSW)又可分为四层,即服务层(Services Layer)、ECU抽象层(ECU Abstraction Layer)、微控制器抽象层(Microcontroller Abstraction Layer,MCAL)和复杂驱动(Complex Drivers)。

基础软件层的作用可见一斑,为应用软件层提供基础软件服务:包括硬件驱动,通信协议(CAN、LIN),诊断服务(如UDS),系统服务(如任务调度,资源分配等)等。目前AUTOSAR规范定义最为详细的部分就是基础软件层。而且判断某个软件架构是否遵守AUTOSAR规范的主要依据就在于基础软件层。

其中微控制器抽象层软件(Microcontroller Abstraction Layer,MCAL)通常由芯片厂商提供,服务层软件通常由第三方软件服务商提供(如Vector, EB等), ECU抽象层(ECU Abstraction Layer)和复杂驱动(Complex Drivers)通常由Tier1(零部件供应商)或者OEM(汽车主机厂)提供。

限于篇幅,AUTOSAR软件架构的详细介绍将会在下一篇文章介绍。

AUTOSAR的优缺点

AUTOSAR规范的出现,是汽车嵌入式软件标准化进程中巨大一步,让汽车嵌入式软件标准化成为了可能。AUTOSAR的优点很明显:

1 提高软件复用度,尤其是跨平台的复用度;

2 AUTOSAR分层架构的高度抽象使得汽车嵌入式系统软硬件耦合度大大降低;

3 便于软件的升级维护;

4 标准化软件接口和模块,减少设计错误;

5 减少了手动代码量,提供软件质量;

6 统一标准,方便各个公司合作交流。

这些优势在越来越复杂的汽车嵌入式系统软件开发过程中,保证软件质量的同时,也降低开发的风险。

而AUTOSAR联盟成立至今,一直提倡的是"在标准上合作,在实现上竞争"的原则。其核心思想总结一下就是"统一标准、分散实现、集中配置"。"统一标准"在于提供开放、通用的平台;"分散实现"在于高度层次化、模块化(不同的软件模块可以由不同的公司开发完成);"集中配置"在于用统一的格式集中管理从而配置生成一个完整的系统。因此AUTOSAR并不是真正意义上的开源项目。AUTOSAR的缺点也比较明显:

1 AUTOSAR规范更新升级慢

因为制定AUTOSAR规范时候并不会开发测试,制定出来的规范往往不会那么完美(总会有一些bug),而修复需要等到下一个AUTOSAR版本。

2 AUTOSAR规范理解不太一致

目前各个厂商对AUTOSAR规范的理解并不是那么一致,集成各个厂商所开发的软件模块需要大量的精力和时间。各个厂商提供的工具也并不真正相互兼容。

3 AUTOSAR的软件价格高昂

完整的AUTOSAR开发环境至少是一般的开发环境价格的几倍甚至十几倍。购买第三方软件供应商的软件的价格也是十分高昂。

4 AUTOSAR软件的重用性面临挑战

在真实的项目中,基于某个AUTOSAR项目重新配置所需要的时间和精力也是巨大的,并不是理想中那么完美。

汽车行业面临着自动驾驶,新能源(电动驾乘),物联网和信息安全等新领域、新技术的挑战。汽车软件硬件标准化的需求越来越来迫切。虽然目前AUTOSAR的优点有目共睹,但AUTOSAR肩负的使命还有很长一段时间去完成。