OPC UA + MQTT = A Popular Combination for IoT Expansion

In early 2018, Part 14 of the OPC UA Standard, aka “Publish-Subscribe” or “PubSub” was released, helping to encourage further interaction between OPC UA and communications protocols such as MQTT.  According to the OPC Foundation, “PubSub enables the use of OPC UA directly over the Internet by utilizing popular data transports like MQTT (Message Queuing Telemetry Transport) and AMQP (Advanced Message Queuing Protocol) while retaining its key OPC UA end-to-end security and standardized data modeling advantages”.

The standard has also helped further communication abilities within IoT devices, such as gateways. IoT gateways provide a bridge between an on-premises communications network and a cloud-based communications network. Sometimes referred to as “Edge devices”, IoT gateways provide data connectivity to sensors and end-devices, completely on-premises. They also include a communication path that provides data connectivity between itself and the cloud. Today’s intelligent, programmable devices perform in-depth and complex processing on IoT data, acting as full-fledged computing platforms running modern operating systems (for example, Linux or Windows).

Such systems are sometimes also called “intelligent gateways,” due to the increase in processing power, memory and storage, as well as intelligent “middleware” encompassing key features such as protocol translators, data buffering, edge analytics, on-premise visualization and cloud enablement, which support emerging communication protocols including MQTT and AMQP for publishing data to the cloud.

In the case of the process, factory and building automation industries, the Southbound communications protocol is typically an industry standard protocol, such as OPC UA. It could also involve BACnet, Modbus, SNMP or Web services, or could also be a proprietary communications protocol. The Northbound communication path needs to be highly secure and is often based on a publish/subscribe (“pub/sub”) mechanism.

MQTT: Publish/Subscribe Minimizes Overhead

Message Queuing Telemetry Transport (MQTT) is a protocol that was specifically created with the goal of collecting data from many devices and then transporting that data to the IT infrastructure. Because it is lightweight, it is suited for remote monitoring, especially in M2M connections that require a small code footprint or where network bandwidth is limited. It uses a publish/subscribe mechanism to minimize the payload and overhead with application-specific, custom JSON or binary formats. MQTT is widely accepted in IT departments worldwide.

ICONICS’ gateway software suite, IoTWorX, supports MQTT in several ways. The gateway can publish data to an MQTT Broker. The published data can be sent with JSON encoding where the payloads are customizable by the user. The user can select what information is sent (timestamp, quality) along with the data values. Or, the published data can be sent in an ICONICS standard way; one that is intended for communicating to an ICONICS system.

Such a system may reside within any cloud-supporting MQTT communications. ICONICS’ standard way supports the sending of additional properties such as Descriptions and Ranges and supports sending only changed values, which can provide higher communications efficiency. The messages can be sent with either JSON or binary encoding.  In either case; user-customizable or ICONICS standard; the communications can be encrypted and secured using X.509 certificates.

In addition to publishing data over MQTT, IoTWorX can also subscribe to MQTT data. This allows the gateway to receive data from third-party devices over MQTT. The payloads of the MQTT messages it receives must have JSON encoding. However, the contents of the messages are user customizable. That is, the user is allowed to select certain properties to be included in the messages (timestamp, quality) along with the data values. As with the other MQTT communications options, the communications can be encrypted and secured using X.509 certificates.

OPC UA: Robust, Secure, Scalable

OPC UA is the result of a multi-year collaboration of industry leaders who aimed to create an open standard for exchanging information in a rich, object-oriented and secure way. This standard represents the answer to the fundamental need for mapping and exchanging real-life information in a platform-independent way, while maintaining compatibility with the OPC Classic specifications.

OPC UA is a robust, secure and scalable expansion of the highly successful basic COM/DCOM-based OPC standard communication protocol. It enables the interoperability of best-of-breed, real-time alarm management and historian systems. This allows for a standard model of plant floor integration with the enterprise. Any plant system that is currently using OPC communications can easily add OPC UA applications to their existing system, giving them the added value of Web services that allow for more enterprise connectivity.

Continuing Evolution

As more guidelines (such as Part 14 of the OPC UA), and technology solutions (such as ICONICS IoTWorX) continue to develop, customers will benefit from the wide applications of OPC UA, along with the messaging consolidation abilities of MQTT. For more information, visit ICONICS IoTWorX page at https://www.iconics.com/iotworx.

Melissa Topp is Senior Global Marketing Director at ICONICS, Inc.