2016-09-22 12 views
0

Tcp/Ipサポートを取得するためにinet 3.4.0とveins 4.4を接続しようとしています。 私はこれらの指示(Veins - INET compatibility)に従っていますが、シミュレーションを実行しようとしているときにこのエラーが発生しました。私はTraCIMobility機能を理解していません。omnet ++/veins:Inetと静脈を接続する:TraCIScenarioManagerLaunchdのTraCIMobilityエラー

<!> Error in module (Veins::TraCIScenarioManagerLaunchd) simple_junction_noTls_ipv4.manager (id=6) at event #23, t=0.2: ASSERT: condition lastUpdate != simTime() false in function changePosition, veins/modules/mobility/traci/TraCIMobility.cc line 192.

は、ここに私の車のモジュールです:

import inet.node.inet.AdhocHost; 
import org.car2x.veins.base.modules.*; 
import org.car2x.veins.modules.nic.Nic80211p; 
import org.car2x.veins.base.modules.IMobility; 

module Car extends AdhocHost 
{ 
    parameters: 
    //string applType; //type of the application layer 
    int numWaveRadios = default(1);   
    string nicType = default("Nic80211p"); // type of network interface card 
    string veinsmobilityType; //type of the mobility module 
    string imobilityType; //type of the mobility module 
    @display("bgl=2"); 
gates: 
    input veinsRadioIn[numWaveRadios] @directIn; // gate for sendDirect 

submodules: 
    nic[numWaveRadios]: <nicType> like org.car2x.veins.modules.nic.INic80211p { 
     parameters: 
      @display("p=661,287"); 
    } 

    veinsmobility: <veinsmobilityType> like org.car2x.veins.base.modules.IMobility { 
     parameters: 
      @display("p=163,242;i=block/cogwheel"); 
    } 
    // optional mobility module. Required only if ieee80211p wireless cards are present 
    imobility: <imobilityType> like org.car2x.veins.base.modules.IMobility if (imobilityType != ""){ 
     parameters: 
      @display("p=53,200"); 
    } 
connections: 
    for i=0..sizeof(veinsRadioIn)-1 { 
     veinsRadioIn[i] --> { @display("m=s"); } --> nic[i].radioIn; 
     nic[i].upperLayerOut --> networkLayer.ifIn++; 
     nic[i].upperLayerIn <-- networkLayer.ifOut++; 
    } 

} 

とここに私のconfigファイルomnetpp.iniの一部です:

########################################################### 
##      Mobility       # 
########################################################### 
*.node[*].veinsmobilityType ="org.car2x.veins.modules.mobility.traci.TraCIMobility" 
*.node[*].imobilityType = "TraCIMobility" 
*.node[*].imobilityType.debug = true 
*.node[*].veinsmobilityType.debug = true 
*.node[*].veinsmobility.x = 0 
*.node[*].veinsmobility.y = 0 
*.node[*].veinsmobility.z = 1.895 
*.node[*].imobility.x = 0 
*.node[*].imobility.y = 0 
*.node[*].imobility.z = 1.895 

が助けてくれてありがとう!私はアサーションをコメントしました

答えて

0

OK よろしく、

//、私たちは1時間ステップ我々は効果的に二度呼ばれてINETと

//ASSERT(lastUpdate != simTime()); 

で二回呼び出されていない、ここで1つずつを確保TraCIScenarioManagerInet.ccから、それゆえ私は、この行それが今走る

コメント...しかし、1時間ステップで二回呼ば

0

VEI Githubのnsリポジトリには、ノードのモビリティのためにVeinsを使用してINETフレームワーク(INET 3.4.0)シミュレーションを実行するサンプルサブプロジェクト(veins_inet)が含まれています。

あなたが必要なコードを見ることができます(と、Browse Filesをクリックした後、あなたは完全なプロジェクトの.zipアーカイブをダウンロードすることができます)https://github.com/sommer/veins/commit/90d4586e

+0

良いニュースにありがとう:) – cnvp

関連する問題