在Veins 4.7.1中初始化TrafficLight节点时出错

时间:2018-06-12 20:06:44

标签: omnet++ veins

如何使用Veins 4.7.1中的TrafficLight节点和自定义应用程序?

我试图像添加RSU节点一样添加一个trafficlight节点,即:

import org.car2x.veins.nodes.Scenario;
import org.car2x.veins.nodes.TrafficLight;

network EV_Scenario3 extends Scenario
{
    @display("bgb=844,629");
    submodules:
    tl[2]: TrafficLight {
        @display("p=150,140;i=veins/node/trafficlight;is=s");
    }
}

并在omnetpp.ini文件中定义其应用,即*.tl[*].applType = "TrafficLightApp"

此方法不起作用,我收到以下错误:

  

子模块appl:没有名为“TrafficLightApp”的模块类型   实现模块接口   org.car2x.veins.base.modules.ITrafficlightApplLayer(不在加载中)   NED文件?),at   C:\ Veins \ veins-5.7.1 \ src \ veins \ nodes \ TrafficLight.ned:35 - in module   (omnetpp :: cModule)EV_Scenario3.tl [0](id-7),在网络设置期间

任何想法如何使用此节点,以及如何像汽车节点一样动态生成它?

1 个答案:

答案 0 :(得分:1)

OMNeT ++不知道名为TrafficLightApp的模块,或者该模块未实现ITrafficlightApplLayer接口。

如果您已经创建了模块TrafficLightApp,请确保它还实现了上述接口。 如果您尚未创建此模块,则需要先创建(和register)。

请注意,Veins 4.7引入了红绿灯,但没有为它们提供应用层。您必须自己构建一个,实现ITrafficlightApplLayer接口。