【发布时间】:2018-12-24 04:52:12
【问题描述】:
我正在使用新发布的用于 OMNET++ 的 INET 4.0 框架,我想在无线主机(AdhocHost 类型)中获取接收到的信号强度值。我该怎么做?
【问题讨论】:
标签: omnet++ rssi inet signal-strength
我正在使用新发布的用于 OMNET++ 的 INET 4.0 框架,我想在无线主机(AdhocHost 类型)中获取接收到的信号强度值。我该怎么做?
【问题讨论】:
标签: omnet++ rssi inet signal-strength
在INET 4.0.0 中,模块接收到的数据包包含几个tags。在其他之间有SignalPowerInd 标签。根据SignalTag.msg:
此指示指定在接收数据包期间检测到的平均模拟信号功率。 它可能存在于从物理层到应用程序的数据包中。
应用层收到的数据包也包含SignalPowerInd:
#include "inet/physicallayer/common/packetlevel/SignalTag_m.h"
// ...
void UdpBasicApp::socketDataArrived(UdpSocket *socket, Packet *packet) {
if (packet->findTag<SignalPowerInd>() != nullptr) {
auto signalPowerInd = packet->getTag<SignalPowerInd>();
auto rxPower = signalPowerInd->getPower().get();
EV_INFO << "RX power= " << rxPower << "W" << endl;
}
// process incoming packet
processPacket(packet);
}
【讨论】: