基于SCANeR快速道路建模的程序化方法

2021-03-04 08:41王雪松王艳丽毋妙丽
实验技术与管理 2021年1期
关键词:纵断面线型模拟器

杨 烁,王雪松,王艳丽,毋妙丽

(同济大学 道路与交通工程教育部重点实验室,上海 201804)

驾驶模拟器具有安全、准确、可重复的实验环境等突出优势,可以支持交通安全研究,交通心理与行为,智能交通系统(ITS)中的人车路系统,基于安全因素的交通设施设计与维护,汽车的设计、研发与测试等领域的研究与开发[1-2]。基于驾驶模拟器的研究成果非常丰富,如道路设计有与安全评估方面,文献[3—4]研究了高速公路组合路段设计与车速和车道偏移的关系,评估设计安全性;环境影响驾驶行为方面,时恒等[5]利用驾驶模拟器可改变驾驶环境的特点,研究了雾霾天气对车辆跟驰行为的影响;黄晓翔等[6]研究了在城市道路场景下,驾驶员对应激场景的驾驶反应;Wang等[7]研究了在模拟环境下,安全地获取驾驶员在碰撞风险下安全停止所需的最小距离,用于研究前向碰撞预警算法。驾驶模拟平台在实验教学中的应用也越来越广泛,但作为一种大型仪器设备,同样存在专业性强、使用率低、软件专用、不易获取信息等问题,如何提高其使用率和增加效益,是实验室管理者面临的共同问题[8-9]。

道路场景建模是驾驶模拟实验进行的根本基础,会耗费研究者大量的时间精力,场景对实验结果具有决定性影响。关于如何搭建模型的相关研究比较少,一般情况下,场景搭建工作都采取手工方式[10],但实际使用中存在学习成本高、工作烦琐、错误率高等缺点。陈鹏等[11]使用移动测量技术快速搭建城市道路虚拟场景,可以达到良好的建模效果,但需要移动测量车等特殊设备,不具有推广性。

本文从分析RoadXML的道路数据格式开始,用程序化的方法导入设计参数,快速生成场景,用于解决高速公路一类的建模问题。

1 RoadXML及开源解析器

SCANeR Studio是为驾驶模拟器设计的软件工具,能够实时记录仿真数据,采集车辆动力学参数、交通参数、环境参数、驾驶员操作参数等也可以添加辅助设备采集驾驶员眼动、心率和面部表情等数据。其原生地图格式为 RoadXML,同 OpenDrive、OpenStreetMap等地图格式相同,都是一种开源道路数据格式,遵循 XML语法,在企业和科研院所近20年的研究历史,被普遍应用于驾驶模拟器和交通研究中。

同济大学建设了世界先进的八自由度运动系统的驾驶模拟器,横、纵范围5 m×20 m,驾驶舱内置一辆真实车辆,具有先进的视景和声响系统,高逼真地模拟驾驶环境,使用 SCANeR作为软件平台,实物如图1所示。

在软件的 Terrain模式可以直观地编辑路网,路网的全部信息以RoadXML格式的文件存储,逻辑层的信息关键决定了车辆行驶逻辑和仿真数据,车辆动力学数据、交通流仿真、路面摩擦系数控制、自动驾驶车辆路径控制、环境声音、生成三维路网和驾驶模拟器的体感模拟等都依赖于逻辑层。道路周边环境可以使用 3DSMAX编辑或者添加 SCANeR的原生 对象。

本文的研究基于 2.4.1版本的 RoadXML数据格式,在开源网站 Github上可以获取解析器的全部源码[12],在Windows系统下编译源代码得到VS项目,利用Visual Studio打开此项目,可以阅读其文档对象模型,并在此基础上编写读写RoadXML格式的程序。2.4.1版本的RoadXML格式说明中包含了80个标签,以及相应的属性和元素,部分结构如图2所示。

图1 同济大学驾驶模拟器实物

图2 RoadXML数据结构

2 程序设计

通常情况下 CAD设计图中的竖曲线表和直曲线表包含了道路设计的全部参数,需要设计合适的表格并对需要的参数进行合适的处理,用于程序读取参数生成对应的RoadXML文件。

2.1 平面线型数据

平面线型数据保存在XYCurve标签及属性值中,其嵌套4种线型标签,Segment、CircleArc、ClothoArc和 Polyline,分别表示直线、圆曲线、缓和曲线和多段线,通常定义道路线型只使用前3个标签。设计数据表的字段名如表1所示。表中Angle是道路起点的方向角度(0°~360°),Length 为对应线型的长度,Type用于区分3种线型。

表1 平面线型数据表字段名及含义

2.2 高程数据

直曲线表一般只提供了桩号、标高、曲线半径、切线长、外距、纵坡等数据,在SCANeR中无法直接利用这些数据来绘制纵断面。根据这些参数计算设计高程[13],10 m步长得到每个桩号相应的设计高程,或者在纵断面设计图中直接提取桩号和设计高程的数据。

在SCANeR的Terrain模块中可编辑高程,其纵断面曲线由3次样条曲线拟合,拟合曲线经过所有控制点,两控制点之间的曲线形状由斜率来控制,拟合曲线在控制点处相切,改变某个控制点的高度或者斜率只影响相邻两点区间中的曲线形状。为了保证路面曲线平顺,不发生颠簸现象,使用式(1)计算每个控制点的斜率,即此控制点左右两点之间的斜率。

起点和终点坐标的斜率与旁边的坐标点斜率相同即可,不会影响道路整体的平顺性。设计纵断面表格如表2所示。

表2 纵断面数据表字段名及含义

纵断面数据以 SZCurve标签表示,嵌套 begin,end两个标签,属性值存储控制点坐标和斜率。

2.3 程序流程与实例

程序读取表格中的所有数据,每行数据都存储在容器的对象中,以树-节点的方式将赋值到对应标签对象当中,程序执行流程如图3所示。

图3 生成RoadXML文件的流程图

3 适用性分析

程序实现了从平面图表数据和竖曲线表获取设计道路的横、纵线型数据,由此快速生成相应的RoadXML文件,得到模拟道路,无须手动输入数据,可以直接观察道路的形状,并进行适当的调整与完善。在SCANeR中非常完美地重现了CAD设计图中的道路,省略了手动输入数据过程中烦琐的数据校准,在数据量巨大的情况下,效果十分明显。常规的建模方式中,手动输入道路参数,数据精度只能编辑到 0.001 m,使用程序导入数据则没有精度限制。

在实验教学中具有促进意义,引导学生对软件进行深入学习,加深对交通仿真的理解,牢固计算机辅助应用知识和夯实交通专业知识,提高综合能力,可根据需求合理修改程序,并进行探索性的实验[14]。

同样也存在一些不足之处,城市道路场景中存在大量的交叉口,由于SCANeR软件的特性,无法对交叉口进行精确编辑;并且存在公交车停站点等,导致道路横断面变化频繁,收集横断面数据更加烦琐,所以城市道路下适用性较差。

4 结语

使用SCANeR软件的机构很多,但是对于道路建模方面的研究还非常少。高质量的仿真场景中道路逻辑层面搭建是核心,通过引入ParserRoadXML构建道路,可快速开展山区高速公路设计优化和安全评估、驾驶环境与行车安全等方面的研究,在“人—车—路—环境”要素下解决道路相关的场景搭建问题。对评估道路线型设计等研究方向具有重要意义。

同时,软件的使用对优化仪器设备、及时跟进前沿研究课题、总结使用规律和经验等具有优化作用,从技术角度挖掘高校大型仪器设备的潜能,提高使用效率。

猜你喜欢
纵断面线型模拟器
变化环境下考虑线型不确定性的水文设计值估算分析
了不起的安检模拟器
盲盒模拟器
划船模拟器
微流控法低温保护剂添加及去除线型优化研究
100km/h线路节能坡纵断面设计研究
AutoCAD中线型的开发定制技术
普速铁路轨道大修中平纵面的施工控制
基于轮轨动力学的缓和曲线型道岔平面线型设计
动态飞行模拟器及其发展概述