sudo ./vtdstart.sh
按回车打开VTD这是通过管理员权限打开的VTD程序(在Terminal进入VTD/bin位置后直接输入 ./vtdstart.sh也可以;或者可以自行创建快捷开启方式)然后,确认上方工具栏绿色对勾是否亮起,亮起则license正确按【新建文件(如下所示)】新建工程文件,在弹窗里输入命名,按对勾进入VTD准备界面点击VTD上方工具栏【Tools->RoadDesigner】进入ROD,确认弹出的绿色窗口显示ROD has been initialized successfully1.2 设置需要显示的元素ROD窗口上方的工具栏用来切换显示需要显示的元素点击‘上图位置1处’显示背景网格,通过【View -->Grid】可以调整网格的大小,这里选择10m点击‘上图位置2处’可追踪网格交点,这样可以通过网格快速的确认绘制道路的起点和终点点击‘上图位置3处’显示车道线,以便之后可以直观的设置车道线1.3 建立一个环线line1.3.1 画一条直线点击‘下图位置1处’图标开始画直线,ROD里面的直线工具通过选择直线的起点和终点来绘制直线,用红色光标左键点击直线,可以在右侧界面设置直线的长度,起点和终点通过绘制四条直线的方法连接出一个5050的正方形,如‘图4位置2处’(因原图线太细,上传后看不清reference line,所以我这里把他们加粗了)1.3.2 连接两条直线将光标切换到‘下图位置1处’,选择绘制的两条直线,点击‘下图位置2处’自动连接两条直线用红色光标单击刚刚建立的圆弧在右边设置界面可以改变圆弧的半径小提示:连接的时候两条线要变成同一方向(先将line转变为track,换方向后再转变回line)1.4 将line变成track全选刚才建立的环路,点击‘上图位置3处’图标将刚才建立的环线变成一条路,如下图(因原图线太细,上传后看不清reference line,所以这里把他们加粗)1.5 延长track鼠标左键选择道路后,右键单击选择的道路在弹出的下拉菜单里选择【geometry ->add line】,就可以将道路沿着道路方向延长1.6 分解鼠标左键选择道路,按住ctrl使用鼠标左键单击道路右键在弹出的下拉菜单里选择【geometry-> split line】,就可以在道路中点处添加sticky point(注意:这时候分开的是line,track并没有被分开)鼠标左键选择道路,按住ctrl使用鼠标左键单击sticky point右键在弹出的context menue里选择【geometry->split before element】,就可以将道路从sticky point处分解为两部分1.7 复制道路右键单击道路,将鼠标滑动到下拉菜单里的track栏,可以对道路进行复制复制道路时,如果选择【Duplicate with properties】,会把道路和道路周围的街景一起进行复制如果选择【Duplicate without properties】,就不会把道路周围的街景一起复制进来如果想复制道路一侧的街景,可以在同样的选项里选择【separate】,这样道路就被按照行驶方向分成了两部分1.8 完成道路设置1.8.1 确定偏移量建立完道路之后拥有了一个道路的起点,这时候需要让道路拥有宽度首先用红色光标左键点击道路,这时候会发现右侧出现道路设置界面点击‘下图位置1处’编辑基本道路信息,在右侧POS栏下右键,新建并设置偏移量(偏移量就是即将设置的道路起点),此处从道路起点开始设置道路即偏移量为01.8.2 定义道路右键点击‘下图位置1处’,出现下拉目录选择在基准线左侧新建一条道路,点击insert new left在00的左侧新建一条车道此时的车道是没有宽度的,在offset里面点击右键,在下拉菜单里选择new,新建一个宽度信息在width里输入需要设定的道路宽度,根据中国车道标准设置车道宽度为3.75m在‘下图位置1处’里可以设置车道线的模式同样,在offset里面新建一个车道线模块,在mark里选择需要定义的车道线格式,这里给两条车道的车道线都设置为solid(单实线)在‘下图位置1处’可以设置路面样式,可以选择将路面设置为沥青路面,草坪,或者路缘此处设置路面为standard在‘下图位置1处’可以设置道路的限速,此处设置道路的限速为60km/h如果对道路没有特殊要求可以使用VTD自带的参数自动生成道路类型新建完track之后,在offeset里新建一个存储道路信息的文件然后在view的下拉菜单里,将光标划到macro的位置在macro里可以找到需要的道路模型,快速配置道路信息1.8.3 设置交通标志左键点击设置栏里的‘下图位置1处’图标,在右侧的POS栏里新建一个文件,意为在此道路的相对距离处建立此交通标志右键点击add,从库里导入一个新的标志左侧栏中“add”的数量表示可以在这个位置添加的标志数量Orientation可以设置交通标志的朝向,通常情况下交通标志的朝向都会与行驶方向相对C-Offset可以设置当前交通标志相对于基准线的偏移量此处添加一个描述道路限速的交通标志,鼠标右键点击add添加一个新的交通标志选择【filter->static-town】,在里面找到相应的限速标志,添加进来此处将路标放置在道路边缘,所以设定C-Offset为3.75m然后在top lightp处设置标志高度为1.75m由于要设置立式的交通指示牌,同样需要给这个交通标志加一个立柱在add里面找到filter->poles添加我要的立柱类型同样将c-offset设定为3.75m设置完后可以在element里检查他们的z-offset,需要确认立柱的z-offst大于交通标志的z-offst才能保证交通标志是安装在立柱上的然后再给道路添加两个红绿灯,在POS里新建两个文件,一个位置设置为30,另一个位置设置为75用同样的方式把两个红绿灯放置到路边对于红绿灯,需要设置清晰明了的id,以方便在之后SE的设置里设置相对应红绿灯的时钟1.8.4 添加街景在这里可以使用excute marco快速创建街景首先使用红色箭头选择道路单击右侧设置界面的‘下图位置1处’按钮进入到设置界面在设置界面点击【action->excute marco】,弹出下方设置窗口在蓝色实线圈出的区域内,可以选择想要插入的街景类型在这里选择【Motorway->RQ25】在下方的信息栏side里可以选择给道路左边添加街景或者给道路右边添加街景在type里可以选择添加路面类型(style和外部景观externals)也可以使用更加复杂的方式自定义街景:在添加道路元素之前,首先添加路面信息在右侧设置栏里选择‘下图位置1处’建立路面:右键新建一个道路元素,更改道路元素的起点和终点,在道路外侧添加路面信息,编辑路面宽度在建立内部路面的时候通常选择分段建立路面元素,将道路按照需分解为多段,给每段分别建立不同的道路信息同时VTD也提供导入外部模型的选项,鼠标右键单击编辑面板,在下拉菜单里选择3D-model->add single根据想要添加的元素选择filter,然后从面板里选择对应的模型鼠标左键单击模型,可以在下方菜单里调整模型的位置,大小和角度在下方编辑栏里可以编辑街景的大小,位置和角度如果想要快速插入重复街景可以使用repeat功能首先选择重复的方式,这里选择了aligned on path然后选择重复街景间的间隔距离点击resolve就可以生成一个重复街景通过控制s-offset的start和stop的值可以控制生成街景的数量1.8.5 道路预览在建好道路之后可以对其中一部分或者整个道路进行预览可以在左侧工具栏里点击‘下图位置1处’,用鼠标框出想要预览的区域然后单击‘下图位置1处’,生成预览场景(小tips1:在预览之前需要先保存文件才能正确预览小tips 2:在道路场景比较复杂的情况下生成预览文件需要的时间较长,期间ROD不会给出任何提示,需要耐心等待一段时间)1.8.6 快速生成道路在VTD里可以使用插入tiles快速建立道路使用红色鼠标,右键单击编辑面板,选择add tiles使用filter选择需要的tiles添加到面板里两个tiles内包含的路需要通过手动连接起来,否则在仿真中车辆无法通过连接点使用红色鼠标选择两条路,右键在下拉菜单里选择【tracks->link logically】如果想要在已编辑好的tile里新增element,需要同时选择element和tile在上方下拉菜单里单击【edit->Tile->add element】将新生成的tile使用save as 保存到TilelLib里,就可以重复调用新的tile了新生成的tiles不能使用老的方法调用点击File->Import->Merge overlays导入被编辑过的tiles1.9 导出道路文件首先单击保存按钮保存文件为可编辑的【.tdo】格式,方便未来对道路进行调整在最上方菜单里单击generate选项,在下拉菜单里选择Database生成【.osgb】文件,再点击OpenDRIVE生成【.xodr】文件这两个文件包含了道路信息和道路相关的元素信息,之后再使用SE创建场景的时候会用到这两个文件2.VTD进阶功能介绍2.1 建立立交桥为了方便对路面高度进行观察需要从上方菜单的view里加入Sec. View在sec. View里可以观察到路面的高度变化进入右侧道路设置栏里的路面高度设置栏在POS栏里可以在不同位置添加结点,进入节点可以对节点的高度和节点半径进行编辑2.2 建立路口‘下图位置1处’的工具可以用来建立路口,使用这个工具圈出想要连接的道路节点,生成的黄色矩形区域为路口区域在连接前需要确认现在建立的每条道路都是不相交的,如果道路之间有交叉,或者连接的部分,在生成道路的时候会报错在右侧工具栏里可以找到圈出的节点conn,右键点击conn,然后使用add path给每个节点添加Path,添加的Path数量为当前节点需要连接的道路总和使用鼠标左键选择需要连接的道路,被选择的道路区域会变为黄色点击“Create Path”将选择的道路连接起来再次用鼠标左键单击生成的路径可以在右侧信息栏里更改路径的半径和螺旋线的长度3. 道路文件介绍3.1 tdo文件保存ROD项目时生成的文件,是ROD项目的可编辑模式重新编辑项目时通过在路径里打开.tdo文件进行编辑3.2 osgb文件通过ROD项目生成的贴图与路面纹理文件,导出Database时生成包括了大量不影响车辆行驶的元素不可在VTD中编辑3.3 xodr文件通过ROD项目生成的道路信息文件,内容包括了所有路段在路面设置界面里定义的信息(包括长度信息,宽度信息,车道线信息)不可编辑,可以编码.xodr文件同.xml文件一样遵循Opendrive的路面定义标准如下图所示:在生成两侧各有三条lane的道路时,会产生如下图所示xodr文件由于参考路段只有一段,所以只有一段<road></road>的信息当一个ROD文件里有多段路存在时,会在.xodr文件里将每段路的信息分开保存,一段路的信息存储在一段不同的<road></road>里<link></link>里的信息说明了该路段在start处和在end处连接的路段id<plan View></plan View>里的信息说明了该路段俯视图的形状<lanes></lanes>里包含了不同id的车道线信息,包括id为0的中心线信息所有在‘下图位置1处’里定义的信息都在lanes里以opendrive的格式显示<signals>< /signals >里包含了车道上添加的交通标志的信息关于opendrive不同语句对应的信息都可以在opendrive的说明书中找到对应的说明xodr文件涉及到Opendrive标准问题,Opendrive标准日后会单独详细介绍4. SE中导入静态场景文件在VTD界面上方菜单找到【Tools->SenarioEditor】,点击进入SenarioEditorSenerioEditor主页面下图所示点击Properties‘下图位置1处’,进入下图所示界面在Layout File部分按照如下图所示路径导入.xodr文件,在Visual Database部分按照如下路径导入.opt.osgb文件成功导入完两个文件后点击确认键生成场景5.添加交通参与者信息(车辆)5.1 设置车辆信息首先将道路放大到想要添加车辆的位置单击‘下图位置1处’图标开始放置车辆鼠标左键单击场景,可以将车辆置界放置到鼠标所在的位置双击车辆,进入到车辆的设置界面,如下图此处首先建立一个可以沿着道路正常行驶的车辆将车辆名称改为“1”,Animation选项选择external,行驶速度改为30km/h在Action界面可以设置Trigger,使用trigger可以设置车辆在驶入或驶出trigger定义区域范围时进行的动作(变道,改变行进路线,或使用scp指令指示车辆做出一些复杂的操作)(没有驾驶员的车辆不能做任何动作)此处添加一个控制车辆减速的trigger首先设置作用对象,将作用对象改为已经设置好的车辆“1”Release Type代表Trigger的放置方式,此处选择Absolute Positon表示Trigger位置由坐标轴确定,使用鼠标可以将trigger拖拽到地图的任意位置(Activation Radius可以改变Trigger的大小)点开speed change,勾选use,将target speed改为0km/h在下方选择on entre, 车辆就会在驶入trigger范围的时候触发减速动作,速度逐渐减为0如果选择 on exit,车辆就会在驶离Trigger范围的时候触发减速车辆行驶的方式同样受到设置的路面的限制(限速,路面状况等),如果要打破限制,需要给驾驶员设置特定的操作,或者给车辆一个强制属性5.2 设置车辆路线首先需要在顶部菜单里调出显示车辆路线【view->Path/PathShape】5.2.1 设置车辆路线鼠标左键单击‘下图位置1处’图标进入路线选择界面Identifier处如果变成红色则表示道路名称重复Status的颜色表示了定义目标路径的状态,黄色表示路径不完整,绿色表示路径完整且可以生成,红色表示路径之间有连接错误或者未进行连接,需要重新回到ROD里检查道路之间的连接状况按顺序点击道路可以创建路径,如果两条道路之间有路口则可以忽略路口,直接点击两条道路,就可以在路口处自动生成路径此处按顺序点击车辆所在道路,和十字路口下方道路,自动生成车辆行驶路径确认路径之后,点击‘下图位置1处’创建新的路径,在右侧List里显示了每一段路的详细信息要让车辆按照设定的Path行走,需要重新对车辆的Position Type进行设置将车辆的Position Type改为Route,让车辆按照Route行走在下方Route选项卡里选择相应的路线5.2.2 设置车辆行驶精确路线鼠标左键单击‘下位置2处’图标开始设置车辆行驶线路首先在Shape Type的位置选择拟合路线的方法,这里使用Polyline单击道路上一点确认车辆行驶起点,接下来设置更多的点完善路线设置完路线之后,在设置窗口里单击加号新建一个路线信息在右侧的编辑窗口可以编辑每个坐标点的位置信息使用鼠标拖动的方法也可以直接在场景里更改坐标点的位置这里使用鼠标拖动的方法改变车辆起点为了让车辆按照规定的路线行进,需要对车辆的行为方式进行更改双击目标车辆进入车辆的设置界面,在Position Type里将车辆的位置选择方式改为PathShape在下方的Path Shape界面选择路线,这样车辆位置将自动更改到设定路线的起点,在之后运行VTD的时候车辆就会沿着设定的路线行走5.3 添加路面障碍鼠标左键单击‘下图位置1处’图标开始设置路面障碍路面障碍高度默认为路面高度刚添加的路面障碍是一个色子的样式双击色子可以进入路面障碍编辑界面在Object栏里可以设置障碍物的基本信息,Orientation可以改变障碍物的方向,Scalling Factor里可以改变障碍物x/y/z方向的大小6.添加交通参与者信息(其他)6.1 添加行人点击‘上图位置1处’添加行人,行人的z坐标取决于道路,行人的z坐标随着他的移动随时更新双击行人可以进入行人设置界面改变行人的设置Initialisation里可以改变行人的基本设置Action里可以用和设置车辆行为类似的方式设置行人的动作此处给行人规定了一条路线,让行人按照路线行走用给车辆创建精确路线同样的方法在十字路口创建一条路线在行人设置界面的Action界面里点击New添加新动作在Path Shape的下拉选项勾选use并选择创建好的路线在Motion的下拉界面选择行人的动作这里选择行人动作为Walk,在Speed里可以自由设置行人的移动速度6.2 随机交通流生成在ScenarioEditor上方菜单栏里点击【Edit->Senario Properties】,点击Pulk Traffic进入编辑界面在下方车辆选择界面选择想要目标车辆作为生成traffic的参考点在右侧编辑窗口可以设置区域内自动生成的车辆数量,范围半径,范围距离本车的偏移量等信息7.设置道路基础设施信息7.1 设置红绿灯时钟单击‘下图位置1处’图标进入红绿灯时钟设置界面红绿灯有几种行为模式:在红绿灯的编辑过程中主要是对红绿灯Controller和Light Signs进行编辑同一个controller下的红绿灯遵循相同的时钟,对于同一个controller下的traffic sign可以设置不同的亮灯状态红绿灯的controller和Sign id都是在ROD里添加的时候进行编号的,如下如所示所以在设置红绿灯的时候,对于相同相应方式的红绿灯需要设置相同的controller和不同的id点击GUI中的Traffic Lights进入Configure Traffic Lights窗口,窗口中会有Controller的对应的数值,在Controller中修改时间相位点击Create Phases,在弹出的Edit Controller Phases中单击New然后选择Phases Type即停止、通行、警惕等状态和设置保持时间Duration Time,依次添加所需的几个状态和时间Controller的Phases编辑完成后展开Controller,可以看到分配到该Controller的Lights id点击Create Lights,进入Edit Traffic Light Phases窗口,点击New增加Controller中每个相位对应的灯这时再回到主界面就可以看到controller下拉菜单里,给不同id的红绿灯设置的不同闪烁方式VTD的入门介绍就到这里了,希望大家工作愉快文本完声明:偶尔转载的文章出于非商业性的教育和科研目的,并不意味着支持其观点或证实其内容的实行,欢迎大家评论发表自己的意见版权归原作者所有,如转载稿涉及版权等问题,请立即联系我们,我们会予以更改或删除相关文章,保障您的权利
(图片来源网络,侵删)
0 评论