首页 > 汽车技术 > 正文

智加科技自动驾驶重卡量产之路:技术架构的挑战

2020-02-06 12:53:36·  来源:DataFunTalk  作者:韩坪良  
 
分享嘉宾:韩坪良 智加科技 技术专家文章整理:Hoh Xil内容来源:DataFunTalk出品平台:智加科技、DataFun导读:头部自动驾驶公司已经从Demo阶段开始迈入了量产
 
分享嘉宾:韩坪良 智加科技 技术专家
文章整理:Hoh Xil
内容来源:DataFunTalk
出品平台:智加科技、DataFun
 
导读: 头部自动驾驶公司已经从Demo阶段开始迈入了量产阶段,在自动驾驶重型卡车的量产之路上,对车载的软件系统和硬件平台都提出很高的要求。如何在受限的资源平台上,不断提高算法和模型的精准度,不断优化系统的性能和稳定性,是一个非常大的挑战。本次分享的主要内容包括:
  • 自动驾驶概述
  • 车载硬件和软件架构
  • 数据和模型平台
  • 量产挑战
01. 自动驾驶概述
关于自动驾驶的分级,可以参考博世的这张图,里面介绍的比较通俗易懂。它将自动驾驶划分为6个阶段:L0~L5,L0就是人类手动驾驶;L1是“脱脚”,比如定速巡航,可以辅助驾驶;L2是“脱手”,除了脱脚之外还可以脱手,实现部分自动驾驶;L3是“脱眼”,眼睛可以不关注路面,可以在车中玩手机;L4是“脱脑”,可以不用考虑驾驶这件事儿,可以坐在主驾,也可以坐在副驾,这是在限定场景下完成的;L5就是“无人驾驶”,没有方向盘和油门刹车等,在任何场景下都可以进行自动驾驶。智加科技做的是L4级及以上的自动驾驶重卡。
02. 车载硬件和软件架构
首先看下自动驾驶重卡的外观:
我们可以看到“大个子”头顶上安装了大量的传感器:激光雷达、摄像头、定位传感器、毫米波雷达等自动驾驶会用到的传感器。
1. 车载硬件架构
车载硬件架构,如上图,中间ADU为计算平台,它是一个异构的平台,除了大家所熟知的CPU,还有针对深度学习算法的运算单元,可以是GPU/FPGA/ASIC等。在ADU左边的就是刚刚看到的各种传感器设备,以及TBOX网络传输设备等,还有OBU V2X车载计算单元,可以获得一些传感器无法看到的道路状况。ADU的右边为CAN总线,它的右边链接了各种各样的线控执行设备,ADU通过CAN总线和这些线性执行机构进行交互。这就是常见的车载硬件架构。
2. 车载软件架构
刚刚讲到的各种传感器在软件系统中对应的是driver,也就是各种传感器驱动,将传感器得到的数据分别注入感知模块以及定位模块,感知模块通常会做信号灯、车道线、障碍物的识别,然后感知模块和定位模块的输出会注入决策模块,决策模块规划出轨迹之后由控制模块来执行,生成油门踏板、刹车踏板以及方向盘转角的指令,通过DBW线控模块和车辆进行交互。除此之外软件系统还包括Watchdog监控车辆状态的模块,以及Recorder数据记录模块。
03. 数据和模型平台
首先通过传感器会收集到很多数据,这些数据通过网络会上传到云端,上传到云端之后一方面对数据进行处理之后存储到数据库中,通过数据库会做一些分析生成报表;另外一方面这些数据会流向数据仓库,对数据进行分析和提取,提取一些有用的片段,这些片段也会有两个去处,一个是仿真平台,仿真平台根据每天采集到的新的数据或者特殊的场景进行仿真训练,另一个是进入到training data,通过更新的数据对原有模型进行迭代。
04. 量产挑战
1. 产品
因为我们要做的是L4的自动驾驶重卡产品,那么如何定义这样的一个产品?我们知道L4是限定场景下的自动驾驶,那么我们要限定哪些场景呢?比较典型的场景有:港口、干线物流、物流仓。比如要定义L4的自动驾驶重卡,就需要认真的考虑合适的场景,对场景的选择决定了车辆的功能,进而决定了硬件的选型以及软件功能的选择。
在做L4的自动驾驶重卡时,还会遇到设计上的挑战。左图为一辆后改装的自动驾驶众重卡,这种做实验还可以,但是它是无法卖给客户的,首先法规规定不能在车辆上做后改装,也不能在车顶上装各种的传感器。那么如何做一个如右图一样的前装产品呢?我们不但要考虑法律法规,还要考虑自动驾驶本身的功能需求。这个方面,需要通过和主机厂紧密的合作,来解决这个问题。
2. 功能和性能
硬件方面的挑战:
计算平台:
最开始大家一般都会用到工控机,一是因为它的算力比较强,二是它是X86的架构,软件可以很轻松的在工控机上运行。但是由于工控机的功耗和体积比较大,且只是工业级的封装,达不到车规级的要求,所以无法应用到量产平台上。我们该如何选择呢?我们可以看看目前业界的一些做法,如Audi(集成了GPU、FPGA、ASIC等)、Tesla(FSD,有2个针对AI的计算芯片,计算性能强劲)、Nvidia(区别于前两个私有化定制的芯片,英伟达的芯片在市面上可以买到)。
激光雷达:
虽然有些公司认为实现自动驾驶是不需要激光雷达的,但是目前大部分的自动驾驶公司都采用了激光雷达的方案。如果你选用了激光雷达的方案,那么不可避免的会遇到:
① 成本上的挑战
② 车规,符合车规并且能够量产的激光雷达非常少,目前唯一符合车规能够量产的是Valeo SCALA(4线)。
高精地图:
① 覆盖、更新:如果依赖高精地图定位,不可避免的会遇到两个技术挑战,一个是高精地图的覆盖程度,一个是实时更新的挑战。
② 法规限制:目前在国内还不可以合法的使用自动驾驶高精地图,如果量产的话,需要有一种不依赖于高精地图的定位方案。这方面我们有很好的技术积累。

高精定位:
目前很多公司采用的是RTK的定位方案,但是RTK也会遇到类似的问题:
① 覆盖范围:如右图,这是千寻网上的RTK覆盖示意图,目前并不是所有的地方都有高精度定位的覆盖。
② 成本:高精定位设备的成本本身就很高。
 
模型精度方面的挑战:
比如现有的算法针对现有的数据集能达到99%的精确度,但是对车进行大量的路测实验时会发现,面对各种长尾的路况,模型的精度会下降。那么如何保障模型维持一个比较高的精确度呢?在量产的过程中,需要大量的收集数据,大量的进行路测来检验、改进模型,这时会发现收集的数据越来越多,越来越多的切片,越来越多的标注任务,虽然可以通过自动化的方式进行标注,但是目前还是需要人工的介入。有了越来越多的数据就会有越来越多的training job,就需要越来越多的计算资源,最后还需要构建合理的渠道,把改进的模型通过某种方式(如OTA)升级到车上。所以我们需要一个很好的Pipeline来保证可以持续的对模型进行迭代。这个方面,需要依赖一个强大的数据和模型训练的平台来支撑。
系统性能和稳定性:
 
这里简单提两点:
① 中间件:很多公司一开始采用的是ROS,但是ROS本身有性能和稳定性等一些问题。如果量产的话,就需要一款稳定且高性能的中间件。应对办法,一是参考同类产品的经验,二是自研相应的中间件。这个方面,我们也已经有了很好的技术积累和成熟的方案。
② OS(操作系统):最开始如果用ROS,都会搭配Ubuntu来用,这是可以做一些简单的演示和Demo。如果量产的话,就需要一个可靠的实时操作系统,这个选择也比较多,大家可以自行探索。
3. 安全
在做自动驾驶量产的过程中,首先要有的概念,就是如何证明系统是安全的以及如何保证系统是安全。
如何证明:
① 里程测试:一个被广泛采用的方式,自动驾驶事故概率<人类事故概率
② 其他思路:AB测试、政府部门的全面验收、第三方介入、参考飞机自动驾驶系统的验证。
如何保证:
① 标准:
可以参考各种标准,最为广泛讨论使用的标准是ISO 26262,这个标准涵盖了从产品定义,到软硬件开发、测试、生产的一个安全流程。另外,还有在制定中的SOTIF,遵循这些标准来进行功能开发和测试,有助于提高系统的安全性。
另外一个可以参考的标准是Adaptive Platform AUTOSAR,它是针对汽车智能驾驶软件架构的标准,同时它是最符合ISO 26262的软件架构。
② 冗余:
系统级别冗余:
包括:ADU(可以看到系统只有一个ADU,如果ADU突然断电了怎么办?)、CAN、线性执行机构(都是单点链接,可能会存在单点失效的风险)。
所以一种设计思路是:采用双ADU、CAN、线性执行机构。这样当一套系统失效的时候,还有备用系统。图中左边可以发现还是单点,也可以直接采用双份,但是成本直接翻倍。由于传感器之间存在交叉和冗余,所以可以靠传感器本身之间的冗余来解决。
 
05. 结束语
最后,我们的初心是希望能够解放卡车司机,让交通有安全、运输更便利!
今天的分享就到这里,谢谢大家。
 
 
分享嘉宾
韩坪良
智加科技 | 技术专家
分享到:
 
反对 0 举报 0 收藏 0 评论 0
沪ICP备11026620号