从ADAS到ADS,架构设计才是快速升级的关键

Posted 高工智能汽车

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了从ADAS到ADS,架构设计才是快速升级的关键相关的知识,希望对你有一定的参考价值。


从ADAS到ADS,架构设计才是快速升级的关键

加入高工智能汽车专业行业群(自动驾驶,车联座舱,商用车),加微信:17157613659出示名片,仅限智能网联软硬件供应商及OEM。

在“新四化”趋势下,行业分工重构汽车产业,整车电子电器架构引来变革,软件定义汽车成为业内共识。

软件和服务能力将成为未来智能驾驶的核心优势,也释放了出明确的信号——未来的汽车架构某种程度上决定了软件的发展。

90年代初,汽车电子电器架构在以CAN为代表的总线成为主流后迅速发展,ECU的数量20年内跨了2个数量级。

目前,高级车型内的ECU高达数百个。在传统的分布式电子电气架构当中,汽车的功能会详细分解到单个ECU上,由OEM来定义每个ECU的功能和ECU之间的数据流。这样做有利于OEM与供应商之间的分工。

而随着汽车功能的迅猛增长,分布式架构模块数量随之增加,各ECU间的交互难度也变得更加繁琐复杂,严重影响开发效率与成本控制。

近日,美团CEO王兴在个人的社交媒体发表言论,“据说一辆宝马X5里的软件代码有3亿行,一辆特斯拉只要1000万行,真是令人绝望的差距。很类似2008年时塞班和ios的代码行数差别。”

从ADAS到ADS,架构设计才是快速升级的关键


福瑞泰克架构总师汪浩伟博士认为,本质上,1000万行代码的效率要高于3亿行代码。“3亿行代码分布在这么多ECU里,每个ECU都要重新定义需求。当中任何一个需求变更都会涉及到几个ECU之间的通讯。”

汽车的电子电器架构在近年明显的从分布式走向集中式。最新的汽车内,已经出现了多个域控制器,比如自动驾驶域控制器,智能座舱域控制器,车辆控制域控制器,底盘域控制器等。

最终,如果把所有功能都集成到一个车载超级计算机内(Vehicle Computer),则会真正做到“软件定义汽车”。

此时,升级超级计算机内的软件即可以改变车辆的功能。不仅包括抖音这类的娱乐功能,也包括车辆动态模型更新这样的传统车辆功能。

而汪浩伟博士预测,实现集中式架构,以纯软件的方式控制汽车的时代至少还需5—10年时间才能实现。

通往集中式EE架构的道路还需时日。但软件开发者不可能等到路上的车都装有超级计算机才着手开发。

目前来看,软件开发的难点已然浮现。

如何在已有的系统里提高软件开发的效率?如何保证软件开发的质量?如何满足OEM日益频繁的需求变更?
 
提高软件开发效率的四个因素
 
在汪浩伟博士看来,实现真正的高产需要良好的架构框架来帮助开发者做软件和算法开发。“对于软件开发者来说,有几个最关键的要素,第一个是抽象。”

具体来讲,抽象即从软件开发中摆脱对硬件的依赖。

“如果不依赖某个特定的ECU或某个特定的微处理器来运行系统,对于汽车制造商来说,就意味着可以降低开发成本。”汪浩伟博士表示。

第二,标准化。 标准化意味着工程师在开发软件的时候希望有一个已经成型的平台。包括操作系统、标准的硬件支持包(BSP)、系统基础服务、标准通讯组件,软件下载与安装服务等。

这个平台能够支持的硬件并不是无限的。就如同安卓虽然开放,但对于支持的硬件平台是有要求的。

成型的平台意味着拿到平台即可开发功能。


曾经,安卓与iOS可以将塞班打击下去的根本原因是它们提供了一个标准的开发平台与环境,软件开发者开发APP不再需要考虑底层的细节性问题,不再需要处理调度、通讯、存储这些“基本操作”。

“目前车载软件最成熟的基础组件是AutoSAR。但未来我们可能需要更全面的组件。”汪浩伟博士提到,尤其是当前我们在AutoSAR开发的时候还需要做很多配置工作,因为AutoSAR被设计能适配不同的硬件平台。

汪浩伟博士看来,将来我们有望能省去这项工作。当整车架构逐渐的集中化,硬件平台也会逐渐统一到一个允许“汽车版安卓”存在的程度。

第三,重用。 相对硬件来说,重用是软件非常大的优势。与硬件不同的是,软件代码一旦写成便可以被执行很多次。所以,发挥重用能力是提高开发效率非常重要的因素。

第四,创造性。 汪浩伟博士强调,“软件本身的开发应该是一个愉快的过程。但我们现在开发嵌入式产品往往开发的很痛苦,可能改两三行代码就需要重新整合很多遍。所以快速迭代软件开发也是提高开发效率的重要因素。”

在自动驾驶车辆的设计中,主机厂可能会选择亲自把控规划、决策等核心部分。而在传感器硬件、零部件和软件领域,主机厂倾向交给Tier1完成。

因此,Tier1要想斩获更多订单,不仅要有全栈的软硬件能力,还要有更灵活的产品形态才能满足主机厂的需求。而灵活的软硬件能力与和快速响应的服务能力则是福瑞泰克的最大优势之一。

汪浩伟博士表示,在软件方面,对于L2-L4的架构设计,福瑞泰克以统一的功能软件框架为总纲,将所有的功能模块打散后封装成固定接口的统一模块。

这些模块在不同产品线会被重新“组装”,加上产品线自己独有的模块和基础软件模块,就组成了完整的一个产品的软件架构。
 
L2-L4的开发系统与软件架构如何设计?
 
汪浩伟博士介绍,福瑞泰克下一步陆续推向市场的ADAS产品有L2.5、L2.9、L3三种形态。

其中,L2.5级仍处于驾驶员不可脱手的状态,其传感器配置为1V5R1D(即1前视摄像头,5个毫米波雷达,和1组驾驶员检测系统)加ADAS地图,核心的域控制器为ASDM2,也是福瑞泰克对于最初级的域控制器的定义。


为了保障系统的安全性,ASDM2中融合了系统管理算法与控车算法。其算法与L2级别前视摄像头的算法一脉相承,但增加了扩展内容。

相比L2,L2.5增加了不脱手更换车道与固定路线代客泊车的能力,某种程度上拥有一定的自动驾驶的能力,是目前多数主机厂准备近期量产的产品。

“从软件的设计上来看,L2.5沿用了此前L2的前视摄像头所有的算法,但我们把控制算法改成了备用路。主要是预防ASDM2出现故障后,备用路摄像头也可以控制车。”汪浩伟博士解释。

对于L2.9,福瑞泰克设计的控制器为ASDM4,在整个自动驾驶的过程中可以完全做到安全的脱手行驶与自动更换车道,在低速情况下可以做到脱眼。整个系统可以全面对标特斯拉AutoPilot的自动驾驶。

该系统的传感器的标准配置为7V5R1D,可以扩充到10V5R1D(在L2.5系统基础上增加了环视摄像头和后侧方摄像头)外加高精度地图。在算法方面,整个软件设计除了ASDM4外,还会加入环视和侧视的感知算法。

“要保证安全的自动换道,光靠侧后角雷达是不够的,还需要侧向方面的感知冗余,所以侧向也要加两个摄像头。”汪浩伟博士强调。

此外,由于该等级可以脱手但不能脱眼,因此DMS也是保证安全脱手自动驾驶的重要一环。DMS会实时监控驾驶员视线,确保系统故障或判断失误时,驾驶员可以接管。

而相比L2.9,L3的软件框架更加复杂。

虽然两者在研发过程中,规划决策、感知能力非常接近,软件架构可大部分复用,但在整车系统方面则需要进行电子电器架构的升级、功能安全的认证、对整车执行系统备份冗余等大量升级。

“我们为L3加入了双路冗余SOC芯片,其传感器配置了1个激光雷达、12个摄像头、5个毫米波雷达和1个DMS。”汪浩伟博士介绍。

L3之所以要增加这么多工作,主要是脱眼的情况下,系统将完全承担安全责任。99%要做到将近100%,才能将L3功能释放给消费者。

总体上,福瑞泰克秉持尽可能重用高低配产品的软件设计原则,做到了用同一套框架开发从L2到L4的所有软件。

软件高度重用的最大优势是将软件与算法开发者,架构师,集成工程师的工作互相独立,最大限度的发挥各个职责的特长和能力。

从抽象的角度来看,算法与功能模块的核心代码是完全静态的。意味着他们可以被轻松的移植到任何硬件和操作系统上。平台化架构设计能确保移植的成功。

“我们会尽可能使用AutoSAR、Linux、Vxworks,DDS和QNX等标准平台进行开发,这样有利于在不同平台上共享同一软件技术,使开发成本进一步下降。”汪浩伟博士解释。

统一的平台架构不仅便于与客户,合作伙伴共同开发产品,也便于统一工具链。而高度自动化的工具链可以真正释放软件开发者的工作效率。

对于福瑞泰克而言,在聚焦并开发L2+产品的同时,也要思考如何实现L3自动驾驶。

在福瑞泰克看来,L2.9级自动驾驶量产车销售给终端消费者后,可以承担数据采集、验证算法的工作,积累大量L3自动驾驶所需的数据。

随主机厂的电子电器架构、功能安全以及转向、刹车备份冗余同步实现,并且在搜集足够的验证数据后,L3车辆终将通过验证并通过OTA的方式释放给车主。

以上是关于从ADAS到ADS,架构设计才是快速升级的关键的主要内容,如果未能解决你的问题,请参考以下文章

ADAS功能定义/架构设计/L3+自动驾驶系统/NCAP2018测试验证技术

省农信/农商行非关键交易系统存储升级架构设计探讨

万字详解数仓分层设计架构 ODS-DWD-DWS-ADS

万字详解数仓分层设计架构 ODS-DWD-DWS-ADS

领域驱动设计峰会2017——领域驱动设计与企业架构

钱君生:安全架构设计与评审