OpenDRIVE作为一种高度专业化的道路建模标准格式,采用XML数据语言构建,其核心优势在于能够精确且详尽地刻画道路网络的几何特征,包括但不限于车道宽度、曲率、坡度以及道路交叉口的复杂布局。它不仅涵盖了基础的道路元素,还深入到了交通基础设施的细节层面,如交通标志的位置与类型、交通信号灯的相位与时序、道路表面的材质与摩擦系数等,为自动驾驶算法和高级驾驶辅助系统(ADAS)提供了全面且精确的环境感知基础。
此外,OpenDRIVE支持灵活的道路网络拓扑结构定义,能够处理环路、分支、合并等多种复杂道路形态,并通过层次化的节点和链接设计,有效管理大规模道路数据的组织与访问。这种结构化的建模方式简化了自动驾驶系统对复杂交通场景的理解与应对,提升了系统的安全性、可靠性与适应性。
在自动驾驶技术的研发与验证阶段,OpenDRIVE格式的数据被广泛应用于仿真测试平台的搭建,帮助开发者在虚拟环境中对算法进行高效迭代与优化,从而加速自动驾驶技术的商业化进程,推动汽车行业向更加智能化、自主化的未来发展。
经纬恒润动力学仿真软件ModelBase遵循国际道路标准OpenDRIVE标准,开发内嵌了道路编辑器,可用于对仿真测试过程中的车辆行驶工况进行搭建。从搭建的形式上,软件支持通过导入OpenDRIVE格式文件来自动生成道路,然后可利用道路编辑器在此基础上进行编辑修改,或是从零开始进行道路模型的创建。当然,编辑后的道路模型也可以OpenDRIVE格式对外导出使用。
下面我们来一起看一下道路编辑器的功能和操作使用方法,道路编辑器的操作界面如图1所示。
图1 道路编辑器操作界面
绘制工具栏
通过鼠标左键单击可实现对工具栏中不同功能按钮间的切换,这些功能包括以下多种选择。
· 选择
用于对编辑区域内的Road、Junction、Signal和Object等进行选中,然后用于在右侧的参数配置界面对这些元素进行详细的特征编辑,或是进行复制粘贴、删除等操作。
· 移动旋转
在选中编辑区域内的Road、Signal和Object等元素,可通过拖拽形式对其位置进行移动,或结合右侧的路网参数配置窗口以参数输入形式对元素的位置和角度进行调整。
· 局部放大
用于在编辑区域内对添加后的元素进行放大显示。
· 创建直路
用于实现在编辑区域内进行直路的创建。在具体操作时,用鼠标左键在编辑区域内单击点下第一个点作为直路的起点,移动鼠标,此时在第一个点和鼠标移动点之间会出现一条黑色直虚线(直路中心线位置预览),当再次单击点下第二个点作为直路的终点后,一条直路便绘制完成了。
· 创建圆弧路
用于实现在编辑区域内进行圆弧路的创建。在具体操作时,用鼠标左键在编辑区域内单击点下第一个点作为圆弧路的起点,移动鼠标,此时在第一个点和鼠标移动点之间会出现一条黑色直虚线(圆弧路起点位置切线方向预览),当确定好切线角度并再次点击鼠标左键后,在第一个点和鼠标位置之间将会出现一条黑色圆弧形虚线(圆弧路中心线位置预览),当单击点下第三个点作为圆弧路的终点后,一条圆弧路便绘制完成了。
· 创建样条路
用于实现在编辑区域内进行任意形状样条路的创建。在具体操作时,用鼠标左键在编辑区域内单击点下第一个点作为样条路的起点,移动鼠标,此时在第一个点和鼠标移动点之间会出现一条黑色直线(该段样条路中心线位置预览),然后可再次单击点下第二个点作为道路的拐点位置,此时可继续移动鼠标,第二点和鼠标移动点之间同样会出现一条黑色直线。可依此重复操作,使样条路不断被延长,当想结束绘制时,单击鼠标右键即可退出编辑并得到一条样条路。
· 创建路口
用于进行交通路口的创建。在具体操作时,用鼠标左键在编辑区域内待添加路口附近单击点下第一个点,然后移动鼠标,在第一个点和鼠标移动点之间出现一个黑色矩形框,令矩形框囊括路口涉及路段后,可再次单击点下第二个点来确定矩形框的大小,随后可基于选择按钮对路口中道路的车道按实际需求进行连接。
· 自定义编辑道路配置
① 添加直路:用于对已创建好的直路/圆弧路/样条路以直路的形式进行延长
② 添加圆弧路:用于对已创建好的直路/圆弧路/样条路以圆弧路的形式进行延长
③ 添加样条路:用于对已创建好的直路/圆弧路/样条路以样条路的形式进行延长
④ 合并道路:用于对两条不同道路路段进行前后连接合并
⑤ 切割道路:功能与合并道路相反,用于将道路分割成多个路段
路网参数配置
在基于工具栏完成道路形状样式的绘制后,可通过“选择”按钮选中编辑区域内的Road、Signal和Object等元素,在界面右侧的路网参数配置窗口对更加详细的特征参数进行具体查看和编辑,包括以下几点。
· 轨迹
用于不同样式道路的中心轨迹进行查看或编辑,其中包括:
① 直路:可查看和修改道路起点的X、Y坐标,以及道路的航向角和长度
② 圆弧路:可查看和修改道路起点的X、Y坐标和切线方向的航向角,以及圆弧路的长度和转弯半径
③ 样条路:可查看道路起点的X、Y坐标和切线方向的航向角,以及道路长度和形状拟合多项式系数
· 车道
用于对道路进行车道颗粒度的特征编辑,可编辑参数包括车道的类型、宽度、高度、最大行驶速度和附着系数,以及车道线样式等。
· 高程
可结合偏移量对道路中选定路段的高程值进行设置,进而实现对道路坡度的编辑。
· 超高
结合偏移量对道路中选定路段的侧倾角进行设置。
· 类型
可用于对道路的类型参数(如最大车速)进行设置。
· 中心偏移
可结合偏移量对道路中选定路段的中心线偏移量进行设置。
· 前驱后继
用于对选定道路的前驱和后继道路类型、ID进行查看。
· 地形
用于对道路两侧进行平原、高山、森林、山区、耕地和建筑等地形环境的添加,并可对添加区域范围进行编辑。
以上是使用ModelBase搭建OpenDRIVE道路的操作说明,如何进一步丰富实现静态场景,敬请关注《手把手教你搭建OpenDRIVE道路模型(下)》
ModelBase是经纬恒润自主研发的综合驾驶测试仿真软件,具备车辆动力学模型及智能驾驶场景仿真能力,可用于乘用车、商用车的整车电控系统、ADAS系统的设计、测试和验证。可以覆盖电控系统的整个开发周期,包括早期的算法仿真测试(MIL/SIL),控制器的硬件在环测试(HIL),半实物台架测试(如电机台架、动力系统台架、整车台架等),以及车辆在环测试(VIL)。
ModelBase软件可免费申请试用,只需要发送【姓名、联系电话、邮箱、公司/学校名称、部门/院系、申请版本(动力学版本/智能驾驶版本)】信息到market_dept@hirain.com即可。