Node-RED Stitches the IIoT Together

March 29, 2017
A look at how Node-RED—an open-source, easy-to-use visual tool—can be used to connect disparate systems to achieve Internet of Things levels of interoperability.

New technology always brings change. Netflix replaced the neighborhood Blockbuster movie store. Priceline eliminated the need for a travel agent. And if you remember spending hours browsing through Tower Records, then you also witnessed the transition from vinyl to CDs to electronic music files like MP3s. These older business models evaporated almost overnight as consumers adopted a more efficient way of doing things through the Internet.

Today, as the rate of Industrial Internet of Things (IIoT) adoption increases, the industrial business landscape is being overhauled as well. And one of the tools accelerating this exciting change is Node-RED, an open-source visual tool for wiring the IIoT.

To the chagrin of many proprietary automation technology vendors, open-source tools, Internet standards and commercial off-the-shelf technologies have infiltrated the industrial technology arena. One of the most prominent examples of this is Ethernet, which has all but ended the fieldbus wars.

As agents of change, these open standards-based technologies democratize information sharing between industrial (operational technology, or OT) and information technology (IT) assets. And the increased access to information between OT and IT systems is uncovering opportunities for industry outliers to enter new markets or capture increased market share.

But hurdles still exist in IIoT adoption.

Adoption challenges remain

In a recent survey by Business Insider, respondents reported that, though the IIoT will only continue to grow, the No. 1 challenge faced in developing an IIoT solution is system integration. Translation: How do we get our OT systems to talk to our IT systems?

From a protocol and connectivity perspective, the answer is straightforward: TCP/IP and Ethernet. However, when we peel back the layers of system interoperability, we eventually reach a roadblock in the form of software. How do developers get the software stack from a programmable logic controller (PLC) or programmable automation controller (PAC) from vendor A to communicate with the predictive analytics software from vendor B?

For example, how would a developer move data from an automation controller into a cognitive analytics application like the IBM Watson IoT platform? More importantly, how does the developer do that without countless development cycles or hours of manpower configuring and troubleshooting complex middleware?

The short answer: Node-RED.

Reduce software development risk

The root of low IIoT adoption is uncertainty about return on investment (ROI) in these new technologies. Uncertainty is risk exposure to a business. In today’s business environment, resources expended on technology investments must result in a good ROI. And in most cases, that return needs to be reached in weeks or months—not years.

So how do we reduce our exposure to software development and integration risk? The answer is to fail fast. Efficient application development requires engineers to prototype quickly and fail fast if an idea doesn’t pan out.

The concept of failing fast is well known throughout the software industry, though not always applied. When we fail fast, we start work on a product, service or application, quickly learn whether we made a good decision and, if not, kill it fast before we waste unnecessary resources on further development.

IIoT application development should also leverage the agile methodology. Agile development offers alternatives to traditional sequential application development. Agile helps teams respond to unpredictability by breaking down work into incremental, iterative chunks and getting immediate empirical feedback.

In other words, does the software actually work or not? And if it doesn’t, which part is broken?

Software engineers tasked with dreaming up the next big IIoT application need to be able to fail fast through agile application development. But how? Enter Node-RED.

From hello world to hello connected world

The objective of IIoT is to connect sensors, computing systems and online services together to cut costs, provide higher service levels, identify new revenue streams, and just maybe make the world a cleaner, safer, better place.

But building the vast network of interconnected devices, software and services the IIoT requires is complicated. It requires hours and hours of hacking together and debugging complex software code. Or does it?

Software development for IIoT applications can be a somewhat repetitive task. For example, how often does a developer need to write code to read data from a serial device and post it to a web server? It’s these repetitive software development tasks that quickly erode an IIoT project’s ROI.

Node-RED instead seeks to provide IIoT developers with a software toolkit of reusable code that’s so easy to use, a novice can pick it up and quickly prototype an application, yet powerful enough to create real-world IIoT applications that leverage artificial intelligence, machine learning, and advanced Internet communication and data processing.

What is Node-RED?

Node-RED has an easy-to-use graphical interface displayed in a web browser, where you drag and drop reusable blocks of JavaScript-based software code, called nodes. These nodes make IIoT application development simpler, easier to repeat, and faster to scale.

When several nodes are connected together, they become a node flow. Node flows are what developers use to digitally wire together their IIoT applications, leveraging nodes for hardware devices, application program interfaces (APIs) and online services hosted in the cloud.

Built on the popular Node.js JavaScript server-side runtime, Node-RED has a large existing node library—more than 600 prebuilt and ready-to-deploy nodes—that IIoT application developers can freely deploy directly into their applications. Node-RED even has built-in support for popular IIoT and industrial protocols like MQTT, Modbus, CoAP, AMQP, BLE, OPC UA, and even mDNS for device discovery.

With this vast library of prebuilt code, Node-RED provides engineers with an easy way to connect edge computing systems—such as industrial automation controllers like Opto 22’s SNAP PACs—to cloud services such as Amazon Web Services (AWS) IoT, IBM Watson IoT and Microsoft Azure.

The simplicity of Node-RED allows IIoT application developers to focus on identifying an opportunity and developing a solution rather than building the components of an application from scratch. For example, if you want to create an application to poll data from a Modbus TCP device, log that data to a SQL database and then move it into a machine-learning application program like IBM’s Watson—there are nodes for all of those functions, already developed and ready to deploy without having to write, debug or support software code.

Advanced JavaScript functions can also be created within the editor using a Function node. A built-in library lets developers save useful functions, templates or node flows for reuse. The flows created in Node-RED are stored using the widely known JSON format, which can be easily shared with other developers and applications.

Node-RED’s prebuilt code library greatly reduces software development risk exposure and accelerates time to market. Drag, drop, wire together, deploy. It’s that easy.

Industry-wide adoption

Node-RED is an open-source development environment invented by Nick O’Leary and Dave Conway-Jones of IBM Emerging Technology Services. It’s also part of the JS Foundation, a Linux Foundation project. Its roots are firmly planted in the world of open-source and widely adopted software code.

Available on GitHub.com and npmjs.org, the Node-RED development environment can run on almost any platform, from macOS, Microsoft Windows, Linux and Raspberry Pi to cloud offerings like IBM Bluemix and AT&T Flow and industrial products like hardened IIoT application development platforms with built-in industrial protocol support, like the groov Box appliance from Opto 22.

Companies in this Article

Sponsored Recommendations

Wireless Data Acquisition System Case Studies

Wireless data acquisition systems are vital elements of connected factories, collecting data that allows operators to remotely access and visualize equipment and process information...

Strategizing for sustainable success in material handling and packaging

Download our visual factory brochure to explore how, together, we can fully optimize your industrial operations for ongoing success in material handling and packaging. As your...

A closer look at modern design considerations for food and beverage

With new and changing safety and hygiene regulations at top of mind, its easy to understand how other crucial aspects of machine design can get pushed aside. Our whitepaper explores...

Fueling the Future of Commercial EV Charging Infrastructure

Miguel Gudino, an Associate Application Engineer at RS, addresses various EV charging challenges and opportunities, ranging from charging station design strategies to the advanced...