静脉如何在简单路径损耗模型中计算 RSSI?

2023-12-13

我们正在开发一个基于 Veins 框架的应用程序,它需要接收信号的 RSSI 值以及发送器和接收器之间的距离。

我们参考了 VeReMi 项目,它也计算 RSSI 值并将其发送到上层。

我们将模拟结果(RSSI 与距离)与 VeReMi 数据集进行了比较,它们看起来非常不同。您能帮我们解释一下 RSSI 是如何计算的以及我们的结果是否正常吗?

在我们的应用程序中,我们通过以下方式获取距离和 RSSI 值

auto distance = sender.getPosition().distance(receiverPos);
auto senderRSSI = sender.getRssi(); 

在较低级别,RSSI 在 Decider80211p::processSignalEnd(AirFrame* msg) 方法中设置,如 VeReMi 项目中一样。

if (result->isSignalCorrect()) {
    DBG_D11P << "packet was received correctly, it is now handed to upper layer...\n";
    // go on with processing this AirFrame, send it to the Mac-Layer

    WaveShortMessage* decap = dynamic_cast<WaveShortMessage*>(static_cast<Mac80211Pkt*>(frame->decapsulate())->decapsulate());

    simtime_t start = frame->getSignal().getReceptionStart();
    simtime_t end = frame->getSignal().getReceptionEnd();
    double rssiValue = calcChannelSenseRSSI(start, end);
    decap->setRSSI(rssiValue);

    phy->sendUp(frame, result);
}

关于模拟配置,我们的 config.xml 与 VeReMi 不同,我们的案例中没有以下行。

<AnalogueModel type="VehicleObstacleShadowing">
        <parameter name="carrierFrequency" type="double" value="5.890e+9"/>
</AnalogueModel>.

omn​​etpp.ini 中的 11p 具体参数和 NIP 设置相同。

此外,我们的模拟是基于波士顿地图。

我们的RSSI_vs_Distance仿真结果散点图如下图所示。

RSSI 与距离的关系 从我们的模拟来看,即使距离超过 1000 米,我们仍然收到具有强 RSSI 值的信号

相比之下,我们从 VeReMi 数据集中提取数据并绘制 RSSI 与距离的关系,如下图所示。

VeReMi 数据集 RSSI 与距离的关系是我们所期望的,其中 RSSI 随着距离的增加而减小

您能否帮我们解释一下我们的结果是否正常以及可能导致我们现在遇到的问题的原因是什么?谢谢!


我不熟悉维雷米项目,所以我不知道收到帧时“RSSI”指的是什么值。附带的ArXiV 论文论文没有提到更多细节,只是“​​接收器的 RSSI”记录在帧接收上。

粗略检查用于记录您提到的数据集的代码表明,每次接收帧时,都会调用一个方法总结接收器当前存​​在的所有传输的功率水平.

由此可见,(a) 帧到达接收器时行进的距离与 (b) 接收器此时经历的总功率几乎没有关系。

如果您对接收到的每个帧的接收信号强度 (RSS) 感兴趣,您可以遵循一条更简单的路径:以 Veins 版本 5 alpha 1 为例,您的应用程序层可以访问帧的 ControlInfo,并从在那里,它的 RSS,例如如下:check_and_cast<DeciderResult80211*>(check_and_cast<PhyToMacControlInfo*>(wsm->getControlInfo())->getDeciderResult())->getRecvPower_dBm()。同样的方法也适用于 Veins 4.6(我相信您所指的 VeReMi 数据集就是基于该数据集)。

在模拟中仅使用SimplePathlossModel,Veins 版本的自由空间路径损耗模型,这将产生熟悉的曲线:

enter image description here

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

静脉如何在简单路径损耗模型中计算 RSSI? 的相关文章

  • SUMO文档016:XML文件验证

    XMLValidation xff08 XML验证 xff09 1 XML输入的验证 所有的SUMO应用程序都支持对输入的XML验证 为了实现功能 xff0c 以下的选项可以使用 xff1a Option Description X lt
  • SUMO交通仿真-核心概念和基础知识速览

    文章目录 sumo环境变量设置注意事项路网配置JOSM对地图进行 96 清洗 96 交通需求建模route amp trip输入数据方法流量路由分配 检测线圈车辆属性设置速度分布 特殊设置驾驶员状态事故仿真 仿真运行设置sumocfg 输出
  • sumo学习——sumo的路网介绍

    2 sumo路网 这里的记录的内容 xff0c 并不以如何绘制或者如何建立一个路网体系为主 xff0c 而是较为详细的介绍 xff0c 在sumo中是如何定义路网格式的 这里所有的内容都是来自于sumo的软件说明翻译 xff0c 其中部分夹
  • Python调用sumo,解决自定义vehicle颜色等问题

    Python调用SUMO接口 xff0c 解决vehicle颜色设置问题 1 Python调用sumo 的traci接口 xff0c 通过 traci vehicle setColor进行设置 以下是 示例代码 span class tok
  • SUMO仿真教程(5) —— 使用“XML“语言自定义构建路网

    文章目录 一 简要介绍1 node file2 edge file3 lane definitions xff08 1 xff09 路段细分 xff08 2 xff09 邻近的对向车道 xff08 3 xff09 删除边或车道 4 type
  • SUMO入门(四) - 需求建模 车辆和路线的定义

    SUMO入门 四 需求建模 车辆和路线的定义 Demand Introduction to demand modelling in SUMO 在生成网络之后 xff0c 可以使用SUMO GUI来查看它 xff0c 但是没有汽车可以行驶 人
  • [sumo]路网建立方法

    在sumo 中友两种创建路网的方法 xff0c 可以将路网理解为地图 xff0c 这里采用编写脚本文件的方式创建 一 xff0c 创建节点脚本 节点就是道图的拐点 xff0c 十字路口等其他一些路径变化的结点 下面以口字型环路为例介绍 xf
  • sumo 教程——高速公路

    本教程涵盖了在多车道高速公路上创建异构流以及修改和保存视图设置的非常基本的元素 修建高速公路 编辑几何点 打开 netedit 创建一个虚构的高速公路 我们一开始就保持这个非常简单 xff0c 并考虑一个没有入口或出口的路段 按e进入边创建
  • sumo教程——Manhattan

    介绍 本教程介绍了如何在 SUMO 中构建曼哈顿移动模型 在这个模型中 xff0c 固定数量的车辆在曼哈顿电网网络上随机行驶 所有文件也可以在 lt SUMO HOME gt docs tutorial manhattan 目录中找到 创建
  • SUMO输出文件设置

    1 fcd浮动车数据输出 轨迹数据输出 sumo c demo sumocfg fcd output fcd1 xml 2 设置E3检测器 E3检测器简介 Multi Entry Exit Detectors xff08 E3 xff09
  • 基于openstreetmap数据的SUMO路网生成路线

    一 一步到位 xff1a 基于SUMO自带工具smWebWizard py 使用SUMO自带的osmWebWizard py脚本 xff08 sumo tools xff09 进行下载 xff0c 脚本执行后会打开一个操作网页 xff0c
  • SUMO学习

    SUMO学习 SUMO简介1 车道模型2 跟驰模型跟驰模型CACC 3 变道模型1 Strategic change 战略变道2 Cooperative change 协同变道3 Tactical change 战术变道4 Obligato
  • sumo中随机产生车流

    在sumo中绘制地图 xff0c 然后利用sumo中的randomTrips py工具产生随机的车流量 一 首先绘制路网 xff0c 本文绘制了一个九宫格路网 xff08 myroad net xml xff09 xff0c 如下图 xff
  • 将静脉坐标转换为 GPS

    我正在使用从以下位置导入的真实街道网络打开街道地图用于静脉模拟 例如卢森堡情景来自拉拉 科德卡 现在 为了准备可视化 使用 Google Earth 我想将模拟中的车辆位置从 SUMO 或 OmNET 坐标导出到 GPS 坐标 作为材料 我
  • 蓝牙 RSSI 中出现的规律振荡是否有解释?

    我正在使用 kontakt io 蓝牙 eddystone UID 信标和使用 alt beacon 库的 Android 应用程序 在三星 Galaxy S5 上运行 尽管我怀疑这是否相关 我已经在不同条件下进行了一系列试验 并正在努力确
  • 静脉如何在简单路径损耗模型中计算 RSSI?

    我们正在开发一个基于 Veins 框架的应用程序 它需要接收信号的 RSSI 值以及发送器和接收器之间的距离 我们参考了 VeReMi 项目 它也计算 RSSI 值并将其发送到上层 我们将模拟结果 RSSI 与距离 与 VeReMi 数据集
  • 将 RSSI 转换为距离

    如何将 RSSI 转换为距离 我有三个坐标 RFID 读取器 Reader1 0 0 读者2 0 8 读者3 8 5 应答器获取 RSSI 从阅读器 1 获取 156 从阅读器 2 获取 115 从阅读器 3 获取 124 我如何获得应答器
  • 用于 RSSI 距离近似的卡尔曼滤波器

    我目前正在开发一个项目 该项目利用 RSSI 信号来确定用户与三个信标之间的距离 虽然我有粗略的三角测量公式 但我正在努力使一些东西更加准确 通过我所有的研究 我发现了卡尔曼滤波器 从我读到的有关它们的内容来看 它们似乎正是我想要使用的 然
  • Android:每秒更新蓝牙 RSSI

    我试图每秒显示蓝牙信号强度 RSSI Timer 来自检测到的设备 但我无法调用onRecive 多次因为接收器生命周期 http developer android com reference android content Broadc
  • 我安排一个计时器使用 readRSSI 函数读取 RSSI,但是当我的应用程序进入后台时计时器停止

    我安排一个计时器使用 readRSSI 函数读取 RSSI 但是当我的应用程序进入后台时计时器停止 也许有一个好方法可以在应用程序进入后台时从外围设备的通知中获取 RSSI 值 但我不知道该怎么办 有人可以帮助我吗 有人有更好的方法吗 我也

随机推荐

  • 如何将 Joda-Time DateTimeFormat.forStyle() 转换为 JSR 310 Java 时间?

    我正在将 Grails Joda Time 插件转换为JavaTime 我有旧的乔达时间代码 如下所示 def style switch type case LocalTime style S break case LocalDate st
  • Java:递归查找列表中的最小元素

    我会先说这是家庭作业 我只是在寻找一些指示 我一直在为这个问题绞尽脑汁 但我一生都没有明白 我们被要求找到列表中的最小元素 我知道我在这里需要一个子列表 但之后我不确定 任何指示都会很棒 谢谢 Find the minimum elemen
  • Metal RGB 到 YUV 转换计算着色器

    我正在尝试编写一个 Metal 计算着色器来从 RGB 转换为 YUV 但遇到构建错误 typedef struct float3x3 matrix float3 offset ColorConversion Compute kernel
  • 如何检测页面是否为 RSS 或 ATOM 提要

    我目前正在用 PHP 构建一个新的在线 Feed 阅读器 我正在开发的功能之一是提要自动发现 如果用户输入网站 URL 脚本将检测到它不是提要 并通过解析 HTML 来查找正确的提要 URL tag 问题是 我目前检测 URL 是否为提要或
  • 如何将故事板合并到cocos2d 2.0项目中?

    我在 cocos2d 2 0 中做了一个项目 想使用故事板合并一个主菜单 我在tinytimgames com上尝试过Jerrod Putnam的教程 我无法提供链接 因为新用户每个帖子只允许有2个链接 但如果你用谷歌搜索 cocos2d
  • 将 UIView 叠加到 Cocos 层上?

    我是 iOS 和 Cocos 开发新手 目前 我的 HelloWorldLayer 类中有一个基本的应用程序 它包含我的精灵和触摸交互方法 一切都很好 我正在尝试在当前看到的内容之上添加另一个 面板 UIView 最终 该面板将具有与主画布
  • 浏览器什么时候执行Javascript?执行光标如何移动?

    我想知道是否有任何可用资源来描述浏览器光标如何执行 Javascript 我知道它会在页面加载时加载并执行标签 并且您可以将函数附加到各种窗口事件 但事情变得模糊的是 例如 我通过 AJAX 检索远程页面并将其内容放入 div 中 如果该远
  • 低延迟(< 2s)实时视频流 HTML5 解决方案?

    由于 Chrome 很快就会默认禁用 Flash 我需要开始研究 flash rtmp html5 替代解决方案 目前 使用 Flash RTMP 我有一个延迟 我尝试过 MPEG DASH 它似乎是流媒体的新行业标准 但效果不佳 5 秒延
  • 保存自定义对象的 NSArray

    我创建了 UIImage UIImageExtra 的子类 因为我想包含额外的属性和方法 我有一个包含此自定义类的实例的数组 但是 当我保存该数组时 似乎 UIImageExtra 类中的额外数据未保存 UIImageExtra 符合 NS
  • 外部链接 C 库中的异常传播

    我正在编写一个使用外部第三方 C 库的 C 库 因此 我的库将调用该第三方库中的函数 而第三方库将回调到我库的不同部分 我想知道在这种情况下异常会发生什么 假设 MyLib foo 调用外部 C 库函数 最终调用 MyLib bar 并且
  • 关闭 Eclipse 错误(这并不是真正的错误)[重复]

    这个问题在这里已经有答案了 可能的重复 禁用 Eclipse 的错误发现 Codan 误报 由于 GCC 4 8 Clang 3 3 C 支持远远领先于 Eclipse 的语法检查 就功能支持而言 Eclipse 将许多东西标记为实际上有效
  • Qt 中自动生成的 UI 标头

    我在 Qt Creator 工作 有点困惑 当我在 Qt Designer 中生成 UI 文件时 我注意到在标题为 ui 的 cpp 文件中加载了一个关联的头文件filename 我对这个标头是如何生成的有些困惑 请参考下图 该文件特别是
  • 网络摄像头在 opencv-python 和 opencv-contrib-python 的 pip 版本中不起作用

    我在使用 anaconda 的 python 中的 opencv 中遇到了网络摄像头的问题 问题如下 如果通过两者之一安装 opencv 我无法打开网络摄像头 pip install opencv python 可用 3 1 3 2 3 3
  • 工作灯真实性

    我们正在 Worklight 上开发混合应用程序 我们需要实现应用程序的真实性 我们将 Worklight Enterprise 版本 6 2 0 1 与 IBM 应用程序中心结合使用 但是 当我们在 Android 上启动应用程序时 我们
  • Django 基于类的视图 (TemplateView) 中的 URL 参数和逻辑

    我不清楚如何最好地访问 Django 1 5 中基于类的视图中的 URL 参数 考虑以下 View from django views generic base import TemplateView class Yearly Templa
  • ggplot2facet_grid使用facet_grid具有不同的x轴标签

    我在这个问题上纠结了很长时间 基本上我需要在二维facet grid中生成细菌分类群的堆积条形图 这不是问题 但是 我确实需要使用 2 个不同的 x 轴标签图 我查看了这些有帮助的线程 但仍然不满意 在facet grid ggplot上强
  • C++ 头文件和 CPP 包括

    快速提问 我试图确定 C 今天我花了几个小时处理双重定义链接器错误 这已经被定义了 我终于意识到这是因为我有这样的布局 main cpp include Dog cpp Dog cpp include Dog h Dog h Dog cla
  • long 类型的最大十六进制值

    我已将 Java 代码移植到 C 您能否解释一下为什么我在下面的行中出现编译时错误 我使用 VS 2008 private long l 0xffffffffffffffffL 16 f got here 无法将源类型 ulong 转换为目
  • Bash - 从循环中获取基本名称

    我想得到basename来自循环但这只会返回我 FILES home aaaa bbbb Get all folders for f in FILES do basename f done 我做错了什么 您甚至不需要创建一个数组并像这样执行
  • 静脉如何在简单路径损耗模型中计算 RSSI?

    我们正在开发一个基于 Veins 框架的应用程序 它需要接收信号的 RSSI 值以及发送器和接收器之间的距离 我们参考了 VeReMi 项目 它也计算 RSSI 值并将其发送到上层 我们将模拟结果 RSSI 与距离 与 VeReMi 数据集