【问题标题】:overtaking in VEINS Simulator在 VEINS 模拟器中超车
【发布时间】:2017-08-01 11:26:34
【问题描述】:

我正在使用 Veins 4.5、OMNeT++ 5.0 和 Sumo 0.29。

我想在 VEINS Simulator 中实现超车的场景。

在 SUMO 中,我有一条由 3 个节点连接的道路。

边1i连接边2i,边2o连接边1o,如图road in SUMO

我在 VEINS 中使用traciVehicle->newRoute("1o"); 超车,但车辆没有超车并返回 1o 车道。

我在 VEINS 中使用traciVehicle->newRoute("2o"); 进行超车,但 SUMO 不允许我在边缘 1i 和 2o 之间添加连接。

车辆如何超车?

确实,我有如下图所示的三辆汽车 汽车 VB 将超越汽车 VA,但它应该验证是否有任何汽车从相反方向驶来。在这种情况下,VB 无法超车,因为 VC 来自相反的方向。否则,VB 可以超过 VA ,所以它从边缘 1i 移动到 1o,然后返回到 1i。

对于这种情况还有其他解决方案吗?

【问题讨论】:

  • @ChristophSommer 你有什么回应吗?你能帮帮我吗?

标签: omnet++ veins sumo


【解决方案1】:

您的 SUMO 网络每条边只有一条车道。如果您希望车辆能够超车,您要么必须在每个方向拥有多个车道,要么允许车辆通过移动到对面车道来超车。有关如何执行此操作的详细信息,请参阅http://sumo.dlr.de/wiki/Simulation/OppositeDirectionDriving

【讨论】:

  • 感谢您亲爱的@ChristophSommer 的回复。这个问题不能通过每个方向使用多个车道来解决。此外,当开启反方向边缘超车时,车辆不超车,返回车道1o。
  • 那我想我帮不了你了。我理解你的问题的方式是你想要一辆车超车,但它不会。我能想到的唯一原因是它不能因为道路几何形状。似乎还有其他东西阻止车辆超车,但我看不出那可能是什么。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-01-23
  • 2016-06-07
  • 1970-01-01
相关资源
最近更新 更多