Apollo 3.0来了!百度自动驾驶硬件系统全解读

做者 | 王石峰
编辑 | Natalie
AI 前线导读: 百度 Apollo 3.0 发布在即,本期 AI 前线社群分享咱们很高兴邀请到了百度自动驾驶技术部高级产品经理王石峰,为咱们带来《 自动驾驶汽车硬件系统概述》的干货分享。本场直播的讲师和内容提供来自百度。

更多优质内容请关注微信公众号“AI 前线”(ID:ai-front)

你们好,我是来自百度自动驾驶技术部的高级产品经理王石峰。负责传感器、特种车辆识别、交通手势识别的产品设计和项目管理的工做。很高兴在这里,经过社群带给你们自动驾驶中有关硬件系统的分享。前端

接下来,我将从五个方面为你们作自动驾驶汽车硬件系统概述的内容分享,但愿你们能够经过个人分享,对硬件系统的基础有个全面的了解:git

  1. 自动驾驶系统的硬件架构github

  2. 自动驾驶的传感器算法

  3. 自动驾驶传感器的产品定义后端

  4. 自动驾驶的大脑安全

  5. 自动驾驶汽车的线控系统微信

根据美国国家运输安全委员会的调查报告,当时涉事 Uber 汽车——一辆沃尔沃 SUV 系统上的传感器在撞击发生 6s 前就检测到了受害者,并且在事故发生前 1.3 秒,原车自动驾驶系统肯定有必要采起紧急刹车,此时车辆处于计算机控制下时,原车的紧急刹车功能没法启用。因而刹车的责任由司机负责,但司机在事故发生前 0.5s 低头观看视频未能抬头看路。架构

从事故视频和后续调查报告能够看出,事故的主要缘由是车辆不在环和司机不在环形成的。Uber 在改造原车加装自动驾驶系统时,将原车自带的 AEB 功能执行部分截断形成原车 ADAS 功能失效。自动驾驶系统感知到受害者肯定要执行应急制动时,并无声音或图像警报,此时司机正低头看手机也没有及时接管刹车。app

目前绝大多数自动驾驶研发车都是改装车辆,相关传感器加装到车顶,改变车辆的动力学模型;改装车辆的刹车和转向系统,也缺少不一样的工况和两冬一夏的测试。图中 Uber 研发用车是 SUV 车型自身重心就较高,车顶加装的设备进一步形成重心上移,在避让转向的过程当中转向过急过分,发生碰撞时都会比原车更容易侧翻。ide

因此在自动驾驶中,安全是自动驾驶技术开发的第一天条。为了下降和避免实际道路测试中的风险,在实际道路测试前要作好充分的仿真、台架、封闭场地的测试验证。

  • 软件在环(Software in loop),经过软件仿真来构建自动驾驶所需的各种场景,复现真实世界道路交通环境,从而进行自动驾驶技术的开发测试工做。软件在环效率取决于仿真软件可复现场景的程度。对交通环境与场景的模拟,包括复杂交通场景、真实交通流、天然天气(雨、雪、雾、夜晚、灯光等)各类交通参与者(汽车、摩托车、自行车、行人等)。采用软件对交通场景、道路、以及传感器模拟仿真能够给自动驾驶的环境感知提供丰富的输入能够对算法进行验证和测试。

  • 硬件在环(Hard-ware in loop),各类传感器相似人的眼睛和耳朵,做为自动驾驶系统的感知部分,该部分的性能决定了自动驾驶车辆可否适应复杂多变的交通环境。包括,摄像头、毫米波雷达、超声波雷达、激光雷达。针对不一样的传感器,硬件在环会根据不一样的传感器和环境因素来部署。

  • 车辆在环(Vehicle in loop),车辆执行系统向传动系统发出执行命令来控制车辆,在自动驾驶中取代了人类的手脚。自动驾驶系统的执行控制优劣决定了车辆是否可以安全温馨的行驶。车辆运行在空旷的场地上,自动驾驶系统感知系统模拟的虚拟场景,自动驾驶系统根据虚拟的场景发出控制指令,再经过传感器将车辆的真实轨迹反馈到虚拟环境中,实现真车与虚拟环境的融合,从而进行车辆操控的验证。

  • 司机在环(Driver in loop),基于实时仿真技术开发,结合驾驶员的实际行为,能够实现对车辆和自动驾驶技术开发测试作出主观的评价。司机在环,能够一方面得到司机的主观评价,另外一方面能够验证人机共驾驶的功能。

1、自动驾驶系统的硬件架构

就总体而言,汽车是个全社会化管理的产品,其固有的行业特色是相对保守的。在人工智能的大潮下,面对造车新势力和消费者需求变化的冲击,传统汽车行业渐进式的创新方法已经面临巨大的挑战。急需改变传统的架构和方法不断创新。自动驾驶总体的硬件架构不光要考虑系统自己也要考虑人的因素。

自动驾驶系统主要包含三个部分:感知、决策、控制。从整个硬件的架构上也要充分考虑系统感知、决策、控制的功能要求。总体设计和生产上要符合相关车规级标准,如 ISO2626二、AECQ-100、TS16949 等相关认证和标准。目前 L一、L二、ADAS 系统的硬件架构体系和供应链相对完善符合车规级要求。

感知层依赖大量传感器的数据,分为车辆运动、环境感知、驾驶员检测三大类。

车辆运动传感器:速度和角度传感器提供车辆线控系统的相关横行和纵向信息。惯性导航 + 全球定位系统 = 组合导航,提供全姿态信息参数和高精度定位信息。

环境感知传感器:负责环境感知的传感器相似于人的视觉和听觉,若是没有环境感知传感器的支撑,将没法实现自动驾驶功能。主要依靠激光雷达、摄像头、毫米波雷达的数据融合提供给计算单元进行算法处理。V2X 就是周围一切能与车辆发生关的事物进行通讯,包括 V2V 车辆通讯技术、V2I 与基础设施如红绿灯的通讯技术、V2P 车辆与行人的通讯。

驾驶员监测传感器:基于摄像头的非接触式和基于生物电传感器的接触式。经过方向盘和仪表台内集成的传感器,将驾驶员的面部细节以及心脏、脑电等部位的数据进行收集,再根据这些部位数据变化,判断驾驶员是否处于走神和疲劳驾驶状态。

计算单元部分:各种传感器采集的数据统一到计算单元处理,为了保证自动驾驶的实时性要求,软件响应最大延迟必须在可接受的范围内,这对计算的要求很是高。目前主流的解决方案有基于 GPU、FPGA、ASIC 等。

车辆控制:自动驾驶须要用电信号控制车辆的转向、制动、油门系统,其中涉及到车辆地盘的线控改装,目前在具有自适应巡航、紧急制动、自动泊车功能的车上能够直接借用原车的系统,经过 CAN 总线控制而不须要过分改装。

警告系统:主要是经过声音、图像、振动提醒司机注意,经过 HMI 的设计有效减小司机困倦、分心的行为。

2、自动驾驶的传感器

摄像头:主要用于车道线、交通标示牌、红绿灯以及车辆、行人检测,有检测信息全面、价格便宜的特定,但会受到雨雪天气和光照的影响。由镜头、镜头模组、滤光片、CMOS/CCD、ISP、数据传输部分组成。光线通过光学镜头和滤光片后聚焦到传感器上,经过 CMOS 或 CCD 集成电路将光信号转换成电信号,再通过图像处理器(ISP)转换成标准的 RAW,RGB 或 YUV 等格式的数字图像信号,经过数据传输接口传到计算机端。

激光雷达:激光雷达使用的技术是飞行时间法(Time of Flight)根据光线遇到障碍的折返时间计算距离。为了覆盖必定角度范围须要进行角度扫描,从而出现了各类扫描原理。主要分为:同轴旋转、棱镜旋转、MEMS 扫描、相位式、闪烁式。激光雷达不光用于感知也应用于高精度地图的测绘和定位是公认 L3 级以上自动驾驶必不可少的传感器。

毫米波雷达:主要用于交通车辆的检测,检测速度快、准确,不易受到天气影响,对车道线交通标志等没法检测。毫米波雷达由芯片、天线、算法共同组成,基本原理是发射一束电磁波,观察回波与入射波的差别来计算距离、速度等。成像精度的衡量指标为距离探测精度、角分辨率、速度差分辨率。毫米波频率越高,带宽越宽,成像约精细,主要分为 77GHz 和 24GHz 两种类型 。

组合导航:GNSS 板卡经过天线接收全部可见 GPS 卫星和 RTK 的信号后,进行解译和计算获得自身的空间位置。当车辆经过遂道或行驶在高耸的楼群间的街道时,这种信号盲区因为信号受遮挡而不能实施导航的风险。就须要融合 INS 的信息,INS 具备全天候、彻底自主、不受外界干扰、能够提供全导航参数(位置、速度、姿态)等优势,组合以后能达到比两个独立运行的最好性能还要好的定位测姿性能。

3、自动驾驶传感器的产品定义

这张表总结了常见自动驾驶功能所使用的传感器,以及各个传感器的应用。针对 L一、L2 的自动驾驶功能各国也纷纷出台了相关标准,加速了市场的发展和产品落地。欧盟新车安全评鉴协会 (E-NCAP) 从 2013 年起便在评分规则中增长了 ADAS 内容,计划到 2017 年速度辅助系统 (SAS)、自动紧急制动 (AEB)、车道偏离预警 / 车道偏离辅助 (LDW/LKD) 的加分要求为系统,装机量达到 100%。美国国家公路交通安全管理局 (NHTSA) 和高速公路安全保险协 (IIHS) 也提出 2022 年将自动紧急制动 (AEB) 等 ADAS 功能归入技术标准。

自动驾驶要求局限于车辆的 ODD(Operational Design Domain),即设计适用范围。城市道路 + 城际高速是自动驾驶汽车广泛的适用范围。我国城市封闭道路最高限速 80 千米/小时,高速公路限速 120 千米/小时。干燥的柏油路面摩擦系数是 0.6,根据刹车距离公式:S=V*V/2gμ 去计算刹车距离得出第一行的表格,再结合自动驾驶系统反应时间和制动系统反应时间得出下表。

从两个表格能够看出,刹车距离与速度的平方成正比,与摩擦系数成反比。当摩擦系数必定时,刹车距离取决于车速,若是车速增长 1 倍,刹车距离将增大至 4 倍。摩擦系数μ主要与路面材质和天气相关。

自动驾驶传感器在中国最高限速 120 千米的状况下,探测距离达到 150m 就能够知足需求了,自动驾驶的技术开发者能够根据实际场景的速度来选择所须要的传感器,没有必要一味追求传感器的性能提升总体成本。

传感器的分辨率和物体探测的关系能够用 atan 反正切函数来计算,图中给出的公式多除以了个 2,主要是为了保证在传感器探测时当最小角度是最小目标一半时,任意状况都能覆盖到某个像素保证分辨。避免物体刚好不是在一个角度内而产生漏检。

理论上分辨率 0.4 度时 100m 外就能够探测到一辆车,而在 0.1 度分辨率下 400m 外就能探测到。但检测只是识别到有个物体并不表明能识别,从自动驾驶的算法角度来说,好比激光雷达物体识别须要 4 到 5 条线扫描上才能识别出物体的类别。从这个角度看自动驾驶系统若是用 0.4 度分辨率的激光雷达在 50m 范围内才能真正识别出一辆车。

自动驾驶离不了多传感器融合,其中激光雷达和摄像头都是光学类的传感器,核心零部件和处理电路类似。有望将两个传感器前端融合到一块儿,直接输出 R、G、B、X、Y、Z 颜色 + 点云融合信息。在传感器内部实现数据融合可大幅度下降后端的计算处理量。

其中以 AEye 为表明 ,其 iDAR 智能感知系统可以瞬间将 2D 真实世界的色彩信息智能地叠加在 3D 数据上。其动态扫描和发射图纹技术、经过控制每束激光脉冲的扫描,可查询每一个点的三维坐标和像素。

4、自动驾驶的大脑

IPC 即工业我的计算机(Industrial Personal Computer─IPC)是一种加固的加强型我的计算机,它能够做为一个工业控制器在工业环境中可靠运行。采用符合“EIA”标准的全钢化工业机箱,加强了抗电磁干扰能力,采用总线结构和模块化设计技术。CPU 及各功能模块皆使用插板式结构,并带有压杆软锁定,提升了抗冲击、抗振动能力。

总体架构设计须要考虑 ISO26262 的要求,CPU、GPU、 FPGA 以及总线都作冗余设计,防止单点故障。当总体 IPC 系统失效还有 MCU 作最后的保证,直接发送指令到车辆 Can 总线中控制车辆停车。

目前这种集中式的架构,将全部的计算工做统一放到一个工控机中,总体体积较大,功耗高,不适用于将来的量产。但这种架构很是方便,算法迭代不须要过分考虑硬件的总体设计和车规要求。用传统的 X86 架构就能够很是快捷的搭建出计算平台,卡槽设计也方便硬件的更新。

采用工控机集中式运算总体体积和功耗难以知足量产化要求,须要采用域控制器嵌入式的方案。将各个传感器的原始数据接入到 Sensor Box 中,在 Sensor Box 中完成数据的融合,再将融合后的数据传输到计算平台上进行自动驾驶算法处理。

自动驾驶汽车功能复杂,保证各个模块和功能间不互相影响和安全性考虑,将大量采用域控制器。根据不一样的功能实现分为,车身域控制器、车载娱乐域控制器、动力总成域控制器、自动驾驶域控制器等。以自动驾驶域控制器为例,其承担了自动驾驶所须要的数据处理运算力,包括毫米波雷达、摄像头、激光雷达、组合导航等设备的数据处理,也承担了自动驾驶算法的运算。

随着自动驾驶的技术发展,算法不断完善。算法固化后能够作 ASIC 专用芯片,将传感器和算法集成到一块儿,实如今传感器内部完成边缘计算。进一步下降后端计算平台的计算量,有利于下降功耗、体积、车规化。其中以 Mobileye 为标杆性企业。

激光雷达处理须要高效的处理平台和先进的嵌入式软件。如图 Renesas 将包含高性能图像处理技术及低功耗的汽车 R-CarSoC 与 Dibotics 的 3D 实时定位和制图(SLAM)技术相结合,提供 SLAM on Chip™。SLAM 可在 SoC 上实现高性能所需的 3D SLAM 处理。Dibotics 公司也开发了一款名为“Augmented LiDAR”的嵌入式 LiDAR 软件,可以提供实时、先进的 LiDAR 数据处理。

ASIC 芯片是根据某类特定的需求去专门定制的芯片,比通用性的 GPU、FPGA 体积小、功耗低,性能稳定批量化成本低的特定。自动驾驶的算法公司只要作好芯片的前端设计,后端的制造和工艺都是很是成熟的产业,彻底能够依靠外包实现。

芯片的制做流程是由芯片设计、芯片制造、芯片封装三部分组成。

前端设计完成以后,能够根据实际算法需求选择 IP 核经过 EDA(电子设计自动化)完成布图规划、布局、布线。根据延迟、功耗、面积等方面的约束信息,合理设置物理设计工具的参数,以获取最佳的配置从而决定元件在晶圆上的物理位置。

芯片制造工艺上正从 193nm 深紫外(DUV)向 13.5nm 极紫外(EUV)发展。半导体正步入 7nm 时代,更先进的工艺带来性能上的提高,对比 16nm 工艺 7nm 可提高 40% 的性能和节省 60% 的能耗。

芯片封测是指将经过测试的晶圆按照产品型号及功能需求加工获得独立芯片的过程。在封测的过程当中完成对芯片车规级要求,传统的汽车电子企业如 NXP 和 ST 有着更加丰富的经验。

5、自动驾驶汽车的线控系统

线控就是 Control by Wire 的直译 。简单理解,就是车辆的控制都是由一系列命令而执行的,而不是物理的操做进行执行的。

自动驾驶主要分为感知决策控制三部分,控制层是自动驾驶落地的基础。感知定位如同司机的眼睛,决策规划如同大脑,执行控制就比如手和脚了。作好自动驾驶的决策规划也必须懂得执行控制,为了实现自动驾驶,执行机构的线控化是必然趋势,其中包括线控制动、线控转向、线控油门。

在传统车辆上,制动系统多采用液压或真空伺服机构来控制制动,对自动驾驶而言线控制动是最终的发展趋势,线控制动是以电子系统取代液压或气压控制单元。

上图是大陆的线控制动解决方案,MK C1 与 MK100 组成冗余线控方案。MK C1 将制动助力以及制动压力控制模块 (ABS、ESC) 被集成为一个结构紧凑、重量轻省的制动单元。MK C1 能知足自动驾驶对压力动态特性更高的要求,电触发的紧急制动所产生的制动距离要短得多。MK100 是大陆的汽车电子稳定控制系统(ESC),在汽车防抱死制动系统 (ABS) 和牵引力控制系统 (TCS) 功能的基础上,增长了车辆转向行驶时横摆率传感器、测向加速度传感器和方向盘转角传感器,经过 ECU 控制先后、左右车轮的驱动力和制动力,确保车辆行驶的侧向稳定性。

电子助力转向(EPS)与线控转向最大的区别在于,EPS 方向盘与车轮之间连接并未参与线控技术,依然采用的机械连接。从电信号控制角度看 EPS 也能够当作是一种线控转向系统。

英菲尼迪 Q50 线控主动转向系统基本上仍是延续了传统转向系统的结构。只是增长了一套离合器装置以及三组 ECU 电子控制单元和一个转向力度回馈器。当车辆启动时,离合装置会自动切断链接,转向的任务交由电控系统。因为采用电子信号控制,其传动响应更为迅速,也更为轻松。

线控油门就是电子油门,经过位置传感器传送油门踩踏深浅与快慢的讯号 ,从而实现油门功能的电子控制装置。这个讯号会被 ECU 接收和解读,而后再发出控制指令 ,要节气门依指令快速或缓和开启它应当张开的角度。这个过程精准而快速。不会有机械磨耗的问题。

电子油门目前已大量普及,凡具有定速巡航便可认定有电子油门,早期电子油门为接触式,近来已经改成非接触式。电车依靠电机扭矩实现,直接发扭矩信号便可,油车依靠发动机管理系统(EMS)发扭矩信号实现。

转向的最先改装是在转向管柱端截断加装转向电机进行改造。以后利用原车转向助力系统进行转向控制。

制动的最先改装是加装电机踏板,后续利用原车的 ESC 系统进行控制,将来会选用 MK C1 之类的线控控制系统。

加速的最先改装都是发扭矩信号依靠 EMS 实现,后续的改装方案都是借用原车 ACC 接口由电子油门来执行。

自动驾驶面向量产的线控方案,能够参考英菲尼迪 Q50 的线控转向、大陆 MK100+MK C1 的线控制动来实现。由自动驾驶域控制器直接输出电机扭矩/制动压力信号给转向刹车的执行机构,结合大量的测试标定实现精准控制,从而给司乘人员带来完美的体感温馨度。

从 VSI 发布自动驾驶产业布局图中能够看出自动驾驶产业,是汽车、新能源、IT 通信、交通运输、半导体、人工智能、互联网等多个 10 万亿巨无霸产业的跨界融合体。自动驾驶汽车是物质流、能量流、信息流的聚合体,须要行业各方深度合做,只有软硬件深度整合,打通藩篱跨界的企业才能摘得皇冠上的明珠。

本次分享的部份内容参考了我参与撰写的《智能汽车:决战2020》一书,内容涵盖技术到实战、政策到市场、创业到投资,并对全产业链进行了全貌梳理。

Apollo 3.0 将在 7 月 4 日百度开发者大会上与你们见面,将开放更多硬件能力给开发者,欢迎你们到现场见证 Apollo 3.0 的发布!更多硬件相关的技术干货也能够继续关注后续的社群分享。

更多学习资料和自动驾驶相关技术内容,你们能够关注 Apollo 开发者社区的公众号来获取,欢迎你们在这里沟通交流!

Q & A
Q1:目前哪些市面上的车型可以支持无人驾驶的线控改装?

A1: 绝大多数不能,具有自动泊车、AEB、ACC 功能的车辆都有但愿进行不破坏原车的执行机构的改装。其余的只能经过破坏原车执行机构进行暴力改装。

Q2: 若是因为使用场景限制,激光雷达没法安装在车顶,而是在车辆周围安装多个激光雷达,会带来哪些影响?

A2:须要作激光雷达的外耦合。耦合完成实现 360 度的识别。

Q3:若是对无人车辆的停车定位精度要求很高(水平位置精度和航向精度),建议采起哪些解决方法?

A3:定位精度能够依靠 RTK 差分定位实现,目前 RTK 能够实现厘米级的定位。其次能够再融合激光雷达的数据,激光雷达自身测量精度可达到 2cm。经过这两种传感器的数据结合优秀的算法可实现高精度的定位要求。

Q4:请问,汽车用的主控制器:CPU 都有哪些主流厂家提供?

A4: CPU 目前都是用的 X86 的 intel 的。若是作 ASIC 芯片用的都是 ARM 核的

Q5: 制动的最先改装是加装电机踏板,后续利用原车的 ESC 系统进行控制,将来会选用 MK C1 之类的线控控制系统。市面上改装的林肯 MKZ 等车制动也是经过 ESC 作的么?

A5:MKZ 原车自带的泊车系统具备较好的线控能力,其制动基于车身自带的 ESC。

Q6:可否再介绍一下 appollo 的 sensorbox?

A6:更多介绍能够来 7 月 4 日 Apollo 3.0 发布会现场寻找答案

Q7:只经过摄像头检测,可否达到监督驾驶员精神是否集中的目的?若是能,戴墨镜的状态下如何实现?谢谢

A7:监视员检测不光是依靠摄像头,戴墨镜的状况能够靠生物电传感器,此传感器是放在方向盘里,能够经过手与方向盘的接触感应人体生物电从而判断注意力是否集中或者驾驶疲劳的状况

Q8:请问国内作线控改装的有哪些公司?价格大概是多少?

A8:目前 Apollo 认证的 MKZ 参考车辆由 AS 公司提供。Apollo 也欢迎车企/车辆改装服务商加入 Apollo 生态,丰富咱们的参考车辆类型,下降 Apollo 上车门槛。

Q9:请问多传感器之间的外参标定采用什么方法呢?

A9:能够参考 Apollo 的传感器标定文档https://github.com/ApolloAuto/apollo/blob/master/docs/quickstart/multiple_lidar_gnss_calibration_guide.mdhttps://github.com/ApolloAuto/apollo/blob/master/docs/quickstart/apollo_2_0_sensor_calibration_guide.mdhttps://github.com/Apol

Q10:石峰老师,个人问题也是关于 sensor box 的,如今内部是用 fpga,未来算法固化后会采用 asic 吗?

A10:能够把 FPGA 当作是 ASIC 的前端设计部分。算法固化后确实能够作 ASIC 芯片,量产化的成本功耗优点明显。

相关文章
相关标签/搜索