Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Node-RED in Industrial IoT

Node-RED in Industrial IoT

Kazuhito Yokoi

September 26, 2023
Tweet

More Decks by Kazuhito Yokoi

Other Decks in Programming

Transcript

  1. Self-introduction Kazuhito Yokoi • Team member in Node-RED project •

    Node-RED Con organizer • Node-RED Enterprise User Group member • Software Engineer at Hitachi
  2. Speaker Experiences • OpenJS World 2023 • OpenJS World 2021

    • Open Source Summit Japan 2020 • Node+JS Interactive 2018
  3. Contents • What is Node-RED? • Node-RED in Industrial IoT

    • Trends using Node-RED • Developer Community • User Community
  4. Node-RED Browser-based low-code programming tool • Flow development by wiring

    connectors • Ability to develop Industrial IoT solutions • Customization through low-code programming and original connectors Node-RED Flow Editor
  5. History of Node-RED In 10 years, Node-RED has become more

    popular, open and stable. • 2013 Developed by IBM • 2016 Managed by JS Foundation • 2019 Released v1.0 • 2022 Released v3.0 • 2023 Reached 10 years https://x.com/FlowFuseInc/status/1704874726416617474
  6. Supported Environments Node-RED supports environments that can run Node.js. •

    Local PC • Windows • macOS • Ubuntu • Docker • Raspberry Pi • Could https://nodered.org/docs/getting-started/
  7. How to Install • Local environment • Docker • Raspberry

    Pi $ sudo npm install -g --unsafe-perm node-red $ node-red docker run -it -p 1880:1880 --name mynodered nodered/node-red bash <(curl -sL https://raw.githubusercontent.com/node-red/linux- installers/master/deb/update-nodejs-and-nodered) • Cloud https://www.alibabacloud.com/blog/deploy-iot-applications-with-node-red-on-alibaba_595281 https://medium.com/huawei-developers/creating-api-with-node-red-application-on-huawei-cloud-services-e9c3afe8827c
  8. Coding vs Node-RED Flow Everyone can quickly develop the REST

    API which returns date and time through flow and UI settings. const moment = require('moment-timezone'); const express = require('express'); const app = express(); const port = 1880; app.get('/moment', (req, res) => { moment.locale('zh-cn'); var tmp = moment().tz('Asia/Shanghai'); res.send(tmp.format('LLLL')); }); app.listen(port, () => { console.log(`Running on ${port}`); }); Code Flow and settings
  9. Features to improve developer experiences • Git Integration • Flow

    Debugger • Flow Linter Siemens, IBM and Hitachi have used these features. Advanced Features
  10. Node-RED Connectors Many predefined and custom connectors for services and

    devices • Data collection • Machine control • External server access • Database connection • Data analysis • Visualization
  11. Connector Library Over 4600 connectors available in the library Connector

    Library (1) Develop (2) Publish (3) Register (4) Retrieve catalog (5) Install Connectors in Library Connectors distribution 0 1000 2000 3000 4000 5000 2016 2018 2020 2022 2024 Number of connectors Year
  12. Retrieve data Reasons for Industrial IoT • User aspects •

    Creating solutions by factory engineers • Support by IT engineers • Software aspects • Connectors for machines and cloud services • OSS set of MING stack • OSS benefits • Standard OSS • Scaling without cost MQTT, InfluxDB, Node-RED, and Grafana (MING) Stack Could Services Machines in factories Store data Access Visualize
  13. Node-RED User Companies 68% of leading companies in Industrial IoT

    have adopted Node-RED or published use-cases including the use of Node-RED alongside their products. • Microsoft, JACDAC • Software AG, Cumulocity • Hitachi, Dataflow Designer • Siemens, MindSphere • ABB, OPTIMAX • PTC, Kepware Edge *There are URLs on the last slide for details. • Amazon Web Services • Davra, IoT Platform • Litmus, Litmus Edge • Braincube, Data Flows Manager • Exosite, Device Connectivity
  14. Pre-installed Devices Many devices equip Node-RED as a pre-installed software.

    • Seeed Studio, reTerminal DM • Advantech, ADAM-6700 • ADLINK, Vizi-AI Devkit • QNAP, QIoT Suite • Emerson, PACEdge https://www.youtube.com/watch?v=15LqSX-xGI4 Node-RED Use cases using reTerminal DM
  15. Advanced Use in Factory Robot systems for improving production processes

    using following features: • Connection to PLC and sensors • Dashboard for monitoring robot status • Integration with SCADA or MES Dashboard Operator Check status Trigger action Robots Telnet connection
  16. GAIA-X Federation Services OSS set for data exchange between companies

    • Hosted by the Eclipse Foundation from 2023 • GXFS Workflow Engine based on Node-RED https://www.gxfs.eu/ https://gitlab.eclipse.org/eclipse/xfsc/oaw
  17. WorldSkills Node-RED has been used in the Industry 4.0 world

    competition. • Factory engineers modernize production lines. • 8 countries from worldwide joined in 2022. https://worldskills.org/skills/id/786/ Control AR Application Send alert message Visualize data Retrieve data Factory IT System Conveyor belt Training contents
  18. W3C Web of Things Node-RED is used in W3C standardization

    activities. • Node generator to create device connectors from the WoT specification • WoT-Discovery plugin to access custom connector library https://w3c.github.io/wot-thing-description/testing/report11.html https://www.youtube.com/watch?v=oAcYbJ6P9bU
  19. Industrial Automation Forum Forum that consists of manufacturing companies •

    ia-cloud working group promotes Node-RED in events. • Custom connectors to connect to devices • Schneider, Hitachi and many others join the forum. https://iaf.mstc.or.jp/wp-content/uploads/2023/06/2023keikaku.pdf Data visualization in factory
  20. Generative AI Use cases, connectors using ChatGPT that have learned

    Node-RED flows • Automatic generation of Node-RED flows by factory engineers • Improving development efficiency for IT engineers https://flowfuse.com/blog/2023/05/chatgpt-nodered-fcn-node/ https://www.hitachi.com/New/cnews/month/2023/06/230613/ 20230613_03_digital_en.pdf#page=26
  21. WebAssembly Efforts related to WebAssembly • Calling WebAssembly binary •

    Python execution with Pyodide • Running Rust code • Running Node-RED flow on WebAssembly • WebContainer • Go implementation • Midokura implementation https://youtu.be/3nZyXajVLWA?t=1349 NumPy and Matplotlib execution on Pyodide
  22. Contributors 211 developers from various organizations have contributed to the

    project. • FlowFuse, Hitachi • Long-term members • Creator of Node-RED https://github.com/node-red/node-red/graphs/contributors
  23. • Source code • Internationalization of the flow editor •

    Bug reports • Feature suggestions • Developer meetings Contribution Types https://discourse.nodered.org/t/sortable-list-in-the-header- area-of-the-http-request-node/67076
  24. Developer meetings User companies suggested new features based on their

    customers' needs: • "Locking flow" from NEC • "Global environment variables" from Hitachi • "Copying item URL" from Panasonic"
  25. New features in Node-RED v3.1 New version of Node-RED has

    adopted the proposed features: • Locking flows • Global environment variables • Copying item URL https://nodered.org/blog/2023/09/06/version-3-1-released
  26. Tab lock function to prevent from editing the flow New

    feature: Locking flow Lock User cannot move connectors and open properties User can move connectors and change properties
  27. New feature: Global environment variables Environment variable settings accessible from

    all connectors in the Node-RED environment OS Global Tab Group Subflow Refer High priority variables over OS environment Tab Group Referring order
  28. New feature: Copying item URL Creating flow editor URL to

    highlight objects: • Connectors • Properties • Groups (2) Copy URL User B browser User A browser (3) Share URL (4) Highlight connector (1) Select connector
  29. Introduction in meetup and blog New features are introduced on

    these platforms: • Online meetups • Corporate blogs These are good contribution examples that are not code. https://www.youtube.com/live/7KH1AyAn8ww?t=1264 https://jpn.nec.com/oss/community/blog/node-red_v3.1.html
  30. Community Survey Based on Node-RED community survey: • The manufacturing

    industry is growing. • 2nd user role is Industrial Engineer. https://nodered.org/about/community/survey/2023/
  31. Enterprise User Group Meetup Regular meetups to share enterprise use

    cases • 7 meetups from 2021 • 15 speakers Google, F5 Networks, NEC, Panasonic, SAKURA internet and more https://www.youtube.com/watch?v=ysaNv8k5fnc https://www.youtube.com/watch?v=i77DWWQIOh0
  32. Node-RED Con Annual conference to share the project news and

    inspiring stories about Node-RED • History • Node-RED Con Tokyo 2019 • Node-RED Con 2020 • Node-RED Con 2021 • Node-RED Con 2022 (Official) • Speakers Ericsson, Fujitsu, IBM, Microsoft, Oracle, Panasonic, balena, NTT Communications, Plat' Home, SAKURA internet, Siemens and more https://www.youtube.com/live/xrDR7Eex7vs
  33. (1) Many positive cycles such as Node-RED MCU (Micro Controller

    Unit) (1) IBM shared the concept of Node-RED running on MCU. (2) Moddable developed the Node-RED MCU Edition. (3) Moddable demonstrated it. (4) Others published books and articles to spread it. Positive Cycle through the Node-RED Con (2) (3) (4) https://speakerdeck.com/knolleary/the-future-of-node-red https://www.moddable.com/talks-pages/node-red-con-2022 https://www.moddable.com/blog/fosdem2023/ https://www.kohgakusha.co.jp/books/detail/978-4-7775-2249-1
  34. Conclusion Node-RED will be used in Industrial IoT for a

    long time because of the following reasons: • Node-RED is standard software to create custom applications in factories. • It has a strong developer and user community.
  35. Next steps • Node-RED Con 2023 @NTT Communications • Node-RED

    books • Practical Node-RED programming (2nd edition) • A practical guide to Node- RED development https://www.facebook.com/codeandcompile https://www.amazon.com/dp/18002
  36. Trademarks • Node-RED and Node.js are registered trademarks of the

    OpenJS Foundation. • IBM is a registered trademark of International Business Machines Corporation. • Windows and Microsoft are registered trademarks of Microsoft Corporation. • macOS is a registered trademark of Apple Inc. • Ubuntu is a registered trademark of Canonical Inc. • Raspberry Pi is a registered trademark of Raspberry Pi Foundation. • MindSphere, SIMATIC and Siemens are registered trademarks of Siemens Aktiengesellschaft. • npm is a registered trademark of npm Inc. • Cumulocity and Software AG are registered trademarks of Software AG • OPTIMAX is a registered trademark of ABB AG. • Kepware Edge is a registered trademark of PTC Inc. • Amazon Web Services is a registered trademark of Amazon Web Services, Inc. • Seeed Studio and reTerminal DM are registered trademarks of Seeed Technology Co., Ltd. • ADAM and ADVANTECH are registered trademarks of ADVANTECH CO., LTD • ADLINK is a registered trademark of ADLINK Technology Inc. • QNAP is a registered trademark of QNAP Systems, Inc. • Emerson is a registered trademark of Emerson Electric Co. • Schneider is a registered trademark of Schneider Electric SE. • NEC is a registered trademark of NEC Corporation. • Panasonic is a registered trademark of Panasonic Corporation. • Google is a registered trademark of Google Inc. • F5 is a registered trademark of F5 Networks, Inc. • Ericsson is a registered trademark of Telefonaktiebolaget LM Ericsson. • Fujitsu is a registered trademark of Fujitsu Limited. • Oracle is a registered trademark of Oracle Corporation. • balena is a registered trademark of Balena, Inc. • NTT Communications is a registered trademark of NTT Communications Corporation. • Moddable is a registered trademark of Moddable Tech, Inc.
  37. References • Magic Quadrant for Global Industrial IoT Platforms, https://www.gartner.com/doc/reprints?id=1-

    2BY92VID&ct=221209 • Microsoft, JACDAC, https://microsoft.github.io/jacdac-docs/ • Software AG, Cumulocity, https://github.com/SoftwareAG/cumulocity-node-red • Siemens, MindSphere, https://youtu.be/rz09FHxGSHE?t=154 • ABB, OPTIMAX, https://sesam-world.com/_pdf/sesam-138/06-ABB.pdf • PTC, Kepware Edge, https://www.kepware- opc.cz/downloads/ThingWorx%20Kepware%20Edge/ThingWorx_Kepware_Edge_Datasheet.pdf • PTC, IoT Gateway Demo Video, https://youtu.be/EU8GkxDP7kM?t=150 • Amazon Web Services, https://youtu.be/eIml_SyGnAo?t=251 • Davra, IoT Platform, https://www.developer.davra.com/microservices/backend/nodered/ • Litmus, Litmus Edge, https://youtu.be/SvLzd9PRTbA?t=131 • Braincube, Data Flows Manager https://braincube.com/solutions/edge-platform/ • Exosite, Device Connectivity, https://docs.exosite.io/integrations/hw-tutorials/node-red/ • ADLINK, Vizi-AI Devkit, https://www.adlinktech.com/en/news/adlink-node-red-vizi-ai-devkit- accelerate-machine-vision-ai-at-th-edge • QNAP, QIoT Suite, https://www.qnap.com/en-as/software/qiot-suite • Emerson, PACEdge, https://www.emerson.com/documents/automation/data-sheet-pacedge- software-for-edge-computing-pacsystems-enus-en-7205588.pdf