Смотря на:
OMNET++: Как получить мощность беспроводного сигнала?
и
https://github.com/inet-framework/inet/blob/master/examples/wireless/scaling/omnetpp.ini
Похоже, что для пакетов, отправляемых в UnitDiskRadio, нет настроек, связанных с энергопотреблением.
Есть ли способ настроить пакетную мощность в единице дискового радионосителя или, наоборот, дальность связи в ApskScalarRadioMedium?
UnitDiskRadio — это упрощенная версия радио, где вас не интересуют детали передачи, распространения, затухания и т. д. Вы просто хотите иметь четкое расстояние передачи. Выше этого значения передача всегда терпит неудачу, ниже этого значения передача всегда завершается успешно. Это просто, быстро и подходит, если вы хотите имитировать поведение на высоком уровне, например на уровне приложения или маршрутизации. В этом случае вам действительно все равно, сколько ваше радио потребляет от электросети (или батареи).
С другой стороны, если вас интересуют детали низкого уровня, необходимо смоделировать весь процесс радиопередачи. В этом случае вы моделируете энергопотребление на основе этой передачи, и нет четкого диапазона передачи. Успешная ли передача — это вероятностный результат, зависящий от мощности, конфигурации антенны, кодирования, модуляции, шума и многих других вещей, поэтому вы не можете установить его как простой «диапазон».
TLDR: Нет, вы не можете установить их оба на одно и то же радио.
PS: и убедитесь, что вы не смешиваете различные параметры мощности. Первый вопрос, который вы связали, касается получения мощности полученного пакета (т.е. насколько сильным был этот сигнал, когда он был получен). Вторая ссылка показывает, как настроить мощность передачи (которая выходит на антенну), и в вопросе вы имеете в виду энергопотребление, которое является третьим фактором, то есть сколько вы потребляете от батареи для передачи. Это НЕ одно и то же.
.. был учебник по беспроводной сети (Шаг 12. Превращение в настоящую сеть). В том конфиге диапазон не убирается...
В первой половине предложения вы говорите, что нет смысла говорить, что передача имеет «диапазон» (потому что это вероятностная функция расстояния), а в последней части вы спрашиваете, как установить этот диапазон. Задать его нельзя, так как в детализированной модели можно задавать только физические параметры. Вы устанавливаете мощность, и на заданном расстоянии пакеты будут пропадать с определенной вероятностью, но даже при экстремальном расстоянии у пакетов все еще есть (очень маленький) шанс пройти, поэтому понятие «дальность передачи» на этом уровне бессмысленно. .
Я имел в виду, что интуитивно дальность должна быть функцией мощности излучателя, шума и т. д. Теперь это прояснилось. Спасибо!
Действительно, это функция мощности и других переменных, проблема может заключаться в том, что ее немного сложнее вычислить в обратном направлении, т.е. у вас есть требование к дальности, например, 90% пакетов должны быть успешно доставлены на расстояние менее 50 метров, любое, что у вас есть для определения необходимой мощности. Это сложно. Люди обычно играют вручную, выбирая несколько значений мощности и проверяя, соответствует ли это их цели.
Еще раз спасибо! Знаете ли вы какую-либо документацию о том, как более эффективно настраивать параметры? (в моем случае для запуска симуляции требуется некоторое время). Кажется, у меня возникают коллизии stackoverflow.com/questions/65316283/… Но этого не происходит на единичном дисковом носителе.
Да, не имеет смысла ограничивать процесс радиопередачи фиксированным диапазоном. Но дальность должна быть вероятностной функцией мощности излучателя, шума, верно? Кажется, я не могу найти ничего связанного в omnet. В UnitDiskRadioMedium к пакетам всегда подключена мощность 0 Вт. Мне удалось получить мощность в ApskScalarRadioMedium, но я не знаю, как установить диапазон. Моя отправная точка...