AUTOSAR 入门介绍
关键字
名称 | 解释 | |
---|---|---|
ECU | 电子电器单元 | 引擎控制系统,功放,中控SOC |
OEM | 汽车制造商 | 吉利,比亚迪,理想 |
TIER1 | 给汽车制造商开发提供ECU的厂商 | Bosch, Harman,Qcom |
SWC | Software Component |
为什么需要AUTOSAR
如今,ECU对OEM的重要性越来越高,OEM希望能够在ECU中提供更多的功能,提升汽车的竞争力。为了达到这个目的,只有ECU软件的某些方面必须是标准化的。例如,有关于CAN工作方式、诊断协议和校准协议的标准等,当然不是所有的内容都可以标准化。
在TIER1这边, 他们希望自己生产的ECU能卖给更多的OEM,但是不同的OEM对相同的ECU要求相似但有差异,因此Tier1不得不为这些小的差异而重新设计开发ECU。这种模式造成了低效率和浪费。
有没有办法让OEM通过升级软件就能够添加新的功能到整车上?
有没有办法让Tier1通过软件升级或者定制就可以让ECU有不同的功能表现,以满足不同OEM的需求?
车辆制造商和供应商一致认为,把ECU软件标准化是好主意,也是必要的。由此产生的协议就是AUTOSAR,或称为汽车开放系统架构。这是一个缩写,因此在书写时应该始终将其全部字母大写。AUTOSAR是由一群车辆制造商和主要供应商组成的开发合作伙伴关系,旨在为ECU软件提供一套标准。
AUTOSAR 是什么
- AUTOSAR可以指一个组织(Bosch,奔驰…),这个组织建立AUTOSAR标准 .
- AUTOSAR可以指符合AUTOSAR规格的ECU软件,例如AUTOSAR Classic 4.3。
- 除了标准化ECU软件外,AUTOSAR还定义了一个流程,这种流程的技术性的说法是方法论,同时流程也定义了不同角色的软件工具(Vector,ETAS,普华,东软,恒润)在该流程中使用的文件格式(ARXML)。因此,AUTOSAR还可以指流程、工具或文件格式(ARXML)。
AUTOSAR组织通过分层来标准化ECU软件,这些层次中的某些部分有时会被称为AUTOSAR内的堆协议栈,但实际上整个AUTOSAR基础软件就是一个协议栈。在协议栈中有许多层次,每层都被细分,直到我们得到一个层次分明,每个模块具有明确职责,模块之间明确交互的独立模块。其实这就是关注点分离(Separation of concerns, SoC)的软件设计方法。
AUTOSAR 历史
AUTOSAR组织在2005年首次发布了软件规格说明书,而第一个使用AUTOSAR的项目在2006年启动
AUTOSAR是如何工作
想象一下,我们正在设计一辆车的电子部分,这辆车有几个重要的功能:
- 引擎控制:让引擎知道要跑多快。
- 速度感应:检测车子现在跑得有多快。
- 加速踏板感应:感知司机踩油门的力度。
- 引擎功率控制:调整引擎的力量,让车子跑得快或慢。
- 牵引力控制:如果车子打滑,告诉引擎减少力量,防止继续打滑。
以上5个功能都需要通过应用组件(SWC - Software Component)来实现,但这些SWC不是单独工作的。它们需要彼此交流信息。为了让这些SWC工作,我们需要把它们放入ECU中运行。当然,我们要根据每个软件的功能和车子的电气布局来决定哪个SWC放在哪个ECU里。我们还会创建一个详细的说明(ARXML),描述每个SWC和ECU之间是如何连接和通信的。这样,无论是我们自己制造ECU,还是找别的公司制造,它们都能理解这个计划,并正确地建立起软件和通信系统,这就是系统描述(ARXML)。
AUTOSAR用一种叫做“RTE”(运行时环境)的系统来帮助SWC之间实现通信。如果每个手机都是一个SWC,运营商网络就是RTE,手机只要拨入运营商网络就可以跟别的手机进行通讯。总之,我们要做的就是确保所有的电子功能都能够和谐地工作,让车子安全地跑在道路上,不管是直线加速还是在滑雪场中保持稳定。
结语
这是一个超级简单的图,希望你不要认为AUTOSAR就是这个样子,完全展开之后有200+个模块。