What Pub/Sub Means for Industrial Networks

May 14, 2020
The publish/subscribe communication paradigm promises an era of real-time data exchange and increased flexibility to support next-generation IIoT applications and flexible manufacturing.

With the industry abuzz over data-hungry Industry 4.0 applications like predictive maintenance or flexible manufacturing to support the production of highly configured goods, all eyes are on advanced technologies like artificial intelligence, robotics, and connected devices.

Yet one of the more under-played, but critical aspects of enabling the next era of intelligent automation is a reinvention of industrial networking architectures, away from proprietary protocols and locked-down information silos to support of open standards, interoperability, and real-time data exchange. At the heart of that shift is the publish and subscribe model, commonly referred to as pub/sub, which is quickly gaining traction via a handful of emerging standards, most prominently, Message Queueing Telemetry Transport (MQTT) and the OPC Unified Architecture (OPC UA) with pub/sub and time sensitive networking (TSN) extensions to accommodate time-critical or deterministic applications.

Traditional industrial networking architectures are built around a master/slave or client/server concept. In these scenarios, programmable logic controllers (PLCs) or host workstations practice one-to-one or one-to-many communications with field instruments, like sensors and valves, to collect the information they need for a particular application or execute a specific control algorithm. A master PLC, or specified client, sends a direct request for information, like temperature readings or cycle times, and the appropriately designated slave devices or servers respond accordingly at agreed-upon intervals.

While this tightly coupled communication paradigm works when there are limited data sharing requirements, it becomes a network throughput and data formatting disaster when an army of distributed sensors, devices, and industrial equipment is enlisted to share data in real-time to support next-generation Industrial Internet of Things (IIoT) and intelligent automation applications. “If your goal is to have a bunch of distributed devices all talking to each other, it becomes an exponential problem if each device has to be aware of each other device and application that it wants to talk to,” explains Josh Eastburn, director of technical marketing for Opto 22. “They may be communicating on different protocols or ports, and it complicates the network infrastructure.”

Enter the pub/sub model, which decouples all devices from one another as well as applications from endpoint devices. In a pub/sub architecture, a central broker receives and distributes all data. Clients subscribe to the data they require, and the message broker automatically routes the appropriate data to all requesting subscribers, eliminating the burden of constantly polling devices for message updates. Also, in the pub/sub model, data is only communicated when it changes—static data is not repeatedly sent. This approach significantly reduces network traffic and is infinitely more scalable. Network architecture is also streamlined because, instead of one device needing to communicate with dozens of devices or applications to perform a particular function, communication is established via a single server that relays information to any device or application that wants it. Pub/sub also mitigates the long-standing hurdle of having to engineer custom code and complex mapping to share data between proprietary devices and over different networking protocols.

“There are lots of scenarios in a control system environment where you want the same data over time, and the pub/sub idea is that you know what data you want to exchange at a more rapid rate,” explains Richard Carpenter, general manager of product management at Emerson Automation Solutions. “Also, as people set up more sophisticated models and require something closer to real-time data, the traditional client/server model isn’t efficient enough to get the volumes of data they need.”

B&R Industrial Automation sees the pub/sub model coming into play to accommodate flexible Industry 4.0 manufacturing scenarios where machines become more modular, processes change on the fly, and disparate machines from different vendors need to communicate in a more uniform fashion. B&R showcases a hypothetical example of track technology and a transport system used to produce smoothies to customer order, in a single batch size, as an example of where the pub/sub model can shine. Such an application is ideally suited to a converged network using pub/sub to provide deterministic machine control and for bi-directional communication of recipes from the cloud and production data sent to the cloud, B&R officials say.

“These applications require decentralized intelligence on a field level, not a network where every device talks to every device,” says Stefan Bina, product manager, industrial IoT network solutions for B&R, who notes that traditional models promote too much network traffic and amp up the processing load on the devices themselves. “This is where you need communications protocols that are quite effective in balancing network loads and distributing messages to their peers.”

MQTT, OPC UA extensions take center stage
The pub/sub model is gaining acceptance in industrial automation scenarios in a couple of different ways. One prominent manifestation is the rising popularity of the open source MQTT messaging middleware specification in industrial automation platforms and hardware. Popular in enterprise information technology (IT) network scenarios, MQTT has roots in the industrial sector where it was developed by a pair of IBM engineers to address compatibility and reliability issues associated with satellite connections to supervisory control and data acquisition (SCADA) systems deployed on large remote oil pipelines. According to The Eclipse Foundation’s 2019 IoT Developer Survey, MQTT is fast emerging as the de facto standard for Internet of Things applications.

Over the last couple of years, MQTT has won significant automation supplier support, from hardware companies like Schneider Electric to data collection specialists like Moxa because of its strengths for IIoT applications. Specifically, experts cite the diversity of MQTT’s payload, which refers to the kind of content that can be shared in a message, as well as its ability to maintain stateful awareness via its use of birth and death certificates to mark new client connections on the network as well as when connectivity is lost—all critical to enabling industrial control applications. Another big plus surrounding MQTT for the IIoT era is its low network bandwidth requirements, as it only publishes data from specified devices when they change.

More recently, the MQTT story has been advanced with the announcement of the Eclipse Foundation Sparkplug Working Group, which aims to define an open, interoperable standard for rationalizing access to industrial data much like HTML did for web data.

“The momentum for MQTT is driven by the fact that organizations want more of the information being left stranded in the field today,” says Arlen Nipper, one of the engineers who created MQTT and is now president and CTO of Cirrus Link Solutions, which markets MQTT servers among other IIoT-related software. “The Internet of people exploded based on two technologies—HTTP as a way to send messages and HTML as a way to represent that data. We have to create an OT (operations technology) infrastructure conducive to cloud connectivity that’s open and easy for people to use.” Nipper says MQTT is fast emerging as the transport mechanism for the IIoT while Sparkplug is positioned as way to represent data.

Inductive Automation is making a big bet on MQTT with its Ignition IoT solutions, which incorporate partner Cirrus Link’s MQTT Injector modules. Thanks to the pub/sub model, Ignition Edge products allow for decoupling, grabbing data closer to PLCs and routing it to a central database. Its SCADA systems can also tap into that data without having to serve as a middle layer and without requiring custom coding. In a recent demo, the company used pub/sub to connect to 1,600 devices while discovering 180,000 tags in minutes, according to Travis Cox, Inductive Automation’s co-director of sales engineering. “Most companies that have a SCADA system bring in data, which creates a lot of custom code that needs to be maintained” and makes the system brittle, he explains. “SCADA is not designed to be middleware, it’s designed to be a SCADA system.”

Along with MQTT, Inductive Automation is also supporting OPC UA, both as a server and a client, and is closely watching OPC UA’s pub/sub extension. Cox believes pub/sub is the way of the future, but concedes there are plenty of legacy devices and brownfield installations that will require a bridge to a traditional networking approach. “You have to be able to balance old and new,” he says.

At many of the automation vendors, there’s support for both pub/sub standards—for MQTT when communicating data to the cloud and for OPC UA and the pub/sub and TSN extensions at the PLC and automation PC level. Hilscher says it is committed to supporting whatever communication mechanisms gain traction in its netX chips and has demonstrated support for OPC UA pub/sub over TSN and MQTT as part of its roadmap. Beckhoff’s TwinCAT 3 software, which turns any PC into a real-time controller, now has support for MQTT and will also support the OPC UA pub/sub extension. For its part, B&R last fall introduced a family of X20 PLCs, bus controllers, industrial PCs, and a communications switch for converged real-time networks that use the OPC UA over TSN protocol to support intelligent condition monitoring and predictive maintenance applications. The company also plans to support the OPC UA pub/sub standard for sending data over MQTT. 

“MQTT is a perfect mechanism for cloud connectivity, but what users don’t want is to remodel OPC UA information into an MQTT model and then lose all contextual information that is so wonderfully described in an OPC UA world,” B&R’s Bina says. “We’re looking at the model that transports OPC UA data as a payload over MQTT and using that in our products.”

Opto 22 also sees the standards as largely complementary with pub/sub playing a role for resource-constrained devices and OPC UA for devices moving larger amounts of information. The company’s groov EPIC (Edge Programmable Industrial Controller) has support for MQTT so the device can securely publish useful data for predictive maintenance, performance logging, and billing applications to any accessible MQTT server. More recently, Opto 22 announced the release of groov RIO, a family of intelligent, distributed I/O for IIoT and automation applications that can connect traditional wired switches and sensors to Ethernet networks, software applications, and cloud platforms without communication hardware like PLCs, programmable automation controllers (PACs), or PCs. The groov RIO supports data publishing with MQTT Sparkplug.

While most automation players see pub/sub as the future of industrial networking and communications, most acknowledge that the industry moves slowly and there are plenty of obstacles, from a bounty of brownfield environments that would be cost prohibitive to scrap to the usual resistance to change and cultural barriers. Given that the specifications (particularly OPC UA pub/sub) are relatively new, it takes time for people to get comfortable with the technology and for proven products to be released to market.

There’s also the talent factor—while industrial environments have access to experts versed in traditional operational technologies and proprietary systems, there are fewer people in plants with knowledge of mainstream IT networking technologies and systems.

“There are more political and economic challenges [to pub/sub adoption] than anything else,” says Inductive Automation’s Cox. “Companies need to see this as an opportunity and if they don’t, they’re going to get left behind.”