Download as pdf or txt
Download as pdf or txt
You are on page 1of 84

Matrikon OPC Server for GCOM

User's Manual
Matrikon OPC Server for GCOM

Matrikon OPC Server for GCOM - User's Manual

For additional information on this manual, this OPC server, or Matrikon, please contact:
Address: Matrikon
1800, 10405 Jasper Avenue
Edmonton, Alberta, Canada
T5J 3N4
Phone: 780-448-1010
Fax: 780-448-9191
Web: http://www.matrikon.com
Sales: drivers@matrikon.com
Support: support@matrikon.com

CONFIDENTIAL
The information contained here in is confidential and proprietary to Matrikon.
It may not be disclosed or transferred, directly or indirectly, to any third party without the
explicit written permission of Matrikon.
All rights reserved. No part of this document may be reproduced, stored in a retrieval system,
translated, or transmitted in any form or by any means, electronic, mechanical, photocopying,
recording, or otherwise, without prior written permission of Matrikon.

© Copyright 2002
Matrikon Inc.

Matrikon Inc. Page 2 of 84


Matrikon OPC Server for GCOM

TABLE OF CONTENTS
1. Introduction................................................................................................................................................................................................................ 6
1.1 System Requirements ..................................................................................................................................................................................... 6
1.2 OPC Overview.................................................................................................................................................................................................. 6
1.3 OPC Server Overview....................................................................................................................................................................................7
2. Getting Started .......................................................................................................................................................................................................... 8
2.1 Installation ...................................................................................................................................................................................................... 8
2.1.1 Matrikon OPC Server ............................................................................................................................................................................. 8
2.1.2 Standard OPC Proxy/Stubs ................................................................................................................................................................ 8
2.1.3 Standard OPC Server Browser ......................................................................................................................................................... 9
2.1.4 Matrikon OPC Common Components ........................................................................................................................................... 9
2.1.5 Matrikon OPC Explorer ......................................................................................................................................................................... 9
2.1.6 Matrikon OPC Automation Component........................................................................................................................................ 9
2.1.7 Installation Options ............................................................................................................................................................................ 10
2.2 Licensing ........................................................................................................................................................................................................ 10
2.2.1 Hardware Key Licensing ................................................................................................................................................................... 10
2.2.2 Application-Specific Software Licensing.................................................................................................................................11
2.2.3 Feature & Computer-Specific Software Licensing...............................................................................................................11
2.2.3.1 Requesting a Software License ........................................................................................................................................ 12
2.2.3.2 Temporary Authorization of Software............................................................................................................................ 13
2.2.3.3 The Software License Key .................................................................................................................................................... 14
2.2.3.4 Licensing The Software......................................................................................................................................................... 15
2.2.3.5 Removing and/or Transferring The Software License...........................................................................................17
2.2.3.6 Licensing Contact Information and Summary .......................................................................................................... 18
2.3 Command-Line............................................................................................................................................................................................. 18
3. Configuration .......................................................................................................................................................................................................... 20
3.1 Starting Up .................................................................................................................................................................................................... 20
3.2 Server Configuration................................................................................................................................................................................22
3.3 GCOM.................................................................................................................................................................................................................24
3.3.1 Configuring A GCOM Card.................................................................................................................................................................24
3.3.2 Configuring A Controller.................................................................................................................................................................. 25
3.3.3.............................................................................................................................................................................................................................. 28
3.3.4 Configuring Datasets ........................................................................................................................................................................ 28
3.4 Alias Configuration ................................................................................................................................................................................... 31
3.5 Save the Configuration........................................................................................................................................................................... 34
3.6 DCOM Configuration................................................................................................................................................................................. 34
3.7 Statistics........................................................................................................................................................................................................ 34
3.8 Options............................................................................................................................................................................................................ 35
3.8.1 General ..................................................................................................................................................................................................... 35
3.8.2 Logging ..................................................................................................................................................................................................... 36
3.8.3 Advanced ................................................................................................................................................................................................. 38
3.9 Shutting Down............................................................................................................................................................................................. 38
4. Matrikon OPC Explorer ........................................................................................................................................................................................ 39

Matrikon Inc. Page 3 of 84


Matrikon OPC Server for GCOM
4.1 View Available OPC Servers ................................................................................................................................................................. 39
4.2 Connect to an OPC Server...................................................................................................................................................................... 39
4.3 Add OPC Groups .......................................................................................................................................................................................... 40
4.4 Add OPC Items ............................................................................................................................................................................................. 40
4.4.1 Item ID ........................................................................................................................................................................................................ 41
4.4.2 Access Path ............................................................................................................................................................................................. 41
4.4.3 Browse the Server Address Space.............................................................................................................................................. 41
4.4.4 Requested Data Type..........................................................................................................................................................................42
4.4.5 Active State..............................................................................................................................................................................................42
4.4.6 Validate the OPC Items ......................................................................................................................................................................42
4.5 Read Real-time Values ............................................................................................................................................................................42
4.5.1 Update Rate .............................................................................................................................................................................................42
4.5.2 Active State..............................................................................................................................................................................................42
4.5.3 Data Display ............................................................................................................................................................................................42
4.5.4 I/O Method............................................................................................................................................................................................... 43
4.5.5 Time Bias ................................................................................................................................................................................................. 43
4.5.6 Dead-band................................................................................................................................................................................................44
4.5.7 Advise Log.................................................................................................................................................................................................44
4.6 Write Control Values ................................................................................................................................................................................44
4.7 Options............................................................................................................................................................................................................ 45
4.7.1 General ..................................................................................................................................................................................................... 45
4.7.2 Data Transfer ......................................................................................................................................................................................... 45
4.7.3 Data Display ........................................................................................................................................................................................... 45
4.7.4 COM............................................................................................................................................................................................................. 45
4.8 Save the Session ....................................................................................................................................................................................... 45
5. Matrikon OPC Automation Component ...................................................................................................................................................... 46
6. Troubleshooting..................................................................................................................................................................................................... 47
Appendix A - Item ID Syntax........................................................................................................................................................................................... 51
A.1 General Syntax........................................................................................................................................................................................................ 51
A.2 Subscription Updates........................................................................................................................................................................................ 52
A.3 Data Set Updates.................................................................................................................................................................................................. 53
A.4 Status Items ........................................................................................................................................................................................................... 53
A.5 Dataset Types........................................................................................................................................................................................................ 54
A.6 Object Types........................................................................................................................................................................................................... 55
Appendix B - Performance.............................................................................................................................................................................................67
B.1 Data Set Use ............................................................................................................................................................................................................ 68
B.2 GCOM Capacity and Performance............................................................................................................................................................... 69
Appendix C - Distributed COM (DCOM).....................................................................................................................................................................70
C.1 DCOM Configuration Utility ..............................................................................................................................................................................70
C.2 Default Properties................................................................................................................................................................................................70
C.3 Security Permissions..........................................................................................................................................................................................71
C.4 Server Identity ....................................................................................................................................................................................................... 73
C.5 Default Protocols.................................................................................................................................................................................................. 73
C.6 Remote Program ID ............................................................................................................................................................................................. 74

Matrikon Inc. Page 4 of 84


Matrikon OPC Server for GCOM
Appendix D - OPC Compliance .....................................................................................................................................................................................75
D.1 OPC Server Object .................................................................................................................................................................................................75
D.2 OPC Group Object..................................................................................................................................................................................................75
D.3 Server Registration.............................................................................................................................................................................................76
Appendix E - OPC Quality Flags......................................................................................................................................................................................77
Appendix F - VARIANT Data Types ...............................................................................................................................................................................79
Appendix G - OPC I/O Methods .................................................................................................................................................................................... 80
G.1 Synchronous Versus Asynchronous I/O .................................................................................................................................................. 80
G.2 Device Versus Cache Reads .......................................................................................................................................................................... 80
G.3 OPC DA 2.0 versus 1.0a Asynchronous I/O ............................................................................................................................................... 81
Appendix H - Alias Configuration .............................................................................................................................................................................. 82
H.1 Scaling Expressions ........................................................................................................................................................................................... 82
H.2 Configuration CSV Format............................................................................................................................................................................... 83

Matrikon Inc. Page 5 of 84


Matrikon OPC Server for GCOM

1. INTRODUCTION
This document is the user’s manual for the . This server is an OPC™ compliant program that
allows access to ABB GCOM compliant gateways and controllers. The product has the
following features:

• Fully compliant with OPC™ Data Access Specification 1.0a;


• Communications to various ABB DCS and controller systems;
• Permits read and write access to various data objects (AI, DI, DO, etc.), DataSets and
TextSets;
• Communication with multiple GCOM cards through the same server process.
• Requires minimal configuration after installation;
• Performs extensive error tracking and management; and
• Includes Matrikon’s ProcessX Explorer for testing and configuration.

1.1 SYSTEM REQUIREMENTS


This Matrikon OPC Server has the following minimum system requirements:
• Pentium Pro/II PC with 200 MHz processor (or faster),
• 64 MB RAM
• 10 Mb free hard drive space,
• Microsoft Windows NT 4.0 SP4 (or greater),
• Network Card on the Microsoft Hardware Acceptability List (HAL).

The following is required on the ABB equipment to properly communicate with the GCOM OPC
Server:
• Properly configured GCOM card. (Refer to ABB manuals for additional information)

1.2 OPC OVERVIEW


OLE for Process Control (OPC) was designed to bridge Windows based applications and process
control hardware and software applications. It is an open standard that permits a consistent
method of accessing field data from plant floor devices. This method remains the same
regardless of the type and source of data.
OPC servers provide a method for many different software packages to access data from a
process control device, such as a PLC or DCS. Traditionally, any time a package needed access
data from a device, a custom interface, or driver, had to be written. The purpose of OPC is to
define a common interface that is written once and then reused by any business, SCADA, HMI,
or custom software packages.

Matrikon Inc. Page 6 of 84


Matrikon OPC Server for GCOM
Client Client Client
Application Application Application

OPC Interface

OPC OPC OPC


Server Server Server

Device A Device B Device C

Once an OPC server is written for a particular device, it can be reused by any application that is
able to act as an OPC client. OPC servers use Microsoft’s OLE technology (also known as the
Component Object Model, or COM) to communicate with clients. COM technology permits a
standard for real-time information exchange between software applications and process hardware
to be defined.

1.3 OPC SERVER OVERVIEW


This OPC server follows the requirements of the OPC specification to provide data access to an
OPC client. This server implements OPC Data Access (DA) version 1.0a and 2.0 of the OPC
custom interface.
Also, the server is optimized for high performance and uses multithreaded technology to provide
efficient response to client requests. This approach allows multiple clients to connect to and
effectively use the resources of a server.
This Matrikon OPC server requires very little configuration after installation. It manages its
communication automatically, providing optimal device polling with no additional configuration
required by the user. This provides a flexible and powerful method to access data that is still
simple to manage.
This OPC server (as all of Matrikon’s OPC servers) is guaranteed to be 100% compliant with the
OPC DA 1.0a and 2.0 specification. In addition, since our applications are sold world wide,
either by vendors or directly by Matrikon, we have developed a comprehensive set of standards
and tools to ensure that our interfaces are:
• Easy to use
• Robust
• Reliable
• Efficient
• Complete with error checking and recovery procedures
The focus of Matrikon is to develop strong long-term relationships with our clients. To that
extent we make it a priority to become familiar with both the business and technical
requirements of all our clients. This enables us to provide innovative services and solutions to
enhance the technology direction selected by our clients within the framework in place today. At
Matrikon we aim to provide solutions to meet your requirements.

Matrikon Inc. Page 7 of 84


Matrikon OPC Server for GCOM

2. GETTING STARTED
This section guides you through the process of setting up a Matrikon OPC Server for real-time
data access. Please follow the instructions carefully to avoid problems.

2.1 INSTALLATION
The installation program for a Matrikon OPC Server comes on either CD-ROM or 3½” floppy
disks. Insert the media in the drive and choose Add/Remove Programs from the Control Panel.
Click Install and follow the instructions from the Installation Wizard.
The installation program copies all necessary files to the target computer, registers the various
software components, and creates short-cut icons in the Start menu.

2.1.1 MATRIKON OPC SERVER


In addition to the standard Matrikon OPC Server files, the Matrikon OPC Server for Device
installs the following files. These files are installed by default in the MATRIKON\OPC\GCOM
directory under the Program Files folder.

Filename Description
OPCGCOM.EXE Matrikon OPC Server for GCOM Devices Executable
PSTCFGGCOM LIB.OCX Configuration Panels ActiveX Component

The version-independent program ID for the server is "Matrikon.OPC.GCOM ". The version-
specific program ID for this version of the server is "Matrikon.OPC.GCOM.1".
The Matrikon OPC Server for GCOM Devices uses a software key for licensing. Contact
Matrikon at drivers@matrikon.com to obtain the registration code for this server.

2.1.2 STANDARD OPC PROXY/STUBS


In compliance with OPC standards, Matrikon OPC Servers install and register the official OPC
proxy/stub DLL’s in the Windows NT SYSTEM32 directory. These files contain version
information so that they avoid overwriting newer files with outdated ones.

Filename Description
OPC Data Access 2.0 and 1.0a Interfaces Marshalling
OPCPROXY.DLL
Library
OPCCOMN_PS.DLL OPC Common 1.0 Interfaces Marshalling Library
OPC_AEPS.DLL OPC Alarms and Events 1.0 Interfaces Marshalling Library
Vendors were originally required to supply their own version of the OPC proxy/stub.
Unfortunately, this proved to cause conflicts between various versions of the DLL’s
when products from different vendors were installed on the same machine. To solve
Note this problem, the OPC Foundation created official DLLs and they now require that all
vendors install these instead. However, older OPC server installation programs may
still install the old DLLs, preventing new servers from functioning properly. If this

Matrikon Inc. Page 8 of 84


Matrikon OPC Server for GCOM
occurs, simply run a newer installation again to ensure that the official DLLs are
installed.

2.1.3 STANDARD OPC SERVER BROWSER


In compliance with OPC standards, Matrikon OPC Servers install and register the official OPC
Server Browser in the Windows NT SYSTEM32 directory. This file contains version
information to avoid overwriting a newer file with an outdated one. The installation program
also ensures that the ActiveX Interface Marshalling Library is on the target machine so that the
server functions properly.

Filename Description
ACTXPRXY.DLL ActiveX Interface Marshalling Library
OPCENUM.EXE OPC Server Browser

2.1.4 MATRIKON OPC COMMON COMPONENTS


Matrikon OPC Servers require the following files to function properly. These files are installed
by default in the MATRIKON\OPC\COMMON directory under the Program Files folder (except
for EXPREVAL.DLL, which is installed in the SYSTEM32 directory).

Filename Description
PSTCFG.EXE Matrikon OPC Server Configuration Client
PSTCFGPS.DLL Matrikon OPC Server Configuration Marshalling Library
OEM_Matrikon_OPC.DLL Matrikon OPC OEM Badge Library
EXPREVAL.DLL Expression Evaluation Library (for aliases)

2.1.5 MATRIKON OPC EXPLORER


Matrikon OPC Explorer is a general-purpose OPC client that is useful for testing the capabilities
of any OPC server. The file is installed by default in the MATRIKON\OPC\COMMON
directory under the Program Files folder. A shortcut icon for the program is added to the Start
menu (in the common group).

Filename Description
OPCEXPLORER.EXE Matrikon OPC Explorer (General-purpose OPC Client)

2.1.6 MATRIKON OPC AUTOMATION COMPONENT


The Matrikon OPC Automation Component enables developers to access OPC data from client
applications developed using Automation tools such as Visual Basic, VBA, and VB Script. This
component is installed by default in the MATRIKON\OPC\COMMON directory under Program
Files.

Filename Description
Matrikon Inc. Page 9 of 84
Matrikon OPC Server for GCOM

OPCDAAUTO.DLL Matrikon OPC Automation Component

2.1.7 INSTALLATION OPTIONS


Just before the installation program finishes, it offers two additional options. One option
specifies whether the server should be installed as an NT service instead of a local executable.
The other option provides a means to restore the older “ProcessX.OPC.Device” program ID to
retain compatibility for clients that were coded to use earlier versions of the server.

2.2 LICENSING
Most Matrikon OPC products require some form of license criteria to be met in order to function
fully. Licensing for a particular server can use either a hardware key or a software key. There are
two types of software key licensing. Table 1 describes the licensing methods supported by
Matrikon OPC products.

Licensing Method Product


OPC Server for Triconex, version 2.x and higher
Feature and Computer Specific OPC ODBC Client
OPC Excel Add-in
OPC Servers for:
• Allen-Bradley PLCs
• APACS
• DDE
Application Specific
• Modbus Devices
• Siemens TI 505 PLCs
• Siemens LSX
• Yokogawa
All products not mentioned in either of the software
Hardware Key
licensing methods.
Table 1 – Supported licensing methods for Matrikon products

2.2.1 HARDWARE KEY LICENSING


For servers that support hardware key licensing, a HASP hardware key coded to that particular
program can be purchased. This key must be securely fastened to the parallel port of the
computer on which the server is installed. It does not interfere with hardware keys from other
vendors, nor does it affect other normal parallel port applications, such as printing.
If a server uses hardware licensing, then the installation program will install a device driver for
HASP keys on the target system. When the server starts up, it will display a message box if it

Matrikon Inc. Page 10 of 84


Matrikon OPC Server for GCOM
does not detect the correct key. It will then function for a demonstration period of two hours
before “timing out”. At this point all device communication will cease.

2.2.2 APPLICATION-SPECIFIC SOFTWARE LICENSING


For products that support application-specific software licensing, a special ten-digit number is
supplied when the server is purchased. This number is specific to the application being used, and
must be entered in the Software Registration screen, available from the About box for the server
(see the section on configuration for instructions on how to access the About box). The About
box will include the words “UNREGISTERED COPY” if the number is missing or incorrect.

2.2.3 FEATURE & COMPUTER-SPECIFIC SOFTWARE LICENSING


For products that support feature- and computer-specific software licensing, a license is issued
that is specific to a given set of features in the application, and the computer on which it is
installed. The license will not work on another computer, and will only support the features that
have been purchased. The balance of this section describes this licensing method in more detail.

Matrikon Inc. Page 11 of 84


Matrikon OPC Server for GCOM
2.2.3.1 REQUESTING A SOFTWARE LICENSE

Because feature- and computer-specific licensing is particular to a given computer, a software


license key cannot be created and issued to you until the software is actually installed on the
machine where it will be used. To accommodate this fact, a ‘Software Authorization Request’
file is created, based on information that you provide during the installation process. This text-
based file is named AuthorizeRequest.MTK, and is created in the folder where the software is
installed. The file contains all the information needed for Matrikon to issue a software license.
The install program gives you the option of emailing the request file to Matrikon automatically
during installation. If you do not select this option, you can manually send the file to Matrikon’s
Support group via email or ftp, or you can call our support team and provide them with the
information contained in this file. Licensing contact information is included at the end of this
section.
Once Matrikon receives the request file, a software license key will be issued to you. The method
for authorizing the software with the supplied key is discussed in section 2.2.3.4.

Matrikon Inc. Page 12 of 84


Matrikon OPC Server for GCOM
2.2.3.2 TEMPORARY AUTHORIZATION OF SOFTWARE

In addition to creating the authorization request file, the installation program also provides you
the option to create a temporary software license key. This allows you to use the software before
receiving your permanent software license key, or if you’re evaluating the software, to try it
before purchasing. The key will allow the product to run in fully functional mode for a specific
amount of time from the installation date, typically 30 or 90 days.
If you do not select this option during installation, you can perform temporary authorization at a
later time, using the supplied License utility application. This program is described in more detail
in section 2.2.3.4.

Matrikon Inc. Page 13 of 84


Matrikon OPC Server for GCOM
2.2.3.3 THE SOFTWARE LICENSE KEY

If you have purchased the software and sent in the authorization request file, a software license
key file will be issued to you. Typically the key file is sent by email, however there are alternate
methods of receiving the software key. These methods are outlined during the installation
process.
When you are sent the key via any method that is file based, for example email, ftp or disk, the
key is contained in a file named Authorize.MTK. If you are provided the key information by
another method, you must enter the information into a file that you create, based on instructions
from Matrikon technical support. You can use a text-based editor such as Notepad to create the
file.
After receiving or creating the file, you should make a backup copy before you do anything else
You can use the backup file to reauthorize the software should you need to reinstall it at a later
date on the same computer.
After you have made a backup copy, store the original file in the same folder where the product
has been installed.

Matrikon Inc. Page 14 of 84


Matrikon OPC Server for GCOM
2.2.3.4 LICENSING THE SOFTWARE

With the key file residing in the application’s installation folder, you can now authorize the
software to use the license key by running the provided License utility application. Access to this
program is available from a program shortcut on the Start menu. Typically the path to this
shortcut is:

Start Menu\Programs\Matrikon OPC\<Product Name>\License Utility

Where <Product Name> is the name of the Matrikon software being licensed. When you run this
application, you are presented with a list of licensing options as shown in Figure 1.

Figure 1 - Software Licensing application

Table 2 describes the software licensing options that are available. When you select an option, a
default path and file name for the selected option is displayed in the Authorization file path field.
Normally the default information does not need to be modified, but you can modify this field if
required. You can also use the Browse button next to the field to locate a specific authorization
file.

Matrikon Inc. Page 15 of 84


Matrikon OPC Server for GCOM

Licensing Option Description


Creates a software license request file to be submitted to
Matrikon. Normally you do not need to select this option, as
Create authorization request a request file is generated automatically during the
installation of the product. This option is normally disabled;
contact Matrikon if you wish to use this option.
Reads the specified authorization key file, which contains a
License this software license key provided by Matrikon. If the authorization file is
valid, the product is licensed for use.
Removes the licensing for the product that was previously
licensed. Use this option if you want to transfer the license to
De-license this software
a different computer or return the software after an
evaluation period. Refer to section 2.2.3.5 for further details.
Allows the product to run in fully functional mode for a
Enable temporary specific number of days from the installation date, typically
authorization 30 or 90. Use this option if you did not enable temporary
licensing during installation.
Table 2 - Authorization options

To authorize the software, select the License this software checkbox. The application will create
a default path and file name for the authorization file to be processed. Normally this will be a
path to the folder where the software is installed, and the file name will be Authorize.MTK. If the
default information is not correct, modify it, or use the Browse button to locate the authorization
file. Otherwise, press OK and the application will attempt to process the key file.
A confirmation message will verify that the software has been successfully licensed. If an error
occurs, note the error information carefully, and contact technical support.

Matrikon Inc. Page 16 of 84


Matrikon OPC Server for GCOM
2.2.3.5 REMOVING AND/OR TRANSFERRING THE SOFTWARE LICENSE

If you need to install the software on a different computer, or return the software, you must de-
license the currently installed version first. To do this, send the file RemoveRequest.MTK, to
Matrikon technical support for processing. This file is generated during the authorization
process, and can be located in the folder where the software was installed.
Upon receipt of this file, Matrikon will send you a de-licensing key file named Remove.MTK,
that you copy into the installation folder, and process using the De-license this software option
of the authorization program.
After you de-license the software, a validation file named RemoveValidate.MTK, is created to
confirm that the software was de-licensed correctly. Send this file to Matrikon to finalize the de-
licensing process.
If you are transferring the software to another computer, you can install it there first, and send
your new authorization request file along with the de-license validation file at the same time.
Matrikon will then issue you a license authorization file for the new installation. Before you
receive your new license, you can use the temporary authorization feature to enable the software
immediately on the new installation.

Matrikon Inc. Page 17 of 84


Matrikon OPC Server for GCOM
2.2.3.6 LICENSING CONTACT INFORMATION AND SUMMARY

The following information will help you to easily determine who to contact, and what
information is required for any part of the software licensing process:

Contact Method Information


Email support.license@matrikon.com
Phone 780 448-1010 extension 4011
Fax 780 448-9191

The following table summarizes the software licensing process:

Step Description
Software has been installed. Send AuthorizeRequest.MTK to our support group.
Authorization file received Run the Software Authorization licensing program, and
from Matrikon. select the License this software option.
Transfer or Remove software Send RemoveRequest.MTK to our support group. Matrikon
license. will issue a removal key file, Remove.MTK.
Removal file received from Run the Software Authorization licensing program, and
Matrikon. select the De-license this software.
Software successfully de-
Send RemoveValidate.MTK to our support group.
licensed.
Run the Software Authorization licensing program, and
Create a new authorization select the Create authorization request option. Normally
request on the same computer. disabled, contact Matrikon support for information on how to
use this option.

2.3 COMMAND-LINE
The installation program registers the Matrikon OPC Server to run as either a local executable or
an NT service (based on user choices) and creates a shortcut in the Start menu. Use this shortcut
to invoke the configuration utility, which will in turn start up the server. For reference purposes,
the command-line parameters for the OPC server executable are as follows.

Parameter Description
/REGSERVER Registers the OPC server to run as a local executable
–REGSERVER (uninstalling the NT service if necessary).
/SERVICE Registers the OPC server to run as an NT service. By default

Matrikon Inc. Page 18 of 84


Matrikon OPC Server for GCOM
–SERVICE the service is set to run as the System account as an
interactive process.
/UNREGSERVER Removes all registry entries for the OPC server (uninstalling
–UNREGSERVER the NT service if necessary).
Starts up a copy of the OPC server as a local executable. It is
(no parameters) preferable to start the server up from the configuration utility
or another OPC client instead of from the command line.

Matrikon Inc. Page 19 of 84


Matrikon OPC Server for GCOM

3. CONFIGURATION
Matrikon OPC Servers require a very small amount of configuration to function properly. This
section describes how to create a configuration for your OPC Server using the supplied PSTCFG
utility application. It begins with a generic discussion of using PSTCFG, and is followed by
specific details on configuring devices supported by this OPC Server.

3.1 STARTING UP
Choose the appropriate shortcut for the OPC server from the Start menu to invoke the PSTCFG
configuration utility. By default, the shortcut has the name “Matrikon OPC Server for Device”
and appears in “Matrikon OPC/Device” under the common section of the Programs folder.
If the OPC server is not currently running, then it will launch when the configuration utility is
started. If the server runs as a local executable, the splash screen is displayed and then a small
red X appears in the Tool Tray at the right-hand side of the Task Bar. Right-click on the X to
display the following menu.

Click “Show Control Panel” to display the control panel for the server. Double clicking on the X
accomplishes this as well. The control panel displays general statistics for the server, such as the

number of clients currently connected.


The control panel always stays on top of every other window on the desktop so that it can be
used to monitor the server at all times. Double-click on the title bar to make the control panel
“window shaded”. Click the X in the top right-hand corner to hide the control panel.
Click “configure” from the control panel or the pop-up menu to display the main configuration
window for the server. If the server runs as an NT service, the splash screen is not displayed, nor
does the X appear in the Tool Tray. Instead, the main configuration window is displayed
immediately.
Click “about” from the control panel, pop-up menu, or Help menu in the main configuration
window to display the About Box for the server. The About Box contains the server name and
version number as well as other information about the software and Matrikon. It may also
contain a link to a software registration screen for servers that use software licensing.
The shortcut to the configuration utility has the following syntax for command-line options.

Matrikon Inc. Page 20 of 84


Matrikon OPC Server for GCOM
PSTCFG.EXE PSTCFGMatrikon.OPC.Device.# Matrikon.OPC
The second parameter specifies which OPC server is to be configured. A mechanism in
the utility prevents more than one copy of itself from connecting to the same OPC
server.
Note
The main configuration window displays a tree-view of objects configured in the server. Select
an object to display its current configuration, which appears on the right-hand side of the
window.

If the server runs as a local executable, it will remain running even after the main configuration
window is closed, even if no clients are connected. Displaying the control panel or main
configuration window for the server will “lock” it so that it will not shut down while
configuration is being performed.
If the server runs as an NT service, it will remain running so long as there are clients connected
to it. Closing the main configuration window will shut down the configuration utility, but will
not interfere with the normal operation of the server.

Matrikon Inc. Page 21 of 84


Matrikon OPC Server for GCOM

3.2 SERVER CONFIGURATION


Select “Server Configuration” in the tree view and choose Define New… from the Edit menu.
The Insert New Object dialog box appears. Choose the desired type of object from the list and
click OK.
Different objects may be available depending on which object is currently selected in
the tree view.
Note

Once an object is selected, its configuration panel appears. Each type of configurable object has
its own configuration panel allowing users to enter object-specific information. Change the
configuration settings as desired and press OK to create the object.

Three fields are common to all types of object: Name, Description, and Enabled. The Name field
specifies a unique name for the object. It is used later as part of any item ID’s that refer to data

Matrikon Inc. Page 22 of 84


Matrikon OPC Server for GCOM
items under this object. Object names are automatically converted to title case for display
purposes. The Description field can contain up to 63 characters of text for reference purposes.
The Enabled checkbox specifies whether or not communication should be enabled for an object.
Normally it should be checked. It may be useful to disable certain objects, especially if the
devices that they refer to are disconnected or malfunctioning, in order to improve the
performance of communication with the other objects. Real-time values are not available from
disabled objects.
Once an object is created, select it in the tree view and change the settings in its configuration
panel to alter its configuration. Click Apply to accept the changes, or Cancel to discard them. To
remove an object, select it in the tree view and choose Delete from the Edit menu.

It may be useful to change the default settings for a new object to avoid repetitive work. Choose
Defaults from the View menu in order to alter the default settings for available object types.
Simply edit the settings in the various configuration panels and choose OK. The next time an
object of a particular type is created, it will use these default settings for initial values.

Matrikon Inc. Page 23 of 84


Matrikon OPC Server for GCOM
The upcoming section contains further information on the specific types of objects available for
this OPC server, and how to configure them.

3.3 GCOM
3.3.1 CONFIGURING A GCOM CARD
All GCOM cards that the bridge must communicate with must be configured. The following
illustration shows the configuration option that must be set up.

For the bridge to communicate with a ABB controller, such as a Plant Network Gateway, Kent
4000, or Advant controller, a GCOM card must be configured on the device itself as well as in
the bridge. The GCOM bridge configuration has the following options:

Field Description
Name This can be any name.

Matrikon Inc. Page 24 of 84


Matrikon OPC Server for GCOM

Description Any description may be entered here. Blank is also valid.


Enabled The Enabled checkbox must be checked for communications with
the card to occur!
Network This is the network number assigned to the GCOM card.
Node This is the node number of the controller where the GCOM Card
resides.
MMI The MMI number is an identifier used by GCOM with which to
reference the bridge process. Valid values are 1 - 3, typically 1 should
be used.
LANA The LANA number is the value assigned to the binding of the Matrikon
GCOM Protocol Kernel Mode driver to the Netbios service. (Go to
Network Properties, select services, highlight Netbios and select
properties. The LANA number for GCOM should be listed.)
Ping Interval This defines how often the bridge should check the status of the nodes
on the network. Nodes which go off line are automatically disconnected
in the bridge, then re-connected when the ping identifies that the node is
back up.
** A value of 0 will disable the ping and the GCOM card will always be
considered connected.
Plant Network This identifies whether the card being connected to resides on a Plant
Gateway Network Gateway. This will allow the Ping to also detect any MOD300
nodes and controllers on the network.
Number of packets This allows a limit to the number of packets per second written FROM
per second the OPC server to the GCOM device. The minimum allowable value
for this field is 10.
Delay between This allows a delay to be introduced, in milliseconds, between packets
packets FROM the OPC server to the GCOM device. NOTE that this will take
precedence over the number of packets per second.

3.3.2 CONFIGURING A CONTROLLER


The following illustration shows the settings that are required for each controller that will be
connected to on the plant network. Any objects that are to be accessed must be associated with a
controller, and that controller must be configured here. NOTE that the type of controller must be
specified, so that the controller link knows how to specifically communicate to that type of
controller.

Matrikon Inc. Page 25 of 84


Matrikon OPC Server for GCOM

The next illustration shows a typical selection list of available controllers, available to choose
from when creating a new controller link.

While each controller requires its type to be specified by selecting the appropriate type, the
controller links themselves all have identical settings, described by the following table:

Matrikon Inc. Page 26 of 84


Matrikon OPC Server for GCOM

Field Description
Name This can be any name.
Description Any description may be entered here. Blank is also valid.
Enabled The Enabled checkbox must be checked for communications with the
card to occur!
Network This is the network where the defined controller resides.
Node This is the node number of the controller.
Autoprobe Assumes that all network numbers in the same decade are possible
backups should the primary configured network fail.
Redundant Networks Explicitly specifies one or more backup networks. Use this or
Autoprobe, but not both together.
Return to primary on Monitor the original network after switchover and, should it begin
recovery working again, switch back immediately without waiting for the backup
network to fail.
Minimum Switching is locked out for this many seconds after a switch takes place.
Switchover Delay This is to prevent thrashing between primary and backup networks.
ObjRes Retries This indicates how many attempts should be made to resolve an object
name. (This is how the bridge connects to an object. If the name can not
be resolved, all subscriptions to the object will have a status of BAD, Not
in service.
** A value of 0 will allow the bridge to continually try to resolve the
object name.
ObjRes Timeout This is the period of time the bridge will wait for a response to an attempt
to resolve an object name.
Obj Package Time This is the delay for which the server will wait after receiving the last
item from an OPC client to ensure that no other items have been added.
No action will be performed until this period has expired. This parameter
does not apply to Data Sets, only objects.

When configuring redundancy, one must remember that redundancy may have been
already configured in the controller itself. In such a case, if communication is lost
between the OPC server and the GCOM DCS system, the DCS may fail over to a
Note different GCOM network. Consequently, the OPC Server may indicate that
communication has been lost between itself and the controller. Thus it is important to
configure the OPC Server to reflect all networks that are accessible by the GCOM DCS

Matrikon Inc. Page 27 of 84


Matrikon OPC Server for GCOM
3.3.3

3.3.4 CONFIGURING DATASETS

The bridge supports read data sets, write data sets, demand data sets and text sets. This first
screen shot shows the settings common for all data sets.

Field Description
Name This can be any name.
Description Any description may be entered here. Blank is also valid.
Enabled The Enabled checkbox must be checked for communications with
the card to occur!

Matrikon Inc. Page 28 of 84


Matrikon OPC Server for GCOM

Read/Write Indicator This indicates the direction the data set is to be sent.
READ – This data set will be read. This means the controller configured
with this data set will be writing it to the bridge. (Controller -> Bridge)
WRITE – This data set will be written. A corresponding data set should
be configured on the controller, and bridge will write to the data set on
the controller.
(Bridge -> Controller)
Data Set Identifier This must be the same identifier number as the data set configured on the
controller.
Update Interval This indicates how often the bridge should expect an update from the
controller for this data set, or how often this data set needs to be written
to the controller.
**A value of 0 identifies this data set as being a demand packet!
Exception Mode Not currently used by any controller configuration.
Enabled

The data configuration of the data set must match the controller configuration exactly. The data
types must be identical to translate the proper values.

Matrikon Inc. Page 29 of 84


Matrikon OPC Server for GCOM

Each of the 24 values in the edit box must have the correct data type selected. If the data type is
incorrect, values that are read or written may appear to be incorrect! To set all the values at once
right click on the Values list box.
If only one point is configured, then the bridge will only write out the specified number of
values. If the incoming data set has fewer points in the message, then only the specific points
will be updated. If there are more data points in the incoming data set, then those extra points are
ignored.
Text sets are slightly different than data sets in that only one value can be transmitted at a time.
Additionally, the size of the text string must be indicated. Again this must be exactly the same as
what is configured on the controller.

Matrikon Inc. Page 30 of 84


Matrikon OPC Server for GCOM

3.4 ALIAS CONFIGURATION


Matrikon OPC Servers provide the ability to create user-defined aliases that can be used in place
of regular OPC items. This is particularly useful when the item path for a given server is very
complex or difficult to remember (i.e. "DEV0.98.76.5.4321=AI.CV"). Servers can also be
configured so that client applications have access to configured aliases only, rather than every
available item.
You can also use Aliases to create ‘holding registers’ by leaving the Item Path value blank. In
this case, the alias acts as a generic Read/Write variable for all clients connecting to the OPC
server. When using the Alias in this matter, you must explicitly define the data type when you
create the alias point, rather than using 'Default' data type, OR, define the data type when
writing/read values from the Alias via an OPC client, rather than using the Default data type.
To create an alias, select "Alias Configuration" in the tree view, choose Insert Alias Group from
the Edit menu, and enter a name for the group. It is usually better to create aliases in groups
rather than directly under the root. Select the newly created group and choose "Insert New Alias"
from the Edit menu.

Matrikon Inc. Page 31 of 84


Matrikon OPC Server for GCOM

In the "Insert New Alias" dialog box, enter a name for the alias and the item path (item ID) for
the OPC item that it references. Click the ellipsis button to browse for available item ID's on the
server. Click Save to save the alias, or click "Save & Create New" to configure another one.
Select the “Default to new” checkbox to make the “Save & Create New” button the default
control when you press Enter, rather than Save. Double-click an existing alias or press Enter
while it is selected to change its settings.

Additional options available when creating an alias are as follows. The Data Type drop-down
box allows the user to specify a "canonical" data type for the alias. The OPC item value is
coerced to this data type prior to being sent to the client. The Read-only checkbox prevents client
applications from writing to this item. The Update Rate and "Poll when inactive" fields work
together to ensure that data for the item is always received at a particular rate even if it is not
being read by the client.
Certain standard scaling formulas may also be applied to the alias. Click the button marked
"Scaling >>" to display the scaling portion of the dialog box. Click the tab corresponding to the
desired type of scaling and fill in the parameters as needed. Click "<< No Scaling" to hide the
scaling portion. When the scaling portion is not visible, no scaling is applied to the alias.
The four available types of scaling are Linear, Square Root, Gain/Offset, and Expression. For
each type of scaling, a different algorithm is applied to the incoming value before it is passed on
to the client. A reverse algorithm is applied to any values written to the alias before they are
passed on to the OPC item.

Matrikon Inc. Page 32 of 84


Matrikon OPC Server for GCOM

Scaling Algorithm Reverse Algorithm


 Scaled High − Scaled Low   Raw High − Raw Low 
Linear (x − Raw Low )  + Scaled Low

(x − Scaled Low )  + Raw Low

 Raw High − Raw Low   Scaled High − Scaled Low 

 Scaled High − Scaled Low   Raw High − Raw Low 


x − Raw Low   + Scaled (x − Scaled Low )2   + Raw
 (Scaled High − Scaled Low )
Square Root  Raw  Low 2  Low
 High − Raw Low  

x − Offset
Gain/Offset Gain ⋅ x + Offset
Gain

Expression i.e. “SQRT(INPUT) + 5” i.e. “(OUTPUT – 5) * (OUTPUT – 5)”

Both Linear and Square Root scaling use the same parameter. Enter the high and low range for
the expected raw values and their corresponding high and low scaled values. Optionally, select
the corresponding checkboxes to "clamp" the value to its high or low limit to prevent it from
going out of range. Gain/Offset is a special type of linear scaling where only a scaling factor and
offset need to be specified (no limits are assumed). Incoming values must be numeric for these
scaling types to work.
Expression scaling provides the ability to enter simple text equations to be applied to incoming
and outgoing values. Enter the equation to be applied to incoming values in the Input field and
enter the equation to be applied to outgoing values in the Output field. Click one of the ellipsis
buttons to bring up the expression wizard to assist with the creation of a formula. See the Annex
for further information about expression syntax.
Select an alias group in the tree view to display the aliases configured in that group. The name,
item path, data type, access rights, and update rate for each alias are listed in the right-hand side
of the window.

The alias database can be exported to and imported from comma-delimited text files (CSV).
Choose Export Aliases from the File menu and choose a file location to export the current
configuration. Choose Import Aliases from the File menu and choose the desired file to import
aliases into the current configuration. See the Annex for a description of the alias CSV file
format.

Important Caveats:
1. You should specify a variant type (e.g. VT_UI2, VT_I4) when requesting data from
an alias; by default, a scaled alias becomes a variable of type REAL.
Note 2. Using Square Root scaling is not recommended for signed numbers. If the square
root expression becomes negative, the alias will return –1, bad quality.

Matrikon Inc. Page 33 of 84


Matrikon OPC Server for GCOM
3. Using illegal expressions, such as zero for the (high-low) range, may be fatal to the
OPC server, client, or communications.
4. It may be possible to make a configuration unloadable by using illegal expressions.
If this occurs, the OPC server may fail on startup. If it does, rename the
configuration save file to something else so that the OPC server will not load it on
startup, and create a new configuration file, or edit the XML file (if it is in XML) to
correct the bad alias settings.

3.5 SAVE THE CONFIGURATION


Once the server and alias configuration is complete, be sure to save the settings to disk. Choose
Save from the File menu and enter a file name and location. Choose New to clear the
configuration. Choose Load and select a file in order to restore the settings contained in that file.
See the section on the Options dialog for a description of how to set the server to load a
configuration file automatically at start-up.

3.6 DCOM CONFIGURATION


Choose DCOM Configuration from the Tools menu to edit DCOM settings in order to allow
clients on remote computers to connect to the server. DCOMCNFG is a standard Microsoft
utility and can be started from the command-line as well.
DCOM security settings are stored in the registry and loaded by COM when a server
starts up. Therefore, the OPC server must be shut down and restarted for DCOM
configuration changes to take effect. See the later section on Distributed COM for
Note further information on this subject.

3.7 STATISTICS
Select an object in the tree view under “Server Configuration”. If the statistics panel is not
already showing then choose Statistics from the View menu. The statistics panel appears just
below the object tree view. It displays any communication statistics that are supported for the
selected object. Different objects supply different statistics as appropriate. The possible values
are as follows.

Statistic Description
Sent The number of messages (requests) sent to the device.
Received The number of messages (responses) received from the
device.
Timed Out The number of timeout periods that have elapsed waiting for a
response.
Retried The number of messages re-sent to the device.
Failed The number of failed transactions (due to timeouts or
communication errors).
Overrun The number of times that the program failed to get a response

Matrikon Inc. Page 34 of 84


Matrikon OPC Server for GCOM
from the device before it needed to send out the next request.
Statistics can be useful for troubleshooting communication problems. If the server stops
supplying data for items under a particular device then check the statistics for that device to see
if any problems are occurring (such as Time Outs, Overruns, or Failures). Many device
configurations support tuning parameters for communication such as time out intervals and
maximum number of retries. Changing some of these settings may help to overcome
communication problems.
Click the “Reset Statistics” button at the bottom of the Statistics panel or choose “Reset
Statistics” from the View menu in order to reset the counters for the selected object to zero. The
displayed statistics are updated roughly once every second.

3.8 OPTIONS
Choose Options from the View menu to change the advanced options for the server. These
values are stored in the registry and loaded by the server at start-up. Therefore, the server must
be shut down and restarted in order for changes in this dialog to take effect. Click the Defaults
button to restore the original settings for the server.

3.8.1 GENERAL
The General tab contains settings related to the configuration of a server. Select the “Load
configuration on start-up” checkbox and enter a filename in the edit box below it to have the
server automatically use the specified configuration file when it is launched. Click the ellipsis
button next to the edit box to browse for the file. Select the “Save current configuration on
shutdown” to have the server automatically save any changes to the configuration when it shuts
down (not usually needed).

Matrikon Inc. Page 35 of 84


Matrikon OPC Server for GCOM

Select the “Launch configuration program on start-up” checkbox to have the server automatically
spawn the configuration utility when it starts up as a local executable. Otherwise, the
configuration utility will have to be started manually from the Start menu. The configuration
utility must always be started manually when the server runs as an NT service.
Select the “Restrict items to pre-configured aliases only” checkbox to prevent client applications
from connecting to anything except for configured aliases in the server. When this box is
selected, client applications will not be able to access any “raw” OPC items. This may be useful
for security reasons.

3.8.2 LOGGING
All Matrikon OPC Servers produce log files that record errors and debugging information. If
difficulties occur with a server then the log files can be extremely valuable for troubleshooting.
By default, the servers log very little information. The Logging tab of the Options dialog
contains settings to control server logging.

Matrikon Inc. Page 36 of 84


Matrikon OPC Server for GCOM

General Activity Logging records information about the internal workings of the OPC server. It
is useful for troubleshooting problems with configuration and device communication. Select the
“Enable activity logging” checkbox and choose the desired log level from the drop-down box.
Available log levels include Medium, Low, and None.
The higher the log level, the more information is recorded. However, server
performance may decrease at higher log levels. The recommended operating level is
Low.

Note
Enter a filename in the edit box or click the ellipsis button to browse for a file location. The
default log file is “PSTCFGMatrikon.OPC.Device.#.LOG” in the MATRIKON\COMMON
directory under the Program Files folder. Select the “Overwrite old log information” checkbox to
overwrite this file each time the server starts up. Otherwise, it will rename the old file to start
with an underscore.
Select “Display activity log on screen” to show the log messages in a console window as they
occur. This may have a negative effect on server performance especially at higher log levels.
Interface Activity Logging records information about the client/server OPC communication. It is
useful for troubleshooting compliance issues. Select the “Enable logging” checkbox and choose
the desired log level. The server will generate a separate log file for each client named
“PST###.tmp” in the directory where it is installed. Interface Activity Logging is not generally
used.
Select the “Commit all log file writes” checkboxes for either log file to ensure that its buffer is
flushed each time a message is logged. This can be useful when a fatal error that causes the
server program to crash is occurring regularly. However, it is not recommended for normal
operation as it greatly decreases the performance of the server.

Matrikon Inc. Page 37 of 84


Matrikon OPC Server for GCOM
More log levels are available for both types of logging which record more detailed information.
Contact Matrikon Technical Support for further instructions on how to enable the higher log
levels.
The Matrikon OPC Delegator is a useful tool for logging OPC client/server communication. It
enhances the server Interface Activity Logging by loading up in the client application and
recording the client-side transactions. It can also be used with other OPC servers. Contact the
Matrikon Sales department for further information about this product.

3.8.3 ADVANCED
The Advanced tab contains some special timing parameters sometimes used to improve the
performance of certain OPC servers. It is not usually a good idea to alter these settings unless
asked to do so by support staff. They have very little effect on device communication.

The first edit box specifies the minimum update rate that the server will allow for any OPC
group. This prevents client applications from requesting update rates that are impossible to
achieve or that cause heavy CPU loads. The default value is 100ms.
The second and third edit boxes work in conjunction to break up the scanning of items in large
groups with slow update rates in order to reduce CPU load. For every “OPC Items per Group
Scan (maximum)” number of items scanned, the scanning thread will pause for “OPC Group
Scan Pause (maximum)” number of milliseconds. The default values are zero, indicating that no
pause occurs in the scan loop.

3.9 SHUTTING DOWN


Click “shutdown” from the control panel, pop-up menu, or Shutdown Server from the File menu
to shut down the server if it runs as a local executable. A warning will appear if clients are
currently attached to the server. The shutdown command is not available for the server if it runs
as an NT service. Services can only be shut down from the Service Control Manager applet (in
the Windows NT Control Panel).

Matrikon Inc. Page 38 of 84


Matrikon OPC Server for GCOM

4. MATRIKON OPC EXPLORER


Matrikon OPC Explorer is a general-purpose OPC client. It is included with all Matrikon OPC
Servers to ensure that users always have a reliable means to test the capabilities of the software.
Choose Matrikon OPC Explorer from the Start menu, directly under the Programs folder, to start
the program.

4.1 VIEW AVAILABLE OPC SERVERS


Matrikon OPC Explorer is an OPC client application. It connects to OPC server applications and
displays real-time values as they are received. When OPC Explorer starts up, it searches the
registry on the local computer and generates a list of program ID’s for available OPC servers. It
displays this list in a drop-down box at the top left-hand corner of
the window.
Every OPC server has a unique program ID. This is a human-
readable text string that is converted to a globally unique
identification number which COM then uses to identify the server.
Each server may have a version-specific program ID (with a
number appended to the end of the string), a version-independent
program ID (no number), or both. All Matrikon OPC Servers have
both types, but only the version-independent program ID shows up in the list.
If an error occurs during the communication session between OPC Explorer and an OPC server,
a message box appears explaining this. Click the Details button to get a more descriptive
explanation of the error. Deselect the “Disconnect Server” checkbox to ignore the error and
continue without disconnecting from the server. Choose Error Log from the View menu to
display a log of past errors. Right-click on the window and choose “Clear Log” to clear the log.

4.2 CONNECT TO AN OPC SERVER


Select a program ID in the drop-down box. Choose Connect from the Server menu and then
choose either Local or Remote. The Local option will connect to a server running on the same
machine as the client while the Remote option will attempt to connect to an OPC server running
on another machine.
In the latter case, use the “Connect Remotely” dialog box to specify the remote machine. Remote
machines may be specified by UNC (i.e. “\\SYSDEV1”), DNS (i.e. “www.matrikon.com”), or IP
address (i.e. “198.162.0.1”). See the section on DCOM configuration for instructions on how to
configure OPC servers to receive remote connections.
COM will attempt to launch the OPC server if it is not currently running when the first client
attempts to connect to it. If the server runs as a local executable then COM will run it. If the
server runs as an NT service then COM will start it up.
Similarly, when the last client application disconnects from an OPC server, the server will shut
down. Matrikon OPC Servers wait for one minute before shutting down to avoid unnecessary
processing when client applications connect and disconnect frequently.

Matrikon Inc. Page 39 of 84


Matrikon OPC Server for GCOM

4.3 ADD OPC GROUPS


Choose “Add Group” from the Server menu to create a new OPC group on the connected OPC
server. Enter a name for the group. If the edit box is left blank then the OPC server will assign a
unique name for the group. Change the other settings as desired and click OK to create the
group. Choose Properties from the Group menu to change these settings after the group is
created. See the section on reading real-time values for a further explanation of what these
settings do.

4.4 ADD OPC ITEMS


An OPC groups serves as a logical collection of data items. Choose “Add Items” from the Group
menu to display Tag Studio – a utility for creating, validating, and adding OPC items.

To create an OPC item, enter an item ID in the edit box and click the right-pointing arrow. The
item appears in the list box on the right-hand side of the window. Double-click on an item to edit
its settings (the appearance of the arrow changes). Choose “Update and Return to Explorer” to
add the created items to the OPC group and return to Matrikon OPC Explorer.
In addition to an item ID, users can also specify an access path, a requested data type, and an
active state. The following sections describe these settings in further detail.

Matrikon Inc. Page 40 of 84


Matrikon OPC Server for GCOM
4.4.1 ITEM ID
All OPC items must be identified by an item ID. This identifier is a server-specific string of
characters that uniquely identifies a source of data to an OPC server. More than one OPC item
may refer to the same item ID at the same time. Enter the item ID in the Item ID edit box. Click
the button next to this edit box to bring up the Tag Generator – a utility for creating large
numbers of tags that follow a known pattern.
Some examples of item ID’s might be “PLC1.4:0001”, “North:FIC101/CV”,
“\\ARCSVR:DBTAG001”, etc. Check Appendix A for information about the specific syntax of
the item ID’s.

4.4.2 ACCESS PATH


Some OPC servers may allow clients to specify an access path in addition to an item ID. An
access path may suggest to the server how it should get the data for a particular item. For
example, it might specify the method of communication to use for accessing the data (i.e. radio,
satellite, or modem).
Servers are under no obligation to use the access path, although they will return errors if the
access path is invalid. Click the ellipsis button next to the Access Path edit box to browse the
access paths that are available for the selected item ID (if the server supports this feature).
Matrikon OPC Servers do not use access paths. Leave the access path blank if it is not used.

4.4.3 BROWSE THE SERVER ADDRESS SPACE


Some OPC server support browsing as a means of isolating users from the exact syntax of its
item ID’s. Browsing allows users of OPC clients to view the “contents” of a server to find a
particular data item and resolve it into a valid item ID. It is not primarily intended for auto-
generating OPC items. If the OPC server supports browsing then a tree view and list view appear
in tag studio.
The tree view displays “branches” in a hierarchical address space, while the list view displays the
“leaves” that are available under the selected “branch”. Each “leaf” either represents an actual
item or else it may provide a “hint” indicative of available items. For example, if there are
thousands of numbered items under a “branch”, the server might simply provide a single “leaf”
representing the range of numeric addresses available.
While browsing, the user may apply a number of filter criteria to search for a particular type of
item. The syntax of the filter is vendor-specific, but the algorithm recommended by the OPC
Foundation follows the same pattern as the Visual Basic “Like” function with respect to item
names. For example, “A*” filters out any item names that do not begin with the letter “A”. This
filter may also apply to branches.
Items may also be filtered by data type and access rights. Choosing a type other than
Empty/Default causes the browser to display only those items with the same canonical data type
as that selected. Access rights are non-exclusive. For example, selecting write access and
deselecting read access will display only items that can be written to, regardless of their read
accessibility. Selecting both should filter nothing out.
Double-click on a “leaf” and Tag Studio will place the fully qualified item ID for that item in the
edit box. If the item ID is a “hint” then change it to a “real” item, following the pattern provided
by the hint. Alternatively, right-click on the item and choose “Add to Tag List” to add the item
using the previous item’s settings. “Add All Items to Tag List” adds every item under the branch.

Matrikon Inc. Page 41 of 84


Matrikon OPC Server for GCOM
4.4.4 REQUESTED DATA TYPE
All OPC items have a native (“canonical”) data type. That is to say, there is a default format to
the data that the server supplies for an item. When creating OPC items, client applications can
specify a requested data type for each item. The OPC server will attempt to covert any data from
the item to this format if possible. If the requested and canonical data types are incompatible,
then the server will fail to validate the item when it is added.

4.4.5 ACTIVE STATE


Like groups, OPC items may be active or inactive. See the section on reading real-time values
for more information about this setting.

4.4.6 VALIDATE THE OPC ITEMS


Choose “Validate Tags” from the File menu to check the created items for validity. Tag Studio
will query the OPC server to determine whether the items are correct. A small red X next to an
item indicates that it did not validate properly. A green checkmark indicates that the item is
valid. A blue question mark indicates that the item has not been validated yet.

4.5 READ REAL-TIME VALUES


Once items are added to an OPC group, Matrikon OPC Explorer continually updates the display
for that group with real-time data. The data values appear in the list view on the right-hand side
of the window. Each item is listed along with its item ID, access path, active state, value, quality,
and timestamp.
When there are a number of groups created on an OPC server, use the group list view to navigate
between different groups and to view the items in those groups. Use the drop-down box to
navigate between the groups on different server connections.

4.5.1 UPDATE RATE


The OPC server tries to keep Explorer informed with values for an OPC group at the requested
update rate for that group. If the requested update rate is too fast for the server to handle then it
will return a revised update rate that it will use instead. Internally, the server tries to keep the
data items at least as “fresh” as indicated by the update rate. However, the server will send
values to the client no faster than the update rate in order to avoid overwhelming it.

4.5.2 ACTIVE STATE


OPC servers only update values for active items in active groups. When an individual item is set
inactive, the server stops sending updates for the item. When a group is set inactive, the server
stops sending values for any items in that group. Client applications (such as HMI applications)
can help to reduce the processing load on an OPC server by deactivating groups and items that
are not currently needed.
Choose Activate/Deactivate from the Group or Item menus at any time to change the active state
of an OPC group or individual OPC items.

4.5.3 DATA DISPLAY

Matrikon Inc. Page 42 of 84


Matrikon OPC Server for GCOM
Although the OPC server may supply data changes to Matrikon OPC Explorer at the update rate
of the group, a global setting specifies the refresh rate for the display in OPC Explorer. Choose
“Update Speed” from the View menu and select one of the four available options: High, Normal,
Low, or Paused. If the update speed is “Paused” then the user will have to refresh the display
manually (F5).

In the item display, the Value field shows the real-time value for the item. The Quality field
indicates whether or not this value is valid, and why (see the annex for a list of quality values).
The Timestamp field indicates how “fresh” the value is (the time that it was received from the
data source).
The information panel at the bottom of the window displays status information about the selected
server and group. Choose “Info Panel” from the view panel to hide and show this panel.

4.5.4 I/O METHOD


Matrikon OPC Explorer allows the user to specify the method of communication to use with a
group. Synchronous I/O is generally reserved for testing and special operations. Explorer also
allows the user to choose between the 1.0a or 2.0 style of asynchronous I/O. The normal
recommended setting is “Asynchronous I/O”, which attempts to use 2.0 first, and 1.0a if that
fails.

4.5.5 TIME BIAS


Some OPC client applications may use the OPC server time bias setting as a storage area for
time zone information. This information might be used to display server timestamps in a time
zone other than UTC or the local time zone. Matrikon OPC Explorer does not use this
information, but allows the user to write the information to the server as a test.

Matrikon Inc. Page 43 of 84


Matrikon OPC Server for GCOM
4.5.6 DEAD-BAND
Some OPC servers support dead-band for updates from analog data sources. The dead-band
value is a percentage of full-scale deflection and so the high and low limits for the item must be
known ahead of time. Dead-band only affects updates between an OPC client and a server. It has
no effect on communication between an OPC server and its respective device(s).

4.5.7 ADVISE LOG


Choose Advise Log from the View menu to display a log of ongoing I/O transactions. Right-
click on the window and choose “Clear Log” to clear the log. Use the options to keep the
window above all other windows in the desktop and to keep the most recent entry visible at all
times.

4.6 WRITE CONTROL VALUES


Matrikon OPC Explorer allows the user to write control values to items in an OPC group. Select
the desired items in the list view and choose “Write Values” from the Item menu. In the dialog
box, enter the control values to be written in the “New Value” column. Specify the data types of
for the control values in the “Data Type” column. Use the checkboxes to avoid writing to
individual items. When ready, click the OK or Apply button to perform the write.

Control values may be written to items regardless of whether they or the group that they
are in are active or inactive. If the items and the group containing the items are both
active then the written control value should appear when the next update occurs. Also,
Note some OPC servers may contain read-only item. Values written to these items will be
discarded.
Matrikon OPC Explorer also contains a Signal Generator to write ramping control values to OPC
items. Choose the “Signal Generator” tab in the “Write Values” dialog box. Enter the high and
low limits and the increment factor for the ramp wave. Finally, enter the time period in
milliseconds and press Start. Press Stop or close the dialog box to finish writing the ramp wave.

Matrikon Inc. Page 44 of 84


Matrikon OPC Server for GCOM

4.7 OPTIONS
Choose Options from the View menu to display the Options dialog box. Users can change certain
aspects of OPC Explorer’s behavior with these options. Click the Defaults button to restore the
original settings

4.7.1 GENERAL
Use the Errors checkboxes to specify whether the error dialog box should be displayed when
COM or OPC errors occur, or when errors occur for individual items. The sanity check option
ensures that the OPC server keeps track of lists of groups and items properly. At present, session
files may only be stored as text files, so the binary format is unavailable.

4.7.2 DATA TRANSFER


Use the Data Source radio button to specify the data source that OPC Explorer should use when
requesting values from the OPC Server. The data source should be CACHE for normal
operation. Only use DEVICE for special testing operations. DEVICE reads yield a serious
performance penalty and can prevent OPC servers from functioning properly if they are used too
often.
For 1.0a asynchronous I/O, select the “Request time stamps with notification” to receive
timestamps from the OPC server. Otherwise, OPC Explorer will assume the current time when it
receives new values.
Select “Request asynchronous refreshes” to use asynchronous refresh transactions when updating
the display. When grayed, OPC Explorer will use synchronous reads for 2.0 I/O or asynchronous
reads from CACHE for 1.0a I/O when updating the display. When unselected, OPC Explorer
simply receives values passively from the server.
Select “Respect access rights when writing values” to avoid including read-only items in the
Write Values dialog box. Otherwise, OPC Explorer will allow users to write values to any items.

4.7.3 DATA DISPLAY


Select “Display value qualities as text” to show a text description of the item quality in the
Quality field. Otherwise, OPC Explorer will display a numeric value. You might want to do the
latter if the quality value contains vendor-specific information in the upper byte. Deselect
“Display timestamps using local time zone” to display the timestamps in UTC rather than local
time.

4.7.4 COM
Use these checkboxes to specify the class context flags to be used when OPC Explorer attempts
to connect to an OPC server. Do not deselect any of these flags unless absolutely necessary.

4.8 SAVE THE SESSION


Choose Save from the File menu and enter a file location to save the current session
configuration, including all server connections, groups, and items. These session files may be
reloaded by choosing Open from the File menu and reselecting the saved file. Choose “New
Session” from the File menu to clear the session.

Matrikon Inc. Page 45 of 84


Matrikon OPC Server for GCOM

5. MATRIKON OPC AUTOMATION COMPONENT


The Matrikon OPC Automation Component enables developers to access OPC data from client
applications developed using Automation tools such as Visual Basic, VBA, and VB Script.
Developers should be proficient in Visual Basic before trying to use this component.
To use the component through early binding, add the “Matrikon OPC Automation 2.0” type
library to the list of references in the project. The objects supplied by the component appear
under “OPCAutomation” in the Object Browser. To create an OPCServer object through late
binding, call the CreateObject function with the program ID “Matrikon.OPC.Automation”.
Please refer to the OPC Data Access 2.0 Automation Interface Standard for more information
about the automation objects.

Matrikon Inc. Page 46 of 84


Matrikon OPC Server for GCOM

6. TROUBLESHOOTING
The following sections address some of the most common problems encountered while using this
OPC server. Please check the following list before contacting Matrikon Technical Support.
• Problem: The OPC server stops updating the client with item values after two hours.
Solution: The OPC server is licensed with a hardware key, and the demonstration period for
the server has expired. Check that the correct HASP hardware key is securely fastened to the
parallel port. If it is, run the HINSTALL program that is located in the
MATRIKON\COMMON directory under Program files with the “/I” parameter.
• Problem: The OPC server shuts down automatically after 5 minutes when no clients are
connected.
Solution: This is standard behavior for COM servers. However, you can override this
behavior as follows:
- In the registry, locate HKEY_CLASSES_ROOT\PSTCFGMatrikon.OPC.{server
name}.1\CLSID\ and obtain the class ID of the OPC server.
- In HKEY_CLASSES_ROOT\CLSID\{class ID of OPC server}\Options create a
string value named “LockServer”. To create a new value, select the Options key, and
then select Edit\New\String Value from the Registry menu.
- Set the value of the LockServer entry to “1”. To edit the value, select the entry and
select Edit\Modify from the Registry menu.
Eg. Simulation server’s CLSID is {F8582CEE-88FB-11D0-B850-00C0F0104305}

• Problem: There is more than one HASP hardware key from Matrikon attached to the
parallel port, but only the first one is recognized by the software.
Solution: HASP keys from the same vendor can not be chained together. Send an email to
technical support (please refer to the beginning of this manual) to obtain a HASP key
containing the combined codes of all installed Matrikon OPC servers.
• Problem: The server cannot be configured because there is no red ‘X’ in the System
Tray.
Solution: If the server is running as a service, you will not see the usual red ‘X’ in the system
tray that indicates the OPC server is running. To configure the server, start the configuration

Matrikon Inc. Page 47 of 84


Matrikon OPC Server for GCOM
utility by using the shortcut to the OPC server in the Start Menu (this shortcut starts the
Configuration utility as well as the OPC server).
• Problem: How do I remove the OPC server as a service?
Solution: Un-register and reregister the OPC server file, see the “Getting Started” section
under Command-Line for more information.
• Problem: Does the server need to be started manually when it is installed as a service?
Solution: No, the first OPC client that tries to connect will start the OPC server.
• Problem: The OPC client is unable to create or read items under a configured object
(device).
Solution: Check the object configuration. Ensure that the Enabled checkbox is selected.
• Problem: The OPC server does not retain its previous settings and needs to be
reconfigured each time it starts up.
Solution: In the configuration utility, choose Options from the View menu. Under the
General tab, ensure that the "Load configuration on startup" checkbox is selected and that the
correct file name appears in the edit box. See the section on configuration for more
information.
• Problem: The OPC server can not save the configuration in XML format.
Solution: Microsoft Internet Explorer 4.01 (or later) must be installed to use the .XML
format. If you do not have this software, you can still save the configuration in .PXC format,
which is the original Matrikon format.
• Problem: The OPC server does not show up in a list of locally available program ID's in
my OPC client application.
Solution: Make certain that the OPC server is installed by a user with local administrative
rights so that it can make the necessary entries in the registry. Also, especially for older OPC
clients that do not use the OPC Server Browser, make certain that the client is running as a
user that has read access to the registry.
• Problem: The OPC server does not show up in a list of remotely available program ID's
in my OPC client application.
Solution: Follow the steps found in the section on DCOM configuration to copy the program
ID from the server machine to the client machine.
• Problem: "Access Denied" error or time out trying to connect to a remote OPC server
via DCOM.
Solution: Ensure that the access and launch permissions for the OPC server are set correctly
on the server machine. See the Annex on DCOM for more information.
• Problem: A client tries to connect to the server and fails, or the server does not start up.
Solution: Ensure that the access and launch permissions for the OPC server are set correctly.
See the Annex on DCOM for more information.
• Problem: The splash screen and configuration utility do not show up when a remotely
connecting client or a client that runs as an NT service (such as Aspentech’s CIMIO
OPC Manager) tries to launch the OPC server.
Matrikon Inc. Page 48 of 84
Matrikon OPC Server for GCOM
Solution: Either set the identity for the OPC server to the interactive user, or else consider
run the server as an NT service. See the section on DCOM for more information.
• Problem: After installing an older OPC server, DA 2.0 asynchronous I/O no longer
works.
Solution: The old installation program installed and registered its own (older) version of the
OPC proxy/stub DLL. Reinstall the standard OPC proxy/stub DLL's using an up-to-date
installation program or re-register them using the REGSVR32 command-line utility. See the
section on server installation for more information.
• Problem: How can I get OPC data into Microsoft Excel, Microsoft Word, or another
application with support for Visual Basic, VBA, or VB Script?
Solution: Use the Matrikon OPC Automation Component to create a Visual Basic script that
connects to a server, creates groups and items, and receives data change updates. See the
installed files for examples of how to do this in Excel, Visual Basic, or an HTML document.
• Problem: How can I access individual bits from an integer item?
Solution: Create an alias that references the desired item and configure scaling for the alias to
use expression evaluation. Edit the input expression to use binary math to access a particular
bit (i.e. “IF((INPUT AND 4)=4, 1, 0)” to access bit 2). This method allows read access only.
• Problem: If using hardware key – I don’t think the server can find my hardware key
Solution: Try running the hasp.exe utility under C:\Program Files\Matrikon\OPC\Common\.,
a small dialog will pop up. With the hardware key plugged into the printer port on the back
of the computer, select “Check key” from the utilities menu. If an error message pops up (ie:
There is a problem with the hardware key setup), then there is a problem reading the
hardware key. You should see something like “GCOM OPC Server” in the dialog.

• Problem: No Messages Being Sent Or Received


Solution:
If at any time the OPC server is not receiving data typically there could be one of two
problems:
The Gateway or controller that the GCOM card resides on is down.
Ethernet connection is broken.
To verify that it is in fact one of these two problems, if possible shut down the bridge, and
start the Matrikon ABB Ping utility. If the Ping Utility cannot connect, then the specified
destination network number and node number are either incorrect or the node is down.
If you are unable to shut down the Bridge run the Ping Utility on another PC.
The second alternative to check the connection, would be to access the ABB Plant Network
and verify that the Controller or Gateway is down. If the Controller or Gateway is up, then
check the Ethernet connection.

Matrikon Inc. Page 49 of 84


Matrikon OPC Server for GCOM
If the connection has never been established before, make sure that the Matrikon GCOM
kernel mode driver is installed and correctly configured, and also make sure that the network
card is on the Microsoft Hardware Acceptability List.
• Problem: Data Set Data Values Are Incorrect
Solution:
If any data values within a data set are invalid it will be one of three causes:
1. Data type of the value is incorrectly configured in the OPC server configuration GUI.
2. Data type of the value is incorrectly configured in the Controller or Gateway.
3. Data sets to not match up.
Troubleshooting this type of error should follow this sequence:
1. Verify the data set identifiers are correct.
2. Verify the data set value number. Ie is it the first value or the 21 value?
3. Verify the data type on both the controller (or Plant Network point), and the OPC server
configuration.
• Problem: Objects Constantly Switch Quality Between Good And Bad
Solution: This section only applies to DAT or tag subscriptions. If a large number of tags or
DATs are being used there can be a great deal of excess network traffic created. The
problem occurs at the point where the server has been able to make subscriptions on some
objects but is still attempting to resolve the addresses of others. To correct this, adjust the
Obj Package Time parameter of the Controller that the problem occurs on. While the default
value is 1 second, it can be necessary to increase this value up to 60 seconds when using
large numbers of objects. Increasing this parameter will cause initial subscription to the
objects to take more time, but the overall performance is much better.

Matrikon Inc. Page 50 of 84


Matrikon OPC Server for GCOM

Appendix A - ITEM ID SYNTAX

A.1 GENERAL SYNTAX

1) The subscription type item-id is used to specify objects of various types. The format is as
follows:
GcomCardName,Controller,ObjectType,ObjectName,SubscriptionType,
Parameter,{StatusParameter}

Parameter Description
GcomCardName This is the name of the GCOM card defined in the bridge configuration.
Controller This is the name of a controller defined in the bridge configuration.
ObjectType This is the type of object to access.
ObjectName This is the actual name of the object.
SubscriptionType This is how the bridge should retrieve the data from the object.
Valid types are:
D – Demand update
E – Event update
C1 – 1 second cyclic update
C2 – 2 second cyclic update
C3 – 3 second cyclic update
Parameter This is the name of the parameter of the object that is to be accessed. (refer
to annex to see valid types)
StatusParameter The name of a specific status for an associated status field. Ie.
“Above_HI_Limit_2” (Refer to annex for a list of vaid names.)

NOTE: If the object has an associated status, the status parameters can be referenced as indicated
by the {StatusParameter} option.

When setting up data points once the user creates a single point for an object, the bridge will
automatically create all the other possible fields and status that can be accessed. It is highly
recommended when configuring other points for the same object that the browsing method be
used.

Matrikon Inc. Page 51 of 84


Matrikon OPC Server for GCOM

By selecting a “hint” point, and changing the object name, the rest of the points will be created
and can be selected with out having to create each individually.

The following is an example of the subscription item path:


GCOM,CNTRLR,AI,AI1,C3,VALUE
In the table above, the item refers to the tag “AI1” on the ABB controller.

2) The data set item-id is used to access data values of a configured data set.
GcomCardName,Controller,DataSetName,ValueX(.X)
Parameter Description
GcomCardName This is the name of the GCOM card defined in the bridge configuration.
Controller This is the name of a controller defined in the bridge configuration.
DataSetName This is the name of the configured data set.
ValueX(.X) When data sets are configured, the values are automatically created in the
bridge. If it is boolean, or some other type with sub values, the sub values are
generated as well for each of the 24 original values.

The following is an example of a data set item path:


GCOM,CNTRLR,DataSet1,Value1.1
In the table above, the item refers to DataSet1. This data set must be configured in the server as
well as in the controller “CNTRLR” for values to be updated properly.

A.2 SUBSCRIPTION UPDATES


There are several methods, known as subscription types, available for reading data from ABB
data objects.
• Demand updates (D)
• Cyclic update on a 1 second interval (C1)
• Cyclic update on a 3 second interval (C2)
• Cyclic update on a 9 second interval (C3)
• Event updates (E)

Each subscription defines how data is collected from the controller. The cyclic subscriptions
receive data regularly at the specified intervals. Demand data is only received when requested,
and the Event updates only receive data when an event, as defined in the ABB documentation for
specific objects, occur.

Matrikon Inc. Page 52 of 84


Matrikon OPC Server for GCOM

A.3 DATA SET UPDATES


Data sets are a group of 24 values on an ABB controller that can either be sent to or received
from another node. This is the most efficient method of data transfer with the ABB system.
Data sets are configured in the server by using the configuration utility located in the tool tray (
X logo in the bottom right of the window by the system time).
When configuring a data set with the server, the exact same data set must be configured in the
ABB system. The data types MUST match, the identifier MUST match (1-255), and the update
rates should be reasonably close (depending on the controller). If the data set is to be sent to the
ABB controller, then the server data set must be configured to “Write”. If the data set is sent
from the ABB controller, then the server data set must be configured to “Read”. The
configuration also allows for each of the 24 data set values to have an initial value.

NOTE: For cyclic writes to start all data set values configured must be written to at least
once!

NOTE: When starting up at least one of the 24 data values must be accessed to start data
transfer! For any values that are not “connected”, the default values will be used when
sending the packet!

A.4 STATUS ITEMS

The Matrikon OPC Server for GCOM includes three items that provide useful information on the
status of the GCOM card. These items are “GCOMCardStatus”, “SysText” and “SysText#”

• GCOMCardStatus: This item reflects the status of the communication between the
OPC server and the GCOM Card. The value is 0 until the OPC server has received
communications from the GCOM device. At that point, the value becomes 1 and stays at
1 until communications with the GCOM device is broken. The OPC quality is kept at
Q_GOOD to allow users to graph it with a program such as PI. A graph of this point will
show when the OPC server has and has not been connected to the GCOM device. If the
network is totally reliable, this graph will show when the GCOM link is up and when it is
down. Note that this value is dependent upon the ping interval, set in the configuration
screen. This value will be updated every ping interval, and may not show that a
connection has been broken until the ping interval has elapsed. If the ping interval is set
to 0, the value of GCOMCardStatus is meaningless since the card is never pinged, but is
assumed to be perpetually available.

Matrikon Inc. Page 53 of 84


Matrikon OPC Server for GCOM
• SysText and SysText#: If an order or a TTD request is illegal, e.g., illegal limits, the
GCOM card will issue a system text message from the object handler. The message
includes an address for the object and an error code. The item “SysText” reflects the error
message while “SysText#” reflects the address of the object.

A.5 DATASET TYPES

While datasets in every type of controller are the same in terms of the protocol, with a set having
up to 24 4-byte values, the possible data type of a value will vary from controller to controller.
There are currently three controller types supported by the GCOM OPC server: Advant
controller series, such as the AC450; Plant Network Gateway to MOD300 devices; and the
P4000 Gateway to the Kent 4000 DCS system.
The following table describes the types allowed for each controller, and specific information
about each type. The Item Subtype field is the notation used to access the subtype in an OPC
item ID. For example, to access the CTRL field in a Status type, the syntax would be (using
typical example links):
Gcomcard,P4g,Dataset001,VALUE1.CTRL

Datatype Item Subtype # of bits OPC data type Controllers


Name
Real None 32 VT_R4 All
Integer None 32 VT_I4 Advant, PNG
Short Integer None 16 VT_I2 Advant, PNG
Boolean .# (# is the bit position) 1 VT_BOOL Advant, PNG
Bin1 None 1 VT_UI1 PNG
Bin2 None 2 VT_UI1 PNG
Bin4 None 4 VT_UI1 PNG
Bin6 None 6 VT_UI1 PNG
Unsigned Short None 16 VT_I4 PNG
Unsigned Long None 32 VT_I4 PNG
Byte None 8 VT_UI1 PNG
Unsigned Byte None 8 VT_I2 PNG
Status .ITEM_TYPE 8 VT_UI1 Kent 4000
Status .CTRL 8 VT_UI1 Kent 4000
Status .ALARM_STATUS 2 VT_UI1 Kent 4000
Status .ALARM_TYPE 3 VT_UI1 Kent 4000

Matrikon Inc. Page 54 of 84


Matrikon OPC Server for GCOM

Status .SUSPECT_FLAG 1 VT_BOOL Kent 4000


Status .SIG_CHANGE_FLAG 1 VT_BOOL Kent 4000
Status .ALARM_CHANGE_FLAG 1 VT_BOOL Kent 4000
BIN DigEnt .INPUT 8 VT_UI1 Kent 4000
BIN DigEnt .OUTPUT 8 VT_UI1 Kent 4000
BIN DigEnt .INPUT_FLAGS 16 VT_I2 Kent 4000
BIN MulDin .IP 16 VT_I2 Kent 4000
BIN State .STT 8 VT_UI1 Kent 4000
BIN State .GOAL 8 VT_UI1 Kent 4000
Flags .UPPER_WORD 16 VT_I2 Kent 4000
Flags .LOWER_WORD 16 VT_I2 Kent 4000

Text sets are allowed in most controllers as well, with sizes varying from 20-72 characters. A
text set contains only ONE string per set, with the length fixed by the controller and/or OPC
server. A text set creates three items within the text set link: REAL_VAL, INT_LONG, and
TEXT. The text item contains the actual text set text, while the others can contain additional
information passed with the set.

A.6 OBJECT TYPES


The following chart shows the available object types, along with subscription types, attribute
name, datatype, and read/write attributes.

ObjectTypes Subscription Attribute SubAttribute DataType Read/


Types Write
AI, AO C1,C3,C9,D,E NO_OF_DEC None Int16 R
AI, AO C1,C3,C9,D,E STATUS None Int32 R
AI, AO C1,C3,C9,D,E VALUE None Float32 RW
AI, AO D, E DESCRIPTION None String R
AI, AO D, E NAME None String R
AI, AO D, E UNIT None String R
AI, AO D, E RANGE_MIN None Float32 R
AI, AO D, E RANGE_MAX None Float32 R
AI E HI_LIM1 None Float32 RW
AI E HI_LIM2 None Float32 RW
AI E LO_LIM1 None Float32 RW
AI E LO_LIM2 None Float32 RW
AO E SUBSYSTEM None Int16 R

Matrikon Inc. Page 55 of 84


Matrikon OPC Server for GCOM
AO E CLASS None Int16 R
AO E MAX_LIM None Float32 RW
AO E MIN_LIM None Float32 RW
AI C1,C3,C9,D,E STATUS ABOVE_HI_LIM1 Digital R
AI C1,C3,C9,D,E STATUS ABOVE_HI_LIM2 Digital R
AI, AO C1,C3,C9,D,E STATUS ACTIVE Digital R
AI, AO C1,C3,C9,D,E STATUS ALARM_BLK Digital R
AI, AO C1,C3,C9,D,E STATUS ALARM_UNACK Digital R
AI C1,C3,C9,D,E STATUS BELOW_LO_LIM1 Digital R
AI C1,C3,C9,D,E STATUS BELOW_LO_LIM2 Digital R
AI C1,C3,C9,D,E STATUS DISTURBANCE Digital R
AI, AO C1,C3,C9,D,E STATUS ERROR Digital R
AI C1,C3,C9,D,E STATUS MAN_ENTRY Digital R
AI, AO C1,C3,C9,D,E STATUS PRINT_BLK Digital R
AI, AO C1,C3,C9,D,E STATUS SELECTED Digital RW
AI C1,C3,C9,D,E STATUS UPD_BLK Digital RW
AI, AO C1,C3,C9,D,E STATUS UPDATED Digital R
AO C1,C3,C9,D,E STATUS MAN_MODE Digital RW
AO C1,C3,C9,D,E STATUS OUTP_BLK Digital RW
DI, DO C1,C3,C9,E STATUS None Int32 R
DI, DO E NAME None String R
DI, DO E DESCRIPTION None String R
DI, DO E SUBSYSTEM None Int16 R
DI, DO E CLASS None Int16 R
DI, DO E VALUE_TREAT None Int16 R
DI, DO C1,C3,C9,E STATUS ACTIVE Digital R
DI, DO C1,C3,C9,E STATUS ALARM_BLK Digital R
DI, DO C1,C3,C9,E STATUS ALARM_UNACK Digital R
DI C1,C3,C9,E STATUS DISTURBANCE Digital R
DI, DO C1,C3,C9,E STATUS ERROR Digital R
DI C1,C3,C9,E STATUS MAN_ENTRY Digital R
DI, DO C1,C3,C9,E STATUS PRINT_BLK Digital R
DI, DO C1,C3,C9,E STATUS SELECTED Digital RW
DI C1,C3,C9,E STATUS UPD_BLK Digital RW
DI, DO C1,C3,C9,E STATUS UPDATED Digital R
DI, DO C1,C3,C9,E STATUS VALUE Digital RW
DO C1,C3,C9,E STATUS MAN_MODE Digital RW
DO C1,C3,C9,E STATUS OUTP_BLK Digital RW

Matrikon Inc. Page 56 of 84


Matrikon OPC Server for GCOM
PIDCON C1,C3,C9,D,E STATUS1 None Int32 R
PIDCON C1,C3,C9,D,E STATUS2 None Int32 R
PIDCON C1,C3,C9,D,E STATUS3 None Int32 R
PIDCON C1,C3,C9,D,E STATUS4 None Int32 R
PIDCON D,E NAME None String R
PIDCON D,E DESCRIPTION None String R
PIDCON C1,C3,C9,D,E MV None Float32 R
PIDCON C1,C3,C9,D,E AUTOSP None Float32 R
PIDCON C1,C3,C9,D,E WSP None Float32 R
PIDCON C1,C3,C9,D,E DEVIATION None Float32 R
PIDCON C1,C3,C9,D,E OUT None Float32 R
PIDCON C1,C3,C9,D,E TS None Float32 R
PIDCON C1,C3,C9,D,E MAN_OUT None Float32 R
PIDCON C1,C3,C9,D,E EXT_OUT_LL None Float32 R
PIDCON C1,C3,C9,D,E EXT_OUT_HL None Float32 R
PIDCON C1,C3,C9,D,E EXT_GAIN None Float32 R
PIDCON C1,C3,C9,D,E EXT_TI None Float32 R
PIDCON C1,C3,C9,D,E EXT_TD None Float32 R
PIDCON C1,C3,C9,D,E EXT_TF None Float32 R
PIDCON C1,C3,C9,D,E POUT None Float32 R
PIDCON D,E PRES1 None Float32 R
PIDCON D,E PRES2 None Float32 R
PIDCON C1,C3,C9,D,E MNO_OF_DEC None Int16 R
PIDCON D,E MRANGE_MIN None Float32 R
PIDCON D,E MRANGE_MAX None Float32 R
PIDCON E MMI_SPL None Float32 R
PIDCON E MMI_SPH None Float32 R
PIDCON E MMI_MVL2 None Float32 R
PIDCON E MMI_MVL1 None Float32 R
PIDCON E MMI_MVH1 None Float32 R
PIDCON E MMI_MVH2 None Float32 R
PIDCON E MMI_MV_HYST None Float32 R
PIDCON E MMI_DEVL None Float32 R
PIDCON E MMI_DEVH None Float32 R
PIDCON E MMI_DEVHYST None Float32 R
PIDCON E MUNIT None String R
PIDCON C1,C3,C9,D,E STATUS1 IMPLEMENTED Digital R
PIDCON C1,C3,C9,D,E STATUS1 RUNNING Digital R

Matrikon Inc. Page 57 of 84


Matrikon OPC Server for GCOM
PIDCON C1,C3,C9,D,E STATUS1 ACTUATOR Digital R
PIDCON C1,C3,C9,D,E STATUS1 MVDIR Digital R
PIDCON C1,C3,C9,D,E STATUS1 SELECTED Digital R
PIDCON C1,C3,C9,D,E STATUS1 TESTED Digital R
PIDCON C1,C3,C9,D,E STATUS1 PANEL_CTRL Digital R
PIDCON C1,C3,C9,D,E STATUS1 ALARM_UNACK Digital R
PIDCON C1,C3,C9,D,E STATUS1 REP_FAIL_BLK Digital R
PIDCON C1,C3,C9,D,E STATUS1 DIST Digital R
PIDCON C1,C3,C9,D,E STATUS1 ALARM_F1_BLK Digital R
PIDCON C1,C3,C9,D,E STATUS1 AL_F1_PE_BLK Digital R
PIDCON C1,C3,C9,D,E STATUS1 ALARM_F2_BLK Digital R
PIDCON C1,C3,C9,D,E STATUS1 AL_F2_PE_BLK Digital R
PIDCON C1,C3,C9,D,E STATUS1 OUT_EQ_LL Digital R
PIDCON C1,C3,C9,D,E STATUS1 OUT_EQ_HL Digital R
PIDCON C1,C3,C9,D,E STATUS1 SP_EQ_LL Digital R
PIDCON C1,C3,C9,D,E STATUS1 SP_EQ_HL Digital R
PIDCON C1,C3,C9,D,E STATUS2 TS_MV_LT_L1 Digital R
PIDCON C1,C3,C9,D,E STATUS2 TS_MV_GT_H1 Digital R
PIDCON C1,C3,C9,D,E STATUS2 TS_DEV_LT_L Digital R
PIDCON C1,C3,C9,D,E STATUS2 TS_DEV_GT_H Digital R
PIDCON C1,C3,C9,D,E STATUS2 TS_MV_LT_L2 Digital R
PIDCON C1,C3,C9,D,E STATUS2 TS_MV_GT_H2 Digital R
PIDCON C1,C3,C9,D,E STATUS2 TS_LOCAL_FL Digital R
PIDCON C1,C3,C9,D,E STATUS2 TS_MAN_FL Digital R
PIDCON C1,C3,C9,D,E STATUS2 TS_AUTO_FL Digital R
PIDCON C1,C3,C9,D,E STATUS2 TS_E1_FL Digital R
PIDCON C1,C3,C9,D,E STATUS2 TS_E2_FL Digital R
PIDCON C1,C3,C9,D,E STATUS2 TS_E3_FL Digital R
PIDCON C1,C3,C9,D,E STATUS2 AI_ERROR Digital R
PIDCON C1,C3,C9,D,E STATUS2 AO_ERROR Digital R
PIDCON C1,C3,C9,D,E STATUS2 DCM_ERROR Digital R
PIDCON C1,C3,C9,D,E STATUS2 PC_BLK Digital R
PIDCON C1,C3,C9,D,E STATUS2 SERVUC Digital R
PIDCON C1,C3,C9,D,E STATUS2 HW_ERR Digital R
PIDCON C1,C3,C9,D,E STATUS2 MMI_MANF Digital R
PIDCON C1,C3,C9,D,E STATUS2 MMI_MAN Digital R
PIDCON C1,C3,C9,D,E STATUS2 MMI_AUTO Digital R
PIDCON C1,C3,C9,D,E STATUS2 MMI_INT_BLK Digital R

Matrikon Inc. Page 58 of 84


Matrikon OPC Server for GCOM
PIDCON C1,C3,C9,D,E STATUS2 MMI_DER_BLK Digital R
PIDCON C1,C3,C9,D,E STATUS2 MMI_E1 Digital R
PIDCON C1,C3,C9,D,E STATUS2 MMI_E2 Digital R
PIDCON C1,C3,C9,D,E STATUS3 REMOTE Digital R
PIDCON C1,C3,C9,D,E STATUS3 CENTRAL Digital R
PIDCON C1,C3,C9,D,E STATUS3 LOCAL Digital R
PIDCON C1,C3,C9,D,E STATUS3 SERVICE_UNIT Digital R
PIDCON C1,C3,C9,D,E STATUS3 BAL Digital R
PIDCON C1,C3,C9,D,E STATUS3 MAN Digital R
PIDCON C1,C3,C9,D,E STATUS3 AUTO Digital R
PIDCON C1,C3,C9,D,E STATUS3 E1 Digital R
PIDCON C1,C3,C9,D,E STATUS3 E2 Digital R
PIDCON C1,C3,C9,D,E STATUS3 E3 Digital R
PIDCON C1,C3,C9,D,E STATUS3 LOCAL_OUT Digital R
PIDCON C1,C3,C9,D,E STATUS3 CLAMP_OUT Digital R
PIDCON C1,C3,C9,D,E STATUS3 EXT_OUT_LI Digital R
PIDCON C1,C3,C9,D,E STATUS3 EXT_GAIN_ENB Digital R
PIDCON C1,C3,C9,D,E STATUS3 EXT_TI_ENBL Digital R
PIDCON C1,C3,C9,D,E STATUS3 EXT_TD_ENBL Digital R
PIDCON C1,C3,C9,D,E STATUS3 EXT_TF_ENBL Digital R
PIDCON C1,C3,C9,D,E STATUS3 EXT_INT_BLK Digital R
PIDCON C1,C3,C9,D,E STATUS3 EXT_DER_BLK Digital R
PIDCON C1,C3,C9,D,E STATUS4 PRINT_F1_BLK Digital R
PIDCON C1,C3,C9,D,E STATUS4 REF1_FAIL_BLK Digital R
PIDCON C1,C3,C9,D,E STATUS4 PRINT_F2_BLK Digital R
PIDCON C1,C3,C9,D,E STATUS4 REF2_FAIL_BLK Digital R
PIDCON C1,C3,C9,D,E STATUS4 AU_MV_LT_L1 Digital R
PIDCON C1,C3,C9,D,E STATUS4 AU_MV_GT_H1 Digital R
PIDCON C1,C3,C9,D,E STATUS4 AU_DEV_LT_L Digital R
PIDCON C1,C3,C9,D,E STATUS4 AU_DEV_GT_H Digital R
PIDCON C1,C3,C9,D,E STATUS4 AU_MV_LT_L2 Digital R
PIDCON C1,C3,C9,D,E STATUS4 AU_MV_GT_H2 Digital R
PIDCONA C1,C3,C9,D,E MV_NONFILTERED None Float32 R
PIDCONA C1,C3,C9,D,E AUTOSP None Float32 R
PIDCONA C1,C3,C9,D,E WSP None Float32 R
PIDCONA C1,C3,C9,D,E DEVIATION None Float32 R
PIDCONA C1,C3,C9,D,E OUT None Float32 R
PIDCONA C1,C3,C9,D,E MV_AAFILTERED None Float32 R

Matrikon Inc. Page 59 of 84


Matrikon OPC Server for GCOM
PIDCONA C1,C3,C9,D,E EXTREF1 None Float32 R
PIDCONA C1,C3,C9,D,E EXTREF2 None Float32 R
PIDCONA C1,C3,C9,D,E EXTREF3 None Float32 R
PIDCONA C1,C3,C9,D,E EXT_OUT_LL None Float32 R
PIDCONA C1,C3,C9,D,E EXT_OUT_HL None Float32 R
PIDCONA C1,C3,C9,D,E ACTPOS None Float32 R
PIDCONA C1,C3,C9,D,E MNO_OF_DEC None Float32 R
PIDCONA C1,C3,C9,D,E ONO_OF_DEC None Float32 R
PIDCONA D,E NAME None String R
PIDCONA D,E DESCRIPTION None String R
PIDCONA D,E SUBSYSTEM None Byte R
PIDCONA D,E CLASS None Byte R
PIDCONA D,E E1_NAME None String R
PIDCONA D,E E2_NAME None String R
PIDCONA D,E E3_NAME None String R
PIDCONA D,E TS_TIME_BASE None Float32 R
PIDCONA D,E MMI_SP None Float32 R
PIDCONA D,E MMI_MAN_OUT None Float32 R
PIDCONA D,E PRESENT_GAIN None Float32 R
PIDCONA D,E PRESENT_TI None Float32 R
PIDCONA D,E PRESENT_TD None Float32 R
PIDCONA D,E PRESENT_BETA None Float32 R
PIDCONA D,E PRESENT_TS None Float32 R
PIDCONA D,E PRESENT_DOM_FRE None Float32 R
Q
PIDCONA D,E SCALE_A_MV None Float32 R
PIDCONA D,E SCALE_B_MV None Float32 R
PIDCONA D,E SCALE_A_OUT None Float32 R
PIDCONA D,E SCALE_B_OUT None Float32 R
PIDCONA D,E MMI_OUT_LL None Float32 R
PIDCONA D,E MMI_OUT_HL None Float32 R
PIDCONA D,E DEADZ None Float32 R
PIDCONA D,E MMI_SPL None Float32 R
PIDCONA D,E MMI_SPH None Float32 R
PIDCONA D,E MMI_MVL1 None Float32 R
PIDCONA D,E MMI_MVL2 None Float32 R
PIDCONA D,E MMI_MVH1 None Float32 R
PIDCONA D,E MMI_MVH2 None Float32 R
PIDCONA D,E MMI_MV_HYST None Float32 R

Matrikon Inc. Page 60 of 84


Matrikon OPC Server for GCOM
PIDCONA D,E MMI_DEVL None Float32 R
PIDCONA D,E MMI_DEVH None Float32 R
PIDCONA D,E MMI_DEV_HYST None Float32 R
PIDCONA D,E MV_AD_DEADZONE None Float32 R
PIDCONA D,E FREQLIM None Float32 R
PIDCONA D,E EXCITE_LEV_OUTP None Float32 R
PIDCONA D,E EXCITE_LEV_SETP None Float32 R
PIDCONA D,E RESPONSE_TYPE None Float32 R
PIDCONA D,E MRG_MIN None Float32 R
PIDCONA D,E MRG_MAX None Float32 R
PIDCONA D,E ORG_MIN None Float32 R
PIDCONA D,E ORG_MAX None Float32 R
PIDCONA D,E SRG_MIN None Float32 R
PIDCONA D,E SRG_MAX None Float32 R
PIDCONA C1,C3,C9,D,E STATUS1 IMPLEMENTED Digital R
PIDCONA C1,C3,C9,D,E STATUS1 ACTUATOR Digital R
PIDCONA C1,C3,C9,D,E STATUS1 MVIDR Digital R
PIDCONA C1,C3,C9,D,E STATUS1 SELECTED Digital R
PIDCONA C1,C3,C9,D,E STATUS1 SHOW_ACT Digital R
PIDCONA C1,C3,C9,D,E STATUS1 SHOW_SCHED Digital R
PIDCONA C1,C3,C9,D,E STATUS1 ALARM_UNACK Digital R
PIDCONA C1,C3,C9,D,E STATUS1 DIST Digital R
PIDCONA C1,C3,C9,D,E STATUS1 OUT_EQ_LL Digital R
PIDCONA C1,C3,C9,D,E STATUS1 OUT_EQ_HL Digital R
PIDCONA C1,C3,C9,D,E STATUS1 SP_EQ_LL Digital R
PIDCONA C1,C3,C9,D,E STATUS1 SP_EQ_HL Digital R
PIDCONA C1,C3,C9,D,E STATUS2 TS_MV_LT_L1 Digital R
PIDCONA C1,C3,C9,D,E STATUS2 TS_MV_GT_H1 Digital R
PIDCONA C1,C3,C9,D,E STATUS2 TS_DEV_LT_L Digital R
PIDCONA C1,C3,C9,D,E STATUS2 TS_DEV_LT_H Digital R
PIDCONA C1,C3,C9,D,E STATUS2 TS_MV_LT_L2 Digital R
PIDCONA C1,C3,C9,D,E STATUS2 TS_MV_GT_H2 Digital R
PIDCONA C1,C3,C9,D,E STATUS2 TS_LOCAL_FL Digital R
PIDCONA C1,C3,C9,D,E STATUS2 TS_MAN_FL Digital R
PIDCONA C1,C3,C9,D,E STATUS2 TS_E1_FL Digital R
PIDCONA C1,C3,C9,D,E STATUS2 TS_E2_FL Digital R
PIDCONA C1,C3,C9,D,E STATUS2 TS_E3_FL Digital R
PIDCONA C1,C3,C9,D,E STATUS2 AI_ERROR Digital R

Matrikon Inc. Page 61 of 84


Matrikon OPC Server for GCOM
PIDCONA C1,C3,C9,D,E STATUS2 TS_AT_PC_ABORTED Digital R
PIDCONA C1,C3,C9,D,E STATUS2 TS_AT_FAILED Digital R
PIDCONA C1,C3,C9,D,E STATUS2 TS_AT_ALERT Digital R
PIDCONA C1,C3,C9,D,E STATUS2 TS_INV_T_SAMP Digital R
PIDCONA C1,C3,C9,D,E STATUS2 S_ADAP_FAIL Digital R
PIDCONA C1,C3,C9,D,E STATUS3 BAL Digital R
PIDCONA C1,C3,C9,D,E STATUS3 MAN Digital R
PIDCONA C1,C3,C9,D,E STATUS3 AUTO Digital R
PIDCONA C1,C3,C9,D,E STATUS3 E1 Digital R
PIDCONA C1,C3,C9,D,E STATUS3 E2 Digital R
PIDCONA C1,C3,C9,D,E STATUS3 E3 Digital R
PIDCONA C1,C3,C9,D,E STATUS3 LOCAL_OUT Digital R
PIDCONA C1,C3,C9,D,E STATUS3 CLAMP_OUT Digital R
PIDCONA C1,C3,C9,D,E STATUS3 EXT_OUT_LI Digital R
PIDCONA C1,C3,C9,D,E STATUS3 BAD_SN Digital R
PIDCONA C1,C3,C9,D,E STATUS3 OUTSIDE_START_ZONE Digital R
PIDCONA C1,C3,C9,D,E STATUS3 AT_TIMEOUT Digital R
PIDCONA C1,C3,C9,D,E STATUS3 VERIFY_UNCERTAIN Digital R
PIDCONA C1,C3,C9,D,E STATUS3 AT_INDICATOR Digital R
PIDCONA C1,C3,C9,D,E STATUS3 AD_INDICATOR Digital R
PIDCONA C1,C3,C9,D,E STATUS3 AT_ENABLE Digital R
PIDCONA C1,C3,C9,D,E STATUS3 GS_ENABLE Digital R
PIDCONA C1,C3,C9,D,E STATUS3 MMI_MAN_F Digital R
PIDCONA C1,C3,C9,D,E STATUS4 ALARM_F1_BLK Digital R
PIDCONA C1,C3,C9,D,E STATUS4 ALARM_F1_PERIOD Digital R
PIDCONA C1,C3,C9,D,E STATUS4 PRINT_F1_BLK Digital R
PIDCONA C1,C3,C9,D,E STATUS4 ALARM_F2_PERIOD Digital R
PIDCONA C1,C3,C9,D,E STATUS4 PRINT_F2_BLK Digital R
PIDCONA C1,C3,C9,D,E STATUS4 UNACK_MV_LT_L1 Digital R
PIDCONA C1,C3,C9,D,E STATUS4 UNACK_MV_GT_H1 Digital R
PIDCONA C1,C3,C9,D,E STATUS4 UNACK_DEV_LT_L Digital R
PIDCONA C1,C3,C9,D,E STATUS4 UNACK_DEV_GT_H Digital R
PIDCONA C1,C3,C9,D,E STATUS4 UNACK_MV_LT_L2 Digital R
PIDCONA C1,C3,C9,D,E STATUS4 UNACK_MV_GT_H2 Digital R
PIDCONA C1,C3,C9,D,E STATUS5 UNACK_AT_PC_ABORTED Digital R
PIDCONA C1,C3,C9,D,E STATUS5 UNACK_AT_FAILED Digital R
PIDCONA C1,C3,C9,D,E STATUS5 UNACK_AT_ALERT Digital R
PIDCONA C1,C3,C9,D,E STATUS5 UNACK_INV_T_SAMP Digital R

Matrikon Inc. Page 62 of 84


Matrikon OPC Server for GCOM
PIDCONA C1,C3,C9,D,E STATUS5 UNACK_ADAP_FAIL Digital R
PIDCONA C1,C3,C9,D,E STATUS5 ADAP_ENBL Digital R
PIDCONA C1,C3,C9,D,E STATUS5 FREQ_UNLIMITED Digital R
MANSTN C1,C3,C9,D,E STATUS1 None Int32 R
MANSTN C1,C3,C9,D,E STATUS2 None Int32 R
MANSTN C1,C3,C9,D,E STATUS3 None Int32 R
MANSTN C1,C3,C9,D,E STATUS4 None Int32 R
MANSTN D NAME None String R
MANSTN D DESCRIPTION None String R
MANSTN C1,C3,C9,D,E MV None Float32 R
MANSTN C1,C3,C9,D,E OUTREF None Float32 R
MANSTN C1,C3,C9,D,E OUT None Float32 R
MANSTN C1,C3,C9,D,E TS None Float32 R
MANSTN C1,C3,C9,D,E POUT None Float32 R
MANSTN C1,C3,C9,D,E PRES1 None Float32 R
MANSTN D,E MRANGE_MIN None Float32 R
MANSTN D,E MRANGE_MAX None Float32 R
MANSTN E MMI_MVL2 None Float32 R
MANSTN E MMI_MVL1 None Float32 R
MANSTN E MMI_MVH1 None Float32 R
MANSTN E MMI_MVH2 None Float32 R
MANSTN E PORANGE_MIN None Float32 R
MANSTN E PORANGE_MAX None Float32 R
MANSTN E P1RANGE_MIN None Float32 R
MANSTN E P1RANGE_MAX None Float32 R
MANSTN C1,C3,C9,D,E STATUS1 IMPLEMENTED Digital R
MANSTN C1,C3,C9,D,E STATUS1 RUNNING Digital R
MANSTN C1,C3,C9,D,E STATUS1 ACTUATOR Digital R
MANSTN C1,C3,C9,D,E STATUS1 MVDIR Digital R
MANSTN C1,C3,C9,D,E STATUS1 SELECTED Digital R
MANSTN C1,C3,C9,D,E STATUS1 TESTED Digital R
MANSTN C1,C3,C9,D,E STATUS1 PANEL_CTRL Digital R
MANSTN C1,C3,C9,D,E STATUS1 ON_OFF_CTRL Digital R
MANSTN C1,C3,C9,D,E STATUS1 ALARM_UNACK Digital R
MANSTN C1,C3,C9,D,E STATUS1 REP_FAIL_BLK Digital R
MANSTN C1,C3,C9,D,E STATUS1 DIST Digital R
MANSTN C1,C3,C9,D,E STATUS1 ALARM_F1_BLK Digital R
MANSTN C1,C3,C9,D,E STATUS1 AL_F1_PE_BLK Digital R

Matrikon Inc. Page 63 of 84


Matrikon OPC Server for GCOM
MANSTN C1,C3,C9,D,E STATUS1 ALARM_F2_BLK Digital R
MANSTN C1,C3,C9,D,E STATUS1 AL_F2_PE_BLK Digital R
MANSTN C1,C3,C9,D,E STATUS1 OUT_EQ_LL Digital R
MANSTN C1,C3,C9,D,E STATUS1 OUT_EQ_HL Digital R
MANSTN C1,C3,C9,D,E STATUS1 SP_EQ_LL Digital R
MANSTN C1,C3,C9,D,E STATUS1 SP_EQ_HL Digital R
MANSTN C1,C3,C9,D,E STATUS2 TS_MV_LT_L1 Digital R
MANSTN C1,C3,C9,D,E STATUS2 TS_MV_GT_H1 Digital R
MANSTN C1,C3,C9,D,E STATUS2 TS_MV_LT_L2 Digital R
MANSTN C1,C3,C9,D,E STATUS2 TS_MV_GT_H2 Digital R
MANSTN C1,C3,C9,D,E STATUS2 AI_ERROR Digital R
MANSTN C1,C3,C9,D,E STATUS2 AO_ERROR Digital R
MANSTN C1,C3,C9,D,E STATUS2 DCM_ERROR Digital R
MANSTN C1,C3,C9,D,E STATUS2 PC_BLK Digital R
MANSTN C1,C3,C9,D,E STATUS2 SERVUC Digital R
MANSTN C1,C3,C9,D,E STATUS2 HW_ERR Digital R
MANSTN C1,C3,C9,D,E STATUS2 MMI_MAN Digital R
MANSTN C1,C3,C9,D,E STATUS2 MMI_E1 Digital R
MANSTN C1,C3,C9,D,E STATUS3 REMOTE Digital R
MANSTN C1,C3,C9,D,E STATUS3 CENTRAL Digital R
MANSTN C1,C3,C9,D,E STATUS3 LOCAL Digital R
MANSTN C1,C3,C9,D,E STATUS3 SERVICE_UNIT Digital R
MANSTN C1,C3,C9,D,E STATUS3 TRACK_B Digital R
MANSTN C1,C3,C9,D,E STATUS3 MAN Digital R
MANSTN C1,C3,C9,D,E STATUS3 E1 Digital R
MANSTN C1,C3,C9,D,E STATUS4 PRINT_F1_BLK Digital R
MANSTN C1,C3,C9,D,E STATUS4 REF1_FAIL_BLK Digital R
MANSTN C1,C3,C9,D,E STATUS4 PRINT_F2_BLK Digital R
MANSTN C1,C3,C9,D,E STATUS4 REF2_FAIL_BLK Digital R
MANSTN C1,C3,C9,D,E STATUS4 AU_MV_LT_L1 Digital R
MANSTN C1,C3,C9,D,E STATUS4 AU_MV_GT_H1 Digital R
MANSTN C1,C3,C9,D,E STATUS4 AU_MV_LT_L2 Digital R
MANSTN C1,C3,C9,D,E STATUS4 AU_MV_GT_H2 Digital R
RATIOSTN C1,C3,C9,D,E STATUS1 None Int32 R
RATIOSTN C1,C3,C9,D,E STATUS2 None Int32 R
RATIOSTN C1,C3,C9,D,E STATUS3 None Int32 R
RATIOSTN C1,C3,C9,D,E STATUS4 None Int32 R
RATIOSTN D,E NAME None String R

Matrikon Inc. Page 64 of 84


Matrikon OPC Server for GCOM
RATIOSTN D,E DESCRIPTION None String R
RATIOSTN C1,C3,C9,D,E MV None Float32 R
RATIOSTN C1,C3,C9,D,E RATIOREF None Float32 R
RATIOSTN C1,C3,C9,D,E WRATIO None Float32 R
RATIOSTN C1,C3,C9,D,E OUT None Float32 R
RATIOSTN C1,C3,C9,D,E TS None Float32 R
RATIOSTN C1,C3,C9,D,E MAN_OUT None Float32 R
RATIOSTN C1,C3,C9,D,E EXT_OUT_LL None Float32 R
RATIOSTN C1,C3,C9,D,E EXT_OUT_HL None Float32 R
RATIOSTN C1,C3,C9,D,E POUT None Float32 R
RATIOSTN D,E MRANGE_MIN None Float32 R
RATIOSTN D,E MRANGE_MAX None Float32 R
RATIOSTN E MMI_MVL2 None Float32 R
RATIOSTN E MMI_MVL1 None Float32 R
RATIOSTN E MMI_MVH1 None Float32 R
RATIOSTN E MMI_MVH2 None Float32 R
RATIOSTN C1,C3,C9,D,E MMI_RATIOREF None Float32 R
RATIOSTN C1,C3,C9,D,E MMI_MAN_OUT None Float32 R
RATIOSTN C1,C3,C9,D,E MMI_BIAS None Float32 R
RATIOSTN E MUNIT None String R
RATIOSTN E RUNIT None String R
RATIOSTN E POUNIT None String R
RATIOSTN C1,C3,C9,D,E STATUS1 IMPLEMENTED Digital R
RATIOSTN C1,C3,C9,D,E STATUS1 RUNNING Digital R
RATIOSTN C1,C3,C9,D,E STATUS1 SELECTED Digital R
RATIOSTN C1,C3,C9,D,E STATUS1 TESTED Digital R
RATIOSTN C1,C3,C9,D,E STATUS1 PANEL_CTRL Digital R
RATIOSTN C1,C3,C9,D,E STATUS1 ALARM_UNACK Digital R
RATIOSTN C1,C3,C9,D,E STATUS1 REP_FAIL_BLK Digital R
RATIOSTN C1,C3,C9,D,E STATUS1 DIST Digital R
RATIOSTN C1,C3,C9,D,E STATUS1 ALARM_F1_BLK Digital R
RATIOSTN C1,C3,C9,D,E STATUS1 AL_F1_PE_BLK Digital R
RATIOSTN C1,C3,C9,D,E STATUS1 ALARM_F2_BLK Digital R
RATIOSTN C1,C3,C9,D,E STATUS1 AL_F2_PE_BLK Digital R
RATIOSTN C1,C3,C9,D,E STATUS1 OUT_EQ_LL Digital R
RATIOSTN C1,C3,C9,D,E STATUS1 OUT_EQ_HL Digital R
RATIOSTN C1,C3,C9,D,E STATUS1 RATIO_EQ_LL Digital R
RATIOSTN C1,C3,C9,D,E STATUS1 RATIO_EQ_HL Digital R

Matrikon Inc. Page 65 of 84


Matrikon OPC Server for GCOM
RATIOSTN C1,C3,C9,D,E STATUS2 TS_MV_LT_L1 Digital R
RATIOSTN C1,C3,C9,D,E STATUS2 TS_MV_GT_H1 Digital R
RATIOSTN C1,C3,C9,D,E STATUS2 TS_MV_LT_L2 Digital R
RATIOSTN C1,C3,C9,D,E STATUS2 TS_MV_GT_H2 Digital R
RATIOSTN C1,C3,C9,D,E STATUS2 AI_ERROR Digital R
RATIOSTN C1,C3,C9,D,E STATUS2 AO_ERROR Digital R
RATIOSTN C1,C3,C9,D,E STATUS2 DCM_ERROR Digital R
RATIOSTN C1,C3,C9,D,E STATUS2 PC_BLK Digital R
RATIOSTN C1,C3,C9,D,E STATUS2 SERVUC Digital R
RATIOSTN C1,C3,C9,D,E STATUS2 HW_ERR Digital R
RATIOSTN C1,C3,C9,D,E STATUS2 MMI_MAN Digital R
RATIOSTN C1,C3,C9,D,E STATUS2 MMI_AUTO Digital R
RATIOSTN C1,C3,C9,D,E STATUS2 MMI_E1 Digital R
RATIOSTN C1,C3,C9,D,E STATUS3 REMOTE Digital R
RATIOSTN C1,C3,C9,D,E STATUS3 CENTRAL Digital R
RATIOSTN C1,C3,C9,D,E STATUS3 LOCAL Digital R
RATIOSTN C1,C3,C9,D,E STATUS3 SERVICE_UNIT Digital R
RATIOSTN C1,C3,C9,D,E STATUS3 TRACK_B Digital R
RATIOSTN C1,C3,C9,D,E STATUS3 MAN Digital R
RATIOSTN C1,C3,C9,D,E STATUS3 E1 Digital R
RATIOSTN C1,C3,C9,D,E STATUS4 PRINT_F1_BLK Digital R
RATIOSTN C1,C3,C9,D,E STATUS4 REF1_FAIL_BLK Digital R
RATIOSTN C1,C3,C9,D,E STATUS4 PRINT_F2_BLK Digital R
RATIOSTN C1,C3,C9,D,E STATUS4 REF2_FAIL_BLK Digital R
RATIOSTN C1,C3,C9,D,E STATUS4 AU_MV_LT_L1 Digital R
RATIOSTN C1,C3,C9,D,E STATUS4 AU_MV_GT_H1 Digital R
RATIOSTN C1,C3,C9,D,E STATUS4 AU_MV_LT_L2 Digital R
RATIOSTN C1,C3,C9,D,E STATUS4 AU_MV_GT_H2 Digital R

Matrikon Inc. Page 66 of 84


Matrikon OPC Server for GCOM

Appendix B - PERFORMANCE

The Advant 400 series controllers have the following performance criteria:
• At most 50 messages per second can be transferred through one GCOM card.
• A maximum of three signals per 60 ms can be transferred through one GCOM card.
• A maximum of three signals ready for sending to each node on the GCOM bus can be
queued on the GCOM card.
• A maximum delay of 20ms will be seen when transferring messages between the Advant
Controller and the OPC GCOM Server.
The OPC Server must send an acknowledgement within 250ms otherwise the GCOM card will
retransmit the signal. The OPC Server will typically acknowledge a message at most within
20ms. Additional messages are queued on the GCOM card while waiting for this
acknowledgement.
Message examples are:
• A single data subscription request to one node, requesting 1-16 objects.
• A single answer on a request from one node which can contain of 1-38 objects depending on
the object type and access type.
Example:
– Up to 38 objects for cyclic data of DI or DO.
– Up to five objects for event data of DI or DO.
– Up to 23 objects for cyclic data of AI or AO.
– Up to three objects for event data of AI.
– Up to two objects for cyclic data of PIDCON.
– One object for demand data of PIDCON with access type 3.
• A single Data Set (with up to 24 values (a value can be one integer, one real or 32 Boolean)).
• A single order for one object.
If data sets are used at most 24*50 = 1200 values per second (1200 (integer/real) or 38400
(Boolean) object values) values can be sent or received.
For other controllers, please consult your ABB documentation for performance specifications.

Matrikon Inc. Page 67 of 84


Matrikon OPC Server for GCOM

B.1 DATA SET USE


A Data Set is defined by a database element that states if it is a transmitting or receiving Data
Set, the cycle time and from where the information is received or to where it is transmitted. The
database element for a Data Set also refers to a number of DAT elements. These DAT elements
contain, in turn, the values which are to be transmitted/received.

Performance Considerations

Receiving Data Sets generate more load than transmitting Data Sets. To minimize the load, you
can create database elements for receiving Data Sets in an Advant 450 Controllers before
transmitting. Place database elements for the Data Set which receives data most frequently at the
beginning. If there are still load problems in the controller or on the bus, you can transmit data
event-controlled. Use the element SENDREQ for this. You can use the “VALID” flag on the
database element for a receiving Data Set and the DAT element as a “Fresh data available” flag.

Matrikon Inc. Page 68 of 84


Matrikon OPC Server for GCOM

B.2 GCOM CAPACITY AND PERFORMANCE1


The performance of GCOM protocol depends on where it is installed. For example, if the GCOM
communication board is installed in a MasterGate, the following is valid:
A maximum of 50 messages per second can pass one MasterGate 230/1 (valid when GCOM
multidrop is used).
Each MasterPiece or Advant Controller can handle a maximum of five messages per second
to/from its own MasterGate230/1.
With the function data subscription, an external computer can work against up to 300 objects at
one time. Of those, a maximum of 30 can have a cycle time of three seconds; the remaining
objects must have a cycle time of nine seconds or be of the demand type.
Examples of messages follow:
• One data subscription request with one to 16 objects.
• An answer on a request which can consist of one to 38 objects, depending on the object
type and access type.
• One dataset, with up to 24 values (a value can be one real, one integer (2 or 4 bytes) or
32 digital).
• One order.
An answer on a data subscription request for historical time-tagged data (TTD) consists of up to
seven messages.
If the external computer uses only the DSC function, it can send/receive 24x50 = 1200 values per
second (1200 integer/real or 38400 Boolean object values).
If the external computer uses only the function data subscription and all values are logged and
stored as historical time tagged data in the ABB MasterPieces or Advant Controllers, then the
external computer can request 402 values in one TTD request. The answer is received in seven
messages. The external computer then receives up to (50/(7+1))402 = 2500 values per second.
With the function data subscription, an external computer can work against up to 300 objects at
one time. Of those, a maximum of 30 can have a cycle time of three seconds. The remainder
must have a cycle time of nine seconds or be of the demand type.

1
Contents of entire page from GCOM Multidrop User’s Guide.
Copyright ABB Industrial Systems AB 1997.

Matrikon Inc. Page 69 of 84


Matrikon OPC Server for GCOM

Appendix C - DISTRIBUTED COM (DCOM)


DCOM is an object protocol that enables COM components (such as OPC clients and servers) to
communicate directly with each other across a network. A certain amount of configuration is
required on the system where the OPC server is installed to allow remote clients to connect to it
over the network.
The following steps are suggestions only. Ask your Windows NT System
Administrator for more information about the settings that you should use, especially
between different domains.
Note
C.1 DCOM CONFIGURATION UTILITY
Start the DCOM configuration utility either from the server configuration utility or from the
command-line (DCOMCNFG). Answer "Yes" to any message boxes that appear, allowing the
utility to assign application ID entries to those servers that don't already have them.
The main window for DCOMCNFG allows the user to either configure default settings for all
COM servers or else to configure settings for a specific server chosen from the list. The former
will affect all servers configured to use the default settings. The latter will affect the selected
server only.

DCOM settings are stored in the registry and loaded by COM (and OPC) servers at
start-up. Therefore, server processes must be shut down and restarted in order for these
changes to take effect.
Note

C.2 DEFAULT PROPERTIES


The Default Properties tab contains settings that affect all DCOM communication on the
machine. First of all, ensure that the "Enable Distributed COM on this computer" is selected in
so that the machine is available to others via DCOM. Select the "Enable COM Internet Services
on this computer" to allow DCOM access to the machine from the Internet (check with your
administrator). In general, the other settings do not need to be changed.
The Authentication Level specifies when COM should authenticate the identity of calling clients
(each call, each packet, etc). Normally, it should be set to "Connect", indicating that COM
should authenticate clients when they first connect to a server. If it is set to "None" then COM
performs no authentication and ignores any access permission settings.
The Impersonation Level specifies whether servers can ascertain the identity of calling clients
and whether they can then perform operations on the client's behalf (as if the server is the client).
Normally, it should be set to "Identify", allowing the server to identify the calling client to see if
it is allowed access to a certain resource but not to actually access any of these resources as the
client.
Select the "Provide additional security for reference tracking" to make even the reference
counting on COM objects secure. This setting is not generally required.

Matrikon Inc. Page 70 of 84


Matrikon OPC Server for GCOM

C.3 SECURITY PERMISSIONS


The most important DCOM settings for an OPC server are the security permissions. Change the
default settings (not recommended) and make sure that the OPC server will use these or else
change the specific settings for the server (recommended). Either way, make certain that the
access and launch permissions for the server are correct.
To set the security permissions for an OPC Server first open the DCOM configuration utility.
After it is open click on the OPC server and then click Properties.

Click on the Security tab to set the Security for the Server.

Matrikon Inc. Page 71 of 84


Matrikon OPC Server for GCOM
The Access Permissions contain an Access Control List of principals that are allowed to interact
with objects supplied by a server. The Launch Permissions contain an Access Control List of
principals that are allowed to start up a server process or service. Include the names of users or
user groups from trusted domains that you wish to be able to use the OPC server on this
machine. Include the "Everyone" group to allow access to all users on a particular domain.
To set the Access permissions you would click “Use custom access permissions” and then click
edit. A screen similar to the following will appear:

To add users to the list click Add. Another screen similar to the following appears:

To add a user to the list click on that user and then click Add. If the user you wish to add does
not appear then click Show Users. When you are done adding users click OK to close “Add
Users and Groups”. You can then choose to “Allow Access” or “Deny Access” for each user.

Matrikon Inc. Page 72 of 84


Matrikon OPC Server for GCOM
The procedure to set the launch permissions is similar to the above, but instead of choosing
“Allow Access” for a user you would choose “Allow Launch”.
The Configuration Permissions contain an Access Control List of principals that are allowed to
modify the configuration information for a server. In other words, it indicates who is allowed to
alter the registry entries for installed servers as well as who is able to access the registry for the
purposes of installing new servers. It is usually simpler to install and configure servers as a user
with local administrative rights.
To connect to an OPC server from outside of the domain create a local user account on both the
server and the client machine with identical username and password. Then add the local user on
the OPC server to the DCOM permissions. Then use the local account on the client machine to
connect to the OPC server.

C.4 SERVER IDENTITY


The Identity tab for a selected COM (or OPC) server specifies the user account that should be
used when COM starts up the process. The available settings are different for servers that run as
local executables as opposed to those that run as NT services.
It is strongly recommended that OPC server should be installed to run as NT services if
they are going to be accessed by remote clients via DCOM. This ensures that the server
can always be accessed, even if no one is presently logged on to the machine, and only
Note one server process ever starts up. It also adds a greater degree of security in terms of
who is able to shut down the server process.
Servers that run as local executables have the option of running as the launching user (the calling
client –this is the default), the interactive user (the one currently logged onto the machine), or a
specified user. It is usually best to use the interactive user or a specified user. Otherwise, remote
clients might start up multiple separate server processes that are not accessible to others.
Servers that run as NT services should generally run as the local System account. Alternatively,
the server can be set to run as a specified user, although this is usually done from the Service
Control Manager applet rather than DCOMCNFG. Access and Launch permissions are
particularly important when installing a server to run as an NT service.

C.5 DEFAULT PROTOCOLS


The Default Protocols tab specifies the communication protocols available to DCOM. The order
that protocols appear in the list indicates the priority in which they will be used (the topmost
having the highest priority). Note: UDP/IP protocol does not work correctly for DCOM and
should be removed from the list
The more protocols that appear in the list, the better the chances of connecting to an OPC server
on an unknown remote machine (such as at an OPC Interoperability Workshop). However, it
may also take longer for DCOM to time out if a server machine is not present since it has to try
each protocol in turn.
For most situations it is best to remove all unused protocols from the list and only include those
that are necessary for your network. For example, on a TCP/IP network one would include the
"Connection-oriented TCP/IP" protocol. Contact your IT personnel for more information about
your network.

Matrikon Inc. Page 73 of 84


Matrikon OPC Server for GCOM
Evidence indicates that there are problems with the datagram-oriented protocols that
can cause memory leaks in DCOM. Therefore, it is strongly recommended that these
protocols not be used in the list of default protocols. Datagram-oriented protocols are
not supported under Windows 2000 (although the DCOM configuration utility allows
Note you to configure them).

C.6 REMOTE PROGRAM ID


Before the OPC Server Browser became available, OPC client applications had to search the
registry to generate a list of available OPC servers. Therefore, some older OPC clients need to
have a program ID in the local registry in order to connect to a particular OPC server.
The simplest solution is to install the OPC server software on the client machine even if it is not
used. Alternatively, use the following steps to copy a program ID to the client machine.

This method may not work for every OPC client. Please check the client documentation
for more information.
Note
1. On the server machine, run REGEDIT as a user that has access rights to the local registry.
2. Expand the HKEY_CLASSES_ROOT key.
3. Find the program ID(s) for the desired OPC server(s). In the case of Matrikon OPC Servers,
the ID has the form "Matrikon.OPC.Device". If you quickly type the first few letters then
REGEDIT should jump to the location of that key. Some servers may have both a version-
specific as well as a version-independent program ID. In this case both ID's should be copied
to the client machine.
4. For each program ID, select the key and choose "Export Registry File" from the Registry
menu. Enter a file name and choose Save. Be careful not to overwrite other export files that
you are creating.
5. Copy the exported REG files to the client machine.
6. Merge the REG files into the registry of the client machine. This should simply be a matter of
double clicking on the file from the desktop of the client machine. Alternatively, run
REGEDIT on the client machine and choose "Import Registry File" from the Registry menu,
selecting each file in turn. This must be done as a user who has write access to the local
registry.
7. Use REGEDIT to check that the program ID's have in fact been copied.
8. Delete the REG files since they are no longer needed.

Matrikon Inc. Page 74 of 84


Matrikon OPC Server for GCOM

Appendix D - OPC COMPLIANCE


All Matrikon OPC Servers comply fully with the OPC Data Access 2.0 Custom Interface
Standard. They also support some of the optional capabilities, including backward-compatibility
for the old style of asynchronous communication found in the 1.0a specification. The following
provides a technical description of supported features. Optional interfaces appear in square
brackets ([]).

D.1 OPC SERVER OBJECT


Interface Notes
9 IUnknown
9 IOPCCommon Locales Supported: English (United States)
9 IOPCServer
[IOPCServerPublicGroups] Public groups not supported.
9 [IOPCBrowseServerAddress Hierarchical, no access paths.
Space]
[IPersistFile] (not required)
9 IConnectionPointContainer
9 IConnectionPoint Multiple connections allowed.
(IOPCShutdown)
9 IOPCItemProperties All servers support the six OPC-specific properties. Some
may also support other standard or custom properties.

D.2 OPC GROUP OBJECT


Interface Notes
9 IUnknown
9 IOPCItemMgt
9 IOPCGroupStateMgt
[IOPCPublicGroupStateMgt] Public groups not supported.
9 IOPCSyncIO
9 IOPCAsyncIO2
9 IConnectionPointContainer
9 IConnectionPoint Multiple connections allowed.
(IOPCDataCallback)
9 [IOPCAsyncIO] (1.0a) Data streams support simple data types, strings, and one-
dimensional arrays of simple data types and strings.
9 [IDataObject] (1.0a) Multiple connections allowed for all three formats.

Matrikon Inc. Page 75 of 84


Matrikon OPC Server for GCOM

D.3 SERVER REGISTRATION


In compliance with the OPC and COM specifications, Matrikon OPC Servers make the
following registry entries under HKEY_CLASSES_ROOT when registered on a target system.
These entries are removed when the server is unregistered.

Registry Key Value


Matrikon.OPC.Device Matrikon OPC Server for Device
Matrikon.OPC.Device\CLSID {CLSID1}
Matrikon.OPC.Device\CurVer Matrikon.OPC.Device.#
Matrikon.OPC.Device\OPC\Vendor Matrikon Consulting Inc (780) 448-1010
http://www.matrikon.com
Matrikon.OPC.Device.# Matrikon OPC Server for Device
Matrikon.OPC.Device.#\CLSID {CLSID1}
CLSID\{CLSID1} Matrikon OPC Server for Device
CLSID\{CLSID1}\APPID {APPID}
CLSID\{CLSID1}\DefaultConfig (initially empty)
CLSID\{CLSID1}\ProgID Matrikon.OPC.Device.#
CLSID\{CLSID1}\VersionIndependantProgID Matrikon.OPC.Device
CLSID\{CLSID1}\LocalServer32 (path to server executable)
PSTCFGMatrikon.OPC.Device.# Matrikon OPC Server for Device
PSTCFGMatrikon.OPC.Device.#\CLSID {CLSID2}
PSTCFGMatrikon.OPC.Device.#\ShellPath (path to PSTCFG.EXE)
PSTCFGMatrikon.OPC.Device.#\HelpFile (path to .HLP file, if it exists)
CLSID\{CLSID2} Matrikon OPC Server for Device
CLSID\{CLSID2}\APPID {APPID}
CLSID\{CLSID2}\ProgID Matrikon.OPC.Device.#
CLSID\{CLSID2}\LocalServer32 (path to server executable)
APPID\{APPID} Matrikon OPC Server for Device
Matrikon OPC Servers also register themselves with the Microsoft Standard Component
Category Manager. After ensuring that the OPC 1.0 and 2.0 categories exist, the servers register
in both of these categories. The OPC Server Browser searches for servers that implement these
categories.

Matrikon Inc. Page 76 of 84


Matrikon OPC Server for GCOM

Appendix E - OPC QUALITY FLAGS


The OPC quality flags represent the quality of an item’s data value. The lower byte is a bit-field
used to convey standard quality values. The high byte is available for vendor-specific use
complementary to the standard values. The following table lists the range of valid quality values
(ignoring the vendor-specific bits). Please refer to the OPC DA 2.0 specification for further
information.

Binary Decimal Definition Description


The value is bad (no specific
00000000 0 Bad, Non-specific reason).

There is some server-specific


00000100 4 Bad, Configuration Error
problem with the configuration.
The input should to be logically
00001000 8 Bad, Not Connected connected to something but is
not.
A device failure has been
00001100 12 Bad, Device Failure
detected.
A sensor failure has been
00010000 16 Bad, Sensor Failure
detected. The value may be
00010001 17 + Low Limit
“pegged” as indicated by the
00010010 18 + High Limit
limit field.
00010011 19 + Constant

Communications have failed.


00010100 20 Bad, Last Known Value The item value represents the
last known.
Communications have failed.
00011000 24 Bad, Comm Failure
There is no last known value.
The block is off-scan or
00011100 28 Bad, Out of Service otherwise locked, or the group
or item is inactive.
The value is uncertain (no
01000000 64 Uncertain, Non-specific
specific reason).
Whatever was writing this value
01000100 68 Uncertain, Last Usable Value has stopped doing so. The value
is “stale”.
Uncertain, Sensor Not The value may be “pegged” at
01010000 80
Accurate one of its limits or it is detected
01010001 81
+ Low Limit as being out of calibration.
01010010 82
+ High Limit
Binary Decimal Definition Description

Matrikon Inc. Page 77 of 84


Matrikon OPC Server for GCOM

01010100 84 Uncertain, EU Exceeded The returned value is outside of


01010101 85 + Low Limit the engineering unit limits
01010110 86 + High Limit defined for this parameter.
01010111 87 + Constant
The value is derived from
01011000 88 Uncertain, Sub-normal multiple sources, an insufficient
number of them are GOOD.
The value is good (no specific
11000000 192 Good, Non-specific
reason).
The value has been overridden
11011000 216 Good, Local Override and forced to a manually entered
setting.

Matrikon Inc. Page 78 of 84


Matrikon OPC Server for GCOM

Appendix F - VARIANT DATA TYPES


The following is a list of the constant numeric values for VARIANT data types.

Value Data Type Description


0 VT_EMPTY Default/Empty (Nothing)
2 VT_I2 2 byte signed integer
3 VT_I4 4 byte signed integer
4 VT_R4 4 byte real
5 VT_R8 8 byte real
6 VT_CY currency
7 VT_DATE date
8 VT_BSTR text
10 VT_ERROR error code
11 VT_BOOL Boolean (TRUE = -1, FALSE = 0)
17 VT_I1 1 byte signed character
18 VT_UI1 1 byte unsigned character
19 VT_UI2 2 byte unsigned integer
20 VT_UI4 4 byte unsigned integer
+8192 VT_ARRAY Array of values (i.e. 8200 = array of text values)

Matrikon Inc. Page 79 of 84


Matrikon OPC Server for GCOM

Appendix G - OPC I/O METHODS


The following sections contain a more detailed description between the different I/O methods
available from OPC servers. Please refer to the OPC DA 2.0 specification for further
information.

G.1 SYNCHRONOUS VERSUS ASYNCHRONOUS I/O


All OPC compliant servers must provide two distinct methods for real-time data access. OPC
clients can choose between synchronous and asynchronous I/O for their operations. All OPC
servers must support both synchronous I/O and at least one form of asynchronous I/O (2.0 or
1.0a) to be compliant. These terms only refer to communication between the client and the
server, and not between the server and its data source.
Synchronous operations are blocking calls made to an OPC server to either read or write a group
of OPC items. When an OPC client makes a synchronous call, it passes control to the OPC
server and does not continue processing until the call is complete. Synchronous operations are
only ever used for testing, special operations (generally involving DEVICE reads), or in
extremely simple OPC clients.
Asynchronous operations are non-blocking. OPC Client applications establish "call-back"
objects to which the OPC server can interface to deliver item updates. Once this "call-back" is
established, the OPC server continually informs the client of changes in value to OPC items as
they occur, being careful not to exceed the OPC group update rate and potentially overwhelm the
client.
OPC clients may also create asynchronous "transactions" to perform non-passive operations.
These transactions include reading from DEVICE, refreshing of all active items in an active
group, and writing control values. Once the client creates a transaction, it can carry on processing
until the OPC server informs it that the transaction is complete through the client's "call-back"
object. The server also returns an ID number when a transaction is created so that the client can
try to cancel it if it is taking too long.
Asynchronous I/O is the normal preferred method for continuous real-time data access.
However, synchronous I/O can be useful for scenarios involving infrequent or "one-shot" data
access operations.

G.2 DEVICE VERSUS CACHE READS


When an OPC client creates a group and adds items to it, the OPC server attempts to retrieve
values for active items from its source of data. Internally, it maintains a data "cache", which it
attempts to update at least as fast as indicated by the update rate of the group. The server
optimizes regular communication with its source of data for best performance while keeping the
cache "fresh".
However, the need may arise to retrieve real-time values directly from the data source, by-
passing the regular optimization routines of the CACHE and the time delays they might impose.
OPC provides the means to do this using DEVICE reads through either synchronous or
asynchronous I/O.
DEVICE reads may be performed at any time on specific items in a group. They ignore the
update rate and active state of the group or items involved. Due to the fact that they by-pass

Matrikon Inc. Page 80 of 84


Matrikon OPC Server for GCOM
normal optimization routines, reads from DEVICE should be used sparingly as they may incur a
severe performance penalty in the server.
A scenario where a synchronous read from DEVICE might be useful is in the case of a utility for
altering a series of set points in a device. The client application might create an inactive group
with the desired items and perform a DEVICE read it. When the call completes, the item values
are as current as possible. The utility can then display the values, allow the user to alter them,
and synchronously write them out to the device. This could be followed by a second DEVICE
read to ensure that the values were written.
Had a DEVICE read not been used, it could take some time before the server receives the first
values for the group after it is activated. Additionally, there is no guarantee that the values would
all arrive in the same update. A DEVICE read ensures that the values all arrive at the same time.
Technically, write operations are always DEVICE writes. However, there is no point in writing
to the CACHE, so this terminology is redundant.

G.3 OPC DA 2.0 VERSUS 1.0A ASYNCHRONOUS I/O


With the release of the OPC Data Access Version 2.0 Custom Interface Standard, the OPC
Foundation included a new method for asynchronous I/O intended to replace the version 1.0a
standard. While some OPC servers may continue to support the old method of asynchronous I/O,
they are under no obligation to do so. The new method is simpler, easier to implement, and
avoids certain errors that could occur with slow client applications using the old method.
Older OPC clients that require 1.0a interfaces will not be able to communicate properly with new
OPC servers that only support the 2.0 interfaces. Similarly, newer OPC clients that require 2.0
interfaces will not be able to communicate with old OPC servers that only support the 1.0a
interfaces. Vendors of software that require or support 1.0a interfaces are encouraged to update
to the 2.0 standard, which is intended to replace the 1.0a standard.
All Matrikon OPC Servers support both DA 2.0 and 1.0a asynchronous I/O. As such, OPC
clients that depend on either method are able to communicate with them. OPC clients such as
Matrikon OPC Explorer that support both methods generally attempt to use the 2.0 method first
and then resort to 1.0a if that fails.

Matrikon Inc. Page 81 of 84


Matrikon OPC Server for GCOM

Appendix H - ALIAS CONFIGURATION


H.1 SCALING EXPRESSIONS

Expression Description Examples


‘text’ Text value (enclosed in single ‘hello’
quotation marks). ‘Joe’’s Alias’
+ - * / Addition (or Append), Subtraction, (3 * 7 + 1) / 8 – 2
Multiplication, and Division ‘hi ‘ + ‘there’
= < > <> <= >= Equal To, Less Than, Greater 3<4
Than, Unequal To, Less or Equal
To, Greater or Equal To
Not And Or Logical Not, Logical And, Logical (7 >= 3) And (1 <> 0)
Or (12 And 5) = 4
May also be used for binary math.
TIME Current time as text ‘The time is ‘ + TIME
DATE Current date as text ‘Today is ‘ + DATE
INT(x) Returns the integer part of x INT(3.14) = 3
FRAC(x) Returns the fractional part of x FRAC(3.14) = 0.14
SQRT(x) Returns the square root of x SQRT(16) = 4
DIV(x, y) Divides x by y DIV(42, 7) = 6
IF(expression, x, y) Returns x if expression evaluates IF(6 <= 12, ‘OK’, ‘Bad’) = ‘OK’
to TRUE, otherwise returns y
TRUE FALSE Constant Boolean true and false (5 > 6) = FALSE
TYPEOF(x) Returns the data type of x as a text TYPEOF(‘hello’) = ‘STRING’
description (‘STRING’,
‘INTEGER’, ‘FLOAT,
‘BOOLEAN’, ‘ERROR’).
STR(x) Converts the numeric value x to STR(3.14) = ‘3.14’
text
UPPER(x) Converts the text value x to all UPPER(‘hello’) = ‘HELLO’
LOWER(x) upper case or lower case letters, or LOWER(‘HI THERE’) = ‘hi
PRETTY(x) the first letter upper case and the there’
rest lower PRETTY(‘ALARM’) = ‘Alarm’
COPY(x, start, Returns a sub-string of the x, COPY(‘FIDDLE’, 2, 4) = ‘IDDL’
length) copying length characters starting
at start

Expression Description Examples


Matrikon Inc. Page 82 of 84
Matrikon OPC Server for GCOM

FORMATNUMER Converts the numeric value x to FORMATNUMERIC('####.#',


IC(mask, x) text using the format mask 123.4567) = ‘123.5’
INPUT The incoming value read from INPUT * 3.1415
OPC
OUTPUT The outgoing value written to OPC OUTPUT / 3.1415

H.2 CONFIGURATION CSV FORMAT


Comma-delimited text files (CSV) contain records on each line. Commas separate the individual
fields in a record. If the data within a field contains commas or spaces in itself, then the data is
enclosed in double quotation marks (“”). If the data contains a double quotation mark within
itself, then two double quotation marks are used in place. Lines beginning with a hash mark (#)
are ignored as comments.
Each record in an alias CSV files has the following general format.
"Alias Group", "Alias Name", "Item Path", <data type>,
<read-only>, <poll always>, <update rate>, <scaling>
[, <scaling parameters>...]

For example: "North.FIC101","CV","Com1.Plc1.4:0001F",5,1,0,0,0

Field Description
The name of the alias group folder to add the alias item to.
Periods in this name indicate subfolders below the root (i.e.
"Alias Group"
North.FIC101 = folder "North" under the root and subfolder
"FIC101" under that).
The alias item name. To access a particular item from an
"Alias Name" OPC client, the full path name is delimited with periods (i.e.
North.FIC101.CV).
The fully qualified item ID for the OPC item to which this
"Item Path"
alias refers.
A number indicating the data type to convert the value to
before it is returned to the OPC client. This is also appears
as the "canonical" data type for the alias when browsing.
<data type>
Use as zero in this field for the default data type of the
referenced OPC item. See the annex for a list of possible
values.
The number one in this field indicates that the alias cannot
<read-only>
be written to. The number zero indicates that it can.
These values are used in conjunction to ensure that an OPC
item is always being scanned whether the client is presently
<poll always>,
using it or not. Set the "poll always" value to a one for the
<update rate>
item to be scanned continuously, and specify the update rate
in milliseconds. Otherwise, set both values to zero.
Field Description

Matrikon Inc. Page 83 of 84


Matrikon OPC Server for GCOM

Indicates which type of scaling is applied to the alias item.


The parameters that follow this value depend on the type
<scaling>
used. Possible scaling types are 0 (none), 1 (linear), 2
(square root), 3 (gain/offset), and 4 (expression).
<high raw>, Linear or square-root scaling parameters include the raw
<low raw>, high and low values, scaled high and low values, and a
<high scaled>, clamping option. Possible clamp types are 0 (none), 1
<low scaled>, (clamp low value), 2 (clamp high value), and 3 (clamp both
<clamp> high and low values).
<gain>, Gain/offset scaling parameters include a scaling factor and
<offset> an offset.
Expression scaling parameters include input and output
expressions. The input expression is applied to the value
"Input Expression","Output
from the OPC item when reading. The output expression is
Expression"
applied to values going to the OPC item when writing.
These equations should be reciprocals of each other.

Matrikon Inc. Page 84 of 84

You might also like