2

OMNET++、静脈、SUMO を使用して ITS アプリケーションを構築していますが、車両のルートを別のルートで更新しようとしています。ただし、静脈で見つけた2つのコマンド(commandRouteChangecommandNewRoute)は両方とも機能しませんでした。

新しいルートを計算すると、出力は次のようになります。次に、これを車両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 ").

検索したところ、commandNewRoutecommandChangeRouteがパラメーターとして 1 つのエッジのみを受け取ることがわかりました。しかし、私は車両への完全なルートを設定したい. どうすればこれができるか知っている人はいますか?

4

1 に答える 1

2

Veins 2.1 は、対象道路を変更する ( Command 0xc4 0x31 ) か、移動時間の認識を変更する( Command 0xc4 0x58 )ことによって、車両のルートを変更するためのコマンドのみを実装します。

新しいバージョンの Veins は、任意のルートを設定するためのコマンド ( Command 0xc4 0x57 ) も実装しています。これは、あなたが求めているものです。

Veins 4.3に切り替えることをお勧めします。これは、SUMO の最新バージョンで動作し、他のコンポーネントの改善された機能豊富なシミュレーション モデルも数多く提供します。Veins をアップグレードできない場合、目的のコマンドの実装も簡単です。

于 2016-03-21T10:01:11.053 に答える