As the world marshalled its resources in 2020 to fight the COVID-19 virus pandemic, major pharmaceutical companies were among those on the front lines, racing to develop, test and produce vaccines that could help protect billions of people. Technology played a key role in that effort, not only in creating new vaccines in record time but in ensuring they would be of the highest quality.
Johnson & Johnson challenged its pharmaceutical arm, Janssen, with producing one billion doses of its vaccine. To reach that goal, Janssen turned to a contract manufacturer that specialized in rapid manufacturing of vaccines and other treatments in large quantities during public health emergencies.
Janssen required access to near real-time data to monitor key production and quality metrics so that it could assure the success of each batch. This was difficult to achieve since the contract manufacturer’s operations technology (OT) infrastructure, including control systems and data collection, is isolated from both internal and outside networks, particularly networks with internet access.
The manufacturer tasked independent system integrator Automated Control Concepts (ACC), which is headquartered in Neptune, N.J., with creating a secure data pipeline that could provide this critical information to Janssen.
A secure and scalable architecture was required to meet Janssen’s information needs, starting with a Microsoft Azure Internet of Things (IoT) Hub that Janssen provided to receive the production and batch data from the contract manufacturer’s system.
ACC then recommended using Inductive Automation’s Ignition software platform with Cirrus Link’s MQTT modules as the heart of this secure data pipeline. Ignition provided a robust development environment and support for MQTT messaging, which was ideal for this application because it is designed to be used for secure, realtime, mission-critical data.
Using MQTT, ACC was able to establish a secure gateway that ensured only Janssen’s data was transmitted. This architecture proved to operate reliably in an external, unfamiliar environment while preserving data quality. It also supported the manufacturer’s ability to make the vaccine with fewer operators, which was particularly important with the social distancing requirements around COVID-19.
The Cirrus Link MQTT transmitter, distributor and engine, plus the Azure Injector, formed the heart of the system, all running on Inductive Automation’s Ignition platform. MQTT is a publish/subscribe messaging protocol originally developed more than 20 years ago to address the need for lightweight communications over low-bandwidth networks.
MQTT architectures need three components: MQTT transmitters—the clients that produce the data—usually directly connected to the control or SCADA system; the MQTT engine, the clients that consume the data; and the MQTT servers, which distribute the data from the transmitters to the engine.
The system created for Janssen by ACC consists of three main components that work together:
- The Ignition Edge Server, which acts as the MQTT transmitter at the contract manufacturer’s plant, gathering only Janssen’s key process data directly from the control system and publishing it through an outbound-only port on the control network firewall to the MQTT server. This connection is also secured via user authentication.
- The MQTT Server, which acts as a secure bridge between the MQTT transmitter and the cloud. It contains a data and history buffer dedicated to Janssen’s data. Its store-and-forward capability makes sure that data is not lost if the connection becomes unavailable. The server also hosts the Azure Injector.
- Cloud Repository, which is the connection to the cloud made via an outbound-only port on the enterprise-level firewall. This cloud repository is based on the Azure IoT hub and is secured with SSL authentication certificates provided by Janssen.
With an open protocol based on TCP/IP, MQTT is up to 90% bandwidth efficient compared to traditional polled communications and client/server communications using the hypertext transfer protocol (HTTP). An HTTP header is typically around 8,000 bytes, while the MQTT protocol uses only two bytes and a few lines of code. This is key in an era where millions of Internet of Things devices have been deployed, many with low internal memory and processing power.
The open-source Sparkplug B specification for MQTT, released in 2016, defines the structure of this interoperable format for industrial applications, including the topic namespace definition (for operations technology communications), the payload definition (IT communications), and the state management for client connections, allowing Industrial Internet of Things (IIoT) applications to talk to one another seamlessly.
The Sparkplug specification has driven MQTT’s explosive growth in both consumer and industrial applications. Major users include Facebook, Google, Amazon, IBM’s Watson, and Microsoft’s Azure, as well as a growing number of industrial companies like Inductive Automation.
Besides having a much smaller network footprint, MQTT’s publish/subscribe architecture is also flatter than the architecture used by traditional industrial automation protocols, doing away with the automation pyramid familiar to control engineers.
While clients in a client/server architecture communicate directly with an endpoint or server, publishers and subscribers never talk directly to each other. Instead, they communicate with an intermediator called a broker. The publisher supplies the broker with data and the subscribers consume it.
The broker can be anywhere, such as in the cloud with the system ACC built for Janssen, or a private server or PC, filtering the incoming messages and distributing them to the appropriate subscribers. It’s another example of how technology can deliver the right solution at the right time, making it possible for manufacturers to quickly produce many millions of doses of COVID-19 vaccine.