Hello, this is John Rinaldi, and today I'm in Florence, Italy. I'm actually at
the Pitti Palace. The Pitti Palace is one of the, it was built in 1492, took about,
14... 1421, I believe, and it took 180 years to build this. Lucca Pitti was the
guy that, that started at all. He of course was dead long before it ever was
even close to being completed. A lot of these places in Italy takes hundreds of
years to create. There's such magnificence, magnificent edifices.
So today, I'd, while I'm at the Pitti Palace,
I thought I would give you a little talk about one aspect of OPC, that's the address space.
I think the address space is probably the key to understanding OPC UA. If you
understand the address space, you can really understand how to work with OPC
UA, what you could get out of it, and how you will want to set up a system and
collect data from, from your factory floor and your,
your automation systems. Okay, there's three things I think are really
important about the OPC UA address space. Number one, you have to
understand what they're trying to achieve when they designed OPC UA. They
wanted to be able to represent everything, and I mean everything.
Everything from us the smallest tiniest sensor, all the way up to an entire plant.
So this is a pretty incredible goal. It's a pretty, they're pretty ambitious. I
think on the whole, they probably did a pretty good job. So that's the first
thing. So, with that in mind, let's take a look at what number, the second
thing. The second thing is that the basic construction of everything in OPC UA is
a node. Now that confused the hell out of me, of course, when I first read
this and I started studying OPC UA. A node, I'm thinking a node being a device.
Modbus device is a node on the Modbus network. In EtherNet/IP, an adapter is a node
on the EtherNet/IP devi... on the EtherNet/IP network. No, not at all.
Node is completely internal to that and it's really just a collection of
information. So the node is the basic unit. What is in a
node? Well, there's two things that are actually compose the node. Well, I should,
possibly three. Two and half! Okay, the first thing is there's attributes. Attributes define the
characteristics of the node. What does this node do? What is it about? All, and
anything, and there's basic node, node characteristics for all node classes
that, so you have the same kind of attributes in every node at the base, and
then you have attributes that are specific for the operation of the node.
Which I'll get to in a second. So you have attributes describing the characteristics of the
node. Then you have references, and references there are links to lots of
other nodes. So you have you have an attribute that links to the basic node
type where this came from, and I'll talk about that in a second.
The third thing, and this is kind of, is that you also have properties of the
node. Now, attributes are predefined by the people that wrote the specifications
for OPC UA. You can't change those. If you're a designer of a device, you cant,
say you want to have this particular attribute instead of the attributes that they,
that they've defined for that particular node class. Third thing, so the third thing
is properties. Properties now, are more semantic information about the node. Okay,
so what is this, you can have, you know, a long name for the node, a description,
you could have engineering units that are used in this, you could have
conditions under which node, the node from this data is is maybe not valid, or
is valid you, anything you want that's more semantic information about,
about how that node is used instead of attributes and characteristics of the
process itself that it's representing. Now there's, thirdly, there's data
type, there's types for all these nodes. There's about seven node classes. There's
a variable node class, there's a reference node class, and so on and so
forth. So when you create a node it's always created, it's typically going to be
created for the type - the node class type definition. And that brings in this,
the basic node class attributes that are common to all nodes. And the
attributes that are that are common to that particular node class. And then the,
the references that are typically made available for that particular type of
node. So what kind of node types are there? Well there's, the the basic one is
an object. What's an object well an object can be anything! Object could be the whole
plant, it could be a manufacturing line that could be manufacturing cell, or it
could just be a sensor. Doesn't matter. You're free to create objects to be,
any, as a, if you're a designer of an OPC UA server, you're free to create
whatever objects you want, and then create nodes from it. So, you create an
object, and now you have references to variables that are part of that object.
For example, if you decide to make a pump an object,
okay, the pump is an object. So now you're going to have references to other nodes
that are the variables for that pump. Or you could have references to other
objects that you could have, say you have three parts to your pump. You have a
motor part, so you can create an object for the motor. And then within that object
you're going to have a reference to variables. Eventually you're always going
to get down to a, to a set of variables that are part of, that are part, that have
the data for, that you're actually going to get to.
So if there's a speed involved in there, at some point, you're going to have a
reference to a type of node class that's a variable node class that has the
actual value, as an attribute with an actual
value, which gets you that speed. And then you'll have, probably properties that
describe what the units are on that speed, So, and what,
here's, the third thing I want to tell you about, is that these, these nodes
that you reference don't have to be in the server you're in. You can have some,
so you could reference nodes that are in other servers. So you can create an
object in this server that taught, that, that brings together, that references
other objects and other, other nodes that are located in other servers. So you can,
you can get bring, you have a way of linking an entire system together
through this object reference kind of structure. It's incredibly powerful.
I've been pretty much impressed with it. I've been studying it for about a good
year now, and thought it was time that I start talking about that and providing
information to the automation community so you all can
understand what some of the OPC UA, how the OPC UA works and how it's built,
and ah, and I'll talk about in other videos about some of the ways that I
think OPC UA is going to change the kind of work that we do in the automation
industry. So, time to leave now, I'm in Florence, Italy. I'm going to be heading
to a place in southern Italy later today called Fragneto. Fragneto is where my father
was born, so I'll be spending some time with some relatives in that area of the country.
I'm dri.. actually driving through Italy for the next day and hope to, hope that
the weather's going to be nice. I'm gonna have some wine and have a great time
here in Italy. So this is the Pitti Palace. I'll, ah, I'll take a little ah, video
tour of it for you here. Let me move the camera around a little bit so you can
kind of see it, get an idea of how big this thing is and with some of the grain.
We only see absolutely, just a little bit part of it. This was the seat of
government for a long time. The Pitti Palace is was where King Emmanuel
resided here for a long time. A number of different kings and rulers of Italy
resided here. So thank you very much, have a great day!