基于AUTOSAR的汽车电子控制系统嵌入式软件开发分析
2020-08-10熊辉文龚春辉陈维涛
熊辉文 龚春辉 陈维涛
摘 要:在汽车的电子控制系统当中,由于其具有的复杂化和硬件配置的多样性特征,在研发过程中需要保证嵌入式软件的兼容性以及可靠性,同时满足日益缩短的开发周期。鉴于此国内外汽车行业都在引进AUTOSAR架构,本文分析基于AUTOSAR的汽车电子控制系统嵌入式软件开发。
关键词:AUTOSAR;汽车电子控制系统;嵌入式软件
0 前言
当今电子设备在汽车研发中所占比重攀升,项目开发周期一再压缩,对嵌入式软件提出的考核指标也日趋提升,从业人员开发能力面临了更高的挑战。汽车的电子系统具有多样性的特征,在ECU软件开发过程中会受到硬件影响,为将这种硬件差异带来的影响降到最低,引入AUTOSAR软件架构,致力于实现汽车电子产品软件开发过程通用性,提高汽车电子嵌入式软件开发效率及可靠性。
1 AUTOSAR以及嵌入式软件开发的作用
(1)AUTOSAR概念。AUTOSAR是现阶段全球汽车研发主流使用的统一开发性系统框架标准。在该体系当中,规范了ECU开放式嵌入软件的结构,定义了软件模块标准接口,同时AUTOSAR是一种分布式的系统控制软件开发类型,能够应用基于模型以及分布式的系统描述方法,实现代码自动生成。(2)作用性。AUTOSAR制定了相应软件模型规范及软件开发接口规范,明确了ECU的开发流程,于设计工程师而言上,由于规则明确,减少彼此偏差澄清,沟通成本。于汽车主机厂而言,使用AUTOSAR架构,可获得更大采购自由度,在供应商之间建立分布式开发,增加设计灵活性来创新功能,提升了经济收益。在进行AUTOSAR體系的研发中,通过设置冗余的方式提升系统的可靠性,并通过故障注入方法来进行系统可靠性验证,其可靠性主要表现在如下:首先是能够及时的控制错误事件的进一步蔓延,并且在发生故障时候,可以对其剩下系统进行隔离保护,并对一些关键性信息数据可靠保护。
2 AUTOSAR体系结构
(1)微控制器抽象层。在这一层软件是对ECU所使用的主控芯片抽象,其本质为IC驱动程序,和芯片的选型紧密相关,将对芯片寄存器操作都封装成一个AUTOSAR规定的标准接口,使上层软件运用不再受到硬件的限制。(2)ECU抽象层。提供了ECU应用相关服务,对于ECU抽象层而言,包含了ECU所有的输入输出,比如AD,ID,PWM,直接实现ECU的应用层功能,可以读取传感器状态,也可以控制执行器的输出,不同领域的ECU抽象层设计差异较大。(3)服务层。服务层是基础软件的顶层,提供ECU非应用相关服务,分为通信服务,内存服务,系统服务3大部分,对ECU应用层功能提供辅助支持,包含诸如操作系统OS,CAN,LIN网络管理,内存管理,诊断管理,ECU状态管理等模块。(4)运行环境RTE。作为AUTOSAR架构中最为重要的核心,提供了应用层中不同组件之间信息交互,应用层组件和基础软件之间的信息交互,汇总了所有需要和软件体外部交互的接口,从而将应用层和底层隔离;在RTE之上软件架构风格从“分层”转变为“组件风格”;从某种意义上来看,设计符合AUTOSAR架构的系统就是设计RTE。(5)复杂驱动层。对于执行器和传感器运行关联密切的模块,因涉及比较严格的时序问题,因而在AUTOSAR中暂未作标准化统一,这些特殊功能模块可直接映射到复杂驱动层,由开发人员根据实际需要进行开发。
3 基于AUTOSAR汽车电子控制系统嵌入式软件开发流程
AUTOSAR宗旨在于建立独立于硬件的分层软件架构,为实施应用提供方法论,制定车辆应用接口规范。作为应用软件整合标准以便软件架构在不同的汽车平台复用,有利于车辆电子系统软件的交换与更新,提供了高效管理愈来愈复杂的车辆电子、软件系统的基础。为保障软件研发过程中具有较高的通用性,研发团队之间信息交互使用重新定义的基于ARXML文件格式文件。
(1)输入描述。在软件开发前期分析拟开发车辆功能需求,E-E架构设计,OEM规范法规等要求,编写系统配置输入描述文件,包含如下3个部分:1)软件组件SWC描述:系统所涉及软件组件的接口信息,数据,操作,软件组件SWC所需要的资源,运行机制等;2)ECU资源描述:系统中每个ECU所拥有的硬件能力,主要包含处理器、传感器、执行器,存储器、通信外部设备、引脚分配等;3)系统约束描述:整车的公共信息描述,包含网络拓扑,通信矩阵,OEM规范要求,协议等。(2)系统配置。系统配置的功能主要是在资源和时序关系的前提下,将软件组件映射到各个ECU上,借助系统配置生成器生成系统配置描述文件,该描述文件包含总线映射之类的所有系统信息和软件组件与某个ECU的映射关系,将(1)中3种文件导入系统配置工具中,生成系统配置描述文件,该描述文件就是整车描述文件。(3)ECU配置。根据系统配置描述文件提取单个ECU相关信息,如ECU通信矩阵、拓扑结构,映射到该ECU上的所有软件组件等,提取出来的信息生成ECU提取文件。根据这个提取文件对ECU进行配置,例如操作系统任务调度,必要的BSW模块及其配置,运行实体到任务的分配等,从而生成ECU配置描述文件。该描述文件包含了特定ECU所有信息,可根据该文件设计和开发软件。(4)ECU软件生成。根据ECU配置描述文件中配置信息,生成RTE和基础软件配置代码,在编译器软件中完成基础软件和应用层软件组件的集成,最终生成ECU的可执行代码。在实际应用的过程中,一旦以上前三个阶段有文档信息变更,均需要重新生成ECU软件。
在最后的阶段,需要对其生成的ECU软件进行真实ECU测试,在测试的过程中出现嵌入软件不符合预期,或者相关的硬件信息发生了更新变化,这个时候就需要对其ECU软件进行相应的更新,同时需对其系统进行整体性的优化处理,使得能够将系统调整到最优状态。
4 总结
基于AUTOSAR的汽车电子控制系统嵌入式软件开发分析可知,AUTOSAR提供了一个渠道让原先相对落后的公司借助AUTOSAR标准或AUTOSAR软件服务商从而快速将自身软件成熟度及稳定性提升一个台阶,现阶段国内众多汽车企业都在研究这一领域,并进行系统标准下的模块研发工作,持续在该领域自主创新,是汽车企业未来发展的必经之路。
参考文献:
[1]王建磊.汽车电子控制系统中计算机控制技术的应用研究[J].时代汽车,2020(09):4-7.
[2]刘岩.汽车电子专业“3+2”中高职课程体系衔接的探索[J].机械职业教育,2020(04):26-29.