SUMO使用:Vehicle '**' is not allowed to depart on any lane of its first edge.

 

1、错误提示

Simulation started with time: 0.00

Error: Vehicle '15' is not allowed todepart on any lane of its first edge.

Quitting (on error).

 

根据提示来看,加在了net之后车辆并没有运行。那么我们就来查看一下不能运行的原因。

 

2、文件的来龙去脉

2.1OSM文件

首先我们从OpenStreetMap上下载自己感兴趣的区域,并将相应区域下载,下载后的文件是*.osm格式。具体如图(这里取名为csdnTest.osm):


2.2net文件

将OSM文件转换为sumo可用的路网文件,这个时候就要请出:NETCONVERT了!!

我的osm文件存放路径:C:\Users\flyeah\Desktop\osmRandom,你们可以根据自己的存储路径来替换即可。sumo版本为0.27.1.




发现上图的success,表明我们生成成功了。OK!

2.3trip文件

有了路网,那么下一步就是,道路有了,但是没有车辆跑啊???好的,下面我们生成交通需求文件,我们选择trips文件。sumo给我们提供了根据net文件随机生成trips.xml文件的工具,就是:randomTrips.py!!!

我们利用它生成相应的需求文件csdnTest.trips.xml:


没有报错,在文件夹下面我们也发现了相应的文件!ok!又一个文件搞定!

2.4rou文件

根据前面生成的文件,我们知道有了net文件和trips文件,那么接下来就可以生成后路径文件了。接下来rou文件登场,我们使用DUAROUTER工具实现csdnTest.rou.xml文件的生成:


好吧,到这里你也发现问题了,这么多的Error。。。。。不过rou文件还是生成了!好吧,先不管这些。既然有了net和rou文件,那么先跑一跑试一试。

2.5仿真

准备仿真配置文件。具体内容:


好了,现在sumo-gui加载跑一下。


不错,加载net文件成功了!那就Play一下吧!

我擦,竟然失败了,错误就是开头我们提到了,车辆不能运行!!!


3、排查错误

在我们这里,是显示的:

Error: Vehicle '16' is not allowed todepart on any lane of its first edge.

Quitting (on error).

那我们就查看车辆16的一些信息。

打开rou.xml文件,找到如下内容:


按照错误的提示,在道路的第一个路段车辆就不能加载,路径中的第一个路段为:-443337016,那么我们就到net.xml文件中搜索相应路段的信息。我找啊找~,发现如下图所示:


额,我们主要到这个道路的属性type=“highway.service”,也就是高速服务站类型,我们查看相应的允许类型,发现服务站就不允许汽车行驶。【想想也是,你再服务站里开车???】因此,在自动生成trips文件的时候,没有考虑道路的类型。默认性况下车的类型是passenger(家用普通轿车),那么不考虑道路类型,有默认生成汽车,那面就会发生不允许汽车行驶的道路最终包含在了trips文件中。那么我们接下里就需要提出路网文件中的service等类型。sumo很好的考虑到了这个问题,只是在用NETCONVERT工具时在后面加上--remove-edges.by-type "string",其中string根据自己的路网而定,可以通过这个命令将不允许汽车行驶的道路剔除。

改正方案:

以上步骤相同,只是在用NETCONVERT工具时在后面加上--remove-edges.by-type "string",其中string根据自己的路网而定。

 

 

相关信息:

默认车辆类型:http://sumo.dlr.de/wiki/Vehicle_Type_Parameter_Defaults

道路类型文件:http://sumo.dlr.de/wiki/SUMO_edge_type_file

 

 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值