MAX Control Systems MAX 1000 for VMS Interface to the PI System

locketparachuteElectronics - Devices

Nov 15, 2013 (3 years and 7 months ago)

178 views

OSI Software, Inc.

MAX Control Systems

MAX 1000 for VMS

Interface to the PI System

Version 1.0 and greater


How to Contact Us

Phone

(510) 297
-
5800 (main number)

(510) 297
-
5828 (technical support)

Fax

(510) 357
-
8136

Internet

techsupport@osiso
ft.com

World Wide
Web

http://www.osisoft.com

Bulletin
Board

(510) 895
-
9423

Telebit WorldBlazer modem (Hayes, MNP, or PEP compatible)

8 data bits, 1 stop bit, no parity, up to 14400 BPS download

protocols: Xmodem, Ymodem, Zmodem, Kermit

Mail

OSI Software
, Inc.

P.O. Box 727

San Leandro, CA 94577
-
0427

USA

OSI Software GmbH

Hauptstra

e 30

D
-
63674 Altenstadt 1

Deutschland





OSI Software, Ltd

P. O. Box 8256

Level One, 6
-
8 Nugent Street

Auckland 3, New Zealand

Unpublished
--

rights reserved under the copy
right laws of the United States.

RESTRICTED RIGHTS LEGEND

Use, duplication, or disclosure by the Government is subject to restrictions as set forth in subparagraph (c)(1)(ii)

of the Rights in Technical Data and Computer Software clause at DFARS 252.227
-
70
13

Trademark statement

PI is a registered trademark of OSI Software, Inc. Microsoft Windows, Microsoft Windows for
Workgroups, and Microsoft NT are registered trademarks of Microsoft Corporation. Solaris is a registered trademark of Sun
Microsystems. HP
-
UX

is a registered trademark of Hewlett Packard Corp. IBM AIX RS/6000 is a registered trademark of the
IBM Corporation. DUX, DEC VAX and DEC Alpha are registered trademarks of the Digital Equipment Corporation.

max1000u.DOC



199
7 OSI Software, Inc. All rights reserved

777 Davis Street, Suite 250, San Leandro, CA 94577

August 11, 1997

iii

Table of Contents

Introduction

................................
................................
.............................

1

PI Point Definition

................................
................................
...................

2

Quality Tags

................................
................................
.........................

4

Text DCS Data Type

................................
................................
............

4

Installing Program

................................
................................
...................

5

Setting up Interface

................................
................................
.................

6

Starting Interface

................................
................................
.....................

8

Stopping Interface

................................
................................
...................

9

Error and Information Messages

................................
...........................

10




August 11, 1997

1

Introduction

The MAX 1000 Interface provides two way communications between the PI System and the
MAX 1000 Control System. The interface runs on a Digital Alpha or VAX Syste
m and
connects to a MAX 1000 server process on the MAX 1000 SDCD (Unix Server) via TCP/IP.
Installation of Digital TCP/IP Services for OpenVMS Version is required prior to building and
running the interface. Digital’s TCP/IP is the only TCP/IP protocol s
tack supported by this
interface.

The MAX 1000 to PI interface handles data conversions for ASCII and floating point data
types between the PI Server and the MAX 1000 DCS. When the interface reads a floating
point value on the DCS it is converted from IEE
E floating point to PI’s internal floating point
data types. During write operations, the interface converts data from PI’s internal floating
point format to IEEE floating point format. For ASCII data types, the value returned from the
DCS must match a d
igital state in PI’s digital state table.


Supported
Features

Sign up for updates

Yes

Exception reporting

Yes

PINet

Yes

Outputs

Yes

Vendor software required

Yes

Failover

No

Maximum

points

Limit by resource

MAX Control Systems MAX 1000 for VMS

Interface Documentation


2

OSI Software, Inc.

PI Point Definition

A PI point or tag is a single tagname.parameter from the MAX 1000. The following PI point
attributes determine how values are interpreted as they are moved from the MAX 1000 to PI or
PI to the MAX
1000.

Point Source

The point source is any one
-
character value; for example
M.

The point source must be defined
in the point source library before interface operation on version 2.X of the PI system. Also, the
point source used in the PI tag definition sh
ould match the point source location maximum and
minimum values are shown

Source tag

For outputs, the tag you create is only a pointer tag. The name of the tag, containing the values
to be sent to the MAX 1000, must be entered here. If this field is empty
, the tag itself contains
the values to be sent.

Instrument tag

The Instrument tag field contains the MAX 1000 tagname.parameter for inputs. For example,
fc1000.pv would retrieve the value for fc1000.pv from the MAX 1000 DCS.

Point Type

This is usually
R

f
or analog points;
I

or
D

for digital points, modes, alarms, and ASCII values.
However, any PI point type can be used for any MAX 1000 point. For instance, an analog
MAX 1000 point may be stored in a PI point with a type of
I
. The value is rounded off in t
he
PI System in this case.

Extended Descriptor

The interface supports event
-
based inputs. To create an event
-
based point, add the following in
the Extended Descriptor of the input point:

EVENT=PI tag name

where the PI tag name is the name of the event trig
ger tag. Every time the interface receives a
new event for the event tag, the interface will read the MAX 1000 for all the event inputs
associated with this event tag. A new event is defined as a snapshot event with time stamp
greater than the existing sn
apshot time. The event
-
based input tags are useful for batch
analysis.

Location1

The interface number associates a single instance of the interface software with points in the PI
system. The Location 1 parameter and the point source are used to associate
tags with a
particular instance of the interface.



August 11, 1997

3

Location2

This parameter determines the data type on the MAX 1000 DCS for the tag specified. For each
point on the MAX 1000 there are seven possible data types. The value returned from the MAX
1000 is con
verted to the type specified in Location 2 before it is sent to PI. The table below
represents the Location code number, data type and recommended PI tag type:


Location 2

MAX 1000 Data type

Recommended PI Tag Type

0

Boolean (integer
data type)

Digital S
tate or Integer

1

IEEE Floating Point

Real

2

Word

Integer

3

ASCII Text

Digital State. See Text DCS Data Type below

4

Long

Integer

5

Boolean with Quality

Digital state for quality and digital state or integer for Boolean
value

6

IEEE floating point
with quality

Real for value and digital state or integer for Boolean value


See the discussion on Quality Tags below.

Location3

This parameter is only used for tags with DCS data types that contain both a value and a quality
(see Location 2 and the discu
ssion on quality tags below).

0

Store the Boolean or float value.

1

Store the quality value.

Location4

This parameter determines the scan class of the tag. The number of scan classes and the scan
frequencies are specified in the interface startup command

file. A value of 1 in Location4
assigns this tag to the first scan class specified in the startup file; a value of 3 assigns the tag to
the third scan class.

Location5

This field is used to specify whether the tag is input or an output.

0

Input from MAX

1000

1

Output from PI to MAX 1000.

These point attributes also affect the interface program.

Point Type

Scan

Exception Deviation

Exception Minimum Time

Exception Maximum Time

MAX Control Systems MAX 1000 for VMS

Interface Documentation


4

OSI Software, Inc.

Digital Start Code and Digital Number (PI 2.X)

Digital State Set (PI 3.X)

Th
is interface does exception reporting, so the compression minimum time and exception
minimum time should be zero. The exception
-
reporting algorithm sends values from
consecutive scans. If the compression minimum time is too long, the second of these two v
alues
will never be recorded. Use the exception minimum time only if it is necessary to throttle data
from especially noisy points. The scan attribute can be used to stop data collection.

The following point attributes do not apply to MAX 1000 interface po
ints.

Square Root

Convers

TotalCode

Quality Tags

Data types with both a value and a quality (Location 2 = 5 or 6) will require a separate PI tag
for each. Use of Location code 3 determines which value to store in the PI tag. If Location 3
is zero, the Bo
olean or float value is stored. If the Location 3 value is 1, the quality value is
stored. Quality tags should be defined as digital states, but this is not required. For PI tags
defined as Real or Integer, the system stores the quality portion as a val
ue. For digital tags, the
possible digital states are:

These values should be added to PI’s digital state table in the order presented above. The
digital start code for quality tags should be set to the digital state for Good. The number of
digital state
s should be set to three.

Text DCS Data Type

In order to store DCS text type tags in the PI archive, the points must be setup as digital state
tags. Only the first twelve characters of the value retrieved from the DCS are compared to the
text values in th
e digital state table. If a match is found, the value is stored in the PI archive. If
a match is not found, the digital state DS_ERR is written to the archive. A message is also
printed in the PI message log file indicating the missing string value.


Ou
tputs

Local outputs are transferred from the PI System to the MAX 1000 server process running on
the SDCD. An output is sent whenever the PI snapshot value, status, or exception is
considered an exception for the source tag. All outputs are sent on the f
irst scan after restarting
the interface if the tag has a good status. If the output tag is not the same as the source tag,
each output value is written to the output tag on PI so that the user has a record of when an
output event has occurred. PI excepti
on report specifications are not used for outputs to MAX
1000, but used when writing the output value to the output tag on PI.



August 11, 1997

5

Installing Program

Prior to installation of the MAX 1000 interface, complete the following:

1.

Install the TCP/IP protocol stack on
the Alpha or VAX node where the interface will run.

If the interface is going to run on a PINet node, the PINet software must be installed. Once
the PINet installation is complete, execute the command procedure
PINET:PINETVERIFY to insure the PINet softwa
re is properly installed and connecting
to the PI Home Node.

2.

Copy the files from the distribution tape to the
PIBUILD: or PINETBUILD:
directory. To
build and install the interface, execute the

pibuild:MAX1000Link.COM

command
procedure. The command proced
ures links the interface.

3.

Move the executable (max1000.exe) to the PISYSEXE directory. Copy an example
interface startup file, MAX1000.COM to pisysexe: . The file should be modified for each
specific site.

4.

Copy the startup command file, MAX!000detac
h.com to
PISYSEXE:.

5.

Copy the stop command file, max1000stop.com to
PISYSEXE
:.

MAX Control Systems MAX 1000 for VMS

Interface Documentation


6

OSI Software, Inc.

Setting up Interface

There are five option parameters in MAX1000.COM

which control the operation of the
interface program.:

Parameter

Description

/ps=

Specifies the point source
.

/if=

Specifies the interface number. See the discussion in location1.

/f=

Specifies the scan period and phase. The period is the amount of time between scans.
The phase is the time to start the first scan specified as offset from midnight.

The perio
d and phase are supplied in the format of hh:mm:ss. Separate the period and
the phase with a comma. If the phase is not defined, the interface will start the scan cycle
for this class as soon as possible.

You can define as many scan class as need.

Example
: /f=00:00:25

For a 25 second scan interval.

/ec=

Specifies the event counter number. The event counter is used for pi 2.x system. Current
version of pi 3.x system does not support event counter.

/maxhost=

Specifies the TCP/IP node where the MAX 1000 ser
ver process is running.

/port=

Specfies the TCP/IP port number where the
MAX 1000
server process is running
.


The following is a sample interface startup command file.

Max1000 /ps=M
-

! point source = M

/if=1
-



! interface number (location 1)

/f=00:0
0:10
-


! First scan class period

/f=00:00:30


! Second scan class period

/maxhost=maxserver

! host maxserver is running MAX 1000

server

/port=7000


! MAX 1000 server is on port number is 7000

For a PI 2.X Server, you need to configure the Server by addin
g event counter tags and the
point source as described below. Define each tag added to
IORates.dat

using PIDIFF or the
Point Def
display on the PI System node. You may use
SY:SNP001

as a template tag in the
Point Def

display.

Add the point source charact
er chosen for the MAX 1000 interface to the PI System using the
Point Src

display. This lets PI access and maintenance functions recognize the new interface
and allow creation of its tags. The location maximum and minimum values are shown below.

Location
number

1

2

3

4

5

Minimum

0

0

0

1

0

Maximum

99

6

1

30

1



August 11, 1997

7

You don’t need to define the point source character separately from the PI tags in a PI 3.X
Server.

Add the following states to the digital state table.



Good



Bad



Doubtful

Substituted

DS_ER
R

MAX Control Systems MAX 1000 for VMS

Interface Documentation


8

OSI Software, Inc.

Starting Interface

Start the interface with the command procedure MAX1000Detach.COM
.
MAX1000Detach.COM executes the command procedure MAX1000.COM as a detached
process.

@PISYSEXE:MAX1000Detach.COM

The interface program automatically picks up points ad
ded to the PI database and changes in
points edited in the PI database. It will process twenty
-
five point database changes every two
minutes. Time
-
stamped error messages are written to the PI message log. Messages describing
the number of points to scan
are also written whenever the interface is restarted.




August 11, 1997

9

Stopping Interface

In order to free the resources on both the Alpha and the Unix server, the interface requires a
clean shutdown. Although stopping the interface using the VMS command stop/id= command

will not cause long term problems, it can cause short
-
term problems. For example, the Unix
server process has a limited number of connections. Stopping the interface using the stop/id
command does not allow the Unix side to close the connection cleanly.

The Unix server will
eventually timeout the connection based on the Unix kernel timeout parameters for the TCP/IP
port. In other words, it could be several minutes before the Unix port closes after the
connected process has terminated.

In order to shutd
own the interface cleanly, enter the following command:

@PISYSEXE:MAX1000StopCOM

which uses OSI’s PISYSEXE:STOP.COM file. PISYSXE:STOP.COM issues a stop on the
process, but allows the process to run an exit handler to do any clean
-
up processing before
exi
ting.

Configuring Performance Points

The performance point measurement is an integer that specifies the time (in seconds) required
to update the scan list. The scan list is specified using the interface startup script and the
Location4 point attribute. S
ee the Random interface documentation for an example.

To configure a performance point for the interface, create a tag with the point source specified
for the interface. The point type should be integer. The extended descriptor should say


PERFORMANCE_
POINT

All in uppercase. Location4 should specify the scan class of interest.

MAX Control Systems MAX 1000 for VMS

Interface Documentation


10

OSI Software, Inc.

Error and Information Messages

Error condition handling is a key feature of the MAX 1000 interface. The interface handles
several error conditions in order to reduce the possibi
lity of losing process data or storing
invalid values. In order to reduce data loss, the interface automatically attempts to reconnect to
the Unix data server process if the TCP/IP connection is broken. A reconnect is attempted
before each scheduled scan

time. During the time the server process is disconnected, the
interface writes “I/O Timeout” to the PI Archive for all points due for scanning.

The interface handles errors from the server read and write processing. When a group of
points are due for in
put or output, an array of 200 values are sent to the DCS. If read/write
errors are detected, the interface sends the digital state “Bad Input” to the PI Archive.