1

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

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

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

边 1i 连接到边 2i,边 2o 连接到边 1o,如图SUMO 中的道路所示。

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

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

车辆如何超车?

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

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

4

1 回答 1

1

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

于 2017-08-04T15:20:05.993 回答