基于CARLA的驾驶仿真平台搭建①

2021-07-05 01:33王成康黄李波
关键词:转向灯侧向力矩

王成康, 黄李波

(同济大学,上海 201804)

0 引 言

智能驾驶技术包括感知、决策、规划、控制等模块,目前在智能驾驶中常采用瀑布式的流程,即感知模块的结果作为决策模块的输入,决策模块的结果作为规划控制的输入,因此智能车感知与决策的能力十分重要。很多感知、决策模块的算法基于机器学习方法实现,这类算法的效果高度依赖于训练数据的丰富程度。目前,大部分驾驶数据主要通过驾驶员驾驶装有各类传感器的车辆在实际道路中采集。实车采集数据需要耗费大量的时间与精力,并且在采集过程中受限于天气、安全性等多种人为不可控因素。此外,实车采集数据存在极端场景数据缺失,数据标注工作繁重等缺点。从虚拟的仿真环境中采集带标签的数据被证明是真实道路数据补充的一种可行手段。基于开源智能驾驶仿真平台CARLA搭建了驾驶员在环的驾驶仿真平台。为了提高驾驶仿真平台的拟真度,设计并实现了转向盘力反馈与转向灯功能。提出的驾驶仿真平台可以被用于驾驶数据采集、驾驶行为分析等领域。

1 驾驶仿真平台介绍

1.1 CARLA软件介绍

CARLA[1]是由西班牙巴塞罗那自治大学计算机视觉中心指导开发的开源模拟器,用于自动驾驶系统的开发、训练和验证等多个环节。CARLA的渲染系统采用虚幻引擎,可以拟真地表现出光照、阴影,实现不同的天气状态。通过采用主从式的网络架构设计,CARLA支持多个用户在同一个虚拟世界中同时进行实验。在场景方面,CARLA提供了为自动驾驶系统开发创建的开源数字资源(包括城市地图、建筑物、交通信号灯等),同时CARLA开放了丰富的API接口帮助用户自定义仿真环境中的动态元素(例如行人、自行车、卡车等)行为。此外,用户可以使用MATLAB工具箱RoadRunner地图编辑器创建个性化场景地图并导入CARLA实现自定义的道路结构。在传感器方面,CARLA提供了包括摄像头、雷达、激光雷达、GPS等在内的多种传感器模型,用户在使用时可以自定义传感器的部分参数,例如激光雷达的线数、最大探测距离,雷达的视场角等。CARLA底层由C++实现,上层提供了丰富的Python接口,为用户的二次开发、联合仿真提供了良好的基础条件。

目前CARLA在智能驾驶领域主要存在三方面应用,分别是生成带标签数据用以训练深度学习算法[2],为深度强化学习提供训练环境[1]和智能驾驶算法验证与测试[3]。

图1 CARLA 虚拟场景示意图

驾驶模拟仿真平台采用的CARLA版本为0.9.10,所用的渲染引擎为UE4-4.22,在64位Ubuntu16.04系统上完成部署。

1.2 硬件介绍

1.2.1 G920驾驶操纵设备介绍

所使用的驾驶设备采用Logitech G920驾驶操纵设备。整套设备包括具有双电机反馈力的方向盘,油门、制动、离合踏板。方向盘上布置了两个方向轴,9个不同的按钮以及左右两个换挡拨片。图2为G920结构示意图。

图2 G920驾驶操纵设备

1.2.2 计算硬件介绍

CARLA采用UE4作为内核,在仿真过程中需要对驾驶场景进行实时渲染,对于计算机的GPU性能有较高要求。采用的计算机基础配置如下表所示。

表1 使用的计算机配置

1.3 驾驶仿真平台搭建

CARLA采用主从式网络架构。服务器端负责处理仿真环境信息,客户端用于接收和发送车辆控制信号。在CARLA仿真软件的基础上搭建了驾驶设备与显示设备,同时完成了转向盘力反馈功能与转向灯控制功能。构建的驾驶仿真平台架构如图3所示。

图3 驾驶仿真平台架构

2 力矩反馈与转向灯功能开发

为了实现更为真实的驾驶环境,在CARLA的基础上对驾驶仿真平台进行二次开发,开发内容包括G920转向盘反馈力矩设计、转向灯功能开发。

2.1 力矩反馈功能设计

根据赵林锋等人[4]所提供的方向盘转矩模型设计驾驶仿真平台中G920转矩力反馈系统。他们的研究表明,转向盘反馈力矩与车辆行驶速度、转向盘转角、侧向加速度之间存在密切关系。当车辆在低速环境下行驶时,车辆的侧向加速度较小,驾驶员对转向盘转角的变化较为敏感;当车辆以中速行驶时,驾驶员对侧向加速度和转向盘转角均较为敏感;当车辆以高速行驶时,驾驶员对侧向加速度更为敏感。由此设计了一套在不同行驶速度区段下不同的转向盘反馈力矩模型。

最终采用的反馈力矩模型如下。

Tfb=k(v)×Tfbl+(1-k(v))×Tfbh

Tfbl=(0.0162v+1.73)×(1-exp(-0.01×θsw))

Tfbh=(0.0163v+0.966)×(1-exp(0.857ay))

式中Tfb代表转向盘反馈力矩,Tfbh表示高速时的反馈力矩,Tfbl表示低速时的反馈力矩,力矩单位为N·m;v为车速,单位为km/h;Qsw为转向盘转角,单位为m/s2;ay为侧向加速度,单位为m/s2。将低速场景与高速场景的阈值分别设置为20km/h与60km。由上述公式得到的反馈力矩分布情况可见图4。

2.2 按键功能设计

根据真实车辆的转向灯操纵方式对驾驶仿真平台的转向灯操纵方式进行设计,目的在于提高模拟仿真平台的拟真性。在大部分乘用车中,转向灯通常由方向盘背后的转向灯操纵杆进行控制,部分赛车的转向灯操纵设备位于方向盘上。所使用的驾驶模拟设备不存在转向灯操纵杆对应的物理结构,因此采用按钮的方式控制转向车灯状态。在设计的驾驶仿真平台上,使用G920转向盘(图2)上的4和8按钮代表左转向灯与右转向灯。

图4 低速、高速场景下反馈力矩变化图

设计的转向灯控制逻辑如下。在仿真场景开始运行时,转向灯均默认处于关闭状态。当在仿真过程中捕捉到按钮4被按下时,打开左转向灯,再次捕捉到按钮4被按下时,关闭左转向灯。右转向灯采用与左转向灯相同的控制逻辑。

图5 转向灯控制逻辑

3 结 语

提出的驾驶仿真平台充分利用了CARLA仿真软件真实的渲染效果和丰富的应用接口。二次开发实现的力矩反馈模型与转向灯功能进一步提升了驾驶仿真平台的拟真性。最终完成的驾驶仿真平台在驾驶员视觉感受、触觉感受方面取了较高的还原度。提出的驾驶仿真平台将来可用于驾驶员驾驶行为分析、驾驶数据采集、道路交通事故重现等领域。

驾驶仿真平台将来可在以下方面进行优化。软件方面,可以提升交通流真实程度,加入不同风格的虚拟驾驶员模型。硬件方面,可以优化驾驶座舱与仪表显示系统,实现更为真实的驾驶环境。

猜你喜欢
转向灯侧向力矩
一起飞机自动改平侧向飘摆故障分析
军航无人机与民航航班侧向碰撞风险评估
基于地铁车辆装配带力矩螺栓紧固的工艺优化分析
高锁螺母拧断力矩及拧断槽尺寸计算方法研究
2018款上汽通用别克GL8右侧转向灯异常
分布式转向灯同步策略的研究
《原地侧向投掷垒球》教学设计
2014款上汽大众途观车右侧转向灯长亮
发动机阻力矩计算和起动机介绍
温馨提醒