$30 off During Our Annual Pro Sale. View Details »

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. Kazuhito Yokoi, Hitachi
    Node-RED in Industrial IoT

    View Slide

  2. Self-introduction
    Kazuhito Yokoi
    • Team member
    in Node-RED project
    • Node-RED Con organizer
    • Node-RED Enterprise
    User Group member
    • Software Engineer at Hitachi

    View Slide

  3. Speaker Experiences
    • OpenJS World 2023
    • OpenJS World 2021
    • Open Source Summit Japan 2020
    • Node+JS Interactive 2018

    View Slide

  4. Contents
    • What is Node-RED?
    • Node-RED in Industrial IoT
    • Trends using Node-RED
    • Developer Community
    • User Community

    View Slide

  5. What is Node-RED?

    View Slide

  6. 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

    View Slide

  7. 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

    View Slide

  8. 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/

    View Slide

  9. 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

    View Slide

  10. 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

    View Slide

  11. Demo: REST API which returns current time

    View Slide

  12. Features to improve
    developer experiences
    • Git Integration
    • Flow Debugger
    • Flow Linter
    Siemens, IBM and Hitachi
    have used these features.
    Advanced Features

    View Slide

  13. Node-RED Connectors
    Many predefined and custom connectors
    for services and devices
    • Data collection
    • Machine control
    • External server access
    • Database connection
    • Data analysis
    • Visualization

    View Slide

  14. 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

    View Slide

  15. Node-RED in Industrial IoT

    View Slide

  16. 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

    View Slide

  17. 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

    View Slide

  18. 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

    View Slide

  19. 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

    View Slide

  20. Demo: Retrieving alert history from robot

    View Slide

  21. Demo: Controlling Robots

    View Slide

  22. Trends using Node-RED

    View Slide

  23. 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

    View Slide

  24. 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

    View Slide

  25. 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

    View Slide

  26. 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

    View Slide

  27. 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

    View Slide

  28. Demo: Generating code with ChatGPT

    View Slide

  29. 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

    View Slide

  30. Developer Community

    View Slide

  31. 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

    View Slide

  32. • 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

    View Slide

  33. 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"

    View Slide

  34. 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

    View Slide

  35. 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

    View Slide

  36. 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

    View Slide

  37. 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

    View Slide

  38. 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

    View Slide

  39. User Community

    View Slide

  40. 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/

    View Slide

  41. 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

    View Slide

  42. 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

    View Slide

  43. (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

    View Slide

  44. Conclusion

    View Slide

  45. 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.

    View Slide

  46. 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

    View Slide

  47. View Slide

  48. 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.

    View Slide

  49. 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

    View Slide