自动驾驶补全录
2018-06-04江德洲
江德洲
无人车是怎样工作的?
2017年9月,Udacity的员工David Silver在外媒Medium上发表文章,题为How the Udacity Self-Driving Car Works,科普了由Udacity研发的无人车Carla是如何工作的。
总体来说,Carla上主要有四个子系统,分别为传感(Sensor)系统,感知(Perception)系统,决策(Planning)系统和控制(Control)系统。文章作者用通俗易懂的语言对这些子系统的工作原理进行了阐释。
1.传感(Sensor)
Carla的传感系统中包含从环境中收集数据的物理硬件。
举例来说,Carla的挡风玻璃顶部安装了一定数量的相机,用户能根据自己的需要调整相机的个数,不过通常情况下会有1到3个相机排成一列。Carla的前保险杠自带一个嵌入式的雷达,车顶还安装有一个360度的激光雷达,这些雷达是收集环境数据的主力设备。有时Carla也会用到其他传感器,比如GPS、IMU和超声波雷达等。从这些传感器中获得的数据将汇总至感知系统进行处理。
2.感知(Perception)
Carla的感知系统能够将原始的传感器数据转化成对后续工作有意义的环境信息。感知系统的组件可以分为两个不同的功能模块:检测模块与定位模块,二者各司其职。
检测模块需要从传感器的环境信息中探测车辆外部的物体,包括信号灯的识别与分类、物体探测与追踪以及自由空间探测,定位模块则可以明确车辆的具体位置。Carla自带的全球定位系统(GPS)可以帮助其准确定位,但GPS的精度只能达到1至2米,这是远远不够的。对于本就不够宽阔的城市公共道路,一两米的误差足以使无人车撞到行人或轧上路肩。
因此,Carla还集成了高精度地图、激光雷达传感器和复杂的数学算法等技术与设备。激光雷达先行扫描外部环境,将探测到的结果与高精度地图进行对比,进而获得精确的定位。通过这些举措,Carla将定位的误差进一步缩减到了10厘米以内。之后,感知系统可以将结果输出至决策系统上。
3.决策(Planning)
Carla有一套直截了当的决策系统。该系统中的决策装置为其构建了一系列导航点,Carla只需沿途追踪这些导航点即可。需要注意的是,每个导航点都有一个特定的位置,并关联着特定的目标速度。当Carla经过导航点时,系统会将当时的位置与速度进行匹配。
同时,决策系统还将根据感知器提供的数据预测其他车辆的运动轨迹,实时规划调整导航点的位置。举个例子,如果决策系统预测Carla前方的车辆即将减速,那么系统会让Carla的速度也放慢些,并依靠轨迹生成组件创建新的减速导航点,相似的计算方法也用于对信号灯和交通标志等信息的处理。
一旦决策系统生成了新的导航路径,那这些路径将会被传送至最后一个子系统——控制系统。
4.控制(Control)
控制系统通过发送加速、刹车或转向信息来驱动车辆。这些信息中既有纯粹的電子信号,也有以物理形式呈现的。例如,当你坐在Carla里时,你会发现它自带的方向盘实际也可转动。
控制系统将决策系统生成的导航点和目标速度作为输入信息,并将这些信息传递给控制器,实现对车辆速度的控制。为了沿预定轨迹行驶,控制器需要规划方向盘、加速、刹车等部件的动作。控制系统可用多套算法将导航点映射成对方向盘和油门的相关指令,这些不同的算法就是所谓的控制器。Carla用的是一套相当简单的比例-积分-微分控制器(PID控制器),当然,其他复杂的控制器也是可供选择的。