【问题标题】:aligning omnet++ clock with the system clock将 omnet++ 时钟与系统时钟对齐
【发布时间】:2019-04-01 02:13:34
【问题描述】:

我正在尝试将 omnet++ 与 3d 机器人模拟器集成,这大致就是我所想象的。

所以机器人模拟器中有许多对象,它们使用 802.11 相互通信,将由 omnet++ 模拟。 omn​​et++中的每个节点对应机器人模拟器中的每个物体,物体的运动会与omnet++中对应的节点同步。

但是由于omnet++是一个离散事件模拟器,我需要处理omnet++和机器人模拟器之间的时钟不匹配问题。

我知道 omnet++ 有用于将模拟时钟与挂钟同步的 cRealTimeScheduler 类,但我不确定这是否能达到我想要的效果。

在网络模拟方面我是个菜鸟,所以我想知道这是否可能。使用 cRealTimeScheduler 类是否会处理时钟同步?还是我需要采取不同的策略? (不同的调度器,甚至不同的模拟器?)

任何帮助将不胜感激。谢谢。

【问题讨论】:

    标签: simulation omnet++


    【解决方案1】:

    如果机器人模拟器本身是实时运行的,那么您可以使用 cRealTimeScheduler 方法。 cRealTimeScheduler 将与挂钟时间同步。如果机器人模拟器也在实时运行,那么两者也将隐式同步。

    如果机器人模拟器有自己的模拟时间(即可以比实时运行得更快),那么您应该创建自己的调度程序类来同步两个模拟。这称为协同仿真,其中两个仿真串联。 Veins(sumo + omnet)也在 Sumo(汽车交通模拟器)和 omnet(网络模拟器)一起​​工作的情况下这样做。

    您尝试实现的目标是可能的,但是我对机器人模拟器部分不熟悉,但是只要另一个模拟器也在与消息通信,都是离散时间点,您可以从机器人模拟器,应该没问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-10-11
      • 1970-01-01
      • 2012-06-24
      • 1970-01-01
      • 2019-08-10
      • 1970-01-01
      • 2020-09-03
      • 2011-03-16
      相关资源
      最近更新 更多