Search code examples
omnet++veinssumoplexe

Error while inserting vehicles from Sumo .rou file using PLEXE


I am trying to insert regular vehicles and platoon vehicles in a specific time step in a scenario by using SUMO and Plexe. I am using Sumo 1.2.0, Veins 5.0, Omnet++ 5.5.1, Plexe-3.0a2 versions. As plexe documentation points i have to change the traffic manager in my .ini file to SumoTrafficManager in order to insert the vehicles and the platoons from the .rou file that i have created. For testing purposes i used the platoon example provided from plexe using the option for Sumo Traffic. The problem is that i am get the sumo error

Error: tcpip::Socket::recvAndCheck @ recv: peer shutdown

and omnet exits with code 139. The error occurs only when the first car is inserted. Note: All the other configuration of the example works perfectly.

Why does this error occurs and how can i resolve this??


Solution

  • I got the answer from the sumo mailing list so i am posting it also here. Currently there is a bug for inserting platoons and regular-human car with the standard SUMO way (.rou file). But there is a way to resolve this issue by letting the insertion of platoon cars to be handled by the TrafficManager module and the regular-human car to be inserted with the SUMO way. To make it work you must use the classic PlatoonsTrafficManager and add the following lines to the .ini file:

    *.manager.moduleType = "vtypeauto=org.car2x.plexe.PlatoonCar vtypehuman=HumanCar" *.manager.moduleName = "vtypeauto=node vtypehuman=human"

    That way you seperate the module types for the simulation to handle it differently. A good example for testing is the Human example that is provided. By modifying the .ini file to pass to the TrafficManager only the platoon related variables and then adding some lines in .rou file (like flows or vehs) for the human cars to be injected you get the desired result.