前言
汽车电子技术已成为汽车各方面功能拓展、性能提升的重要技术支撑。随着汽车新能源化与智能化的逐步推进,汽车电子技术的功能需求将不断增加,控制软件也将变得越来越复杂。为了提升软件复用度,提高软件开发质量与效率并降低开发风险与成本,由全球汽车制造商、零部件供应商及其他半导体和软件系统公司联合建立了汽车开放系统架构联盟(AUTomotive Open System ARchitecture,AUTOSAR),并联合推出了一个开放的、标准化的汽车嵌入式系统软件架构——AUTOSAR规范。
AUTOSAR规范在国外的应用已经较为普遍和成熟,随着AUTOSAR规范的认可度越来越高,它有望成为整个汽车电子行业普遍使用的软件标准。近年来,随着国内一些企业纷纷加入新能源汽车“三电”相关控制器的研发,控制器正向开发需求不断增加,AUTOSAR规范在国内的应用也进入了一个高潮,基于AUTOSAR平台可以使得开发者更高效、更高质量地完成汽车嵌入式系统软件的开发。
本书中笔者以通俗易懂的语言、形象的图解展现了AUTOSAR中一些复杂的概念问题,并精心设计了一个示例作为本书的开发对象。笔者主要以ETAS AUTOSAR系统解决方案为基础,以AUTOSAR方法论为线索,详细介绍了基于AUTOSAR工具链完成车用控制器软件开发的具体流程与方法,并将基本概念融入开发过程介绍,加深读者的印象,提升读者的感性认识和认知水平。最后,还剖析了AUTOSAR对功能安全的支持情况,并对AUTOSAR与信息安全以及Adaptive AUTOSAR平台进行了介绍。
本书共分为10章。第1章介绍了汽车电子控制系统的发展史、应用现状和基本构成,并提出了当下车用控制器软件所面临的问题。第2章介绍了AUTOSAR的基础理论知识,详细介绍了AUTOSAR分层架构、软件组件、虚拟功能总线、方法论及应用接口。第3章介绍了本书示例的开发需求、设计方案以及本书所采用的AUTOSAR系统解决方案,起到承上启下的作用;第4~8章详细介绍了AUTOSAR方法论的具体实施过程,以方法论为“纲”,各阶段配置开发为“目”,纲举目张,便于读者理解开发过程中每个阶段的作用,并学会AUTOSAR工具链的基本使用方法。其中,第4章主要讲述了使用Matlab/Simulink进行应用层软件组件开发以及符合AUTOSAR规范的代码和描述文件配置生成方法。第5章主要讲解了使用ETAS ISOLAR-A工具进行AUTOSAR系统级设计与配置的方法。第6章详细阐述了本书示例所涉及的基础软件模块和运行时环境的基本概念,以及基于ETAS RTA系列工具进行AUTOSAR ECU级开发的具体方法,包括CAN通信协议栈、ECU状态管理器、BSW模式管理器、运行时环境RTE、操作系统OS等常用模块。第7章则详细介绍了本书示例所用到的微控制器抽象层MCAL各模块的基本概念、配置及接口代码实现方法,基本覆盖了所有常用的MCAL模块。第8章介绍了AUTOSAR工程代码集成与调试方法,并展示了本书示例的开发结果。第9章和第10章主要介绍了AUTOSAR与功能安全、AUTOSAR与信息安全以及Adaptive AUTOSAR平台的相关内容,作为本书内容的拓展外延。
本书第1章~第7章由同济大学宋珂、单忠伟编写,第8章由ETAS谭杨编写,第9章与第10章由上海捷能汽车技术有限公司王民编写,书中示例由同济大学宋珂、单忠伟设计开发。全书由宋珂统稿,王民及ETAS ERS部门高级经理汤易负责审阅。
在本书编写过程中得到了ETAS公司、恩智浦半导体公司和MathWorks公司的支持!
本书适合具有一定嵌入式软件开发基础知识的读者阅读,可作为高等院校本科生、研究生学习AUTOSAR规范以及符合AUTOSAR规范的车用控制器软件开发方法的参考书,也可以作为汽车电子行业软件工程师学习参考的资料。
本书中所有内容都经过ETAS公司、恩智浦半导体公司和MathWorks公司相关专家的审阅,且本书示例经过笔者亲自测试验证。但由于我们水平有限,书中难免会出现疏漏或不当之处,诚望读者批评和指正。
编著者