第2章.现场设备的物联网模式--设备网关

第2章.现场设备的物联网模式

        本章列出了与现场设备或事物相关的关键模式。阅读本章后,您将能够识别物联网架构中这些模式的存在。它提供了有关模式适合或适用的场景的详细信息,以及需要考虑的约束。这将帮助您相对轻松地理解现有的物联网架构。

本章涵盖以下三种关键模式:

设备网关(DG):DG充当现场设备(传感器、执行器等)和中央服务器之间的桥梁。在独立部署中(没有中央服务器),DG协调本地设备(传感器和执行器)之间的动作。

数字孪生(DT):DT用于维护中央服务器上现场设备的虚拟状态,从而允许远程监控操作。通过对累积的数据执行所需的处理,DT使得能够预测现场设备的未来状态。此外,DT有助于克服间歇性连接问题。

设备管理:设备管理有助于配置、更新和管理现场设备,并托管在中央服务器上。 让我们更详细地看一下这些模式。

2.1 设备网关

        DG是一种重要的模式,因为它有助于连接物理世界和虚拟世界。物理世界由传感器监控,动作由执行器根据DG发送的命令启动。本书中DG使用的符号如下图所示:

图2.1——DG模式的符号

重要提示

        DG在物联网文献中也被称为现场网关。 DG除了通过托管本地规则引擎(LRE)和执行延迟敏感决策来实现边缘/本地智能外,还可以与中央服务器进行数据通信,在中央服务器上必须做出更复杂的决策(需要全局上下文的决策)。对DG的需求是因为大多数传感器/执行器在计算、内存、存储或功率方面受到限制,因此无法与中央服务器建立连接。

        DG的一个很好的实际例子是智能手机,因为它连接到多个设备(例如,耳机、BLE上的灯等),并通过HTTP/MQT将数据发送到中央服务器。DG在功能上优于路由器,因为它可以在边缘执行业务逻辑,而不仅仅是路由流量。 另一个观点是DG模式封装了传感器/致动器通常通信的不同协议或数据格式。由于通信协议(BLE、Wi-Fi、ZigBee、OPC UA等)或不同传感器/执行器之间的数据格式都没有标准化,DG扮演着协议翻译器的角色;它通过不同的通信协议与一侧的传感器/执行器进行通信,并通过统一的数据或通信协议与另一侧的中央服务器进行通信,如下图所示:

图2.2–DG能够支持多种协议;与智能设备的比较

重要提示

        DG充当连接使能器和协议翻译器,并提供数据缓冲功能。然而,在设备足够智能的情况下,可能不需要它来提供这些功能。 在上图的右上角,突出显示了DG模式的关键功能。如您所见,传感器、执行器和其他设备可以使用各种通信技术/协议(有线和无线,如Wi-Fi、ZigBee、BACnet、Modbus、蓝牙/BLE、RFID、NFC等;这些在图中标记为1)与DG进行交互。然而,DG和中央服务器之间的接口是单一类型的(该图将接口显示为HTTPS上的JSON,尽管物联网生态系统中也使用了其他接口,如AMQP和MQTT;它们标记为2)。

        1和2之间的另一个关键区别因素是1是基于非IP的通信,而2是基于IP的通信。 如果设备是智能的(它们有足够的计算、内存和存储,并且可以与中央服务器建立连接),则不需要DG,因为设备本身能够连接并管理数据的传输方式。 除了允许dumpdevices向中央服务器发送数据/从中央服务器接收数据并充当协议转换器外,DG还提供了以下几点所述的附加功能: 数据聚合/过滤:在某些情况下,不需要将传感器捕获的所有数据发送到中央服务器(由于带宽限制或应用程序不需要高频推送数据)。在这种情况下,DG将积累数据并将汇总数据发送到中央服务器(从过去一小时开始,仅在数据与之前读取时不同的情况下发送数据,以此类推)。 静止和运动中的数据安全:DG不仅确保本地存储的数据是安全的(即加密的),而且通过利用与身份验证、授权和计费(AAA)相关的所有最佳实践,确保发送到中央服务器的数据是安全的。 支持本地数据访问要求:DG允许您通过API本地访问数据(以消除中央服务器对关键数据访问要求的依赖关系)。

        在某些场景中,DG还托管用于可视化和报告目的的人机接口(HMI)。 LRE支持:DG可以启用LRE(LRE模式将在第3章“中央服务器的物联网模式”中介绍),在其中观察生成的事件(例如,来自传感器的事件)并触发适当的操作。 连接设备的固件/配置升级:连接设备(或DG本身)的固件升级由中央服务器根据需要推送。

        类似地,配置设置(例如,数据捕获频率的变化)由中央服务器发送到DG。命令也可发送给DG,用于故障排除/诊断。 数据缓冲:在与中央服务器间歇性连接的情况下,DG可以缓冲数据(取决于可用本地存储的限制),并在建立连接后发送数据,从而避免数据丢失。 DG托管应用程序的应用程序中间件:DG公开API以报告本地分析结果(基于历史数据)以及传感器捕获的当前数据。

        此外,在某些关键场景中,执行器的命令可以在本地发布,而不必等待中央服务器做出决定。同样,DG上托管的应用程序所利用的公开API使这成为可能。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/752331.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

基于springboot实现商业辅助决策系统项目【项目源码+论文说明】

基于springboot实现商业辅助决策系统演示 摘要 如今社会上各行各业,都喜欢用自己行业的专属软件工作,互联网发展到这个时候,人们已经发现离不开了互联网。新技术的产生,往往能解决一些老技术的弊端问题。因为传统收支信息和销售订…

展厅设计要合格需满足哪些要求

1、方案的确定 在企业中想做一个合格的展厅那就得找一家展厅设计公司,制定展厅设计的大概方案、展厅的主题、展厅想要呈现的效果,这些都要进行方案论证,经过展厅设计公司对实地情况充分的了解,就会最终达成呈现的方案。 2、展厅的…

Linux系统应用与设置(3):串口调试(minicom)

目录 1. 简述 2. 安装minicom 3. 配置串口参数 4. 打开相应的通信端口 5. 设置 6. 发送字符数据 7. 发送HEX(十六进制) 1. 简述 在Linux系统中,minicom是一个功能强大的串口通信工具,可用于与外部设备进行字符和HEX数据的收…

脑电微状态与睡眠慢波

摘要 目的:微状态是半稳定的电压拓扑图,它能够解释静息态EEG地形图的大部分差异。然而,白天时间和睡眠对微状态的影响尚未得到检验。为了填补这一空白,本研究评估了在健康参与者中,晚上和早晨之间的微状态是否不同&am…

模拟实现string【C++】

文章目录 全部的实现代码放在了文章末尾准备工作包含头文件定义命名空间和类类的成员变量 构造函数默认构造拷贝构造 重载赋值拷贝函数析构函数迭代器和获取迭代器迭代器获取迭代器 resize【调整size】图解 reserve【调整capacity】empty【判断串是否为空】operator[]appendpus…

【yolov8系列】ubuntu上yolov8的开启训练的简单记录

前言 yolov8的广泛使用,拉取yolov8源码工程,然后配置环境后直接运行,初步验证自己数据的检测效果,在数据集准备OK的情况下 需要信手拈来,以保证开发过程的高效进行。 本篇博客更注意为了方便自己使用时参考。顺便也记录…

万物皆可爬——亮数据代理IP+Python爬虫批量下载百度图片助力AI训练

💂 个人网站:【 摸鱼游戏】【神级代码资源网站】【导航大全】🤟 一站式轻松构建小程序、Web网站、移动应用:👉注册地址🤟 基于Web端打造的:👉轻量化工具创作平台💅 想寻找共同学习交…

AI小白使用Macbook Pro安装llama3与langchain初体验

1. 背景 AI爆火了2年有余,但我仍是一个AI小白,最近零星在学,随手记录点内容供自己复习。 上次在Macbook Pro上安装了Stable Diffusion,体验了本地所心所欲地生成各种心仪的图片,完全没有任何限制的惬意。今天想使用M…

从@Param注解开始,深入了解 MyBatis 参数映射的原理

系列文章目录 MyBatis缓存原理 Mybatis plugin 的使用及原理 MyBatisSpringboot 启动到SQL执行全流程 数据库操作不再困难,MyBatis动态Sql标签解析 Mybatis的CachingExecutor与二级缓存 使用MybatisPlus还是MyBaits ,开发者应该如何选择? 巧…

解决所有终端中文输出乱码的问题

一、系统自带的cmd.exe 以及 Git的bash.exe、sh.exe、git-bash.exe和git-cmd.exe,和PowerShell默认使用“当前系统区域设置”设定好的936 (ANSI/OEM - 简体中文 GBK)语言编码。 1、[当前代码页] 的936 (ANSI/OEM - 简体中文 GBK) 是导致中文乱码的原因 在控制面板→…

【基于深度学习方法的激光雷达点云配准系列之GeoTransformer】——模型部分浅析(1)

【GeoTransformer系列】——模型部分 1. create_model2. model的本质3. 模型的主要结构3.1 backbone3.2 transformer本篇继续对GeoTransformer/experiments/geotransformer.kitti.stage5.gse.k3.max.oacl.stage2.sinkhorn/下面的trainval.py进行详细的解读,主要是模型部分, 可以…

单位转换:将kb转换为 MB ,GB等形式

写法一&#xff1a; function formatSizeUnits(kb) {let units [KB, MB, GB, TB, PB,EB,ZB,YB];let unitIndex 0;while (kb > 1024 && unitIndex < units.length - 1) {kb / 1024;unitIndex;}return ${kb.toFixed(2)} ${units[unitIndex]}; } console.log(for…

linux 下配置docker mirrors

一、配置mirrors vi /etc/docker/daemon.json {"registry-mirrors": ["https://docker.blfrp.cn"],"log-opts": {"max-size": "10m","max-file": "3"} }#完成配置后重启docker systemctl restart dock…

SAP ALV 负号提前

FUNCTION CONVERSION_EXIT_ZSIGN_OUTPUT. *"---------------------------------------------------------------------- *"*"本地接口&#xff1a; *" IMPORTING *" REFERENCE(INPUT) *" EXPORTING *" REFERENCE(OUTPUT) *"…

labview排错

源代码正常跑&#xff0c;应用程序报这个错&#xff0c;是因为源代码的可以找到项目路径内所有dll的路径&#xff0c;而应用程序只能找到data文件夹的dll文件 解决查看源代码中.net的程序集的路径&#xff0c;复制对应的dll到data文件夹下

24V 350W开关电源电路原理图+PCB工程文件 UC3843AD lm193芯片

资料下载地址&#xff1a;24V 350W开关电源电路原理图PCB工程文件 UC3843AD lm193芯片 1、原理图 2、PCB

昇思25天学习打卡营第5天|数据变换Transforms

数据变换 Transforms 在完成数据加载后&#xff0c;还应该对数据进行预处理。之前在数据集篇介绍过map函数&#xff0c;这里的transform就是和map一起使用的。transform有针对图像、文本、音频等不同类型的&#xff0c;并且也支持lambda函数。 环境配置 import numpy as np …

Echarts地图实现:各省市计划录取人数

Echarts地图实现&#xff1a;各省市计划录取人数 实现功能 本文将介绍如何使用 ECharts 制作一个展示中国人民大学2017年各省市计划录取人数的地图。我们将实现以下图表形式&#xff1a; 地图&#xff1a;基础的地图展示&#xff0c;反映不同省市的录取人数。散点图&#xf…

华为od 2024 | 什么是华为od,od 薪资待遇,od机试题清单

目录 专栏导读华为OD机试算法题太多了&#xff0c;知识点繁杂&#xff0c;如何刷题更有效率呢&#xff1f; 一、逻辑分析二、数据结构1、线性表① 数组② 双指针 2、map与list3、队列4、链表5、栈6、滑动窗口7、二叉树8、并查集9、矩阵 三、算法1、基础算法① 贪心思维② 二分查…

【系统架构设计师】四、嵌入式基础知识(软件|软件设计|硬件|式总线逻辑)

目录 一、嵌入式软件 1.1 嵌入式软件分类 1.2 板级支持包(BSP) 1.3 BootLoader 1.4 设备驱动程序 二、嵌入式软件设计 2.1 编码 2.2 交叉编译 2.3 交叉调试 三、嵌入式系统硬件的分类 3.1 根据用途分类 3.2 存储器分类 四、内&#xff08;外&#xff09;总线逻辑 …
最新文章