2017-04-16 51 views
1

我是一名初學者,關於靜脈。現在我試圖根據它們之間的距離,使用Veins 4.5,Omnet 5.0和Sumo 0.29模擬兩輛運行車輛之間的發射功率和速度的動態調整。 到目前爲止,我已經構建了Sumo模型並在Omnet中運行模型,但沒有任何編程,這意味着2個車輛之間的傳輸功率和速度都設置在.ini文件中。現在我想實現一個算法來動態調整它們。作爲初學者,我幾乎不知道如何開始這項工作。靜脈教程沒有說明如何應用靜脈提供的功能。我現在基於我們的.ned文件構建一個新的.cc文件。從MyVeinsApp.cc,我發現了一些我需要實現的方法。但是我仍然需要一些關於我的問題的編程指導。 1如何獲得2輛跑車之間的實時距離? 2是否可以通過靜脈4.5控制發射功率和速度?如何根據靜脈中兩輛車之間的距離來控制發射功率和速度

我對這些初始questions.But對不起,我真的不知道如何一步的編程水平

非常感謝您開發從一開始就一步一脈仿真!

回答

2

要獲得兩輛車之間的距離,您可以使用Coord的內置功能distance()(請參見this post)。

要控制發射功率,您可以使用Mac1609_4的參數txPower

要改變車輛的速度,你可以檢查this post

+0

非常感謝!到目前爲止,我在我的NED文件中有幾個子模塊,它們都是Veins中的現有模塊,如ConnectionManager,TraciScenrioMangerLaunchd。我應該修改它們的相應的cc文件還是在我自己的cc文件中實現我的算法?如果是後者,我如何將我的cc文件與我的NED文件連接起來?這是一個我不能在其中使用@class的網絡。 –

+0

請從OMNeT的[TicToc教程](https://omnetpp.org/doc/omnetpp/tictoc-tutorial/)開始,瞭解如何使用模塊並設置模擬。對於您的算法,您可以創建一個新模塊或使用* MyVeinsApp *。 –

+0

非常感謝。當我將MyVeinsApp添加到我的NED文件中而沒有將任何代碼添加到MyVeinsApp.cc中並運行模擬時,它僅以退出代碼255崩潰。並且我刪除了MyVeinsApp子模塊,一切都恢復正常。爲什麼發生這種情況?我認爲它應該沒問題。我的意思是現有的子模塊是運行我的SUMO模型所必需的。我想要的是如何將一個新的子模塊添加到我的NED文件中並在相關的cc文件中編程。 Tictoc教會了我如何逐步建立模擬,但沒有處理這種情況的指示。 –

相關問題