Unserver 是一种旨在解决此问题中描述的确切问题的产品。
它能够与不同的现场设备通信,并提供统一的HTTP API 最重要的。 它通过Modbus RTU与设备集成,但将来会添加其他常用协议。
简而言之,首先配置数据“标签”,如下所示:
{ "name": "tank1", "device": "plc1", "properties": [ { "name": "level", "address": "HR0", "type": "numeric", "raw": "int16" } ] }
然后,您可以使用自动创建的API端点来处理标记:
GET http://localhost:9000/tags/tank1 { data:{ level: 1 } }
看看 文件 了解更多信息。 该产品可免费评估和非商业用途。
免责声明:我是团队的一员。希望这很有用。
MQTT作为I.o.T.的首选协议越来越受欢迎。它确实有它的缺点 - 但它的简单性通常被视为一种力量,而OPCUA承担了委员会设计的开销。
如果你需要将两者结合起来,你可以考虑尝试我们的简单网关 mqtt2opcua
在实际工业应用中,MQTT不是OPC-UA的替代品。早在90年代,OPC的最初目标是提供标准的通信机制和数据模型,以提供实现规范的客户端和服务器之间的互操作性。 OPC-UA扩展并概括了数据模型和通信,而没有放弃该核心目标。为此,标准必须指定时间戳的格式,数据类型的编码,历史值,警报等。
MQTT是一种消息传输层,不能通过设计提供互操作性。它没有规定有效载荷的格式,也没有规定如何传输特定数据类型,时间戳,值,层次结构或任何其他允许应用程序理解正在传输的数据的内容。您可以创建一个有效的MQTT服务器,该服务器发出XML,JSON或自定义格式的数据,这些数据是纯文本,加密,base-64编码或您喜欢的任何其他内容。客户端应用程序与服务器交互的唯一方法是事先知道服务器将生成和接受的数据格式。
OPC-UA最近推出了一种发布/订阅机制,以提高带宽利用率,降低MQTT目前提供的通信带宽优势。同时,MQTT规范需要增长以指定数据格式以促进互操作性。期望在MQTT和OPC-UA之间看到功能的融合,主要是MQTT的增长以满足OPC-UA。
MQTT目前是一个更简单的实现,它对嵌入式和资源受限的系统具有优势。添加数据建模规范将起到减少这种优势的作用。
底线是OPC-UA用于互操作性,MQTT用于简单的自定义通信。 MQTT需要增长才能成为OPC-UA的替代品。