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

基于 oneM2M 标准的空气质量监测系统的互操作性

论文标题

英文标题: Interoperability of Air Quality Monitoring Systems through the oneM2M Standard
中文标题: 基于 oneM2M 标准的空气质量监测系统的互操作性

作者信息

Jonnar Danielle Diosana, Gabriel Angelo Limlingan, Danielle Bryan Sore, Marc Rosales, Isabel Austria, Jaybie de Guzman, John Richard Hizon
Electrical and Electronics Engineering Institute, University of the Philippines, Diliman Quezon City, Philippines
Email: {jonnar.danielle.diosana, gabriel.angelo.limlingan, danielle.bryan.sore, richard.hizon}@eee.upd.edu.ph

论文出处

2024 31st IEEE International Conference on Electronics, Circuits and Systems (ICECS)
DOI: 10.1109/ICECS61496.2024.10849089

摘要

本文探讨了通过 oneM2M 标准实现空气质量监测(AQM)系统的互操作性。通过在菲律宾大学城市环境空气研究中心(UP CARE)现有的 AQM 研究计划中引入 oneM2M 标准,实现了 Wi-Fi、LoRa 和 Zigbee 等不同无线协议设备的数据标准化和传输。该系统在服务器停机时实现了 0.14% 的平均重传率、356.8 毫秒的最大端到端延迟和 99.5% 的数据可靠性。

1. 引言

空气质量监测(AQM)系统在学术界、政府和公众的创新和决策过程中发挥着重要作用。现有的 AQM 系统通过部署多个传感器测量污染物浓度并将数据上传到服务器进行监测和分析。然而,随着全球机器到机器(M2M)通信标准的发展,AQM 系统需要更高的可扩展性和互操作性,以便整合局部数据点并生成更广泛的区域视图。oneM2M 标准旨在为 M2M 通信行业提供标准化和规范,以实现不同系统之间的互操作性。本文介绍了一个基于 oneM2M 标准的 AQM 系统,通过 Wi-Fi、LoRa 和 Zigbee 等无线协议将传感器数据标准化并传输到 oneM2M 服务器。

2. AQM 系统的互操作性解决方案

现有的 AQM 解决方案通过多种传感器测量环境参数(如二氧化碳、颗粒物、温度和湿度),并利用 Wi-Fi、LoRa 和 Zigbee 等无线通信协议实现可靠传输。这些协议在数据速率、传输范围、功耗和成本方面各有优缺点。例如,Wi-Fi 支持高数据速率但功耗高且范围有限;LoRa 适合定期监测传感器值;Zigbee 则因其低功耗和无缝连接而具有灵活性。此外,AQM 系统还面临消息协议固定配置的问题,如 MQTT 和 HTTP 的互操作性。oneM2M 标准通过水平协议栈(包括应用层、oneM2M 服务和网络层)解决了这些问题,为 AQM 系统提供了互操作性、可访问性和可扩展性。

3. 方法与实现

本文实现了一个基于 oneM2M 协议的 AQM 系统,包括传感器和路由器、本地网络、数据库管理系统以及用户界面。系统设计基于 oneM2M 功能架构,分为现场域(部署结构)和基础设施域(中央服务器)。

3.1 AQM 传感器
  • Wi-Fi 传感器:使用 ESP32 微控制器和 HC8 CO2 NDIR 传感器,通过 MQTT 协议将数据传输到代理服务器。

  • LoRa 传感器:使用 ESP32 微控制器和 SX1278 LoRa 收发器,数据以 JSON 格式发送并通过 Paho 集成到 MQTT。

  • Zigbee 传感器:使用 Raspberry Pi 和 Zigbee2MQTT,支持超过 3000 种设备,数据直接链接到 MQTT 服务。

3.2 Raspberry Pi 网关

网关负责数据管理和通信,接收来自不同无线技术传感器的数据,并将其转发到互操作代理实体(IPE)进行数据标准化。数据随后被上传到 oneM2M 服务器,并存储在本地 SQL 数据库中。

3.3 基于 oneM2M 的传感器网络

所有设备、网关和传感器数据在 oneM2M 系统中以资源形式表示。中央服务器作为基础设施节点(IN),包含开源的 IN-CSE(公共服务中心实体)。系统通过 IPE 实现不同无线技术设备的互操作性和数据标准化。

3.4 用户界面

用户界面通过 Grafana 实现,提供实时空气质量指标的趋势图和数据实例的描述信息。界面还支持设备注册、删除和网关传感器的概览等功能。

4. 结果与讨论

本节介绍了系统的功能和性能测试结果,包括互操作性和可靠的数据管理。

4.1 互操作性

通过协议堆叠技术,系统实现了不同无线技术的传感器网络的互操作性。所有传输到系统中的数据,无论使用何种无线技术,均以 oneM2M 资源的形式统一存储,确保了数据格式的一致性。

4.2 数据管理可靠性

系统通过网关的本地存储实现了数据存储的可靠性。即使在服务器中断期间,系统仍能实现 99.63% 的数据传输率(DDR)。总体而言,系统在最佳网络条件下实现了 99.5% 的数据可靠性。

4.3 网络性能

系统在三个地点部署,测试了网络的拥塞情况。每个网关的 TCP 重传率均低于 1%,表明系统具有较低的冗余传输。网络延迟通过从网关到服务器的 ping 测试和数据存储时间计算得出。由于扩展网络的需要,系统使用了虚拟专用网络(VPN),这增加了网关到中央服务器的额外跳数,从而影响了平均网络延迟。

5. 结论

本文开发了一个基于 oneM2M 架构的标准化空气质量监测网络,实现了互操作性、可扩展性和数据可靠性。系统通过多个网关和中央服务器存储不同位置的数据,展示了在不同网络条件下的高效数据管理能力。未来的工作将包括增加更多信息(如位置和语义)以增强从物理环境到数字世界的空气质量建模能力。

6. 致谢

作者感谢 UP CARE 的指导和建设性反馈,以及 DOST 的项目资助。同时感谢家人和朋友的支持。

相关文章:

基于 oneM2M 标准的空气质量监测系统的互操作性

论文标题 英文标题: Interoperability of Air Quality Monitoring Systems through the oneM2M Standard 中文标题: 基于 oneM2M 标准的空气质量监测系统的互操作性 作者信息 Jonnar Danielle Diosana, Gabriel Angelo Limlingan, Danielle Bryan Sor…...

春晚舞台上的人形机器人:科技与文化的奇妙融合

文章目录 人形机器人Unitree H1的“硬核”实力传统文化与现代科技的创新融合网友热议与文化共鸣未来展望:科技与文化的更多可能结语 2025 年央视春晚的舞台,无疑是全球华人目光聚焦的焦点。就在这个盛大的舞台上,一场名为《秧BOT》的创意融合…...

零基础学习书生.浦语大模型-入门岛

第一关:Linux基础知识 Cursor连接服务器 使用Remote - SSH插件即可 注:46561:服务器端口号 运行指令 python hello_world.py端口映射 ssh -p 46561 rootssh.intern-ai.org.cn -CNg -L 7860:127.0.0.1:7860 -o StrictHostKeyCheckingno …...

Gurobi基础语法之 addConstr, addConstrs, addQConstr, addMQConstr

在新版本的 Gurobi 中,向 addConstr 这个方法中传入一个 TempConstr 对象,在模型中就会根据这个对象生成一个约束。更重要的是:TempConstr 对象可以传给所有addConstr系列方法,所以下面先介绍 TempConstr 对象 TempConstr TempC…...

数据结构---图的遍历

图的遍历(Travering Graph):从图的某一顶点出发,访遍图中的其余顶点,且每个顶点仅被访问一次,图的遍历算法是各种图的操作的基础。 复杂性:图的任意顶点可能和其余的顶点相邻接,可能在访问了某个顶点后,沿某条路径搜索…...

Qwen 模型自动构建知识图谱,生成病例 + 评价指标优化策略

关于数据库和检索方式的选择 AI Medical Consultant for Visual Question Answering (VQA) 系统:更适合在前端使用向量数据库(如FAISS)结合关系型数据库来实现图像和文本的检索与存储。因为在 VQA 场景中,你需要对患者上传的图像或…...

.Net Web API 访问权限限定

看到一个代码是这样的: c# webapi 上 [Route("api/admin/file-service"), AuthorizeAdmin] AuthorizeAdmin 的定义是这样的 public class AuthorizeAdminAttribute : AuthorizeAttribute {public AuthorizeAdminAttribute(){Roles "admin"…...

项目架构调整,切换版本并发布到中央仓库

文章目录 0.完成运维篇maven发布到中央仓库的部分1.配置server到settings.xml2.配置gpg 1.架构调整1.sunrays-dependencies(统一管理依赖和配置)1.作为单独的模块2.填写发布到中央仓库的配置1.基础属性2.基本配置3.插件配置 3.完整的pom.xml 2.sunrays-f…...

考试知识点位运算

深入理解位运算 在C编程的世界里,位运算作为一种直接对二进制位进行操作的运算方式,虽然不像加减乘除等算术运算那样广为人知,却在许多关键领域发挥着至关重要的作用。从底层系统开发到高效算法设计,位运算都展现出其独特的魅力与…...

matlab快速入门(2)-- 数据处理与可视化

MATLAB的数据处理 1. 数据导入与导出 (1) 从文件读取数据 Excel 文件:data readtable(data.xlsx); % 读取为表格(Table)CSV 文件:data readtable(data.csv); % 自动处理表头和分隔符文本文件:data load(data.t…...

Kafka中文文档

文章来源:https://kafka.cadn.net.cn 什么是事件流式处理? 事件流是人体中枢神经系统的数字等价物。它是 为“永远在线”的世界奠定技术基础,在这个世界里,企业越来越多地使用软件定义 和 automated,而软件的用户更…...

Python-列表

3.1 列表是什么 在Python中,列表是一种非常重要的数据结构,用于存储一系列有序的元素。列表中的每个元素都有一个索引,索引从0开始。列表可以包含任何类型的元素,包括其他列表。 # 创建一个列表my_list [1, 2, 3, four, 5.0]…...

51单片机开发:定时器中断

目标:利用定时器中断,每隔1s开启/熄灭LED1灯。 外部中断结构图如下图所示,要使用定时器中断T0,须开启TE0、ET0。: 系统中断号如下图所示:定时器0的中断号为1。 定时器0的工作方式1原理图如下图所示&#x…...

【HarmonyOS之旅】基于ArkTS开发(三) -> 兼容JS的类Web开发(二)

目录 1 -> HML语法 1.1 -> 页面结构 1.2 -> 数据绑定 1.3 -> 普通事件绑定 1.4 -> 冒泡事件绑定5 1.5 -> 捕获事件绑定5 1.6 -> 列表渲染 1.7 -> 条件渲染 1.8 -> 逻辑控制块 1.9 -> 模板引用 2 -> CSS语法 2.1 -> 尺寸单位 …...

算法【混合背包】

混合背包是指多种背包模型的组合与转化。 下面通过题目加深理解。 题目一 测试链接:1742 -- Coins 分析:这道题可以通过硬币的个数将其转化为01背包,完全背包和多重背包。如果硬币的个数是1个,则是01背包;如果硬币的…...

WordPress eventon-lite插件存在未授权信息泄露漏洞(CVE-2024-0235)

免责声明: 本文旨在提供有关特定漏洞的深入信息,帮助用户充分了解潜在的安全风险。发布此信息的目的在于提升网络安全意识和推动技术进步,未经授权访问系统、网络或应用程序,可能会导致法律责任或严重后果。因此,作者不对读者基于本文内容所采取的任何行为承担责任。读者在…...

基于微信小程序的医院预约挂号系统设计与实现(LW+源码+讲解)

专注于大学生项目实战开发,讲解,毕业答疑辅导,欢迎高校老师/同行前辈交流合作✌。 技术范围:SpringBoot、Vue、SSM、HLMT、小程序、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、安卓app、大数据、物联网、机器学习等设计与开发。 主要内容:…...

C++初阶 -- 手撕string类(模拟实现string类)

目录 一、string类的成员变量 二、构造函数 2.1 无参版本 2.2 有参版本 2.3 缺省值版本 三、析构函数 四、拷贝构造函数 五、c_str函数 六、operator重载 七、size函数 八、迭代器iterator 8.1 正常版本 8.2 const版本 九、operator[] 9.1 正常版本 9.2 const版…...

【Postman接口测试】Postman的安装和使用

在软件测试领域,接口测试是保障软件质量的关键环节之一,而Postman作为一款功能强大且广受欢迎的接口测试工具,能够帮助测试人员高效地进行接口测试工作。本文将详细介绍Postman的安装和使用方法,让你快速上手这款工具。 一、Pos…...

miniconda学习笔记

文章主要内容:演示miniconda切换不同python环境,安装python库,使用pycharm配置不同的conda建的python环境 目录 一、miniconda 1. 是什么? 2.安装miniconda 3.基本操作 一、miniconda 1. 是什么? miniconda是一个anac…...

浅谈 React Hooks

React Hooks 是 React 16.8 引入的一组 API,用于在函数组件中使用 state 和其他 React 特性(例如生命周期方法、context 等)。Hooks 通过简洁的函数接口,解决了状态与 UI 的高度解耦,通过函数式编程范式实现更灵活 Rea…...

以下是对华为 HarmonyOS NETX 5属性动画(ArkTS)文档的结构化整理,通过层级标题、表格和代码块提升可读性:

一、属性动画概述NETX 作用:实现组件通用属性的渐变过渡效果,提升用户体验。支持属性:width、height、backgroundColor、opacity、scale、rotate、translate等。注意事项: 布局类属性(如宽高)变化时&#…...

Golang dig框架与GraphQL的完美结合

将 Go 的 Dig 依赖注入框架与 GraphQL 结合使用,可以显著提升应用程序的可维护性、可测试性以及灵活性。 Dig 是一个强大的依赖注入容器,能够帮助开发者更好地管理复杂的依赖关系,而 GraphQL 则是一种用于 API 的查询语言,能够提…...

k8s业务程序联调工具-KtConnect

概述 原理 工具作用是建立了一个从本地到集群的单向VPN,根据VPN原理,打通两个内网必然需要借助一个公共中继节点,ktconnect工具巧妙的利用k8s原生的portforward能力,简化了建立连接的过程,apiserver间接起到了中继节…...

均衡后的SNRSINR

本文主要摘自参考文献中的前两篇,相关文献中经常会出现MIMO检测后的SINR不过一直没有找到相关数学推到过程,其中文献[1]中给出了相关原理在此仅做记录。 1. 系统模型 复信道模型 n t n_t nt​ 根发送天线, n r n_r nr​ 根接收天线的 MIMO 系…...

服务器--宝塔命令

一、宝塔面板安装命令 ⚠️ 必须使用 root 用户 或 sudo 权限执行! sudo su - 1. CentOS 系统: yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh2. Ubuntu / Debian 系统…...

面向无人机海岸带生态系统监测的语义分割基准数据集

描述:海岸带生态系统的监测是维护生态平衡和可持续发展的重要任务。语义分割技术在遥感影像中的应用为海岸带生态系统的精准监测提供了有效手段。然而,目前该领域仍面临一个挑战,即缺乏公开的专门面向海岸带生态系统的语义分割基准数据集。受…...

软件工程 期末复习

瀑布模型:计划 螺旋模型:风险低 原型模型: 用户反馈 喷泉模型:代码复用 高内聚 低耦合:模块内部功能紧密 模块之间依赖程度小 高内聚:指的是一个模块内部的功能应该紧密相关。换句话说,一个模块应当只实现单一的功能…...

flow_controllers

关键点: 流控制器类型: 同步(Sync):发布操作会阻塞,直到数据被确认发送。异步(Async):发布操作非阻塞,数据发送由后台线程处理。纯同步(PureSync…...

海云安高敏捷信创白盒SCAP入选《中国网络安全细分领域产品名录》

近日,嘶吼安全产业研究院发布《中国网络安全细分领域产品名录》,海云安高敏捷信创白盒(SCAP)成功入选软件供应链安全领域产品名录。 在数字化转型加速的今天,网络安全已成为企业生存与发展的核心基石,为了解…...