当前位置: 首页 > news >正文

面向新一代扩展现实(XR)应用的物联网框架

中文标题: 面向新一代扩展现实(XR)应用的物联网框架
英文标题: Towards an IoT Framework for the New Generation of XR Applications

作者信息

  • João A. Dias,UNIDCOM - IADE,欧洲大学,里斯本,葡萄牙,邮箱:joao.alfredo.dias@universidadeeuropeia.pt

  • Nathan P. Campos,IADE,欧洲大学,里斯本,葡萄牙

  • Miguel Boavida,IADE,欧洲大学,里斯本,葡萄牙

论文出处

本文发表于《IEEE Access》,DOI: 10.1109/ACCESS.2024.0429000。


摘要

近年来,扩展现实(XR)技术在工业和学术界引起了广泛关注,尤其是在开发创意和沉浸式应用方面。然而,许多XR应用仍然依赖于传统的输入设备(如鼠标、触摸屏或游戏控制器)和输出设备(如屏幕或投影仪)。随着物联网(IoT)解决方案的普及,将这些设备集成到新一代创意应用中成为可能。然而,这种集成通常成本高昂且需要大量定制开发。本文旨在填补这一空白,提出一个框架,使开发者能够利用IoT设备创建数字孪生或作为应用的输入和输出设备,从而为软件开发开辟新的可能性。研究中提出了一个框架,用于将任何IoT设备集成到新一代XR应用中,并详细设计了一种IoT设备配对方案,使其能够自动与客户端可靠匹配。通过使用行业标准的IoT通信协议MQTT进行性能研究,证明了该框架在为无线输入设备提供低延迟通信方面的可行性。

引言

扩展现实(XR)技术涵盖了虚拟现实(VR)、增强现实(AR)和混合现实(MR),通过计算机生成的环境让用户同时与虚拟和现实世界互动。尽管XR技术取得了显著进展,但仍然面临一些挑战,例如设备重量、视野限制和硬件限制等问题。物联网(IoT)设备和网络的集成可以解决这些问题,通过实时数据交换增强XR体验。然而,目前这种集成通常是逐案进行的,通常涉及云解决方案作为中介,缺乏标准化的框架。本文提出了一个框架,支持新一代XR应用,利用过去几十年的创新和IoT设备集成带来的可能性,弥合虚拟和物理世界之间的联系。

背景与相关工作

扩展现实

扩展现实(XR)是一个涵盖多种技术的术语,旨在扩展物理现实,例如通过在物理空间上叠加虚拟对象或完全替换它们。近年来,XR技术在创意应用领域取得了快速发展,尤其是在VR和AR眼镜方面。这些技术的发展推动了相关硬件、配件和新方法的研究,以扩展这些设备的能力。

  1. 增强现实(AR):AR技术允许用户在现实世界中与虚拟对象互动,通过智能手机等设备的传感器和算法实现。AR技术的一个重要应用是通过移动设备在现实场景中叠加虚拟3D对象,广泛应用于广告、视频制作等领域。

  2. 虚拟现实(VR):VR技术通过头戴式显示器(HMD)让用户完全沉浸在虚拟环境中,与周围环境隔离。VR技术的发展使得开发者可以更简单地开发体验,因为不需要依赖外部输入,只需依赖头显中的运动传感器和控制器。

  3. 混合现实(MR):MR技术结合了VR和AR的特点,允许用户在虚拟和现实内容之间无缝切换,同时感知物理空间。

物联网(IoT)

IoT是一个由传感器、嵌入式软件和执行器组成的物理设备网络,能够通过互联网连接和交换数据。IoT的主要目标是通过实时数据收集和自动化控制优化流程,提高效率和用户体验。IoT技术为创意技术中的艺术和设计表达提供了新的可能性,使开发者能够创建模糊数字和物理世界边界的交互式装置和环境。

  1. IoT协议:IoT领域有许多通信协议,包括HTTP、MQTT和CoAP。其中,MQTT是一种轻量级协议,专为IoT应用设计,广泛用于资源受限的设备。CoAP是一种现代轻量级协议,旨在填补HTTP和资源受限应用之间的差距。

混合方法

研究人员已经开发出多种方法,将XR和IoT技术结合起来,创造更沉浸式的体验。例如,通过将IoT设备与XR应用集成,可以实现更自然的交互和更丰富的用户体验。然而,这种集成通常需要定制开发,增加了开发成本和复杂性。

提出的框架

本文提出的框架旨在为XR和IoT的集成提供标准化解决方案,使开发者能够轻松地将IoT设备集成到XR应用中。框架的核心组件包括:

  1. 应用:开发者编写的XR应用,使用高级语言和网络通信库。

  2. 客户端:运行XR应用的设备,如计算机、VR头显或移动设备。

  3. 个性:IoT设备上的可测量值或可操作值,如传感器数据或执行器状态。

  4. 节点:作为输入、输出或两者的IoT模块。

  5. 中介:负责动态分配MQTT主题,使节点和客户端能够自动配对。

  6. 代理:MQTT代理,负责在客户端和节点之间中继信息。

系统架构

框架的架构设计旨在最大化扩展性和灵活性,支持多种设备和场景。图7展示了系统架构,包括单个节点和客户端之间的交互。框架使用HTTP进行初始设置和配对,使用MQTT进行运行时通信。为了减少延迟,嵌入式设备的固件应保持简洁,将复杂处理任务交给客户端。

通信和配对机制

由于MQTT协议不支持客户端之间的主题协商,框架引入了中介来动态分配主题。中介允许节点在启动时发现服务器地址,并自动与客户端配对。配对过程类似于无线游戏控制器的配对,确保节点和客户端能够自动匹配,无需预配置信息。

框架性能评估

框架的性能评估主要关注MQTT协议在分布式环境中的表现,特别是在低延迟和高吞吐量方面。评估的目标是确定框架是否适用于需要低延迟输入设备的XR应用。

测试方法

测试使用了Python脚本作为发布者,Unity 3D应用作为订阅者,通过MQTT协议进行通信。测试环境包括模拟场景(虚拟机和主机)和真实场景(IoT设备和VR头显)。测试指标包括延迟(往返时间)和TCP吞吐量。

测试结果
  1. 模拟环境

    • 在模拟环境中,使用ping和netperf工具测量了网络的基线性能,结果显示平均往返延迟为0.416毫秒,TCP吞吐量为2591次/秒。

    • 在无延迟的单发布者测试中,Unity在高频率更新UI时变得无响应,但后台处理消息时表现正常。测试结果显示,MQTT协议在无延迟情况下能够实现极低的延迟(约1毫秒),适合用作游戏控制器。

    • 在使用不同QoS级别时,延迟和吞吐量的变化表明,QoS级别越高,延迟越大,但吞吐量仍能满足XR应用的需求。

  2. 真实环境

    • 在真实环境中,使用ESP32-S2-Saola-1开发板作为IoT设备,Meta Quest 2 VR头显作为客户端,测试了MQTT协议在不同网络条件下的表现。

    • 在最坏情况下(公共WiFi网络),平均往返延迟为18.78毫秒,QoS级别为1时延迟为24.98毫秒,QoS级别为2时延迟为36.29毫秒。这些延迟值仍低于人类感知的阈值(约10毫秒),证明MQTT协议在高延迟网络中仍能提供可接受的性能。

    • 在理想情况下(专用WiFi网络),延迟显著降低,QoS级别为0时平均延迟为6.25毫秒,QoS级别为1时为8.27毫秒,QoS级别为2时为13.92毫秒。这些结果表明,MQTT协议在低延迟网络中表现优异,适合用于需要高响应性的XR应用。

结论与未来工作

本文提出的框架通过使用MQTT协议,成功地将IoT设备与XR应用集成,解决了现有解决方案中的许多问题。框架在低延迟和高吞吐量方面表现出色,适用于需要低延迟输入设备的XR应用。未来的工作将包括更多用户测试,验证框架在实际游戏和应用中的表现,以及探索框架在工业自动化和智能家居等领域的应用。此外,还需要进一步研究MQTT和CoAP协议的性能比较,以及在更复杂的网络环境中的表现。

http://www.xdnf.cn/news/30817.html

相关文章:

  • 打靶日记 zico2: 1
  • Qt编写推流程序/支持webrtc265/从此不用再转码/打开新世界的大门
  • 初始 Vue
  • Android 下拉栏中的禁用摄像头和麦克风隐藏
  • PH热榜 | 2025-04-19
  • 实现Azure Databricks安全地请求企业内部API返回数据
  • linux学习 5 正则表达式及通配符
  • 聊聊Spring AI Alibaba的ElasticsearchDocumentReader
  • JavaScript中的Event事件对象详解
  • 自由学习记录(56)
  • 背包 DP 详解
  • 【mongodb】数据库操作
  • TIM_ITConfig() 和 TIM_Cmd()
  • 当HTTP遇到SQL注入:Java开发者的攻防实战手册
  • 实用电脑工具,轻松实现定时操作
  • 《目标检测双雄:YOLO与Faster R-CNN,谁主沉浮?》
  • dotnet core webapi 实现 异常处理中间件
  • [密码学基础]GMT 0002-2012 SM4分组密码算法 技术规范深度解析
  • LNA设计
  • spring Ai---向量知识库(一)
  • 43.[前端开发-JavaScript高级]Day08-ES6-模板字符串-展开运算符-ES7~ES11
  • PyTorch深度学习框架60天进阶学习计划 - 第46天:自动化模型设计(一)
  • 在RK3588上使用哪个流媒体服务器合适
  • 在swiftui项目中使用WKWebView加载自定义脚本文件
  • 【HDFS入门】HDFS性能调优实战:关键参数对吞吐量的影响深度解析
  • c++ 类的语法1
  • UI文件上传
  • 深入解析进程与线程:区别、联系及Java实现
  • 设计模式-桥接模式
  • 14.解码器的Mask