有理由在MQTT上使用UA OPC和UA OPC体系结构

时间:2018-08-29 09:56:15

标签: mqtt opc-ua

我对使用OPC UA并不陌生,我想澄清一下我对OPC UA的一些疑问,如下所示:

–在什么情况下使用OPC UA。

–基于MQTT的OPC UA架构。

如果有任何文件可以解释这两个疑问,谢谢!

1 个答案:

答案 0 :(得分:3)

OPC UA可能是工业M2M通信的事实上的标准,在工业4.0的环境中非常重要。

假设您有一台工业机械(例如PLC)来管理其他一些机械,例如传感器。使用OPCUA,您可以使用由OPCUA标准(https://opcfoundation.org/developer-tools/specifications-unified-architecture/part-3-address-space-model/)定义的规则建立的信息模型(对象结构和层次结构,类似于UML的概念)为PLC(将成为OPCUA服务器)建模一些数据。因此,PLC首先使用特定的行业协议从这些传感器收集数据,然后在其地址空间中对一些被认为相关的数据进行建模。

您还可以在传感器上构建一个(opcua)服务器,想象一个温度或湿度传感器,您可以在其中对数据进行建模,这些数据不仅可以模拟温度值,还可以模拟制造商,工程单位(例如华氏温度或摄氏温度) )。但是,您也可以在服务器中插入方法,并将某些特定的操作与它们相关联,例如,如果发生某些情况,请打开/关闭特定的功能。对于所有规格,您可以查看https://opcfoundation.org/developer-tools/specifications-unified-architecture,在注册后,您可以在此处详细下载规格。我发现的另一个很好的文档是http://documentation.unified-automation.com/uasdkcpp/1.6.1/html/index.html,其中解释了主要概念。

一旦在地址空间内用信息模型定义了opcua服务器,就可以开始以标准化方式与其他一些工业机械进行交互。这些机器可以是MES或HMI应用程序,并且必须是opcua客户。他们可以查询上述opcua服务器,浏览其地址空间,读取值,调用方法,监视一些有趣的变量或事件(订阅它们,服务器将在发生更改时发送通知)。主要优点是所有这些操作都是通过使用标准化消息来执行的:如果要写入数据,则必须发送 WriteRequest 消息,如果要读取,则客户端将发送< em> ReadRequest 等。由于所有内容都是标准化的(从数据类型到消息的序列化),因此所有客户端都可以了解opcua服务器的结构(即使它们来自不同的制造商)。否则,每个制造商都可以使用自己的方式来定义服务或变量,并且您必须创建应用程序(例如HMI)以适合特定供应商的API或约定。

关于基于MQTT的OPCUA,您可以在其中找到一些有用的信息OPC UA protocol vs MQTT protocol。如前所述,OPCUA具有定义结构化和标准信息模型(可通过标准服务访问)的优势,因此使用MQTT只是整体的一部分。

了解Opcua服务器中信息模型的另一个很好的参考可以是OPC Unified Architecture