Как я могу обновить маршрут транспортного средства в венах 2.1?

Я строю свое приложение, используя OMNET ++, вен и SUMO, и я пытаюсь
обновить маршрут транспортного средства с другим маршрутом. Однако обе из двух команд (commandRouteChange, commandNewRoute) что я нашел в жилах не получилось.

Я вычисляю новый маршрут, и результат такой: std::string newRoute = "AtoB BtoC CtoD DtoE"; тогда я попытался установить это newRoute к транспортному средству:

traci->getManager()->commandNewRoute(vehicleID, newRoute);

тогда я получил следующую ошибку: Error in module (ITS) VANET.host[0].appl (id=9) at event #127412, t=12: Model error: TraCI server reported error executing command 0xc4 ("Can not retrieve road with ID AtoB BtoC CtoD DtoE ").

Я был в поиске, и я увидел, что commandNewRoute а также commandChangeRoute получает только одно ребро в качестве параметра. Но я хочу проложить полный маршрут к машине. Кто-нибудь знает, как я могу это сделать?

2

Решение

В Венах 2.1 реализованы только команды для изменения маршрута транспортного средства путем изменения его целевой дороги (Команда 0xc4 0x31) или изменив его восприятие времени в пути (Команда 0xc4 0x58).

Более новые версии Veins также реализуют команду для установки произвольных маршрутов (Команда 0xc4 0x57), о чем вы и просите.

Я рекомендую перейти на Вены 4,3, которая работает с самой последней версией SUMO и дает вам ряд улучшенных и более многофункциональных имитационных моделей других компонентов. Если вы не можете обновить Veins, выполнение желаемой команды также должно быть простым.

2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]