(1) Node-RED is a visual tool for developing IoT applications using a flow-based programming model. It has various connectors and can run flows immediately after wiring connectors in the processing order. (2) The document discusses how Node-RED has grown as an open source project since 2014 and is now used by major companies for IoT applications and services. (3) Node-RED enables rapid development of IoT solutions through its visual interface and support for standard IoT technologies like MQTT and REST APIs.
Hello everyone. My name is Kazuhito Yokoi from Hitachi and I am one of the members in Node-RED project on GitHub.
Today, I would like to talk about “Introduction to Node-RED”.
First of all, let me start from Internet of Things, IoT.
As you know, IoT has huge potentials to establish new lucrative business model.
For instance, predictive maintenance using sensor data.
And Telematics insurance based on driving data.
Home automation using voice command.
These are good examples of IoT solutions but we encounter some problems when we started the actual projects.
Verifying service ideas about IoT solutions is difficult because IT and Operational technology engineers have to work together to validate the value of IoT solutions.
Additionally trial and error style development is also difficult because they need sophisticated coding skills.
To solve the problems, I recommend Node-RED. Node-RED is one of the suitable development tools for IoT applications.
In this slide, I’d like to explain about “What is Node-RED?”.
Node-RED is visual programing tool for IoT applications.
The screenshot is development environment of Node-RED flow editor.
There are a lot of connectors on the left side on the flow editor.
After an engineer selects the connectors, he or she drags and drops them to the central workspace.
Then the engineer wires connectors in the processing order.
Once clicking the deploy button, the IoT application will run immediately.
Because of the flow-based programing, it realizes quick development without coding.
And there are various connectors to add functionalities.
Node-RED is open source software under Linux Foundation project.
A lot of companies including IBM and Hitachi have contributed to Node-RED.
This slide shows history of Node-RED.
About four years ago, Node-RED was released in Qcon London.
As soon as the announcement was made, the beta version of BlueMix bundled Node-RED on the default catalog.
Since the end of two thousand fifteen, Node-RED has been pre-installed on Raspberry Pi Linux OS, Raspbian.
At the end of two thousand sixteen, the management of Node-RED project was transferred to Linux Foundation.
As shown on the line chart, the number of downloads has increased gradually.
Currently, Node-RED is downloaded fifty thousand times per month.
As I have explained, Node-RED has been more open and popular as open source software for both edge and cloud environments.
Next, let me talk about “Who uses Node-RED?”.
Major companies have used Node-RED in their productions.
There are three types of the approaches.
The first is cloud services.
AT&T, Fujitsu, Hitachi and IBM have Node-RED environment on their cloud services.
The second is connectors.
IBM, Microsoft and NEC have published connectors for their services.
The third is edge devices.
GE, Intel, NEC, Samsung, Siemens and Toshiba have their edge devices which include Node-RED.
Next slide is “Why Node-RED?”.
There are three reasons why I recommend Node-RED.
The first is “Rapid development for IoT applications”.
Using Node-RED, operational technology and IT engineers can easily create their IoT application within couple of hours without coding.
Same development style in both edge and cloud environments is also useful because IoT application tends to use both edge and cloud.
The second is standard technologies in industrial IoT.
Node-RED supports essential IoT technologies. For example, REST API, WebSocket and MQTT protocols.
As I said before, a lot of standard edge devices including Raspberry Pi have Node-RED as their development environments.
The third is open community.
Seventy three contributors including IBM, Sense Technic and Hitachi are developing Node-RED on GitHub.
Therefore you can suggest new features on GitHub.
There are a lot of third party connectors on public npm repository.
You can use the connectors to suit your needs.
Next slide is “What does Node-RED realize?”. The diagram shows typical IoT system.
In the IoT system, Node-RED has seven key features.
(1) The first is Edge analytics. Edge devices have functionality to connect sensor, camera, microphone and speaker via GPIO or serial port. After retrieving the data, Node-RED can filter or analyze them. For example, Open CV connector can locally detect human faces from image data.
(2)(3) The second and third are Data collection and Device control.
As the default, Node-RED has connectors for MQTT and WebSocket protocols.
Via the protocols, Node-RED on cloud can collect data and control devices.
(4) The fourth is dashboard.
Using the dashboard, IoT application can visualize sensor data and notify alert when abnormal sensor data is detected.
(5) The fifth is connection to data lake.
Node-RED has connectors for major databases and object storages like MySQL, PostgreSQL, MongoDB and Amazon S3 compatible object storage.
(6)(7) The sixth and seventh are connections to other systems.
If existing and external systems have REST API, Node-RED can easily connect to the systems.
Some developers think that it is difficult to develop a new connector.
To solve the problem, we are developing a tool, node generator.
Using the tool, IT engineers can easily create connectors from Swagger definition or JavaScript code in function node.
If you are interested in the tool, please refer to the URL, node-red-nodegen under the Node-RED project.
In this slide, I’d like to explain new feature in the latest Node-RED.
Node-RED version 0.18 has project feature as new beta functionally.
Using the functionality, engineers can store and save their flow on GitHub repository.
IBM and Hitachi members contributed to the functionality.
Finally, I’d like to introduce materials to learn Node-RED.
On the internet, there are useful lectures, “Node-RED Programing Guide”.
And we published Node-RED book in Japan.
Today, I brought the books as giveaways. If you want to get it, please approach me after my presentation.
Thank you for your listening. Have a nice day.