Coursera自动驾驶1.1-1.2——自动驾驶基础和软硬件架构


自动驾驶汽车是一个极其丰富和跨学科的问题。本小节介绍了问题定义的语言和结构,定义了驾驶任务和驾驶环境中最突出的元素。

一、自动驾驶分类

1.基本术语

驾驶任务:包含三个子任务

  • 环境感知:包括追踪车辆运动,识别其他要素
  • 运动规划:对行驶路线进行规划
  • 车辆控制:是否刹车/加速/转向

Operation design domain(ODD):ODD构成了给定系统在其下运行的工作条件。它包括环境,一天中的时间,道路和其他性能,这些性能将使汽车可靠运行。明确定义自动驾驶汽车的工作条件,对于确保系统安全至关重要。

驾驶任务更细致的分类:

  • 横向控制:这是指在道路上进行横向操纵和导航的任务。向左,向右转,笔直或跟踪曲线等。
  • 纵向控制:这是制动或加速之类的动作来控制汽车在道路上的位置或速度的任务。
  • 对象和事件检测与响应(OEDR):OEDR本质上就是检测立即影响驾驶任务的对象和事件并对它们做出适当反应的能力。
  • 规划:规划主要涉及到目的地或执行操作(例如倾斜变更和交叉路口)所需的长期和短期计划。

2.自动驾驶分级

  • 0级:在此级别中,没有任何驾驶自动化,一切都由驾驶员完成。
  • 1级:自动驾驶系统可以通过执行横向或纵向控制任务来辅助驾驶员。例如自适应巡航控制和车道保持辅助系统、
  • 2级:自动驾驶系统在特定的驾驶场景中同时执行横向和纵向控制任务,但仍需要驾驶员对系统进行监控。
  • 3级:自动驾驶系统除了可以执行控制任务之外,还可以在一定程度上执行“对象和事件检测”。 但是,在发生故障的情况下,控制权必须由驾驶员承担。
  • 4级:自动驾驶系统可以自行处理紧急情况,但仍可能要求驾驶员接管。
  • 5级: 自动驾驶系统可以在任何必要的条件下运行。

二、感知与决策基础

任何驾驶任务大致都可以分为两个部分,感知和决策
在这里插入图片描述

1.感知

我们希望能够了解周围的环境与我们之间所处的关系,因此我们需要对周围环境进行感知,我们需要感知的元素包括

  • 静态物体:包括道路和车道标记,分隔斑马线等道路区域的内容以及重要信息
  • 动态物体:包括道路上的其他车辆、行人以及估计自身在任何时间点的位置以及前进的方向

感知方面需要应对的挑战包括传感器的不确定性,光照,天气等

2.决策

通过感知得到大量数据后,我们需要做出驾驶决策,常见的三种决策是:

  • 长期决策。例如如何从纽约到洛杉矶?
  • 短期决策。例如改变车道、通过十字路口
  • 即时决策。例如是否加速或者刹车

以上所有这些决策都属于即时决策,其他的决策方法包括

  • Reactive Planning:在被动规划中定义了几组规则,这些规则要考虑到自我车辆和环境中其他物体的当前状态并立即采取行动。因此,这些规则仅考虑当前状态,不考虑未来的预测。
  • Predictive Planning:在预测性规划中,我们对环境中的其他物体(例如车辆和行人)如何随时间推移做出预测。我们使用当前状态和预测信息来定义所有决策。

三、硬件架构

1.传感器介绍

传感器是测量或检测环境某些属性或随时间变化的任何设备。传感器大致可以分为两类:如果是记录了周围环境特性,那么传感器是exteroceptive。 如果传感器记录了自车属性,则它们是proprioceptive的。

自动驾驶车辆常见的传感器如下
在这里插入图片描述

(1)相机

相机是自动驾驶中最常用的传感器。它是一种被动式集光传感器,能够捕获有关场景的丰富、详细的信息。
在这里插入图片描述

在选择相机时,我们通常有三个重要的比较指标:

  • 分辨率:分辨率是创建图像的像素数。因此,这是一种指定图像质量的方法。
  • 视野:视野由照相机可见的水平和垂直角度范围定义,可以通过选择镜头和变焦来改变视野。
  • 动态范围:动态范围是图像中最暗和最亮色调之间的差异。高动态范围对于自动驾驶汽车至关重要,因为在驾驶过程中(尤其是在夜间)会遇到可变的照明条件。

我们常用的有单目摄像头,在自动驾驶中还有双目摄像头,即具有重叠视场和对齐图像平面的两个摄像头的组合。 双目摄像头可以从同步图像对目标进行深度估计。一张图像中的像素值可以与另一张图像进行匹配,从而产生视差图。 然后,可以使用该视差来估计每个像素的深度。

(2)激光雷达

在这里插入图片描述

激光雷达是自动驾驶车辆常见的3D传感器。LIDAR感应原理为将光束发射到环境中并测量反射的回波。 通过测量返回的光束飞行时间, 可以估计到反射物体的范围内的强度。 LIDAR通常包括带有多个堆叠光源的旋转元件。 并·输出三维点云图·,这对于评估场景几何非常有用。 由于它是具有自己的光源的有源传感器,因此LIDAR不受环境照明的影响。 因此可以在恶劣或多变的照明条件下工作。

激光雷达一些比较重要的性能指标包括光束(beam)数量、每秒可以收集的点数、转速和视野。

(3)毫米波雷达

在这里插入图片描述
毫米波雷达的使用寿命比LIDAR更长,可以可靠地检测环境中的大型物体。 通常会根据探测范围,视野以及位置和速度测量精度选择雷达。毫米波雷达常见有两种检测范围:一种具有较宽的视角范围但测量范围很近;另一种视野狭窄但测量范围更远。

(4)超声波雷达

在这里插入图片描述
超声波雷达是一种短距离测量传感器。 非常适合用于停车场景,在这种情况下,自车需要非常缓慢的接近其他车辆。另一个优势是它们的成本很低。 而且,就像雷达和激光雷达一样,它们不受光照和降水的影响。 通常可以根据其测量的范围,视野及其成本来进行选择。

(5)GNSS/IMU(惯性测量单元)

GPS,IMU是检测自车状态的传感器。

  • GNSS接收器用于测量自我车辆的位置,速度,有时甚至还提供航向信息。精度在很大程度上取决于实际的定位方法。
  • IMU可以测量自转车辆的角速度,加速度,并且可以将组合的测量结果用于估算车辆的3D方向。前进方向对车辆的控制很重要。

(6)计算硬件

自动驾驶汽车中最常用的计算硬件中最关键的部分是自动驾驶大脑,这是汽车的主要决策单元。它接收所有传感器数据并输出驾驶车辆所需的命令。它包含很多模块,例如

  • 串行和并行计算模块:例如GPU,FPGA和ASICs,它们用来对图像和LIDAR处理进行分割,对象检测
  • 时间同步硬件:GPS可以充当适当的参考时钟。无论如何,传感器测量值必须加上时间戳记,并带有一致的时间,以使传感器融合功能正常发挥作用。

2.硬件配置设计

我们需要考虑在不同驾驶场景中对传感器测量覆盖范围的需求。最典型的两种驾驶场景为高速公路和城市,在这些场景中,我们可能会有以下情况

  1. 紧急制动 (Emergency Stop):在紧急制动情况下,如果前方道路发生拥堵,我们需要能够感应到前方110米处。同样,为了避免横向碰撞或更改车道以避免撞到车道上的障碍物,我们需要至少能够感知我们相邻的车道,范围大概3.7米。
  2. 定速 (Maintain Speed):纵向保持100米左右距离,横向保持40-60米距离防止车辆合并。
  3. 变道(Lane Change):需要同时定位前后车辆和左右车辆的位置。
  4. 超车(Overtaking):纵向上,需要感知停放的汽车以及迎面而来的车辆。从侧面看,我们需要像在高速公路中那样观察相邻车道以外的车辆并入。
  5. 十字路口(intersections):我们需要对可能发生的所有类型的运动进行全方向感知,接近的车辆,附近的行人,转弯等等。
  6. 大转盘(roundabouts):我们需要一个横向大范围的短距离传感器和一个纵向大范围的短距离传感器。我们需要感知所有通过回旋处的传入流量。

综上所述,前三种为高速公路的驾驶场景,城市驾驶则包含所有的驾驶场景,因此,我们需要具有较短的视角范围的远程传感器和通常具有中至短距离感测的宽视角传感器,甚至更短距离的传感器(如声纳在停车场景中的应用)。下图则是对硬件的一个整体性分析。
在这里插入图片描述

四、软件架构

自动驾驶汽车的模块化软件体系结构包含以下五个软件模块:环境感知、环境地图、运动规划、车辆控制、系统管理器。软件系统设计原理如下图
在这里插入图片描述

1.环境感知

环境感知模块的两个功能,首先是确定自动驾驶汽车的当前位置,其次是对周围障碍物进行分类和定位。

  • 定位模块会接收多个传感器信息,例如当前GPS位置,IMU和车轮里程计,然后将它们组合以输出准确的车辆位置。
  • 静态目标检测模块依靠高精度地图来识别场景中的重要静态目标。例如车道、路牌和交通信号灯等元素。
  • 动态目标检测模块使用摄像头、LIDAR、毫米波雷达来创建3D场景中动态目标的bounding box。 包含目标的位置,方向和大小信息。一旦检测到目标,下面通过跟踪模块进行目标跟踪。跟踪模块不仅提供目标的当前位置及其通过环境的历史轨迹。还会使用轨迹的历史记录与地图,以预测未来道路上的所有动态目标。

在这里插入图片描述

2.环境地图

环境地图有三种类型,即占用网格地图,定位地图和详细的路线图。

(1)占用网格地图

网格地图使用一组连续的LIDAR点集来构建2D或3D离散地图,该地图表示所有静态或固定障碍物的位置,包括树木,建筑物,路缘石和所有其他不可驱动的表面。该地图可以用于规划自动驾驶汽车的安全,无碰撞路径。
在这里插入图片描述

(2)定位地图

当汽车在环境中移动时,此地图由连续的激光雷达点集或相机图像特征创建。然后,定位模块将此地图与GPS,IMU和车轮里程表结合使用,来准确估算车辆的精确位置。

定位地图的作用是当自动驾驶汽车收到新的LIDAR或摄像机数据后,会将其与定位地图进行比较,并通过将新数据与现有地图对齐来创建自车位置的测量值。然后将该测量值与其它传感器组合在一起,以估计自车的运动,并最终用于控制车辆。
在这里插入图片描述

(3)详细的路线图

详细的路线图是可以由自动驾驶汽车驾驶的整个道路网的地图。该地图包含有关道路车道的信息,以及可能影响其的任何交通法规要素。详细的路线图用于计划自动驾驶汽车采用的安全有效的路线。可以通过以下三种方式之一来创建详细的路线图。

  • 在线创建:以准确标记和正确定位所有相关静态对象来创建地图。这包括所有车道边界在当前的驾驶环境中,任何管制元素(例如交通信号灯或交通标志),车道的任何管制属性,例如右转标记或人行横道。
  • 离线创建:通过多次收集给定道路的数据来构建离线地图。
  • 离线创建,在线更新。这种地图创建方法充分利用了这两种方法,可创建可在驾车时进行更新的高精度路线图。

3.运动规划

自动驾驶汽车使用分解方法,将运动规划问题分为以下三层

  • 任务规划:处理长期计划,定义整个驾驶任务,即从当前位置到最终目的地。任务规划会确定连接起点和终点的最佳路段顺序,然后将其传递到下一层。
  • 行为规划:负责处理解决短期计划,建立一组在沿着任务路径行驶时要执行的安全动作。如决定何时加速、减速等。
  • 本地规划:执行计划,负责定义要驱动的行驶路径和速度曲线。

4.车辆控制

在这里插入图片描述
车辆控制问题分为纵向控制和横向控制。横向控制器输出维持计划轨迹所需的转向角,而纵向控制器则调节油门,齿轮和制动系统以达到正确的速度。

5.系统监督

系统管理器是持续监视自动驾驶汽车各个方面并在子系统发生故障时发出适当警告的模块。有两个部分,硬件管理和软件管理。

  • 硬件监控器会持续监视所有硬件组件,以检查是否有任何故障,例如传感器损坏,测量值丢失或信息降级。硬件主管的另一项职责是持续分析硬件输出,查找与无人驾驶汽车所要执行的域不匹配的任何输出。例如,如果一个摄像头传感器被纸袋挡住。
  • 软件监控器负责验证软件堆栈,以确保所有元素均按正确的频率按预期运行,并提供完整的输出。
自动驾驶汽车硬件系统概述.pdf 目前绝大多数自动驾驶研发车都是改装车辆,相关传感器加装到 车顶,改变车辆的动力学模型;改装车辆的刹车和转向系统,也缺乏 不同的工况和两冬一夏的测试。图中Uber研发用车是SUV车型自身 重心就较高,车顶加装的设备进一步造成重心上移,在避让转向的过 程中转向过急过度,发生碰撞时都会比原车更容易侧翻 硬件在环 司机在环 甚于模器仿真 基于车辆执行 基于实腭道 基于必要的硬件平台 软件在环 车辆在环 自动驾驶研发仿真测试流程 所以在自动驾驶中,安全是自动驾驶技术开发的第一天条。为了 降低和避免实际道路测试中的风险,在实际道路测试前要做好充分的 仿真、台架、封闭场地的测试验证。 软件在环( Software in loop),通过软件仿真来构建自动驾驶 所需的各类场景,复现真实世界道路交通环境,从而进行自动驾驶技 术的开发测试工作。软件在环效率取决于仿真软件可复现场景的程度。 对交通环境与场景的模拟,包括复杂交通场景、真实交通流、自然天 气(雨、雪、雾、夜晚、灯光等)各种交通参与者(汽车、摩托车、 自行车、行人等)。采用软件对交通场景、道路、以及传感器模拟仿 真可以给自动驾驶的环境感知提供卡富的输入可以对算法进行验证 和测试 硬件在环(Hard- ware in1oop),各种传感器类似人的眼睛和 耳朵,作为自动驾驶系统的感知部分,该部分的性能决定了自动驾驶 车辆能否适应复杂多变的交通环境。包括,摄像头、毫米波雷达、超 声波雷达、激光雷达。针对不同的传感器,硬件在环会根据不同的传 感器和环境因素来部署。 车辆在环( Vehicle in loop),车辆执行系统向传动系统发出 执行命令来控制车辆,在自动驾驶中取代了人类的手脚。自动驾驶系 统的执行控制优劣决定了车辆是否能够安仝舒适的行驶。车辆运行在 空旷的场地上,自动驾驶系统感知系统模拟的虚拟场景,自动驾驶系 统根据虚拟的场景发出控制指令,再通过传感器将车辆的实轨迹反 馈到虚拟环境中,实珌真车与虚拟环境的融合,从而进行车辆操控的 验证 司机在环( Driver in loop),基于实时仿真技术开发,结合驾 驶员的实际行为,可以实现对车辆和自动驾驶技术开发测试做出主观 的评价。可机在环,可以一方面获得司机的主观评价,另一方面可以 验证人机共驾驶的功能。 自动驾驶系统的硬件架构 就整体而言,汽车是个全社会化管理的产品,其固有的行业特点 是相对保守的。在人工智能的大潮下,面对造车新势力和消费者需求 变化的冲击,传统汽车行业渐进式的创新方法已经面临巨大的挑战。 急需改变传统的架构和方法不断创新。自动驾驶幣体的硬件架构不光 要考虑系统本身也要考虑人的因素 腰性 酒 司 全雪 快冒 计算单元 m 感知 决策 控制 自动驾驶的硬件架构 自动驾驶系统主要包含三个部分:感知、决策、控制。从整个 硬件的架构上也要充分考虑系统感知、决策、控制的功能要求。整 体设计和生产上要符合相关车规级标准,如IS026262、AECQ-100、 TS16949等相关认证和标准。目前L1、L2、ADAS系统的硬件架构体 系和供应链相对完善符合车规级要求。 感知层:依赖大量传感器的数据,分为车辆运动、环境感知、 驾驶员检测三大类。 车辆运动传感器:速度和角度传感器提供车辆线控系统的相关横 行和纵向信息。惯性导航+全球定位系统=组合导航,提供全姿态信息 参数和高精度定位信息。 环境感知传感器:负责环境感知的传感器类似于人的视觉和听觉, 如果没有环境感知传感器的支撑,将无法实现自动驾驶功能。主要依 靠激光雷达、摄像头、亳米波雷达的数据融合提供给计算单元进行算 法处理。w2X就是周围一切能与车辆发生关的事物进行通信,包括V2V 车辆通信技术、V2Ⅰ与基础设施如红绿灯的通信技术、V2P车辆与行 人的通信。 驾驶员监测传感器:基于摄像头的非接触式和基于生物电传感器 的接触式。通过方向盘和仪表台内集成的传感器,将驾驶员的面部细 节以及心脏、脑电等部位的数据进行收集,再根据这些部位数据变化, 判断驾驶员是否处于走神和疲劳驾驶状态。 计算单元部分:各类传感器采集的数据统一到计算单元处理,为 了保证自动驾驶的实时性要求,软件响应最大延迟必须在可接受的 围内,这对计算的要求非常高。目前主流的解决方案有基于GPU、FPGA ASIC等 车辆控制:自动驾驶需要用电信号控制车辆的转向、制动、油门 系统,其中涉及到车辆地盘的线控改装,目前在具备自适应巡航、紧 急制动、白动泊车功能的车上可以直接借用原车的系统,通过CAN总 线控制而不需要过度改装 警告系统:主要是通过声音、图像、振动提醒司机注意,通过HMI 的设计有效减少司机困倦、分心的行为。 、自动驾驶的传感器 光雷詁 围憬头 毫来述 组合导 自动驾驶的传感
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值