购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

1.2 现代汽车电子电气系统的技术基础

本书认为与现代汽车电子电器系统紧密相关的四大支柱包括半导体与集成电路、车载通信与总线技术、传感器技术和软件工程技术。尽管车辆工程领域的汽车动力学、试验学、计算机辅助设计等也有很大的发展,但对汽车电子电气系统影响最大的还是上述几个方面,另外控制学科理论发展与应用会在后面几章单独讲述。

1.2.1 半导体与集成电路技术

半导体产业是一个极为庞大的产品家族,按功能来分包括计算、控制、通信、存储、安全、传感、模拟、驱动、电源、功率等,按单片所集成的逻辑运算单元个数,有小规模集成电路(基础器件数<100,Small Scale Integrated Circuits,SSIC)、中规模集成电路(基础器件数<1000,Medium Scale Integrated Circuits,MSIC)、大规模集成电路(基础器件数<10000,Large Scale Integrated Circuits,LSIC)、超大规模集成电路(基础器件数<1×10 5 ,Very Large Scale Integrated Circuits,VLSIC)、特大规模集成电路(基础器件数<1×10 6 ,Ultra Large Scale Integrated Circuits,ULSIC)和巨大规模集成电路(也被称作极大规模集成电路或超特大规模集成电路,Giga Scale Integration Circuits,GSIC)。集成电路的工艺是极其复杂的,如化学清洗、弧光反应、退火、热扩散、掺杂、掩膜光刻、蚀刻、物理真空沉淀、化学气象沉积、化学机械研磨、旋涂、磁控溅射镀层、直流溅射镀层、蒸镀、曝光、高温密化、干式氧化等。我们经常听到的28nm工艺、7nm工艺乃至2nm工艺等,就是基于上述工艺加工出如此尺度的逻辑运算单元。很显然,尺度越小,在同样大小的硅片上能做出更多的集成电路,且功耗更小、速度更快,这是集成电路制造工业界一直追求的趋势。

其中又以单片微机数字集成电路和分立器件中的功率半导体器件对汽车电子影响最为深刻。

1.单片机和微控制器

单片机(Single-Chip Microcomputer,SCM)是采用超大规模集成电路技术把中央处理器(Central Process Unit,CPU)的频率与规格做适当缩减,存储器(包括RAM、ROM、Flash)、计数器(Timer)、数模转换器、外设通信接口、网络通信接口、输入输出、DMA等周边接口,甚至LCD驱动电路都整合在单一芯片上,形成芯片级的计算机,为不同的应用场合做不同组合控制。一个典型的汽车单片机的配置如图1-3所示。由于单片机被广泛用于消费类电子控制、工业控制和汽车控制等领域,一般也称为微型控制器(Micro Control Unit,MCU)。

图1-3 典型的车用单片机配置

单片机出现的历史并不长,但发展十分迅猛,它的产生与发展与微处理器的研发与发展大体同步,自1971年美国Intel公司首先推出4位微处理器以来,它的发展到目前为止大致可分为5个阶段。

1)20世纪70年代前期,是4位单片机诞生和技术初创期。全球第一个微处理器于1971年由Intel公司推出,集成度为2000只晶体管/片的4位微处理器Intel 4004,并配有RAM、ROM和移位寄存器,构成了第一台MCS-4微处理器,而后又推出了8位微处理器Intel 8008以及其他各公司相继推出的8位微处理器。微处理器的发明为数字化的电子控制系统奠定了基础,在当时以机械、液力、热能为主宰的汽车行业掀起了一场电子化革命。

2)20世纪70年代后期,是低性能4位单片机工业应用早期。1976年Intel公司推出的MCS-48系列为代表,采用将8位CPU、8位并行I/O接口、8位定时/计数器、RAM和ROM等集成于一块半导体芯片上的单片结构,虽然其寻址范围有限(不大于4KB),也没有串行I/O,RAM、ROM容量小,中断系统也较简单,但功能可满足一般工业控制和智能化仪器、仪表等的需要。1976年Intel公司在MCS-48的基础上推出的MCS-51因性能可靠、简单实用等优点成为工业界使用量最大的一款产品,在全球各大高校的单片机应用课程中都有使用MCS-51系列8位单片机的应用案例。

3)20世纪80年代前期,是高性能8位单片机诞生和工业应用期。这一阶段推出的8位单片机普遍带有串行口,有多级中断处理系统,多个16位定时器/计数器。片内RAM、ROM的容量加大,且寻址范围可达64KB,个别片内还带有A/D转换接口。

4)20世纪80年代后期,是16位单片机应用阶段。1983年Intel公司又推出了16位单片机MCS-96系列,由于其采用了最新的制造工艺,使芯片集成度高达12万只晶体管/片。与此同时,美国的德州仪器TI、Atmel、Microchip、日本瑞萨等也都先后推出16位MCU产品。

5)20世纪90年代,是16位单片机技术成熟期与大规模商业应用阶段。单片机在集成度、功能、速度、可靠性、应用领域等全方位向更高水平发展。我国汽车工业界也正是在这个阶段引入了汽车电子技术,并逐步成为一个细分行业。

6)21世纪以来,是32位单片机大规模应用期。2000年之后,32位单片机逐步在发动机管理系统、电机控制系统等得到应用,对于32位单片机而言,2015年是具有标志性意义的一年,全球32位单片机出货量超过4/8/16位的总和。近年来,基于不同指令集(X86、ARM、RISC-V和MIPS)的各种芯片越来越多地成为汽车电子中复杂电控单元的主流芯片。

微控制器MCU最核心的部分是中央处理器及与之配套的指令集运算法(Instruction Set Computing,ISC)。1998年英特尔开放了8051单片机的技术,引来世界上很多半导体厂商对其进行开发和改造,着力发展了单片机的控制功能和外围单元,目前在8/16位机上大部分采用的是英特尔8051内核。许多行业对16/32位MCU需求攀升,且对于成本和功耗十分敏感,英国的ARM公司针对上述行业的需求发布了Cortex(A/M/R系列)内核,并开始作为第三方IP授权给MCU芯片企业(如ST、Infineon、NXP等)。Cortex系列具有短流水线、超低功耗的设计特点,在智能测量、移动消费、汽车电子、医疗器械等领域得到了大规模应用,成为16/32位汽车电子MCU内核的主流内核。

随着智能设备、物联网、大数据等产业的快速发展,无线通信、传感器、电源管理等配置MCU成为一种新的趋势,高度整合的MCU不仅可以方便客户开发产品,并且可减少印制电路板的占用空间,从而能够降低一部分成本。2021年全球最大MCU公司收入及市场份额见表1-1。

表1-1 2021年全球最大MCU公司收入及市场份额

上述公司在汽车MCU市场占据了近81%的份额,如恩智浦的MC/LPC/MCx系列,微芯的PIC系列、瑞萨的法意的STM8/16/32系列、英飞凌的TC16/XC16/32系列等芯片。

国内专注于汽车MCU芯片公司,如华大半导体、杰发科技、芯旺微、地平线、黑芝麻、东土科技、兆易创新、北京君正、龙芯中科、英博超算、豪威科技、三安光电、泰科天润、斯达半导体、智芯微电子、华大九天、南京芯驰等,在当前供应链安全、“卡脖子”技术突围的国际竞争背景下得到了极大的发展,正在蓬勃壮大中。

2.功率半导体器件

功率半导体器件,又称为电力电子器件(Power Electronic Device),是电子电气中电能转换与电路控制的核心,主要用于改变电子电路中电压和频率、直流交流形式等,一般能承受数十至数千安的电流、数百伏乃至千伏以上的电压。由于车载用电器的增加,尤其是电动汽车的普及,功率半导体器件对于汽车电气系统变得极为重要。

从20世纪50年代起,功率半导体器件按其核心材料和拓扑结构大体经历了四代。第一代器件主要以功率二极管和晶闸管为代表,是功率半导体器件发展早期的主要器件,以交直流变换、电力调压等应用为主;第二代器件主要以GTO、双极型晶体管和功率MOSFET为代表,第二代产品本质的变化是这些器件能够进行开关可控,这为电路设计和应用打开了极大的空间。第三代功率半导体器件主要以IGBT为代表的高性能、多功能、高集成度的新一代功率器件,其特点是能承受大电流、开关时间短、绝缘电阻高。主要的代表性功率半导体器件、应用特点及其在汽车领域的应用见表1-2。

表1-2 功率半导体基础器件

其中绝缘栅双极型晶体管(Insulated Gate Bipolar Transistor,IGBT),是由双极型三极管(Bipolar Junction Transistor,BJT)和绝缘栅型场效应管(Metal Oxide Semiconductor,MOS)组成的复合全控型电压驱动式功率半导体器件,兼有金属氧化物半导体场效应晶体管(Metal-Oxide-Semiconductor Field-Effect Transistor,MOSFET)的高输入阻抗和电力晶体管(Giant Transistor,GTR)的低导通压降两方面的优点。GTR饱和压降低,载流密度大,但驱动电流较大;MOSFET驱动功率很小,开关速度快,但导通压降大,载流密度小。IGBT综合了以上两种器件的优点,驱动功率小而饱和压降低。在汽车上非常适合应用于600V及以上的直流变换系统,如永磁同步电机、变频器、开关电源、照明电路等。

半导体产业的基石是芯片材料,其核心材料按照历史进程分为第一代高纯硅材料、第二代化合物(砷化镓、磷化铟)材料。20世纪90年代后期,以碳化硅(SiC)、氮化镓(GaN)等新型半导体材料为代表的第四代功率器件逐步开始得到验证和应用。碳化硅因其优越的物理性能,包括高禁带宽度(意味着高击穿电场和高功率密度)、高电导率、高热导率,将是未来最被广泛使用的制作半导体芯片的基础材料。

在功率半导体的发展过程中,往往将一些常用的控制电路、扩展电路、保护电路,与不同类型功率半导体进行复合集成,比如MOS控制晶闸管(MOS Controlled Thyristor,MCT)、电子注入增强型栅极晶体管(Injection Enhanced Gate Transistor,IEGT)、集成式电力电子模块(Intergrated Power Elactronics Modules,IPEM)、功率电子模块(Power Electric Building Block,PEBB)等等,以期发挥不同器件的优势或简化应用设计以便商业推广。不同功率半导体分类见表1-3。

表1-3 不同功率半导体分类

目前全球的功率半导体器件主要由欧洲、美国、日本三个国家和地区提供,凭借先进的技术和生产制造工艺,以及领先的品质管理体系,这三个国家和地区的产品大约占据了全球70%的市场份额。而在需求端,全球约有40%的功率半导体器件产能被中国大陆所消耗,是全球最大的需求国。

3.汽车芯片测试与标准

芯片在出厂之前,往往都要完成各种测试和验证。国际上通常使用ISO/TS16949标准和AEC系列标准作为集成电路进入汽车产业链的基本条件。AEC-Q100规定了7大类41项标准,如加速环境应力测试、加速生命周期模拟测试、分装组装完整性测试、晶片制造可靠性测试、电性验证测试、缺陷筛选测试、腔封装完整性测试等。由于汽车的使用环境比一般工业产品的使用环境更为恶劣,因此车规级芯片与工业级芯片有一些区别,比如工业级器件的工作温度一般为-40~85℃,车规级器件则是-40~125℃。汽车芯片标准体系如图1-4所示。

图1-4 汽车芯片标准体系(来源:中国汽车芯片产业创新战略联盟)

上述提出的汽车芯片标准体系架构包括四大领域,分别为基础领域、通用要求领域、产品应用技术条件领域和匹配试验领域。每个领域又进行了细分,共19个细分领域。其中,基础领域分为术语定义和分类;通用领域分为,环境及可靠性、电磁兼容、功能安全、信息安全、测试评价;产品应用技术条件分为,控制、计算、通信、存储、电源管理、驱动、感知、安全、功率、其他10个细分领域,10个细分领域下可根据具体芯片产品类型分为集成电路、分立器件、光电子、传感器4个技术方向;匹配试验领域分为,整车匹配和系统匹配两个细分领域,系统匹配又包含动力、底盘、车身、座舱、智能网联5个技术方向。

1.2.2 车载通信与总线技术

1.导线传递信号的时代

汽车线束又被称为汽车神经,是汽车传送电气信号的载体,它由电线、接插件和外部包扎及其他器件组成。为了区分不同导线的功能,1937年彩色汽车导线第一次被应用到汽车上。

这里以制动灯为例,说明在用导线传递信号的时代如何实现制动灯随制动踏板自动亮起的功能。制动灯(20世纪40年代后期出现)及高位制动灯(20世纪60年代后期出现)是陆续被发明和应用的电器,它能有效预警后方汽车前方车辆的状态,避免追尾事故。在图1-5中,ON档位开关联通的时候表示车辆运行中,此时如果制动踏板踩下实施制动,开关闭合,那么制动灯亮起。由于档位ON开关、制动开关、制动灯分别位于仪表台前侧、乘员舱底部、整车尾部外侧及发动机舱内,为了完成该功能,需要用到四根导线及至少4个接插件(当然还没考虑电器盒、熔丝等)。

图1-5 制动开关与制动灯开关的连线示意图

电器之间在功能上或工作状态上往往存在着各种关系,比如联动关系、制约关系、互斥关系等等。通过导线的连接、分配器和继电器等电器来实现“与”“或”“非”等各种逻辑,完成电器之间的相互协调工作。

由于新电器、新应用的出现,从20世纪80年代开始,汽车内部线束数量开始出现跳跃式增长。据估计,在2000年一辆高档汽车已经拥有多达400多个接插件和多达3000个接线端子,一辆普通高档汽车其电缆总长度达到了1500~2000m。Gabriel统计了自汽车发明以来至2000年车内平均使用连线总长度的增长,如图1-6所示。

图1-6 汽车车内连线总长度的增长趋势

汽车导线和接插件经常引起失效故障,据德国一家研究机构统计,车上电气系统30%~60%的失效源于线束中的接插件。

2.早期的多路复用技术

多路复用技术(Multiplexing Technology)的目的就是用一条信号通道传递多个信号,代替以前使用导线来传递信号的方式,也称为车载总线技术。车载总线技术开发与应用的早期,各个汽车生产厂家并没有遵循统一的标准,而是各自独立开发。如二十世纪八、九十年代,各个汽车厂家以不同的定义和规格,各自发展出如图1-7所示的车载通信技术。由于早期的车载总线技术互不兼容,极大地制约了技术的普及和推广。

图1-7 车载总线技术的早期(二十世纪八、九十年代)发展过程

这其中比较著名的有博世公司的CAN总线、美国汽车工程师协会制定的J1850总线、国际标准组织制定的VAN总线、飞利浦公司的D2B总线、LIN协会的LIN总线等多种总线标准。为方便研究和设计使用,美国汽车工程师协会将车载总线根据速率划分为A、B、C三类,如表1-4所示。

表1-4 汽车总线划分

3.低速总线技术

A类总线的特点是电磁兼容性较好、成本低,主要包括通用汽车公司制定的UART总线、原克莱斯勒公司制定的CCD总线、丰田公司的BEAN总线、福特公司的ACP和UBP总线以及维也纳工业大学制定的TTP/A总线。

LIN是1999年由LIN协会共同努力下推出的,用于汽车分布式电控系统的开放式的低成本串行通信标准。LIN是一种基于UART的数据格式、主从结构的单线12V的总线通信系统,主要用于智能传感器和执行器的串行通信。2001年梅赛德斯-奔驰公司率先在SL级轿车上使用了LIN总线,LIN总线事实上已成为A类网络的主流。

4.中速总线技术

B类总线具有中等速率的数据传输能力以及较好的电磁兼容性,包括美国汽车制造商采用的J1850总线、欧洲雷诺、标致公司采用的VAN总线和低速CAN总线等。SAE的J1850总线有41.6kbit/s双线差分脉宽调制和10.4kbit/s单线可变脉冲宽度两种类型,总线最长可达35m,驱动32个节点,主要用于故障诊断和车载信息共享,被用在美国福特公司、通用公司以及克莱斯勒公司的汽车中。1994年SAE正式将J1850作为B类网络标准协议。但J1850并不是一个单一标准,福特公司采用的J1850标准,其物理层与通用公司和克莱斯勒公司使用的不同,而通用公司和克莱斯勒公司在相同的物理层上又使用不同的数据帧格式。CAN总线是德国博世公司从20世纪80年代初为解决现代汽车中众多的控制与测试仪器之间的数据交换而开发的一种串行数据通信协议。它是一种多主总线,通信介质可以是双绞线、同轴电缆或光导纤维,通信速率可达1Mbit/s。1991年博世公司正式颁布了CAN技术规范。1993年11月ISO正式颁布了ISO11898,为CAN的标准化、规范化铺平了道路。此后,越来越多的北美和日本汽车公司也开始采用CAN。1994年美国汽车工程师协会货车和大客车控制通信协会选择CAN作为SAEJ1939标准的基础。低速CAN还发展出一种具有容错功能的协议规范,在汽车应用中可靠性大大增加。由于CAN总线具有诸多的优点,它已经成为B类和C类网络的主流和标准。

5.高速总线技术

C类标准主要用于与汽车安全相关、实时性要求比较高的地方,如传动系统、动力系统,所以其传输速率比较高,通常在125kbit/s到1Mbit/s之间。C类网络中的主要协议包括高速CAN(ISO11898-2)、TTP/C、FlexRay、ByteFlight、车载以太网等协议。

TTP/C协议由维也纳工业大学研发,基于TDMA的访问方式。TTP/C是一个应用于分布式实时控制系统的完整的通信协议,它能够支持多种的容错策略,提供了容错的时间同步以及广泛的错误检测机制,同时还提供了节点的恢复和再整合功能。其采用光纤传输的工程化样品速度将达到25Mbit/s。TTP/C支持时间和事件触发的数据传输。

FlexRay是宝马、梅赛德斯-奔驰、Motorola和Philips等公司制定的功能强大的通信网络协议,基于FTDMA的确定性访问方式,具有容错功能及确定的通信传输时间,同时支持事件触发与时间触发通信,具备高速率通信能力。FlexRay采用冗余备份的办法,对高速设备可以采用点对点方式连接,构成星型结构,对低速网络可以采用类似CAN总线的方式连接。

ByteFlight是由宝马主导推出的高速数据传输协议,其位数率高达10Mbit/s数据更新率可达4kHz。为了抑制电磁干扰,ByteFlight采用了光缆作为传输媒介。ByteFlight主要是面向安全气囊系统的网络通信,还可用于X-by-Wire系统的通信和控制。

车载以太网初衷是希望满足汽车行业对带宽、延迟、同步、干扰、安全性和网络管理等方面的要求,是近几年流行起来的一种车用有线通信网络。最早在2004年宝马公司考虑采用博通公司(Broadcom)的以太网技术,并于2008年在宝马7系上成功量产,其中关键点在于博通公司的单对非屏蔽以太网全双工技术,保证EMC测试全部成功。2013年BroadR-Reach技术成功在宝马环视系统中应用。近年来,由著名汽车整车厂与供应商组成的OPENAlliance SIG相继发布了TC8(车载以太网ECU测试规范),以及TC10(车载以太网休眠唤醒规范)。

6.车载总线协议结构

相对于CAN的3层结构(物理层、数据链路层和应用层),车载以太网协议是一组具有5层结构的协议系统,从下到上分别是物理层、数据链路层、网络层、传输层、应用层。5层结构对应于OSI参考模型,并且提供了各种协议框架下形成的协议簇及高层应用程序,区别于传统以太网,车载以太网的协议架构如图1-8所示。

以太网的物理层(BroadR-Reach,Layer1)采用差分电压实现,单对双绞线可实现100Mbit/s通信速率,因为传输速率高,对物理层一致性测试要求更严格。

数据链路层(MAC + VLAN Layer)为标准以太网数据链路及虚拟局域网控制协议,数据链路层可细分为逻辑链接控制(Logic Link Control,LLC)以及媒介访问控制(Media Access Control,MAC)两个层级。此两层级定义与作用如下:LLC层负责向上层提供服务,管理数据链路通信,链接寻址定义等,与所用物理介质没有关系;MAC层负责数据帧的封装,总线访问方式,寻址方式以及差错控制等,MAC层的存在则可以使得上层软件与所用物理链路完全隔离,保证了MAC层的统一性。其中LLC子层的服务在IEEE 802.2 LAN协议中有所定义,MAC层的主要功能则在IEEE 802.3中有定义,并采用CSMA/CD访问控制方式,一般MAC层协议在俗称的“网卡”中实现,MAC层完整的帧格式如图1-9所示。

图1-8 车载以太网的协议架构

图1-9 以太网的5层结构的帧结构

特别说明一下,如图1-9所示,“VLAN Tag”字段可选,当没有VLAN Flag则为基本MAC帧,当存在该字段时,则为VLAN MAC帧,即MAC帧可分为基本MAC帧(无VLAN)和标记MAC帧(包括VLAN)两种。其中“类型”字段通常可以为以下几种类型,且该类型列表由IEEE组织来维护,表1-5列举了车载以太网领域常用的Ethernet Type。

表1-5 车载以太网领域常用的Ethernet Type

网络层就是IP协议所在的层级,IP协议可以分为IPV4以及IPV6,常用的主要是IPV4,IP协议的主要作用就是基于IP地址转发分包数据。同时IP也是一种分组交换协议,但是IP却不具备自动重发机制,即使数据没有达到目的地也不会进行重发,所以IP协议属于非可靠性协议。车载以太网主要使用IPV4协议,同时由于该协议也属于传统以太网范畴,所以不会对该模块做过多细节性阐述。

传输层还是基于TCP/IP协议簇,主要负责主机到主机之间的端到端通信。TCP/IP两个关键的传输协议为用户数据报协议(UDP)和传输控制协议(TCP),TCP/UDP作为传统以太网的标准协议,在这里同样不做过多展开。

传输层之上是应用层协议,它是用户与网络的交互界面,负责处理网络特定的细节信息覆盖了OSI参考模型的第5层至第7层。应用层可根据用户需求为用户提供多种应用协议,如超文本传输协议(HTTP)、通信控制(SOME/IP)、服务发现(Service Discovery)、动态主机配置协议(DHCP)、流媒体服务(Stream Media Service)、设备发现、连接管理和控制协议(IEEE 1722.1 AVDECC)等。

1.2.3 传感器技术

传感器(Sensor)往往又被称为换能器,其功用是把其他信息转换为电信号。它通常由敏感元件和转换元件组成,能将检测感受到的信息,按一定规律变换成为电信号输出,以满足信息的传输、处理、存储、显示、记录和控制等要求。早期的测量仪器中有传感器,只不过是以整套仪器中一个部件的形式出现。

汽车传感器的发展也经历了三个阶段。第一代是结构型传感器,它利用结构参量变化来感受和转化信号,例如油量传感器,它是利用一个浮子和滑动变阻器结构将液位信号转换为电信号。第二代传感器是20世纪70年代开始发展起来的固体传感器,这种传感器由半导体、电介质、磁性材料等固体元件构成,是利用材料某些特性制成的。如:利用热电效应、霍尔效应、光电效应,分别制成热电偶传感器、霍尔传感器、光电传感器等。第三代传感器是90年代发展起来的智能传感器。所谓智能传感器是指其对外界信息具有一定检测、自诊断、数据处理以及自适应能力,是微型计算机技术与检测技术相结合的产物。

可以简单地将传感器划分为物理传感器、化学传感器和生物传感器等几大类别。物理传感器应用的是物理效应,将被测信号量的微小变化转换成电信号,诸如压电效应,磁致伸缩现象,离化、极化、热电、光电、磁电等效应,在汽车电子控制领域,大部分都是该类型的传感器。化学传感器则是以化学吸附、电化学反应等现象为因果关系的传感器。近年来,氢浓度、氧浓度、冷却液离子浓度等物理量的测量为该种类型传感器。

根据传感器的检测信息来分可分为声敏、光敏、热敏、力敏、磁敏、气敏、湿敏、压敏、离子敏和射线敏等传感器;按照供电方式可分为有源或无源传感器;按其输出信号可分为模拟量输出、数字量输出和开关量传感器;按传感器使用的材料可分为半导体、晶体、陶瓷、有机复合材料、金属、高分子材料、超导材料、光纤、纳米材料等传感器;按能量转换可分为能量转换型传感器和能量控制型传感器;按照其制造工艺,可分为机械加工工艺、复合与集成工艺、薄膜、厚膜工艺、陶瓷烧结工艺、MEMS工艺、电化学工艺等类型传感器。

车载摄像头、毫米波雷达和激光雷达是智能网联汽车关键传感器,环境感知是实现自动驾驶前提;有了“车路协同”之后通过路边设备(Road Side Unit)获得的实时交通信息,交通系统中的感知设备也可以看作是智能网联汽车的扩展传感器。

1.2.4 软件工程技术

在汽车电气系统中引入嵌入式控制之后,汽车软件便开始了它的演化之旅。整车电子系统软件占比持续增大。有报告指出,2010年主流车型电子软件约含1000万源代码行数,而2016年则达到约1.5亿行。2018年软件约占D级车或大型乘用车整车价值超过10%;整车技术与工程核心正从传统硬件层面转移到软件,据预测软件创新将占未来汽车创新的90%左右。另据摩根士丹利估算,未来软件价值占比将达到60%左右。

1.面向数据和过程的开发方法

早期的软件代码设计经常需要考虑计算机硬件的特性,开发前期一般采用模块化设计来处理功能和架构,后期实施阶段采用结构化设计方法来实现代码。20世纪50年代末诞生的高级程序设计语言在很大程度上提高了软件的开发效率。

模块化设计就是要把软件系统的需求和功能对应到软件系统的各个组成部分,这些组成部分称为模块。模块化是指把软件系统划分成独立命名和可独立访问的单元,每个单元完成一个子功能,将它们集成到一起满足软件的整体功能需求。实现模块化的手段是抽象和信息隐蔽,模块化方法强调模块独立性,模块独立是指开发具有独立功能并且与其他模块之间没有过多相互作用的模块,模块独立的意义在于功能分割、简化接口、易于测试和维护、易于多人合作开发同一系统。

结构化程序设计关注软件详细设计阶段的程序过程描述。1968年,Dijkstra提出了程序中无条件转移语句(goto)有害的观点,从而引起了大范围的学术讨论。经过讨论,人们得到共识:goto语句使得程序的静态结构与程序的动态执行不一致,从而使得程序难以理解和调试。在此基础上,进一步形成了结构化程序设计的主要思想。结构化程序设计的主要思想是使用(仅使用)顺序、选择和重复这3种结构表示程序过程。由于这3种结构具有单入口和单出口特性,因而能够降低程序的复杂性,易于程序理解和维护,提高了可靠性。

2.面向对象的编程方法

面向对象的编程方法(Object Oriented Programming,OOP)通过一组对象的交互来完成系统的功能对象是数据及其所允许操作的封装体,是应用领域现实实体的软件抽象,面向对象的软件构造乃是基于系统所操作之对象类型,而非系统需实现之功能,来架构系统的途径。面向对象方法的实施步骤包含了面向对象分析、面向对象设计和面向对象实现等。

在应对需求复杂性方面,面向对象的软件开发方法通过建立与现实世界中的实体、概念、关系和结构直接对应的软件抽象来刻画需求,并支持该软件抽象在需求、设计、实现之间的无缝过渡,有助于弥合问题空间与解空间之间的语义鸿沟。在应对需求变化方面,结构化方法下功能的变化将导致如此设计的系统结构发生较大的变化而应用领域的概念和结构远比应用功能更稳定因此,较之结构化方法,面向对象方法开发的软件具有更好的结构稳定性、可修改性和可复用性。

3.面向复用的构件化开发方法

长期以来,复用性一直是软件技术和产业发展的重要关注点,软件复用不仅能够提高开发效率,而且由于使用得越多就越容易发现错误,所以能够保障质量。汇编语言的子程序(Subroutine)、结构化程序语言的函数(Function)以及面向对象语言的类(Class)都是可以复用的基本构件。然而体系化的软件复用则要求将软件复用全过程、全技术紧密结合的开发过程,使软件复用从早期的关注代码复用逐步发展到基于复用的软件开发全过程。

构件是指软件系统中具有相对独立功能、可以明确辨识、接口由契约指定、与语境有明显依赖关系、可独立部署且多由第三方提供的可组装软件实体。基于构件的软件开发方法(Component based software development)便是一种典型的软件复用开发方法。基于构件的软件开发将软件的生产模式从传统的软件编码工作,转换为以软件构件为基础的系统集成和组装软件,构件充当基本复用对象的角色,软件构件技术是软件复用技术的核心和基础。

软件复用的基本单元从程序代码开始,发展到了面向对象的类以及封装的构件,包括运行态的构件(如CORBA、EJB等分布式运行构件)。21世纪开始的网络服务(Web Service)提供了互联网上可访问的服务实体,这使得软件复用的方法扩展到了互联网的实体中。针对Web服务的选择、服务质量(QoS)预测和服务组装的研究,成为软件复用领域的技术和应用新扩展。

4.面向模型的软件开发方法

伴随着工业信息化和消费电子行业(汽车电子也属于消费类电子)进程的迅猛发展,软件的复杂度在不断提高同时,其演进形态也日益多样化。在这种情况下,如何有效地解决功能、效率、复用、可靠之间的问题,成为学术和工业界共同关注的焦点。模型驱动方法正是在这样的背景下逐渐受到重视,被认为是可以应对“高效、低成本地开发优质软件”的一条有效途径。而这一认识也伴随着实践不断得到深化,经历了从统一建模语言(Unified Modeling Language,UML)到模型驱动架构(Model Driven Architecture,MDA)、从模型驱动架构到模型驱动工程(Model Driven Engineering,MDE)再到基于模型的开发过程(Model Based Development,MBD)。

在汽车嵌入式系统领域,面向模型的软件开发得到了极大的应用。一方面面向车辆的嵌入式控制算法(闭环系统)要严格遵循被控对象(如汽车动力系统、底盘系统、转向系统等)的特性,另一方面面向驾驶员的舒适性系统(开环系统)也是以驾驶员偏好统计、行为、个性化配置等为目标,具有模型特性。

5.服务化软件开发方法

随着以互联网为主干,电信网、移动网、传感网等多种网络正在不断渗透融合,软件的运行环境正在逐步从静态、封闭、固定的单计算机环境转变为动态、开放、多变的网络环境。为了应对网络环境中各类分布式资源的共享、集成和协同,软件服务得到了广泛关注。

软件服务是指将软件的功能以服务的形式通过互联网来交付,可以被使用者(最终用户或者第三方客户端程序)直接使用的独立的基本单元。就其形态而言,软件服务一般基于可共享和集成的应用系统和资源来构建,对外则表现为一组相对独立的业务功能单元(通常是可供外部直接调用的应用编程接口,即API);软件服务的另外一个重要目标是屏蔽开放网络环境带来的异构性问题。在汽车电子电气架构中,本地的传感器网络、局域控制器网络、视频媒体网络等都存在异构性问题,从软件工程的角度来看,有较高的抽象级别和独立性的软件服务之间能够成为较为松散的耦合关系,从而使得汽车软件工程师可以灵活选择服务并进行组装来生成增值服务。软件服务不仅改变了智能网联环境下汽车的产品形态,也正在逐步改变汽车的交付方式,使得汽车产业开始从“以产品为中心的制造业”向“以用户为中心的服务业”转变。

在21世纪前十年,软件服务开始成为研究和应用的热点,其代表为面向服务的软件体系结构(Service Oriented Architecture,SOA)及其主要的实现工具Web服务技术。“软件定义汽车(Software Defined Vehicles,SDV)即是从互联网软件工程出发,重新定义汽车研发和生产的一种商业概念。

基于SOA方法的智能网联汽车软件架构及代码分层设计如图1-10所示,从下至上分别为基础底层功能管理、物理层功能管理、车辆控制服务、面向用户的应用服务和云端远程管理。

图1-10 基于SOA方法的智能网联汽车软件架构及代码分层设计

底层驱动功能管理用于实现包含诊断、日志记录、存储管理、驱动管理等相关功能。

物理层功能管理主要是设置I/O接口将原始传感器数据进行输入,同时也是执行到车端的控制单元(如电机、制动卡钳等);

车辆控制服务包含上层高级辅助驾驶系统(ADAS)发送的执行指令到控制执行器执行该指令的相应ECU(如VCU、HCU或ESP),该车辆控制服务是综合考虑了车身稳定性与动力学反馈模型得出的。

应用层服务就是智能驾驶面向用户级别的顶层开发功能,主要用于实现常规的智能驾驶功能,比如HWP、NOP、TJP以及ALC等。

云端管理服务主要是面向远程监控、大数据存储等特殊场景。通常该服务需要基于4G/5G网络进行远程连接。

人机交互管理功能,一般是针对不同的车型呈现出不同的模式的,因此,这一块一般是独立于SOA的功能架构。SOA通常只涉及底层对车辆控制逻辑,对于平台化车型功能开发来说,这一块是无法为用户所感知的。而HMI的显示设置则是用户能够真切感知和控制的,因此,不同车型肯定有极大的不同之处。从协议上分析不难看出,SOA内部的网络架构一般是基于以太网为基础的交互方式,采用Some/ip的协议进行通信控制。而如果在平台化车型的开发过程中,HMI这一块的通常仍然按照原始CAN/CANFD信号模式的通信协议进行交互控制。这么做的原因是,智能驾驶的HMI行为比核心应用功能更容易改变,特别是在不同车型开发后期通常会选择不同的显示和交互方式。同时,由于开发核心软件和HMI设计需要不同的能力技能,因此,将HMI功能与其他应用层软件功能分离,为了实现这一点,一般需要使用Model-View-Controller,用户输入由Controller处理,Controller用于解释用户的意图并操作模型。

6.未来面向智能网联环境汽车软件工程方法探索

随着物联网、云计算、大数据、智慧交通、数字城市等概念从设想提出到工程方案落地,车辆作为交通大环境中的元素,不可逆转地要接收越来越多的来自外部环境的信息、并受外部环境约束与调控。

汽车软件的应用方式从经典封闭应用模式经过分布式、模块化、普适化与服务化,将逐步接受x-计算(如网格计算、云计算、服务计算、边缘计算等)、x-系统(如嵌入式系统、混合系统、物联系统等)及x-数据(实时数据、大数据、超大数据等)为代表的多样化开放式应用模式,其设计方法如自适应软件系统、面向代理的软件开发、面向物联网的程序设计、自组织系统程序设计等等。 8BKEbsxX2cLLE0DnSjseFzdDnYHK8aRYsctOuB9pXSer/9vyCWdw0MVMfqiiRyMH

点击中间区域
呼出菜单
上一章
目录
下一章
×