Изменить уровень сигнала передачи для определенного набора транспортных средств во время работы - PullRequest
1 голос
/ 15 марта 2019

Я начал (примерно с одной недели) использовать вены (4.4) под омнет ++ (5.0).
Моя текущая задача - позволить транспортным средствам регулировать диапазон передачи в соответствии с конкретным контекстом. Я прочитал много вопросов, подобных этим (и в других темах / форумах):

  1. Динамический диапазон передачи в модуле ieee802.11p

  2. Транспортные средства получают сообщения маяка за пределами диапазона RSU

  3. Как расстояние покрытия и расстояние помех зависят друг от друга

  4. Максимальная дальность передачи и максимальное расстояние помех

  5. Уменьшить зону покрытия между транспортными средствами

  6. как установить дальность передачи узла под Veins 2.0?

Мой вопрос:

Как реально изменить диапазон передачи только для некоторых узлов?
Из приведенных выше ссылок я знал, что термин «дальность передачи» технически связан с принимаемой мощностью, шумом, порогом чувствительности и т. Д., Который определяет вероятность приема.

Так как я новичок в венах (и в том числе в omnet ++), я провел несколько тестов и сделал следующие выводы:

  • Модуль «TraCIMobility» может настраивать параметры узлов (для каждого транспортного средства, есть экземпляр), такие как идентификатор, скорость и т. Д.

  • Я также мог бы создать экземпляр «Mac1609_4» (для каждого транспортного средства) и изменить некоторые его параметры, например «txPower» во время выполнения симуляции, но это не оказало влияния на реальный диапазон связи .

  • Я не смог создать экземпляр (потому что он был глобальным) модуля «диспетчера соединений», который был единственным, кто отвечал (и переопределял) эффективную дальность связи. этот модуль можно настроить в файле «.ini», но я хочу иметь разные мощности передачи и, что самое важное, «можно изменить во время выполнения».

  • Формула для расчета дальности передачи находится в прикрепленных ссылках, я понял, но это должен быть способ определить или изменить эти параметры в одном из слоев (даже если он находится в слое phy, то есть что-то вроде прикрепленного уровня сигнала ...)

Опять же, может быть, в том, что я сказал, есть какие-то неправильные идеи, я просто хочу знать, что / как изменить этот диапазон передачи.

С уважением,

Ответы [ 2 ]

1 голос
/ 22 марта 2019

Я просто высказываю свое мнение на тот случай, если кто-то уже был в моей ситуации:

В венах (старая версия, которую я использую - 4.4), «менеджер соединений» отвечает за оценку «потенциальный «обмен пакетами, таким образом, его мощность передачи почти всегда установлена ​​на верхнюю границу.

Я был сбит с толку после того, как я изменил мощность передачи транспортных средств« Mac1609_4 »и« графически », диспетчер соединений былвсе еще показывая мне, что пакеты получены некоторыми дальними узлами, что на самом деле не имело место, он просто оценивал, правильно ли он получен или нет (по формуле, рассмотренной в ссылках выше).

Таким образом:изменение «TxPower» каждого транспортного средства действительно оказывало эффект помимо графического (сообщения не были прикреплены к верхним уровням).

В общем, для создания схемы, учитывающей дальность передачи, необходимо сделать следующее:

  • В узле-отправителе (транспортном средстве) и аналогично указателю «traci», который имеет дело с моДля удобства, указатель на «mac1609» должен быть создан и указан на него следующим образом:

В «tracidemo11p.h» добавить ->

#include "veins/modules/mac/ieee80211p/Mac1609_4.h"//added
#include "veins/base/utils/FindModule.h"//added

и какзащищенная переменная в классе "tracidemo11p" в том же файле ".h" ->

        Mac1609_4* mac;//added

В "tracidemo11p.cc" добавьте ->

    mac = FindModule<Mac1609_4*>::findSubModule(getParentModule());

теперь вы можете манипулировать"mac", как в "traci", соответствующие методы находятся в "modules / mac / ieee80211p / Mac1609_4.cc & .h"

для нашей работы, метод будет:

        mac->setTxPower(10);//for example

Это повлияет на симуляцию в режиме реального времени для каждого экземпляра узла.

Возможно, он описал это с базовыми понятиями, потому что я новичок в omnet-венах, это было сделано менее чем за одиннеделю (и будет также предоставляться новым пользователям).

Надеюсь, это будет полезно (и правильно)

1 голос
/ 15 марта 2019

Вы были правы, увеличив значение параметра mac1609_4.txPower, чтобы узел отправлял с большей мощностью (следовательно, сигнал декодируется дальше).Тем не менее, обратите внимание, что (для Вен 4.4) вам также потребуется увеличить connectionManager.pMax, так как это значение используется для определения максимального расстояния (от передающего модуля моделирования), что приемный модуль моделированиябудет проинформирован о продолжающейся передаче.Любой приемный модуль моделирования, находящийся дальше, не будет зависеть от передачи (в том смысле, что он является кандидатом на декодирование, но также и в том смысле, что он вносит вклад в помехи).

Также обратите внимание, что передачи на (в противном случае) бездействующий канал достигнет гораздо большего, чем передачи по типично загруженному каналу.Если вы хотите получить хорошее измерение того, как далеко заходит передача, попросите некоторые узлы создавать помехи (передавая свои собственные широковещательные сообщения), а затем посмотрите, как уменьшается скорость доставки кадров (FDR) с увеличением расстояния между отправителем и получателем.

Наконец, обратите внимание, что 1) минимальный уровень шума и 2) минимальный уровень мощности, необходимый для того, чтобы модуль моделирования приемника пытался декодировать кадр, должен быть откалиброван для карты WLAN, которую вы хотите смоделировать.Значения, выбранные в учебном примере Veins 4.4, очень полезны для демонстрации концепции вен, тогда как значения более поздних версий Veins приближаются к тому, что вы ожидаете от «типичной» платы WLAN, используемой внекоторые из недавних полевых испытаний.См. Статью Bastian Bloessl and Aisling O'Driscoll, "A Case for Good Defaults: Pitfalls in VANET Physical Layer Simulations," Proceedings of IFIP Wireless Days Conference 2019, Manchester, UK, April 2019 для более подробного обсуждения этих параметров.

...