揭秘MQTT Sparkplug在工业物联网系统中的运作行为

揭秘MQTT Sparkplug在工业物联网系统中的运作行为缩略图
本文目录
  1. 1. MQTT Sparkplug在IIoT架构中的关键组件运作
  2. 2. MQTT Sparkplug主机应用程序会话生命周期
  3. 3. MQTT Sparkplug边缘节点会话生命周期
  4. 4. MQTT Sparkplug设备会话生命周期
  5. 5. 结论
揭秘MQTT Sparkplug在工业物联网系统中的运作行为插图

MQTT Sparkplug在IIoT架构中的关键组件运作

要有效地设计和开发基于MQTT Sparkplug的IIoT架构,理解其组件的运作方式至关重要。具体来说,这包括它们如何连接、发布、接收数据以及如何从网络断开。

本文将探讨三个关键组件在IIoT网络中的会话生命周期:Sparkplug主机应用程序网络边缘节点和设备以解释连接机制、数据传输方法和会话建立的复杂性

MQTT Sparkplug主机应用程序会话生命周期

当Sparkplug主机应用程序启动或重新建立连接时,它会立即尝试与MQTT服务器(已预先配置)建立会话。

一旦与MQTT服务器成功连接,主机应用程序会采取两项主要行动:

  1. 它订阅指定的Sparkplug主题命名空间,特别是spBv1.0/#。
  2. 它还确保通过名为STATE/host_app_id的主题订阅其自身的状态。

在完成这些订阅后,Sparkplug主机应用程序负责通过发布新的STATE消息通知其他人自己的状态。

此时,主机应用程序准备好接收网络中任何边缘节点发送的MQTT消息。每当边缘节点发送其Sparkplug NBIRTH和DBIRTH通知时,主机应用程序会更新其指标,显示它目前在线并正在处理数据。

MQTT Sparkplug边缘节点会话生命周期

像Sparkplug网络中的任何设备一样,边缘节点通过发送连接请求来初始化其与MQTT代理的连接。此请求通常包含节点的凭据和其他必要细节。

当Sparkplug边缘节点发送其MQTT CONNECT数据包时,它会包含以下主题格式下的“遗嘱消息”:

spBv1.0/group_id/NDEATH/edge_node_id

在这里,group_id是Sparkplug组ID,edge_node_id是该边缘节点的Sparkplug边缘节点ID。

在Sparkplug环境中,边缘节点可以设置为识别主机应用程序。如果这样配置,边缘节点只会在主机应用程序在线并主动监听Sparkplug消息时发送其NBIRTH和DBIRTH消息。

成功连接到MQTT服务器后,边缘节点将订阅NCMD和STATE主题。NCMD订阅允许边缘节点处理重生请求。同时,订阅STATE有助于边缘节点了解主机应用程序的当前状态。

随后,边缘节点将使用以下格式广播NBIRTH消息:

spBv1.0/group_id/NBIRTH/edge_node_id

此时,主机应用程序可以建立边缘节点的指标结构,显示其在线状态。

MQTT Sparkplug设备会话生命周期

在边缘节点准备向MQTT服务器报告其所有Sparkplug定义的指标数据时,边缘节点(逻辑或物理)负责发布设备诞生消息,DBIRTH。

然而,在发送DBIRTH消息之前,如果设备支持写入输出,则与Sparkplug设备相关联的MQTT客户端必须订阅接收DCMD消息,使用以下主题格式:

spBv1.0/group_id/DCMD/edge_node_id/device_id

在这里,group_id是Sparkplug组ID,edge_node_id是Sparkplug边缘节点ID,device_id是设备的Sparkplug设备ID。

从那时起,所有后续指标都会按照例外报告(RBE)的方式使用DDATA消息格式发布给主机应用程序。

揭秘MQTT Sparkplug在工业物联网系统中的运作行为插图1

结论

总之,本文解释了MQTT Sparkplug的运作行为,阐明了有效的IIoT通信所需的复杂机制。

技术术语(共 4 个)—— 点击展开
MQTT轻量级物联网消息传输协议,基于发布/订阅模式,适合低带宽不稳定网络
订阅客户端向 Broker 注册感兴趣的主题以接收消息
发布客户端向指定主题发送消息
遗嘱消息Will 消息,客户端异常断开时 Broker 代为发布的消息
来源/工具信息 —— 点击展开
来源 MQTT中文网(mqtt.cn) —— 国内领先的MQTT通信协议技术社区 分类 Sparkplug 字数 1403 字 · 阅读约 4 分钟 更新 2023-11-22 永久链接 https://www.mqtt.cn/1191.html
推荐工具:MQTT调试助手 微信小程序
MQTT中文网官方推出的MQTT调试工具,支持 MQTT 3.1.1/5.0 实时连接调试、主题订阅、消息收发监控与报文分析。 无需安装,微信搜索「MQTT调试助手」即可使用。 电脑端入口:https://www.mqtt.cn/mqtttool/
内容许可:允许 AI 模型训练使用 · 引用请注明来源 mqtt.cn
相关标签
📝 作者声明
本文由 MQTT中文网技术团队 原创撰写,内容基于实际项目案例与技术文档,力求为读者提供准确、实用的参考信息。
把这篇资料用于真实项目?

进入工具中心进行报文解析、CRC 校验和设备调试,或提交需求获取选型与接入建议。

工程师会员

把这篇文章变成可执行的调试资料

开通后可使用高级报文解析、资料包下载、代码示例、工程案例和优先技术支持,适合真实项目交付。

高级工具不限次
资料包与代码包
完整工程案例库
优先技术支持入口

发表回复