AUTOSAR

谈谈AUTOSAR 

 

AUTOSAR是由欧日的主要汽车生产商和一些芯片制造商推出的产业标准或操作系统。其主要动机是为了应对日益复杂的汽车电子系统:提高系统的灵活性;增加系统的更新和升级性能;改善系统的可靠性和稳定性;在设计过程中

能更早地发现问题。目前AUTOSAR的版本是3.1。许多厂商(FREESCALE, RENESASVector, Infineon, WindRiver 等)已经推出了自己的AUTOSAR系统。

目前介绍AUTOSAR的文章不少,但大多数是歌功颂德,真正深入的很少,因此想写点别人未提及的个人看法,仅供参考。

 

虽然AUTOSAR自称是操作系统,但它更是软件设计标准。在具体实现的过程中还须要借用现有的实时操作系统(OSEK, vxWorks, WindowsCE, LINUX, QNX 等)。

AUTOSAR的发起者应该是很“新潮”的一群人,不大可能是很“传统”的嵌入式的程序员。AUTOSAR的风格很object oriented; 它的RTE(run time environment) VFB(virtual functional bus)形式上有点像JAVA

 

让我们先讲AUTOSAR的优点。

1、模块式设计

除了AUTOSAR声称的几点优点(对应日益复杂的汽车电子系统、灵活性、更新和升级、可靠性、稳定性、将问题消除在早期阶段)外,由于AUTOSAR采用OMT或者UML(object modeling technique or Unified Modeling Language 常用工具如System Architect, Rational Rose, ARTiSAN) 式的设计,OMT/UML可以是很抽象和具体的;它能使不懂技术的高层管理者和决策者能够理解设计者的设计意图,从而加速进程,少走弯路。

2Configuration

Configuration 是非常有效的软件设计理念,它体现了汽车设计从“硬”设计到“软”设计的过程。在早期的汽车电器中,以开关、步线为主。随着电子设备的增加和质量要求、人工、导线费的增加,数据总线得到了广泛的应用。为了保证安全和产品质量,许多汽车厂商采用Configuration来个控制整车的功能,这样一来可避免车主私装、卸设备影响安全,二来可为厂商减少人工费用,比方说车主需要付费才能使用某项功能,而车辆的“硬”设备是相同的。厂商在发货时只须对该车进行软件Configuration即可。

AUTOSAR试图将Configuration从嵌入式的软件实施转化成IT式的实施。比方说厂商在Configuration时,使用AUTOSARConfiguration工具,用电脑和鼠标就可生产出一台客户需要的汽车。AUTOSAR的目标是“即插即用(plug and play)”

 

3、其他优点

AUTOSAR还有许多其他 广为宣传的优点,本人不再提及。

 

现在谈谈AUTOSAR的缺点和问题

1、资源问题

由于AUTOSAR的效率低下(thanks to RTE and VFB),所有的业内人士都同意,除非极大地增加ECU(芯片)的资源,“即插即用”是不可能的。

要想极大地增加ECU(芯片)的资源,必须要具备下列条件:

  • A)汽车市场由一个厂商或组织垄断,市场是卖方市场
  • BECU的能力极大幅度提高,同时价格、体积不升

上述条件A)很难实现:虽然目前各大汽车厂商都喜爱AUTOSAR,但成本的压力、产品的竞争、再加上市场已经很难接受价格飙升等原因,使得大家无法一起提升ECU的资源。

上述条件B)也很难实现:目前,ECU使用的硅晶体管的密度已经很高了,如再提高密度,则散热问题、工作时间长、加上使用环境恶劣问题等很难解决。这样B)条件在近期内也无法实现。

 

2、安全问题

如果ECU的资源和价格都不是问题,AUTOSAR的开放性、软件模块的兼容性有可能对系统的安全、用户的隐私造成威胁。类似于计算机病毒、木马、间谍软件的东西可能从即插即用的部件、蓝牙、局域网、英特网等途径侵入,后果很严重。

 

3、系统的稳定问题

对实时系统而言,运行的效率高低对系统的稳定性有重要的影响。由于AUTOSAR的效率低下(thanks to RTE and VFB again),即使极大地增加了ECU的资源,也可能不满足要求。在AUTOSAR 3.1版本中,规定了每小时失败的概率不大于10-8 。但是对广泛使用RTE的系统,随着软件模块的增加,实时性变差。

 

点评AUTOSAR

应该说AUTOSAR所代表的信息化、模块化的趋势是正确的。但实施的方法不可取。因为有太多的成功或失败的经验可以借鉴。不管怎么说车上的ECU远没有本地网或英特网上的电脑多。AUTOSAR不应该成为我国汽车工业的行业标准。

 

路在何方

由于现有的RTOSOSEK, vxWorks, WindowsCE, LINUX, QNXFree RTOS, DeltaSYSTEM序列  等)没有信息化(such as configurations)能力,因此需要以具有Configuration能力的RTOS(such as ZRTOS)作为平台,开发出自己的汽车工业的行业标准。
04-10
### Autosar 架构概述 AUTOSAR(Automotive Open System Architecture)是一种标准化的汽车软件架构,旨在提高汽车电子系统的开发效率和灵活性。它通过分层设计实现模块化、可扩展性和可重用性的目标[^2]。 #### AUTOSAR 的主要组成部分 1. **基础软件 (Basic Software, BSW)** 基础软件层负责管理硬件资源并与上层应用交互。BSW 包括通信栈、驱动程序和服务组件等功能模块[^3]。 2. **运行时环境 (Runtime Environment, RTE)** 运行时环境充当应用程序与基础软件之间的桥梁,支持灵活的功能分配和高效的通信机制[^2]。 3. **应用层 (Application Layer)** 应用层包含具体的控制逻辑和算法,用于实现车辆的各种功能,如发动机控制、制动系统等[^3]。 4. **方法论和支持工具** AUTOSAR 提供了一套完善的方法论和工具链,支持基于模型的设计 (Model-Based Design, MBD),从而简化复杂系统的开发过程[^3]。 --- ### 学习 AUTOSAR 的推荐教程 对于希望深入学习 AUTOSAR 的开发者,《Autosar从入门到精通-实战篇》是一个非常有价值的资源[^1]。此系列文章详细讲解了 AUTOSAR 的基本概念及其在实际项目中的应用案例。此外,“AUTOSAR培训资料”也是一份全面的学习指南,覆盖了 AUTOSAR 的基础知识、MBD 方法以及电机控制器软件开发的最佳实践[^3]。 如果需要官方文档支持,Vector Davinci 配置使用手册可以作为权威参考资料。这份手册不仅适合初学者快速掌握 AUTOSAR 配置流程,还能够帮助有经验的开发者解决复杂的配置问题[^4]。 --- ### AUTOSAR 标准的核心要点 AUTOSAR 标准定义了一系列规范和技术框架,以确保不同供应商的产品能够在同一平台上无缝协作。以下是几个关键方面: 1. **分层架构** 通过将系统划分为多个独立的功能层次,AUTOSAR 实现了高度的模块化设计,便于单独测试和维护[^2]。 2. **接口标准化** 所有的软件组件都遵循统一的标准接口定义,这大大提高了跨平台兼容性和互操作性[^3]。 3. **适应多种应用场景** AUTOSAR 不仅适用于传统的动力传动系统和车身控制系统,还在高级驾驶辅助系统 (ADAS) 和车载信息娱乐系统等领域展现出强大的潜力[^2]。 --- ### 示例代码:简单的 AUTOSAR 软件组件初始化 以下是一个展示如何初始化 AUTOSAR 软件组件的伪代码示例: ```c #include "Rte_Type.h" void App_Init(void) { Rte_Init(); // 初始化 Runtime Environment } void App_MainFunction(void) { uint8_t data; // 获取来自某个传感器的数据 Rte_Read_Port(&data); // 处理数据并发送至执行器 Process_Data(data); } ``` 上述代码片段展示了 AUTOSAR 中典型的运行时环境调用方式,其中 `Rte_Init` 是启动阶段的关键函数,而 `Rte_Read_Port` 则体现了标准接口的应用[^3]。 ---
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值