MQTT中文站
  • 首页
  • MQTT 学习
    • MQTT 入门
    • MQTT 进阶
    • MQTT 编程
    • MQTT 实例
    • MQTT 要点
    • MQTT5 要点
    • MQTT 工具
    • MQTT 客户端库
    • MQTT 服务器
    • Zigbee2MQTT
    • Sparkplug
    • Home Assistant
    • Node-RED
      • Node-RED 安装部署
      • Node-RED 用户指南
      • Node-RED 创建节点
      • Node-RED 示例教程
      • Node-RED 开发流程
      • Node-RED 接口参考
      • Node-RED 配置模板
      • Node-RED 常见问题
  • MQTT 规范
    • MQTT 5 规范
    • MQTT 3.1.1 规范
    • MQTT 3.1 规范
    • MQTT-SN v1.2规范
    • Sparkplug® v3.0.0规范
  • 产品中心
  • 解决方案
    • 环境监测
    • 工业制造
    • 智慧水利
    • 水利管网
    • 积水监测
    • 综合管廊
    • 档案库房
    • 交通物流
    • 智慧城市
    • 智慧农业
    • 智慧养殖
    • 能源电力
    • 石油石化
    • 智能家居
    • 物联网
    • 汽车与出行
  • 使用文档
  • MQTT 云平台
  • 登录
  • 注册

MQTT Sparkplug 架构

1 年前 • Sparkplug® v3.0.0规范

典型的工业物联网(IIoT)架构通过轮询/响应方式来连接各个组件。应用程序会直接从PLC、网关或服务器中通过诸如Modbus、西门子S7协议或OPC-UA等协议轮询数据。这种方法在只有少数几个系统需要集成时效果不错,但随着组件数量的增加,会导致一个难以维护的复杂架构。

MQTT Sparkplug 架构-MQTT中文站

图片1:未采用Sparkplug的工业IIoT架构

在这种架构中,系统通过点对点方式连接,从而使系统和数据紧密耦合在一起。现代的架构需要在IIoT系统中实现灵活性和清晰的职责分离。许多公司期望在IT环境中找到适应性、灵活性和易于实施的特性,同时也需要满足OT环境对可靠性、安全性和可预测性的需求。这种变革需要一种全新的架构。

MQTT Sparkplug 架构-MQTT中文站

图片2:IIoT的新架构

这种新的IIoT架构(如图片2所示)相较于传统IIoT架构有所优势:

  • 数据生产者和消费者之间的解耦。
  • 异常报告(RBE),节省了数据生产者和消费者的带宽、内存和计算能力。
  • 一对多通信。数据只需发送一次,多个接收方就可以接收数据。
  • 灵活性:设备和应用程序可以随时添加或移除,而不会影响整个系统。
  • 通过集中的权限和策略处理实现数据治理。
  • 通过从云到边缘的数据分发实现车间到云端的连接。

过去,许多公司已经采用MQTT来为其工厂创建解耦架构。这并不令人意外,因为MQTT最初是为SCADA系统设计的。但在IIoT用例中,仍然缺少一些部分,例如MQTT主题结构定义、MQTT状态管理和有效载荷数据定义。Sparkplug为MQTT增加了这些功能,通常情况下Sparkplug架构类似于图片3所示。

MQTT Sparkplug 架构-MQTT中文站

图片3:Sparkplug架构

原则与机制

Sparkplug架构之所以比传统方案更加优雅,是因为它基于以下原则和机制:

  1. 发布/订阅:使用MQTT作为底层应用的发布/订阅架构,从而解耦了数据的生产者和消费者。MQTT基于推送通信机制,这意味着数据会立即传递给所有感兴趣的各方。
  2. 异常报告:只有在数据和设备状态发生变化时才更新,从而在所有组件上大幅节省带宽和计算能力,因为只有新的和更新的数据才会被发送。
  3. 持续会话感知:Sparkplug和MQTT具备持续会话感知的特性。如果设备的在线/离线状态发生变化,它会通知所有关心这一状态的客户端。这个机制还确保了数据在传输过程中的连续性,比如当设备从离线状态恢复到在线状态时,数据传输会继续进行。使用Sparkplug,您可以实时准确地监控部署中所有设备、网关和应用程序的状态。
  4. 死亡和出生证明:Sparkplug引入了用于管理和发现设备状态的死亡和出生证明机制

。出生证明包含了有关设备及其将要发送的数据的信息,而死亡证明则利用MQTT的遗嘱和遗言机制来向所有关心的应用程序推送设备离线信息。

  1. 持久连接:所有设备、网关和应用程序默认保持在线,并通过持久的TCP连接进行通信。
  2. 自动发现:应用程序和设备能够自动发现Sparkplug部署中所有参与者将要发送的数据(及其对应的主题),以及当前连接的在线/离线设备。
  3. 标准化有效载荷定义:Sparkplug消息中所有消息的数据格式都进行了标准化,使得所有通信参与者都可以解码和编码数据。
  4. 标准化主题命名空间:所有Sparkplug参与者使用相同的主题命名空间。这个主题命名空间允许对特定数据进行精确的订阅,并支持动态地添加或移除参与者。

组件

Sparkplug充分认识到在任何复杂的IIoT场景中,都会涉及不同类型的设备/传感器、网关、应用程序以及其他软件(和硬件)。因此,Sparkplug为架构中的不同类型参与者定义了各自的行为和语义。

传统的Sparkplug架构包括以下组件:

  • SCADA / IIoT主机
  • 网络边缘(EoN)节点
  • 设备/传感器
  • MQTT应用节点
  • MQTT代理

我们现在将对这些组件进行详细的解读。

SCADA / IIoT主机

SCADA / IIoT主机,有时也被称为主应用程序,是负责监控和控制MQTT EoN节点及其所连接的设备和传感器的监督性应用程序。IIoT系统的持续会话状态感知是至关重要的,这意味着所有参与者(包括机器、设备、PLC、传感器、网关和应用程序)的当前状态随时都需要在中心位置进行监控。管理状态并根据状态变化采取行动的中心应用程序就是SCADA / IIOT主机应用程序。它是系统操作员用于管理和监督整个系统健康状况的关键应用程序。

与大多数传统的SCADA系统架构不同,SCADA / IIoT主机并不负责直接建立和维护与设备的连接。在Sparkplug架构中,设备、EoN节点和SCADA / IIoT主机都连接到中心MQTT代理,并通过发布和订阅数据进行通信。这样的设计允许仅在数据发生变化时进行更新,从而实现了异常报告(RBE)功能。

网络边缘(EoN)节点

网络边缘(EoN)节点在任何Sparkplug系统中都扮演着关键角色。EoN节点通常提供物理或逻辑上的网关功能,使那些不直接实现Sparkplug的传感器或设备能够参与到MQTT主题命名空间中。EoN节点负责管理自身以及通过诸如OPC-UA、Modbus、专有PLC供应商协议、HTTP、MQTT或本地离散I/O等协议连接到该EoN节点的传感器和设备的状态和会话。EoN节点负责管理这些连接设备和传感器的生命周期和状态,以及接收和发送设备数据到Sparkplug基础设施中。EoN节点是任何Sparkplug基础设施中的关键组成部分,它们通常被用于将传统的基础设施与Sparkplug桥接。

设备/传感器

设备和传感器构成了工业自动化的核心。一个设备通常是一个实体或逻辑上的单元,它通过一个或多个工业通信协议来发送和/或接收数据。这些工业协议一般基于轮询/响应机制。在Sparkplug的上下文中,设备通过EoN节点连接到Sparkplug基础设施中。EoN节点将MQTT Sparkplug的发布/订阅机制桥接到这些轮询/响应协议上。

支持MQTT的传感器和设备

尽管大部分设备和传感器采用像Modbus、OPC-UA、Beckhoff ADS等标准化和专有协议,但许多厂商为其设备和传感器提供了原生的MQTT支持。如果一个MQTT支持的设备已经配备了Sparkplug功能,通过提供适当的数据格式和主题结构,那么该设备可以直接与Sparkplug基础设施交互。在这种情况下,该设备将作为EoN节点被Sparkplug基础设施识别。如果MQTT设备仅支持标准的MQTT而没有Sparkplug意识,那么它仍然需要通过EoN节点来连接。

MQTT应用节点

MQTT应用节点是参与Sparkplug通信的节点,可以产生和消费消息,但它们不是SCADA / IIoT主机。这些通常被称为辅助应用程序。它们通常是提供专门功能的软件系统,例如MES(制造执行系统)、历史数据分析等。许多部署也会使用定制软件来满足特定用例的需求,这些软件需要消费由其他Sparkplug参与者产生的数据。

MQTT代理

MQTT代理是中心数据分发组件。所有启用Sparkplug的设备、EoN节点、SCADA / IIoT主机和MQTT应用都通过MQTT连接到代理。代理负责处理认证、授权、参与者状态管理以及在Sparkplug启用系统间的数据分发。MQTT代理需要100%兼容MQTT 3.1.1标准,因为需要支持保留消息、遗嘱和遗言以及QoS等功能。

打赏赞微海报分享
mqtt 传感器 架构

MQTT Sparkplug是什么?

MQTT Sparkplug 发布/订阅与轮询/响应

猜你喜欢

菌菇养殖物联网方案(二)

菌菇养殖物联网方案(二)

08/07
2024
改善基础设施:HiveMQ如何推动智能城市发展

改善基础设施:HiveMQ如何推动智能城市发展

08/07
2024
为什么企业选择全托管HiveMQ云进行MQTT部署

为什么企业选择全托管HiveMQ云进行MQTT部署

07/01
2024

回复

抢沙发咯
  • 解决方案
    • 智能家居
    • 汽车与出行
    • 工业制造
    • 能源电力
    • 石油石化
    • 交通物流
    • 零售
  • 学习
    • MQTT 规范
    • MQTT 教程
    • MQTT 软件
    • MQTT 客户端库
    • MQTT 服务器
    • 工具和应用程序
  • 关于我们
    • 了解创科慧仁
    • 加入创科慧仁
    • 投资者关系
    • 新闻动态
    • 合作伙伴
    • 联系我们
  • 友情链接
    • Modbus中文网
    • 跳动符号官网
    • 物联网世界
    • RFID世界网
    • 深圳物联网协会
    • isoftstone软通动力
    • 中国发展战略学研究会
    • B.P商业伙伴
  • 在线客服
  • 全国客户服务热线
    4006909885
  • 官方公众号
  • 联系邮箱
    contact@mqtt.cn
Copyright © 2025 MQTT中文站. All rights reserved.Designed by nicetheme. 京ICP备20029519号
在线客服

微信咨询

微信咨询

4006909885

服务热线 7*24小时

电话咨询
  • 首页
  • MQTT 学习
    • MQTT 入门
    • MQTT 进阶
    • MQTT 编程
    • MQTT 实例
    • MQTT 要点
    • MQTT5 要点
    • MQTT 工具
    • MQTT 客户端库
    • MQTT 服务器
    • Zigbee2MQTT
    • Sparkplug
    • Home Assistant
    • Node-RED
  • MQTT 规范
    • MQTT 5 规范
    • MQTT 3.1.1 规范
    • MQTT 3.1 规范
    • MQTT-SN v1.2规范
    • Sparkplug® v3.0.0规范
  • 产品中心
  • 解决方案
    • 环境监测
    • 工业制造
    • 智慧水利
    • 水利管网
    • 积水监测
    • 综合管廊
    • 档案库房
    • 交通物流
    • 智慧城市
    • 智慧农业
    • 智慧养殖
    • 能源电力
    • 石油石化
    • 智能家居
    • 物联网
    • 汽车与出行
  • 使用文档
  • MQTT 云平台
  • 登录
  • 注册
 

正在加载评论...
 

您必须登录才能发表评论。

    string(5) "2.0.0"