Now we are here on the Interface Node. We are looking at the
configuration of this OPC Interface using
Interface Configuration Utility. Now, one of the things you will see here
among all the different parameters, you will see something called a Point Source.
The Point Source is what we use to identify
which set of Tags out on the Control --
or out on the PI Server, this particular Interface
is going to start, you know, gathering data for.
So, you will see that there's a, a
congruence, a Mapping, one for one,
to the Point Source defined here and to the Tags
that are being scanned by this Interface. Let me demonstrate. If I go back
to my Home Node, my PI Server, and I look
at that, that Tag that I created earlier, that OPC
Tag -- take a look at the Point Source field. Yeah.
No, no big coincidence here. That, that's not a coincidence, I should say.
That OPC is specified
in this Point Source -- we, we specify OPC
because we want this OPC Interface on
the Interface Node to start gathering information for
that and start scanning data for it. So you define
the Point Source here, and then you exploit that
definition over here when you build the Tag.
Now, there are many different Point
Sources. Let's take a look at this Point Source Table. Here's
a list of them. They are currently used against this particular PI
Server. As you can see, there's the OPC Point Source.
We just looked at that. I have only got one Tag that's using that right now.
This, there's "R". "R" stands for Random.
I have got 122 Tags on this system that is
using the Random Interface, three that are using -- or, two that are using
"L." "L" stands for Lab. It's basically
getting data from no source. And, and that's all
that's really defined at this point. Now,
some of these Point Sources, I should point out,
are things that you can configure. I should say most
of them are things that you can configure right here
on the Interface Node, you know, in
Interface Configuration Utility. However, some
of them are not. You will notice that some of these
Interfaces simply cannot be modified.
And, if you take a look at, at, our, our documentation
on this, the class documentation, we had a
list there of the Totalizer and "L" for
Lab Tag. Those are two Point Sources that simply
cannot be changed. So, "T" for Totalizer, "L" for Lab.
And some of these Point Sources can be changed, but they cannot be changed
from here. They are changed, instead, by making a Registry edit.
So, for example the "at" symbol for the PI Alarm.
That's something you have to change through a Registry setting on the PI
Server. Anyway, all of these things that we are
talking about -- and we are going to talk about in this video -- are,
what these are, these are start-up parameters. I define
the start-up parameters in the Interface Configuration.
Utility. Okay. And then those are the parameters
that are being used by the Interface when it starts up.
So when this Interface starts up it's got a very,
very basic question. Which Tags do I need to scan?
And so it's using that Point Source to
map to this list of PI Tags over here.
It's going to find every PI Tag that has that same Point
Source, and it's going to start gathering its information so it can do
scanning. Remember, with the blue background, we are on the Home Node here.
This is on the PI Server. We are looking at the Point Database.
This Point Database may have tens of thousands,
hundreds of thousands of Tags. We
need some mechanism to keep the Interfaces
apprised as to which Tags are of interest to that
Interface, and we do it through Point Source.
Now, a second
start-up parameter that you will find back here on the Interface Node,
a second start-up parameter is called the Scan
Class, or Scan Frequency as it is identified
here. And what this simply means is the frequency
with which we will, or by which I guess, we should,
we should scan the Data Source.
And, in this case, we simply count down
from the top. This is Scan Class 1, 2, 3 and 4.
And in this case it's 1 second, 1 second, 1 second,
and 2 seconds scanning for these four different Scan
Classes. Now, how does this Map over
to your Point Definition? Let's go back to the Home
Node, to the PI Server, and let's look in the Classic
Tab. In the Classic Tab, there's
a set of obscure fields, and, and one of the obscure fields is called
Location Code 4. Location Code 4 in this
case is 2, -- well, it's Location Code 4
for all of our interfaces that indicate what
Scan Class it should be. So, in this case, we are
saying Location 4 equal to 2.
That means that we are going to use Scan Class 2. Let me go back
to my Interface Node. Scan Class 2 for this Interface
means 1-second scanning.
Now, I confess, I have not really been telling you the whole truth about this
field here. As you can see, this Scan Frequency of
one second -- that's a valid
Scan Class. Let me show you another valid Scan
Class. I will go ahead and create a new one here. I will just choose Add.
I can choose -- let's go with
zero hours, zero minutes and 10 seconds.
I can create a Scan Class like that.
That indicates it's going to be scanned once every 10 seconds.
But I can also create a Scan Class like this.
10 seconds comma,
that's no space there. Ah, let's go with
5 seconds. What this is, is this is a
combination. It's both a Scan Class
and an Offset. So if we --
if I can highlight this here -- that
Offset right there, in red, that indicates
the Offset from the zero mark on the,
you know, the, the clock. So if I am scanning
once every 10 seconds, but I am Offset
at five seconds after, it essentially does, does a
scan at 5 seconds, 15, 25, 35,
etc. Let me show you. There's a nice illustration in the book
you will find. This is in our class material.
If you were to simply set up a
Scan Class of 10 seconds, and then you would start your
Interface at two seconds after the zero mark
there. If you were to start your Interface at two
second, or any, any ten-second multiple of two seconds, then
exactly every ten seconds,
you know, offset from that time when you started it,
that's when you are going to get a scan. Now compare that to
this. In this case, we are using this -- it's a Scan
Class of 10 seconds, but an offset of five seconds.
What we are going to do is we will specifically do
a Scan at the five-second mark, the 15-second,
the 25-second, etc.
Now, why is this important? Well, sometimes
for purposes of staggering the load you may
actually have two different Scan Classes, both at
ten seconds, but one scans at the zero mark and the other
scans at the five second mark, so that you are not scanning all
thousands and thousands of Tags at the exact same time.
So that can be a, a useful feature.
Now, one more thing about these Scan
Classes. In addition to using this hour, minute, second,
for both the frequency and the
offset, you can also just specify this
Scan Class and Offset in seconds. Let me demonstrate.
If I go back to my Interface Node, I will add
another Scan Class. This is a Scan Class,
oh, let's got with, let's go with 30 seconds here.
If I just type in a Scan
Class that simply omits the hours and the minutes,
and just specify seconds, then that will give me a
30-second Scan Class. And if I were to -- let's go ahead and
modify this and do a 30-second
offset at let's go with zero
seconds. Yeah, that,
it's 30-second frequency, zero-second offset.
This is going to scan at zero, 30; zero, 30; etc.,
every 30 seconds starting at the zero-minute mark. So, there's
two different formats you can use for this. Now, we have tried
to document this for you. You will find this in the class
documentation and you will also find it in the,
UniInt User's guide we are going to look at in just a second.
Except you will notice that in these
guides, and in a lot of the materials that we have
printed for the, the Interfaces for example, the Interface documentation,
a lot of those use
a rather old-fashion way of
expressing this. And the old-fashion way of expressing it
is using these parameter switches that
are, are used even to this day,
in the batch files that can be used to start up the
Interface interactively. Let me back up to my
Interface Node here. This takes some explanation here.
Let me go ahead and save this. I will show you
exactly what's going on here. See, I have just,
I have just made a change to this.
It's warning me, by the way, that this is not going to take effect until
the next time I stop and restart the Interface. Fair enough.
But, the changes that I have made right here,
we have stored them in a couple different places, but one of the places we have
stored them is we have actually stored them
in a batch file that is
associated with that Interface. This was the same
batch file that I, I loaded initially when I brought in my Default
Values, And, if we take a look at this batch file, the
first thing you will notice about it, there's all kinds of warnings.
Do not edit this manually. That's because we are
currently allowing ICU only to edit
this. We are asking ICU to be the manager for this.
Now, if you, and you are, if you are using
ICU, which we strongly recommend you do, we do not
recommend you ever edit these files by hand anymore
in most cases, unless you are on the phone with support. They may
tell you different sometime, but rarely.
Anyway, to make a long story short, our
old friend the slash F Parameter, the one
you saw from our documentation, our class
documents, you also find it in our UniInt documents, in some of our
Interface Manuals. Slash F stands for
Frequency, and you know, before we had this wonderful
Interface Configuration Utility to make it all
nice and user-friendly like this -- before we had any of
that, we simply edited a batch
file. So, those changes that you just saw me make,
the, I added a, there we go, here, here it is, right here.
The 10-second Scan Class, and then here's the
10-second class with the 5-second offset, here's that
3rd one -- the 30-second Scan
Class with the zero-second offset. All of those are going to be
stored in this batch file using these
switches, these parameters. And that brings me
to the, the grand finale of this video which is,
you know, at some point as you are
working with this, you are going to say, what in the world do all these switches mean? Where do,
where do I go to find out more about, you know,
slash PS -- that's Point Source, by the way --
in case you are curious because that's the one we were looking at earlier, remember?
OPC. Anyway, so, so where do we find
the definitive word on slash TS and slash
macstoptime, etc. How do we learn all that?
Well, the off...
Official, or I guess I should say the authoritative guide
to all of this is this UniInt Interface User
Manual. You will find a little bit of information about Scan
Class in the actual documentation
for your Interface. But, I will tell you what -- you will find an awful
lot more if you go down to the Standard
Parameters Section of this UniInt Guide.
This is where you are going to find in nauseating detail
everything we have ever wanted to document
about these switches. And, as you can see,
they are shown using that old syntax. I do not even know
if the word Interface Configuration Utility is even in this
document because, you know, we are, we are simply
documenting this using that nomenclature that
we originally devine...designed all this with,
these Interfaces with. So, these switches, you know,
what does the Slash Host Parameter mean?
What is the Slash -- oh, what are some of the other ones? The
maxstoptime Parameter -- what do these all mean?
You will find the official documentation for this in this
UniInt Guide. And, by the way, in this --
hopefully this is not going to catch
anybody by surprise, 'cause
it would be kind of what you might guess at some point,
is the things that you are seeing here as
individual, individual little fields
within this UniInt Section here,
for PI SDK, disconnected start-up, debug, etc.,
all of these are things that you will find
documented in this UniInt Guide because, as I said,
they are simply start-up parameters.
Now we have gotten to the point where, you know, we are not asking
you to edit those batch files any more.
We have got a nice Graphical User Interface. But, of course, at
some point, in troubleshooting or in working with this
Interface, you may want to know well, where do I find the
absolute last word about these switches,
especially these UniInt switches? You know, how,
how do these Health Points work, how does this debug -- these debut
flags work, etc.? When you need to learn that,
again, go back to this UniInt Interface
Guide. You will find one of those in the documentation
that came with the Computer-based Training. You will also
find this available for download off of our tech support
site.