查看原文
其他

社群分享内容 | 自动驾驶汽车硬件系统概述

王石峰 Apollo开发者社区 2022-07-29


如果说人工智能技术将是自动驾驶汽车的大脑,那么硬件系统就是它的神经与四肢。从自动驾驶汽车周边环境信息的采集、传导、处理、反应再到各种复杂情景的解析,硬件系统的构造与升级对于自动驾驶汽车至关重要。



上周,来自百度自动驾驶技术部高级产品经理—王石峰,在Apollo开发者社群内分享了有关自动驾驶汽车硬件系统的内容,让开发者学习Apollo技术的同时,进一步了解自动驾驶汽车的硬件架构、传感器、线控等硬件系统。


错过社群直播的开发者可以从以下资料回顾干货内容:



自动驾驶汽车硬件系统概述



今天,我将从五个方面为大家做自动驾驶汽车硬件系统概述的内容分享,希望大家可以通过我的分享,对硬件系统的基础有个全面的了解:


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

二、自动驾驶的传感器

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

四、自动驾驶的大脑

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





这段视频想必大家都看过很多次了,这里就不再播放了。


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


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


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




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


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


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


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


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



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


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



自动驾驶系统主要包含三个部分:感知、决策、控制。从整个硬件的架构上也要充分考虑系统感知、决策、控制的功能要求。整体设计和生产上要符合相关车规级标准,如ISO26262、AECQ-100、TS16949等相关认证和标准。目前L1、L2、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自动驾驶传感器的产品定义



这张表总结了常见自动驾驶功能所使用的传感器,以及各个传感器的应用。


针对L1、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社群分享。学习资料和自动驾驶相关技术内容,大家可以通过Apollo开发者社区的公众号来获取!



QA

问答



1

目前哪些市面上的车型能够支持无人驾驶的线控改装?


答:绝大多数不能,具备自动泊车、AEB、ACC功能的车辆都有希望进行不破坏原车的执行机构的改装。其他的只能通过破坏原车执行机构进行暴力改装。

2

如果由于使用场景限制,激光雷达无法安装在车顶,而是在车辆周围安装多个激光雷达,会带来哪些影响?


答:需要做激光雷达的外耦合。耦合完成实现360度的识别。

3如果对无人车辆的停车定位精度要求很高(水平位置精度和航向精度),建议采取哪些解决方法?




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

4

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


答: CPU目前都是用的X86的intel的。如果做ASIC芯片用的都是ARM核的。

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






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



更多问答内容,请关注本周五的【Apollo问答】栏目来获取,同时,欢迎大家加入开发者交流群与更多优秀的开发者沟通交流!



Apollo



您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存