如何注册两个 moduleType 到 VeinsInetManager?
How to register two moduleType to VeinsInetManager?
我用SUMO
在四车道的道路上移动车辆和公交节点。我的路由文件源码如下:
<routes>
<vType id="normal_car" vClass="passenger" maxSpeed="50" speedFactor="0.9" speedDev="0.2" sigma="0.5"/>
<vType id="mobile_rsu" vClass="bus" maxSpeed="30" speedFactor="1.1" speedDev="0.1" sigma="0.5"/>
<flow id="normal_car_flow" type="normal_car" begin="0" end="3500" number="500" from="edge0" to="edge2" departPos="random" departLane="random"/>
<flow id="mobile_rsu_flow" type="mobile_rsu" begin="0" end="5000" number="100" from="edge0" to="edge2" departPos="random" departLane="random"/>
</routes>
我已经为 Scenario.ned
中的每个节点创建了一个子模块。
car[0] : Car
{
parameters:
@display("p=100,390;is=s");
}
mrsu[0] : mRSU
{
parameters:
@display("p=200,390;is=s");
}
我尝试在 omnetpp.ini
中注册移动节点,如下所示:(我也在使用 VeinsInetManager
。)
*.veinsManager.moduleType = "normal_car=org.car2x.veins.nodes.Car mobile_rsu=org.car2x.veins.nodes.mRSU"
*.veinsManager.moduleName = "normal_car=Car mobile_rsu=mRSU"
*.veinsManager.launchConfig = xmldoc("highway.launchd.xml")
*.veinsManager.host = "localhost"
*.veinsManager.port = 9999
*.veinsManager.autoShutdown = true
*.veinsManager.updateInterval = 1s
但是运行模拟的时候出现如下错误。我该如何解决?
Keys of mappings of moduleType and moduleName are not the same..
我解决了问题。
首先,我应用 this link 来解决我的问题。
使用我的问题,如何在moduleType
中注册2个或更多节点如下。
<routes>
<vType id="normal_car" vClass="passenger" maxSpeed="50" speedFactor="0.9" speedDev="0.2" sigma="0.5"/>
<vType id="mobile_rsu" vClass="bus" maxSpeed="30" speedFactor="1.1" speedDev="0.1" sigma="0.5"/>
<flow id="normal_car_flow" type="normal_car" begin="0" end="3500" number="500" from="edge0" to="edge2" departPos="random" departLane="random"/>
<flow id="mobile_rsu_flow" type="mobile_rsu" begin="0" end="5000" number="100" from="edge0" to="edge2" departPos="random" departLane="random"/>
</routes>
您可以将以下内容应用于 omnetpp.ini
以识别模拟中的节点。
*.veinsManager.moduleType = "mobile_rsu=org.car2x.veins.nodes.mRSU *=org.car2x.veins.nodes.Car"
*.veinsManager.moduleName = "mobile_rsu=mRSU *=Car"
*.veinsManager.launchConfig = xmldoc("highway.launchd.xml")
*.veinsManager.host = "localhost"
*.veinsManager.port = 9999
*.veinsManager.autoShutdown = true
*.veinsManager.updateInterval = 1s
就是这样!
我用SUMO
在四车道的道路上移动车辆和公交节点。我的路由文件源码如下:
<routes>
<vType id="normal_car" vClass="passenger" maxSpeed="50" speedFactor="0.9" speedDev="0.2" sigma="0.5"/>
<vType id="mobile_rsu" vClass="bus" maxSpeed="30" speedFactor="1.1" speedDev="0.1" sigma="0.5"/>
<flow id="normal_car_flow" type="normal_car" begin="0" end="3500" number="500" from="edge0" to="edge2" departPos="random" departLane="random"/>
<flow id="mobile_rsu_flow" type="mobile_rsu" begin="0" end="5000" number="100" from="edge0" to="edge2" departPos="random" departLane="random"/>
</routes>
我已经为 Scenario.ned
中的每个节点创建了一个子模块。
car[0] : Car
{
parameters:
@display("p=100,390;is=s");
}
mrsu[0] : mRSU
{
parameters:
@display("p=200,390;is=s");
}
我尝试在 omnetpp.ini
中注册移动节点,如下所示:(我也在使用 VeinsInetManager
。)
*.veinsManager.moduleType = "normal_car=org.car2x.veins.nodes.Car mobile_rsu=org.car2x.veins.nodes.mRSU"
*.veinsManager.moduleName = "normal_car=Car mobile_rsu=mRSU"
*.veinsManager.launchConfig = xmldoc("highway.launchd.xml")
*.veinsManager.host = "localhost"
*.veinsManager.port = 9999
*.veinsManager.autoShutdown = true
*.veinsManager.updateInterval = 1s
但是运行模拟的时候出现如下错误。我该如何解决?
Keys of mappings of moduleType and moduleName are not the same..
我解决了问题。
首先,我应用 this link 来解决我的问题。
使用我的问题,如何在moduleType
中注册2个或更多节点如下。
<routes>
<vType id="normal_car" vClass="passenger" maxSpeed="50" speedFactor="0.9" speedDev="0.2" sigma="0.5"/>
<vType id="mobile_rsu" vClass="bus" maxSpeed="30" speedFactor="1.1" speedDev="0.1" sigma="0.5"/>
<flow id="normal_car_flow" type="normal_car" begin="0" end="3500" number="500" from="edge0" to="edge2" departPos="random" departLane="random"/>
<flow id="mobile_rsu_flow" type="mobile_rsu" begin="0" end="5000" number="100" from="edge0" to="edge2" departPos="random" departLane="random"/>
</routes>
您可以将以下内容应用于 omnetpp.ini
以识别模拟中的节点。
*.veinsManager.moduleType = "mobile_rsu=org.car2x.veins.nodes.mRSU *=org.car2x.veins.nodes.Car"
*.veinsManager.moduleName = "mobile_rsu=mRSU *=Car"
*.veinsManager.launchConfig = xmldoc("highway.launchd.xml")
*.veinsManager.host = "localhost"
*.veinsManager.port = 9999
*.veinsManager.autoShutdown = true
*.veinsManager.updateInterval = 1s
就是这样!