【问题标题】:omnet++/veins : some sumo/traci commands seem to be not implementedomn​​et++/veins : 一些 sumo/traci 命令似乎没有实现
【发布时间】:2016-04-18 13:13:25
【问题描述】:

我想使用一些在 omnet++/veins 中似乎没有实现的 sumo/traci 命令,例如:

  • 以红绿灯命令 setRedYellowGreenState(tlsID, state) 为例
  • 连接命令
  • 和其他命令

从 omnet++/veins 使用这些命令的最简单方法是什么?

非常感谢您的帮助。 问候:)

【问题讨论】:

    标签: simulator omnet++ veins


    【解决方案1】:

    您可以在TraCICommandInterface.cc, for example to set a TL program找到现有的与SUMO交互的客户端源代码:

    TraCIBuffer buf = connection->query(CMD_SET_TL_VARIABLE, TraCIBuffer()
      << static_cast<uint8_t>(TL_PROGRAM) 
      << trafficLightId 
      << static_cast<uint8_t>(TYPE_STRING)
      << program
    );
    

    对应的服务器源码可以在TraCIServerAPI_TLS.cpp, for example to set a TL program找到:

    // variable & id
    int variable = inputStorage.readUnsignedByte();
    std::string id = inputStorage.readString();
    // [...] case TL_PROGRAM:
    server.readTypeCheckingString(inputStorage, subID)
    
    vars.switchTo(tlsControl, subID);
    

    通过调查服务器准备如何与客户端交互(以及客户端如何与服务器交互),您应该能够根据自己的意愿扩展客户端。

    【讨论】:

    • 谢谢我已经成功实现了TLS方法
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多