解锁L2/3级自动驾驶的汽车架构
汽车系统设计和软件开发的要求越来越高,这主要归因于未来汽车行业的三大问题:自动驾驶、在线(OTA)软件更新,以及驱动系统电气化。
当前车载E/E(电子/电气)架构的每个控制单元都会集成一项或几项汽车功能。这样就增加了控制单元和分布式软件功能的数量,以及它们之间交互的复杂度。在此情况下,E/E架构必须执行越来越多的驾驶员辅助功能。软件复杂性预测假定现在的豪华车型有100多个控制单元,其中包含1亿行以上的代码。
目前,单个或密切相关的功能是在单独控制单元上实现。适合车载应用运行的更高性能的芯片系统(SoC,如Renesas R-Car H3、NXP BlueBox或NVIDIA DRIVE PX)的出现,以及通过减少控制单元或线束来减轻车身重量的必要性便催生了这样的需求:将多个功能集成在一个域控制器(例如负责车身、底盘或发动机)或者甚至更少的中央计算机上。
这种模式转变极大地改变了汽车E/E架构,包括引入面向服务的通信和动态操作系统,而这又必须满足实时、功能安全和信息安全的要求。此外,使用动态控制单元可支持添加汽车上市时并不具备的功能。
下文探讨了用于未来E/E架构的不同技术,并介绍了相关变化、风险和新机会。
未来的E/E架构
图1显示未来可能的一种E/E架构。核心是通过车内以太网主干网进行通信的一个或几个中央计算机。汽车的关键要素是网关:将用户接口域(信息娱乐系统/智能手机连接)与动力域(驾驶系统、制动、电池管理)分离,使用所谓的智能天线将汽车连接到整车厂的后端系统。智能天线和网关的主要任务是实现不同的安全层,如防火墙和入侵检测。此外,该架构使用板载安全机制用于控制器之间的通信。
与后台系统的互联使很多新功能的更新成为可能。例如,可以为汽车提供诸如道路状况这样的环境数据,可用停车位或汽车制造商的最新产品。这些在线服务和可选择的功能激活(如驾驶员辅助系统)可让汽车制造商在汽车生命周期内不断获取收益。
汽车永久在线连接支持整车厂收集用户数据,从而获得关于所用组件可靠性和使用情况的更多信息。可以通过诊断接口检测硬件和软件错误来源及产生错误时的环境信息,从而使软件可在制造商端改进并快速更新下载到车辆端——类似于多年以来用户已经习惯的智能手机的App更新。
图 1:未来的汽车E/E架构
中央计算机
自动或高度自动驾驶要求汽车能感知周围的环境。环境模型通过传感器融合创建,它将摄像头、雷达、LiDAR(激光雷达)和超声波数据整合在同一个模型中。因为单一传感器系统都有各自的技术弱点,需要整合这些不同的传感器技术来补偿单一传感器系统技术的不足。例如,与雷达不同,摄像头系统在阳光下会致盲,导致无法检测明亮的物体。
未来将由车内的中央计算机来执行这些复杂计算。中央计算机将使用异构多核的处理器,可能同时具有多个内核、GPU和千兆以太网通道。针对合理性检查、监控和结果验证等与功能安全有关的关键功能,将把更多安全内核集成在芯片上,或者将另一个具有安全内核的处理器集成在主板上。诸如ARM Cortex A50/A57、Renesas R-Car H3、Cortex R7和Infineon Aurix,此类已经存在于市面上的系统。
与这些复杂的多核系统不同,许多控制单元是十年前才推出的16位单核系统。对于供应商而言,这种技术飞跃意味着他们迫切需要培养软件方面的能力。过去,软件曾经只是制动部件(包括一个控制单元)的成本因素。未来,软件功能将具有真正的价值。这将打破现有供应链,实现新的业务模式。谁将从这项发展中获益?可能是预先将集成工具链用于系统设计、时间建模、代码生成和检验以及验证,从而应对不断增加的软件复杂程度和成本的制造商。
现在,大多数控制单元使用按照AUTOSAR或OSEK标准实施的静态配置的操作系统。配置时,这些系统定义的调度和资源利用配置在系统运行时只能进行有限的扩展。这种静态配置的系统优势在于更容易验证某项功能是否在特定时间跨度内执行。例如,对于侧面安全气囊,系统必须能在几毫秒内完成展开安全气囊的决定。
对于采用更复杂的多核处理器和不同外部交互(软件更新、用户输入),这类时间要求不太严格的系统来说,动态操作系统更具有一定的优势。这类系统最重要的应用场景包括:
支持运行时的重新配置
面向服务的服务和通信
部分软件更新
用POSIX接口代替静态生成的基于XML的接口描述,简化软件开发过程
在这种情况下,AUTOSAR联盟推出了Adaptive AUTOSAR(参见图2),它包括一个POSIX操作系统,可直接在多核处理器上运行,或者在一个需要并行集成多个操作系统的Hypervisor环境中运行。来自不同整车厂和供应商的Adaptive AUTOSAR工作组定义了用于车载应用的特别服务,如诊断服务、安全服务和SOME/IP。服务和软件组件(功能模块)通过共享服务代理进行通信。使用的中间件协议称为ARA,其灵感来源于Common API。
图 2:自适应AUTOSAR,包括经典AUTOSAR软件组件集成
以太网和作为中介的TSN
大多数控制单元通过以太网与传感器和执行机构通信。通过基于音频视频桥接(AVB)协议扩展的时间敏感网络(TSN),用于实现安全性第一的可靠通信。TSN标准专为对安全和实时性有严格要求的系统开发,如ADAS(高级驾驶员辅助系统)和自动驾驶。此外,以太网可用于将信息娱乐系统连接到互联网和汽车制造商的后端系统。
FlexRay是这场技术变革的失败者。现在只有少数几家整车厂采用现场总线系统,并且很快就将被取代。CAN和CAN FD(具有灵活数据传输速率的CAN)仍将继续用于连接传感器和执行机构或小型的IO(输入/输出)控制单元。
IO设备和中央计算机通过由BMW集团在2011年提出的面向服务的通信接口进行通信:“scalable service-oriented middleware over IP”,缩写为SOME/IP。它基于Ethernet和TCP/IP协议系列。其关键点在于SOME/IP可以将已定义的应用接口自动映射到数据包。SOME/IP的优势在于它甚至可以集成到小型设备中,并实现快速启动整个系统。
功能架构
除了上面介绍的主要由AUTOSAR联盟提出,并在Elektrobit的AUTOSAR产品系列EB tresos中已经实施的基础软件需求之外,行业对功能模块之间采用已定义接口的功能架构的需求也越来越明确。通用标准化接口的优势在于可以灵活地替换某些模块,可以将其作为产品进行购买或出售。
图3显示Elektrobit的EB robinos产品的架构。左侧显示包括用于车辆定位和目标物融合的软件模块,将不同传感器系统检测到的目标物融合到一个完整的驾驶环境视图中。然后根据当前的驾驶环境进行轨迹规划,进而完成对车辆加减速及转向的控制。
图 3:Elektrobit的EB robinos架构
项目的目标是开发一种开放参考架构,定义软件组件、接口和控制机制。Elektrobit网站免费提供架构规范,项目针对OEM、供应商和合作伙伴开放。此方法目标是可以将此架构集成到不同的高级驾驶员辅助系统平台中。在这个情况下,平台可以是集成了市面上已有的不同操作系统,如自适应AUTOSAR、QNX或类Unix操作系统的不同硬件产品的一部分。
基础设施即挑战
汽车移动依靠的基础设施是自动驾驶汽车面临的主要技术挑战。目前汽车配备了尽可能多的传感器,以便它们能够在无数的不同交通场景中自动找到路线。与在外部可控的受保护区域内移动的火车和飞机相比,这种方法显然成本高昂而且极为复杂。例如,飞机飞行的海拔和路线是由空中交通管制服务指引,火车在进入未开放区域时会自动停止。
然而,人们无法在所有路面周围设立栅栏和拦截自行车。但是,路面基础设施的变化,比如汽车行驶至闸道的入口或出口处,可以知道汽车正行驶在高速公路上而非行驶在与高速公路距离几米之外的平行乡村道路上,这样可以简化位置检测的问题。另一个例子是停车设施,它可以远程控制汽车并将其引导到可用的停车位。这种概念比寻找免费停车位,在停车设施自动巡航的汽车更简单。
此类用例的前提条件是在全国范围内铺设高速移动数据网络(5G),以促进与后端和基础设施交换数据,以及人们能够为自动驾驶而调整路面基础设施。
有哪些新兴的开发流程?
如何在高度复杂的整体系统中满足对功能安全(尤其是在汽车连接性日益增长的情况下)以及信息安全的要求?为了满足汽车软件开发的高质量标准,行业制定了Automotive SPICE流程模型,它构成了功能安全和信息安全的基础。
ISO 26262标准定义了在系统开发过程中,如何在流程层面和方法层面确保功能安全。对于软件架构而言,功能安全是一个关键因素。现在已有用于监测系统完整性、分区、时间和流程监测或者安全通信等方面的基本集成机制,并且已经应用于多个系列项目。
信息安全机制将长期在汽车开发中占据重要的一席之地。防盗报警器、安全电子钥匙或里程表安全存储等系统已经成为标准功能。但是,随着汽车连接性的增加,行业正面临新的挑战。根据信息技术的基本定律,“哪里有联网,哪里就会有攻击”,汽车行业中系统的信息安全和隐私方面的重要性也在与日俱增。
第一次利用远程访问或互联网成功攻击系统的事件被公众知晓,并且产生了广泛的反响。为应对这种攻击,SAE International于2016年初发布了安全系统开发手册(SAE J3061,“Cybersecurity Guidebook for Cyber-Physical Systems”)。该手册介绍了相关流程和方法并遵循了ISO 26262对汽车产品生命周期的规定。该文件并非标准,但它总结了重要的举措,如研究计划或现有的标准和出版物。因此该文件很有价值,可以作为了解信息安全流程和方法的入门指南。
总结
自动驾驶架构的要求的复杂度显著提升。但是,结合标准架构、功能安全、信息安全、多核系统和可用性等方面,有助于设计出可靠的系统,并根据用例很好地评估并组合各个系统方面。
汽车供应链的所有相关方应培养一个核心能力:系统工程,从而形成对物理、电子和软件的跨学科认知和理解。
未来,(软件)开发人员必须更好地理解系统,这样才能用合适的工具和关联代码生成工具进行系统建模。经典软件开发侧重于工具、代码生成工具和标准功能的开发,以及作为可重用产品出售的标准功能。集成软件仍将需要能够理解、分析和修复各层级(无论是深度嵌入还是面向服务的行为)错误的专家。
未来几年,汽车市场将出现新的汽车制造商和供应商。特别是IT公司,它们已在其他领域多年运用这些技术,其愿景是让汽车像安装了车轮的智能手机一样运行。理由是自动驾驶可以让汽车用户获得更多时间,这些时间可以用于社交网络、在线购物或者办公等。将“驾驶时间”转化为“互联网使用时间”,产生了全新的业务模式。
整车厂的业务案例不仅将由销售汽车决定,还将越来越倾向于由汽车的运行情况决定。新的租赁概念就是行业热议的创意之一,其主体不再是将汽车作为产品,而是将驾驶出行作为服务。未来,带您去上班的自动驾驶舱的租赁价格可能要取决于一天之中的不同时间。
作者
Rudolf Grave
在汉堡工业大学学习电气工程,他从2005年开始在Elektrobit工作,负责AUTOSAR项目。他的研究重点是多核和功能安全。