MQTT Sparkplug:在工业 4.0 时代架起 IT 和 OT 的桥梁
目录
一直以来,工业企业都在努力提升自己在生产力、盈利能力、灵活性、质量等方面的竞争力。面对这一挑战,他们中的大多数会选择工业 4.0 相关技术,希望通过加速工厂的数字化转型,达到更高水平的自动化,更完整的产品质量追踪体系,更迅速的生产规模扩充和更好的可持续发展。但是在进一步制定预算之前,他们应该先思考一下,工厂的 IT 和 OT 基础设施是否能够承载大量新增的新系统和设备。这是大多数公司忽略的一个重要问题。
工业 4.0 的核心是工业物联网,它使工厂能够把各种机械、传感器、机器人等各类设备连接到互联网,并实现彼此之间的互联。在实施工业物联网时,选择满足工业 4.0 要求的通信标准是一个关键挑战。MQTT Sparkplug 是专为工业物联网而设计的通信协议,在本文中,我们将深入探讨 MQTT Sparkplug,以了解它为工业 4.0 带来的价值。
什么是 MQTT Sparkplug?
MQTT Sparkplug 是一个基于 MQTT 的消息传输协议,MQTT 则是一个在物联网领域广受欢迎的消息传输协议。MQTT Sparkplug 在保留了 MQTT 协议所有优点的基础上,针对工业物联网进行了定制,增加了适用于工业应用的特性。作为一个开源协议,MQTT Sparkplug 得到了行业的广泛认可。
MQTT Sparkplug 采用 MQTT 发布-订阅模型,这意味着设备和主机可以独立运行,并能够实时交换数据,以快速应对生产过程中的变化。该协议还定义了一种标准化的二进制消息格式,为主机系统和设备之间的数据传输提供了一种一致和高效的方式。
MQTT Sparkplug 的演进
Sparkplug 协议由 Cirrus Link Solutions 在 2016 年 5 月首次推出,版本为 1.0。该协议后来进行了多次升级:2016 年 12 月推出的 2.1 版本,增加了“Payload B”功能;2019 年 10 月推出的 2.2 版本中,Cirrus Link 为 Eclipse 基金会对协议进行了重命名,并添加了商标标志。这些变化反映了 Sparkplug 协议在工业自动化和工业物联网领域的持续优化和发展。
去年,Sparkplug 工作组发布了最新的协议标准,版本为 v3.0。这个新版本显著提升了协议的功能,并对其进行了规范化,为工业 4.0 带来了许多好处。
了解 Sparkplug 3.0 的新特性:Sparkplug 3.0:MQTT 在工业物联网领域的提升与规范化
MQTT Sparkplug 为工业 4.0 带来的优势
MQTT Sparkplug 为工业 4.0 中的工业物联网系统带来了多方面的好处:
- 扩展性: 它让工厂能够根据需要随时增加新的设备和传感器,而不会影响系统的性能。
- 安全性: 它通过使用 MQTT TLS 加密和认证,保证了设备之间数据传输的安全性。
- 标准化: 它保障了来自不同厂商的设备和主机系统之间的一致性和互操作性。
- 网络效率: 它的小数据包和高效的二进制消息格式有助于减少系统的带宽消耗。
它还提供了连接各种云、系统和设备的标准。
- 与云平台的集成: MQTT Sparkplug 使工厂能够在云端存储和分析数据,并且可以借助先进的分析技术和机器学习能力。
- 与遗留系统的集成: 借助 MQTT Sparkplug,通过边缘节点可以方便地集成遗留系统,让工厂能够充分利用他们现有的基础设施。
IT 和 OT 的融合
大部分公司仍在采用工业 3.0 技术进行生产。在工业 3.0 系统中,IT 和 OT 系统是分离和独立的,IT 系统负责数据处理和管理,OT 系统负责控制物理过程和机器。在下图展示的自动化金字塔里,ERP 和 MES 是 IT 系统,SCADA、PLC、SENSORS 等是 OT 系统。
为了满足工业 4.0 的要求,更多的先进技术,如云计算、大数据和机器人,将被引入到制造基础设施中。
新增的系统和设备越多,自动化基础设施的复杂度就越高。最终,设备或系统之间会形成许多杂乱或无序的通信通道。即使所有系统都使用同一种协议来进行通信(比如 OPC-UA),复杂的客户端-服务器连接网络和路由机制仍然会给工厂在互操作性和数据交换方面造成困难。
为了应对这些挑战,Sparkplug 致力于开发标准化的通信通道和协议,能够跨不同的设备和系统使用;开发标准化的数据模型或本体,实现不同设备或子系统之间的互操作性。
通过引入 Sparkplug Broker 和数据运维网关作为 IT 和 OT 基础设施的中心数据枢纽,所有的主机系统和设备都与这个中心数据枢纽平等地连接并进行数据交换。Sparkplug 主机系统,如 ERP 和 MES 以及云平台,可以直接获取来自 PLC、设备、机械和机器人的数据消息,从而实现了 IT 和 OT 的融合。
统一命名空间:Sparkplug 简化工业物联网的管理
Sparkplug 的一个核心特点是使用统一命名空间(Unified Namespace)。命名空间是一个用来识别和组织系统中对象的命名系统。在工业 4.0 的场景下,通常有众多的设备、传感器和系统需要进行通信。每个设备或系统可能有自己特有的命名系统或标识符,导致它们难以协调和管理。
统一命名空间使得集中化管理成为可能。通过统一命名空间,管理员可以轻松地从同一个地方监控和管理网络中的所有设备和系统。这在可能存在数百甚至数千个需要管理的设备和系统的大规模工业环境中尤为重要。
此外,统一命名空间还推动了系统控制和监测任务的自动化。通过提供一种标准化的方法来识别和操作设备和系统,Sparkplug 可以用于自动化诸如设备配置、软件更新和系统诊断等任务。这种自动化能够减轻管理员的工作负担,提高工业运行的效率。
统一命名空间还提供了一种标准化的方式来组织和构建数据,实现了数据的统一化和规范化表达。通过统一命名空间,任何 IT 系统都可以直接使用任何 OT 系统的数据,反之亦然,无需进行复杂的数据映射或转换。消费者应用,例如人工智能/机器学习、历史数据库和 SCADA 系统,可以从这种标准化的数据结构中受益,提高数据处理的速度,保证数据的完整性。
在 Sparkplug 中使用统一命名空间简化了在工业 4.0 环境中管理和监测工业系统的流程。通过实现集中化管理、推动自动化和增强故障排除能力,统一命名空间有助于提升工业运行的效率和效果。
欢迎阅读我们的系列博客文章,深入了解统一命名空间:统一命名空间(UNS):面向工业物联网的下一代数据架构
构建 MQTT Sparkplug 解决方案
要实施 MQTT Sparkplug 解决方案,我们需要两个组件:MQTT 服务器和边缘节点。
MQTT 服务器作为中央 Broker,负责处理工业物联网环境中设备和应用之间的通信。它接收来自设备的消息,并将其转发给适当的订阅者,同时在需要时保存消息以供后续获取。
边缘节点是一个设备或网关,它充当设备和 MQTT Broker 之间的中介。它可以进行本地数据处理和汇总,以及缓存和转发数据到 MQTT Broker。边缘节点常用于有众多设备产生海量的数据且网络带宽受限的工业物联网环境中。
在 MQTT Sparkplug 的场景下,边缘节点负责实现 Sparkplug 规范,包括处理设备的注册,使用 Sparkplug 有效载荷格式编码和解码数据,以及使用 Sparkplug 主题命名空间格式组织数据。边缘节点使用 MQTT 协议与 MQTT 服务器通信,并且它可能还运行其他软件来对数据进行本地分析或处理。
通过采用统一命名空间,设备和系统可以轻松地相互发现和通信,而不受各自命名系统的限制。这极大地简化了在工业 4.0 环境中整合和管理复杂系统的过程,并有助于确保数据在网络中准确和一致地共享。
MQTT Sparkplug 解决方案示例:基于 EMQX 和 Neuron 的工业物联网 MQTT Sparkplug 解决方案
MQTT Sparkplug vs. OPC UA
MQTT Sparkplug 和 OPC UA 都是工业物联网领域中非常重要的通信协议。
MQTT Sparkplug 基于轻量级发布/订阅消息传输协议 MQTT。与之相比,OPC UA 是一种更为全面和复杂的协议,它包含了通信和信息建模两方面。MQTT Sparkplug 的设计注重可扩展性和高效性,使其非常适合资源有限的设备和带宽受限的网络环境。相比之下,OPC UA 在资源消耗方面较高,通常用于需要更高数据吞吐量或复杂交互的系统。
关于这两种协议的更详细的比较,请参考:工业物联网协议对比:MQTT Sparkplug vs OPC-UA
结语
总而言之,MQTT Sparkplug 是一个强大和高效的协议,它为工业物联网领域带来了许多好处。它的高效数据传输和内置的设备发现和数据建模机制,让它成为连接和管理大型工业网络的最佳选择。借助 MQTT Sparkplug,企业可以获得实时数据分析,提升运营效率,推动工业流程创新。
随着工业物联网的不断发展和演进,MQTT Sparkplug 必将在塑造工业互联的未来中发挥重要作用,打造更智能、更互联、更高效的工业系统。