00:00
[Music]
00:02
Hi I'm Matt with Opto 22. Today I'd like to
00:05
show you how to use Node-RED on groov to
00:07
build an industrial Internet of Things
00:09
application all without having to write
00:11
a single line of software code. That
00:13
means you can build your industrial IOT
00:15
application in minutes or days instead
00:17
of weeks or months. Node-RED on groov
00:19
lets you're exchange data from the
00:21
physical world like the operational
00:23
status of this wind turbine or the
00:25
temperature value from this sensor with
00:27
the digital world of business
00:28
applications and cloud computing so how
00:31
does it work? Well, information from the
00:33
physical world like the temperature in
00:35
this room or the run status of this wind
00:37
turbine can be reported using sensors
00:39
and these sensors use physical
00:42
electrical signals like current and
00:43
voltage to report status or a value. But
00:47
business applications in cloud-based
00:49
software don't understand physical
00:51
electrical signals they understand
00:53
digital information which means for us
00:55
to build an industrial IOT application
00:57
we need to convert those physical
00:59
electrical signals into digital
01:00
information that our cloud-based
01:02
applications and business software can
01:04
understand. Once those electrical signals
01:07
are digitized into data we can do all
01:09
kinds of interesting things with it and
01:11
that's what I'm going to show you today
01:12
using a software tool called Node-RED
01:14
running on this secure industrially
01:16
hardened edge computing device we call
01:18
the groov Box. Node red is a visual
01:21
software development tool used to
01:22
exchange information from operations
01:25
technology or OT like this wind turbine
01:28
with information technology or IT. It
01:32
does that by stitching together hardware
01:33
devices, API’s, and cloud services. Node-RED’s
01:39
visual development environment lets you
01:40
wire together pre-built and reusable
01:42
blocks of software code called nodes
01:44
when nodes are wired together they're
01:46
called a flow. There's literally
01:48
hundreds of free nodes and flows
01:49
available from Node-RED.org that you
01:52
can download and use in your application.
01:54
There are nodes for protocols like
01:55
Modbus and MQTT and nodes for
01:57
communicating with hardware devices like
01:59
PACs and PLC’s. There are nodes for
02:01
business software like SQL databases and
02:03
cloud applications like the IBM Watson
02:05
IOT platform and Amazon Web Services.
02:07
Let's take a look at how it's done. To
02:10
access Node-RED use your browser to
02:12
navigate to the name or
02:13
IP address of your groov box followed by
02:15
the port number for groov admin which is
02:16
3,000. Node-RED on groov is secure so
02:19
you'll notice we're connected over
02:20
secure sockets and we're required to
02:22
authenticate with the username and
02:24
password. From here we can see the status
02:27
of Node-RED, start and stop the
02:28
application, and check what version of
02:30
Node-RED the groov box is running. And
02:32
under project I can manage my
02:33
application by backing up or restoring
02:35
flows and credentials or I can delete my
02:37
project entirely and start over. On the
02:40
Diagnostics page I can view the detailed
02:42
status of my application’s run mode. All
02:45
of these features are designed to make
02:46
your application development workflow
02:48
that much easier and to help with
02:50
troubleshooting your application. And,
02:51
they're only available on the groov box
02:53
implementation of Node-RED so let's
02:56
take a look at how easy it is to build a
02:57
Node-RED flow we start Node-RED by
03:00
clicking the Node-RED editor button
03:02
here and then we arrive at a blank
03:04
canvas where we'll create our flow. We'll
03:06
start with a pretty simple example. I'll
03:08
drag an inject node from the node
03:10
palette here then I'll go back and find
03:12
the SNAP PAC node here drag it onto the
03:14
canvas and finally a debug node here. Now
03:19
click the circle here and drag to the
03:21
next node and then to the next. We've
03:24
just wired together a few nodes to
03:25
create our first Node-RED flow next
03:29
I'll configure the inject node to fire
03:30
at an interval of 2 seconds. Then I'll
03:33
configure my SNAP PAC node for my
03:35
temperature sensor. I've already set up
03:38
my SNAP PAC node to connect to the
03:40
controller on my SNAP I/O rack. You can
03:43
find more info on the SNAP PAC system
03:44
and how to configure it for use with
03:46
Node-RED at developer.opto22.com. This
03:51
node will query my turbine controller
03:53
and the connected the vtemperature sensor at
03:54
the tag name ‘air temperature probe 1’. Now
03:58
I'll click deploy and boom there it is.
04:00
Over here in my debug window I can see
04:03
the temperature values as they scroll in
04:04
every 2 seconds. So that was pretty easy
04:07
right? But how do we take what we've done
04:09
here and turn that into a real-world
04:10
value add application for the industrial
04:13
Internet of Things? Now that we're
04:15
exchanging data between the physical
04:16
world and the digital world let's move
04:18
that data into something like IBM's
04:20
Watson IOT platform where we can do all
04:22
kinds of interesting things with it.
04:24
First I'll need to scroll down and find
04:26
my Watson node from the node palette.
04:28
I'll drag it onto the screen here. I'll
04:31
wire the notes together to bring the IBM
04:33
Watson IOT platform into my node flow
04:36
and I'll configure it with my IBM
04:38
account credentials. I already have an
04:40
account on IBM Bluemix so I'll use those
04:42
credentials and finally click deploy.
04:45
Ok now I've got my control system data,
04:47
in this case my temperature sensor,
04:49
connected to my cloud application which
04:51
is IBM's Watson IOT platform. But what
04:54
about getting other data sources into my
04:55
application like web services, databases
04:58
and other cloud-based applications? All
05:00
of that's possible with Node-RED. For
05:03
example I can manually point my browser
05:05
to The Weather Underground web site and
05:07
get the current weather report for
05:08
Temecula California where Opto 22 is
05:10
headquartered. But I can also request
05:12
this information programmatically. It's
05:14
done through an HTTP call to an API for
05:16
the Weather Underground site and when
05:18
you do your restful api call the data is
05:20
returned in JSON format which looks like
05:22
this. JSON is a human readable format
05:24
that software applications particularly
05:27
Node-RED understand so let's go back to
05:29
our Node-RED application. I've already
05:32
created a flow for making this API call
05:34
to get the weather processing the JSON
05:36
data that's returned and making it
05:38
available to my control program here on
05:40
the turbine. Now I can make control and
05:42
logic decisions based on information
05:44
from the weather service or I can just
05:47
choose to visualize the weather data in
05:48
my groov app project like this. So you
05:51
can see there's a lot of really amazing
05:52
things you can do with Node-RED on groov.
05:54
You can exchange data from the physical
05:56
world like control system data with the
05:58
digital world of cloud-based machine
06:00
learning applications and predictive
06:02
analytics software or devices in the
06:04
physical world like this wind turbine
06:06
can autonomously control themselves
06:08
based off of data in the digital world
06:10
like the weather forecast from The
06:12
Weather Underground site and when you're
06:13
ready to apply your application in the
06:15
real world take a look at the groov box
06:16
from Opto 22. It comes with all that
06:19
Node-RED has to offer
06:20
plus it's an industrially hardened
06:22
secure edge computing platform with
06:24
additional tools for maintaining and
06:26
supporting your application. To get
06:28
started with Node-RED you can download a
06:29
free version from Node-RED.org and run
06:32
it on your PC or even a Raspberry Pi. To
06:34
find out more about Node-RED on groov
06:36
visit developer.opto22.com