首页 > 其他分享 >手把手教你搭建OpenScenario交通场景(下)

手把手教你搭建OpenScenario交通场景(下)

时间:2024-11-18 18:18:59浏览次数:1  
标签:轨迹 手把手 实体 点击 路线 不规则 车道 OpenScenario 搭建

       在《手把手教你搭建OpenScenario交通场景(上)》中,我们已经介绍,在动力学仿真软件ModelBase中对车辆、行人、物体和RSU四类实体进行创建后,实体的名称将根据各自类型出现在编辑器左上位置的实体列表中进行显示,并可用于通过点击在编辑器中实现快速查找。

模型库

       包括车辆模型和驾驶员模型两部分,其中,关于车辆模型部分,列表中不同的模型将在软件运行动画界面中显示不同样式,并且支持对车辆中心和边界框等外观参数进行编辑;而驾驶员模型部分,则可对体现其驾驶风格的如舒适加/减速度,最小换道距离,超车渴望度等各类参数,是否遵守交通规则等特征进行设置,或对驾驶员模型进行新建或删除。

随机交通

       可用于设置场景中是否开启随机交通流功能,在功能开启后可选择周边待生成随机交通车辆的中心实体,设置生成车辆的范围区域、最大数量、类型占比和最大期望速度等信息。如下图所示,随机交通车只生成在图中的暗灰色区域,当随机车辆跑出椭圆区域则会被自动消除,图中椭圆区域的车辆继续行驶。场景中的所有随机车辆均处于自动驾驶模型,车辆采用随机终点。

环境配置

       可用于配置场景运行时的环境参数,支持对光照、云层和晴雨雪雾尘天气变化,以及路面积水情况进行模拟,并实现运行动画中的显示效果,在环境配置界面中可供修改的参数及其含义如下表所示:

交通灯配置

       在通过道路编辑器进行交通灯添加并与控制器绑定的基础上,在配置界面中能够以每个控制器为单元对交通灯相位总时长,各色交通灯(包括通行--绿色、注意--黄色、停止通行--红色)相位时长占比进行设置,来作为车辆通过各个交叉路口的交通准则。

SCP编辑

       SCP指令是通过发送指令的方式控制仿真运行过程中实体的行为。在SCP编辑界面,点击“生成”按钮,可生成勾选框所对应的SCP指令。运行时点击“发送”可将文本框中的指令发送至后端执行。点击“重置”按钮可取消所有勾选并清空输入框。

       SCP指令采用了xml的格式,通过节点名称来确定指令的内容,通过节点中的参数确定指令的详细内容。SCP主要包括七类控制指令:交通行为指令(Traffic)、实体控制指令(Player)、环境控制指令(EnvironmentAction)、交通灯控制指令(TrafficLight)、设置参数指令(Set)、动画控制指令(Animator)、接口指令(API)。通过灵活运用各种SCP指令可以搭建更丰富的场景,测试更复杂的功能。

       另外,通过点击“生成”按钮来生成的SCP指令也可以复制粘贴到车辆行为设置-触发条件及行为界面中,作为上述以SCP形式进行车辆行为设置的代码内容来使用。

动态监测

       动态监测界面可以监测实体在运行时的实时数据,在运行状态时,选中实体,打开动态监测界面,界面中会实时显示该实体的动态参数。各参数的含义如下:

  • 实体名称:选中实体的名称
  • 实体id:选中实体的id
  • X坐标:选中实体的X坐标
  • Y坐标:选中实体的Y坐标
  • Z坐标:选中实体的Z坐标
  • 实体速度km/h:选中实体的速度

行驶路线列表

       行驶路线列表位于场景编辑器的左下方,在行驶路线列表中存放该场景中的车道路线和不规则轨迹。

  • 车道路线

       ① 新建车道路线:在车道路线列表中,右击“车道路线”,弹出新建选项,点击新建路线,会自动新建出一个空的车道路线表格,此时进入“路线模式”,鼠标光标也将变为十字标志。在场景编辑区域内点击道路即可将指定的道路作为一个路线点添加进表格中,然后可继续在道路中沿着车辆行驶的下游方向选择路线点,高亮显示的车道数量不断增加,最终完成车道路线的创建。

       ② 编辑车道路线:对于已经创建的车道路线,可以在车道路线列表中进行选中,然后对车道路线表格中的路线点进行删除,或通过点击“新建路线点”按钮进入车道路线编辑模式,在该路线下游继续添加路线点以实现路线的进一步延伸。

       ③ 删除车道路线:对于已经创建的车道路线,可以在车道路线列表中进行选中,然后右键点击“删除路线”选项进行整条车道路线的删除。

  • 不规则轨迹

       不规则轨迹是由多个坐标点根据一定的连接方式确定的运行轨迹,ModelBase支持以Polyline(折线)、Clothoid(羊角螺旋线)、Nurbs(B样条曲线)三种方式对选定的坐标点进行自动连接。

       ① 新建不规则轨迹:在车道路线列表中,右击“不规则轨迹”,弹出新建选项,点击新建路线,会自动新建出一个空的不规则轨迹表格,此时进入“不规则轨迹模式”,鼠标光标也将变为十字标志。在场景编辑区域内点击任意区域即可作为一个轨迹点添加进表格中,在点击的过程中,新增的轨迹点将与上一个轨迹点已选定的轨迹类型进行自动链接,最终形成一条理想的不规则轨迹。

       ② 编辑不规则轨迹:对于已经创建的不规则轨迹,可以在不规则轨迹列表中进行选中,然后对不规则轨迹表格中的轨迹点进行删除或坐标值修改,或通过点击“新建轨迹点”按钮进入编辑模式,在该轨迹下游继续添加轨迹点以实现轨迹的进一步延长。

       ③ 删除/隐藏不规则轨迹:右键不规则轨迹的名称,例如“trajectory_0”,点击删除轨迹,即可将该选中的不规则轨迹删除。点击“隐藏轨迹”,即可将选中的不规则轨迹隐藏。

       ④ 导入不规则轨迹:右击“不规则轨迹”,点击“导入轨迹”,弹出选择窗口。“导入轨迹”功能支持导入 [time latitude longitude altitude heading]或[time latitude longitude altitude]格式的GPS轨迹文件,其中每一列数据需要满足对应的数据格式,例如:数据文件第一列为时间,第二列为纬度,其余各列以此类推。“导入轨迹” 实际是根据设置的参考经纬度将一系列经纬度轨迹点转换为世界坐标系下的轨迹点,暂时只用到轨迹点经纬度信息。目前支持导入的类型包括*.txt格式的文本文件、*.xls、*.xlsx 格式的Excel文件。

       在完成上述两种行驶路线的创建后,车道路线和不规则轨迹将分别出现在编辑器左下角的列表中,并在车辆行为配置--初始状态子界面中,选择基于“指定不规则轨迹”或“指定车道路线”的行驶路线控制模式时进行对应使用,随后被设置车辆将沿该路线进行行驶。

       ModelBase是经纬恒润自主研发的综合驾驶测试仿真软件,具备车辆动力学模型及智能驾驶场景仿真能力,可用于乘用车、商用车的整车电控系统、ADAS系统的设计、测试和验证。可以覆盖电控系统的整个开发周期,包括早期的算法仿真测试(MIL/SIL),控制器的硬件在环测试(HIL),半实物台架测试(如电机台架、动力系统台架、整车台架等),以及车辆在环测试(VIL)。

了解更多

       ModelBase软件可免费申请试用,请致电 010-64840808转6116或发邮件至[email protected](联系时请说明来自博客园)

标签:轨迹,手把手,实体,点击,路线,不规则,车道,OpenScenario,搭建
From: https://www.cnblogs.com/hirain123/p/18553362

相关文章

  • 从0开始搭建一个包含文档的组件库
    初始化项目使用vue-press作为文档框架,使用vue3+ts+vite作为组件库和测试项目框架,PnpmWorkspaces作为Monorepo项目的依赖管理工具新建一个文件夹,根据vue-press的官方文档,在根目录下安装了vue-press,同时使用vite初始化组件库项目。修改组件库项目package.json修改name字......
  • 循序渐进搭建复杂B端系统整洁架构
    作者:京东零售赵嘉铎前言:信息时代技术更迭和传播速度不断加快,技术变得泛娱乐化,大数据、云计算、区块链、元宇宙、大模型,一代代技术热点在社会舆论的裹挟之下不断地吸引着资本的眼球,技术人员为了不被时代所淘汰也不得不时刻追赶潮流。在这样一个时代背景下,软件工程作为一门不起眼......
  • 移动开发技术——基本框架搭建
     一、实现效果二、功能说明主界面有上中下三个结构,包含四个界面:联系人、聊天、发现、我的。从聊天可以点击进入列表页面,点击列表的某一行可以进入详情页面,列表的每一行对应不同的数据,列表可以上下滚动,要用到recycleview。需要实现以下功能:activity之间的跳转,数据的绑......
  • WVP-pro 搭建相关的坑注意
    Wvp-pro是一个开源的gb28181平台## 一些知识点网址 https://doc.wvp-pro.cn/#/相关的另一个开源的  一个基于C++11的高性能运营级流媒体服务框架ZLMediaKitjava,sprinboot,npmmysqredisdocker坑位wvp部署时,需要设置zlmediakit的secret,这个secret需要在do......
  • 使用ProxyPool搭建代理IP池并获取代理IP示例
    安装ProxyPool首先确保已经安装了 pip 工具(Python的包管理工具),在命令行执行以下命令安装 proxypool:配置ProxyPoolProxyPool的配置文件通常是 config.py,可以根据需求修改配置项,比如设置代理IP的来源、验证周期等。以下是一个简单示例配置(部分关键配置项示意):启动ProxyP......
  • Flutter项目实战(1):通用项目框架搭建
    下面介绍Flutter最基本的通用项目框架搭建,同时实现了一个登录界面图标和登录界面。先看下效果图:使用ScreenUtilInit自适应界面大小;使用Stack支持多个子界面在同一个全屏主界面上选择显示;使用Get插件实现界面之间的跳转和国际化翻译;界面都通过Transform实现了鼠标移动......
  • linux(统信)下搭建electron开发环境
    1.安装vscode下载地址https://vscode.download.prss.microsoft.com/dbazure/download/stable/f1a4fb101478ce6ec82fe9627c43efbf9e98c813/code-stable-x64-1731511985.tar.gz下载后拷贝压缩包到安装目录下解压缩.点击code就可以启动.2.安装githttps://git-scm.com/downlo......
  • catia零部件装配结构搭建
    catia零部件装配结构搭建ProductCatia的product文件保存装配结构和各个零部件之间的参数关系与约束关系,不保存三维实体本身。装配结构搭建通常在装配结构搭建的时候不考虑零部件之间的约束关系,只保留装配结构与位置关系(零部件的三维坐标与当前的姿态)。程序思路一般情况下,会......
  • 上海AI Lab Mono-InternVL环境搭建&推理测试
    ​引子        原生多模态大模型性能瓶颈,迎来新突破!上海AILab代季峰老师团队,提出了全新的原生多模态大模型Mono-InternVL。与非原生模型相比,该模型首个单词延迟最多降低67%,在多个评测数据集上均达到了SOTA水准。OK,那就让我们开始吧。一、模型介绍        将......
  • 在阿里云快速启动Appsmith搭建前端页面
    什么是AppsmithAppsmith是一个开源的低代码开发平台,它使得开发者能够快速地构建内部工具、业务管理系统、CRM系统等。Appsmith通过提供一系列预建的UI组件(如表格、图表、表单等),以及对数据库、API调用的直接支持,简化了开发过程。开发者可以使用这些组件和服务来构建复杂的业务应用......