Omnet++ 如何使用Simulate和Velse启用相扑特蕾西?

Omnet++ 如何使用Simulate和Velse启用相扑特蕾西?,omnet++,veins,sumo,Omnet++,Veins,Sumo,我正在使用和模拟通过LTE发送安全消息。消息的内容取决于流量的实时值,例如平均速度。为了获得这样的值,我计划使用静脉支持的TraCICommandInterface。然而,我不知道如何以及在哪里可以做到这一点。具体来说,在没有Simulate的情况下,我知道车辆节点是一个可跟踪性模块,它有一个应用层,我们可以在其中自定义接收/发送消息的功能,如wsm,并由TracisCanarioManager管理。但是,在中,车辆/节点是VeinInetMobility的一个模块,由VeinInetManag

我正在使用和模拟通过LTE发送安全消息。消息的内容取决于流量的实时值,例如平均速度。为了获得这样的值,我计划使用静脉支持的
TraCICommandInterface
。然而,我不知道如何以及在哪里可以做到这一点。具体来说,在没有Simulate的情况下,我知道车辆节点是一个
可跟踪性
模块,它有一个应用层,我们可以在其中自定义接收/发送消息的功能,如wsm,并由
TracisCanarioManager
管理。但是,在中,车辆/节点是
VeinInetMobility
的一个模块,由
VeinInetManager
管理。它们都没有使用
TraCICommandInterface
TraCIMobility
。此外,我们使用的不是与相同的层,在该层中,我们可以在车辆/节点更新位置后立即采取一些操作。有人能帮我解释一下如何使用Simulate和Velse实现以下功能:

  • 为了使用TraCI监控车辆/节点值,我应该修改哪个类以使用TraCI?VeinsInetMobility,VeinsInetManager还是其他
  • 仅当车辆/节点有位置更新时,我如何在应用程序中采取操作
  • 静脉移动性和可追踪性之间的本质区别是什么?我可以在LTE场景中使用后者吗

  • 在Veines 4.6中,每次节点位置改变时,使用
    可跟踪性
    模块更新Veines通道模型。同样,在Veines 4.6的Veines中,每当节点位置发生变化时,都会使用
    VeinsInetMobility
    模块更新INET框架通道模型。因为SimuLTE使用INET框架通道模型,所以这里必须使用这个类(否则INET通道模型将不知道,例如,两个节点是否距离太远而无法通信)

    如果您想在每次完成相扑时间步时都采取行动,您可以将其添加到


    请注意,如果您想通过
    VeinsInetMobility
    模块与SUMO车辆交互(例如,更改车辆路线),则需要进行一些更改:Velines 4.6的Velines\u INET不跟踪节点的外部id(SUMO用于指代相应车辆的id),因此,这需要与使用它的代码一起添加,类似于。

    也涉及到
    VeinsInetMobility
    ?如果是,是因为
    VeinsInetManager
    继承了
    TraCIScenarioManagerLaunchd
    ,这进一步继承了
    TraCIScenarioManager
    ?另一个问题是一旦我需要采取一些行动,例如。,
    减速
    ,我需要向服务器和附近车辆发送此警报(通过D2D)。我应该在哪一类中这样做?节点是否可能同时是
    VeinsInetMobility
    TraCIMobility
    ?这听起来与您最初提出的问题不同。为了保持问题和答案之间的相关性,我可以请您为此提出一个新问题吗?