標籤:

OMENT++如何設定節點在網路中的位置

OMENT++如何設定節點在網路中的位置

來自專欄 OMNET++通信模擬軟體有興趣的請關注公眾號:薇薇驛站

該節內容前期視頻中已講解,但是有人問起,所以另起一篇。

主要分為以下幾步:

  1. NED 文件中定義簡單模塊時,定義顯示變數:

    @display("p=$xpos,$ypos");

    此處xpos和ypos分別代表節點的橫坐標縱坐標的位置

  2. 在omnetpp.ini文件中定義該參數

    假設節點名稱為node,網路名稱為network,network中有兩個節點,則定義具體節點位置如下;

    Network.Node[0].xpos = 1733

    Network.Node[0].ypos = 900

    Network.Node[1].xpos = 1716

    Network.Node[1].ypos = 1062.5

這樣既可完成定義節點位置,下面為一個例子,請參考:

例:網路中有一個sink節點,多個node節點,node節點以sink節點為中心,部署為圓形拓撲結構。

  1. 定義節點位置:

    定義了sink節點,定義了node節點,並定義節點位置變數,在node中定義了一個sink節點,和node節點數組。其中sink節點位置由常量定義好。

  2. 計算圓形拓撲後,每個node節點的位置,並在omnetpp.ini中定義具體位置:

    #location of nodes

    Network.Node[0].xpos = 1733

    Network.Node[0].ypos = 900

    Network.Node[1].xpos = 1716

    Network.Node[1].ypos = 1062.5

    Network.Node[2].xpos = 1669

    Network.Node[2].ypos = 1218.775

    Network.Node[3].xpos = 1592

    Network.Node[3].ypos = 1362.79

    Network.Node[4].xpos = 1489

    Network.Node[4].ypos = 1489

    Network.Node[5].xpos = 1367.8

    Network.Node[5].ypos = 1592

    Network.Node[6].xpos = 1218.8

    Network.Node[6].ypos = 1669.6

    Network.Node[7].xpos = 1062.5

    Network.Node[7].ypos = 1717

    Network.Node[8].xpos = 900

    Network.Node[8].ypos = 1733

    Network.Node[9].xpos = 737.5

    Network.Node[9].ypos = 1716.9

    Network.Node[10].xpos = 581.2

    Network.Node[10].ypos = 1670

    .............

  3. 運行模擬,獲得下圖:

推薦閱讀:

OMNET視頻講解:Sample篇之Aloha(上)
【知乎Live】金融市場模擬:Agent-based model入門
千篇一律的模塊化編程遊戲——《while True: learn()》
windows下hspice模擬環境安裝

TAG:通信 | 模擬 |