OPC Client Interface Reference EP-DSX706
OPC Client Interface Reference EP-DSX706
EP-DSX706
April 2010
Issue Date
14 April 2010
Notice
This document contains Honeywell proprietary information. Information
contained herein is to be used solely for the purpose submitted, and no part of this
document or its contents shall be reproduced, published, or disclosed to a third
party without the express permission of Honeywell International Sàrl.
While this information is presented in good faith and believed to be accurate,
Honeywell disclaims the implied warranties of merchantability and fitness for a
purpose and makes no express warranties except as may be stated in its written
agreement with and for its customer.
In no event is Honeywell liable to anyone for any direct, special, or consequential
damages. The information and specifications in this document are subject to
change without notice.
Copyright 2010 – Honeywell International Sàrl
Honeywell trademarks
Experion®, PlantScape®, SafeBrowse®, TotalPlant® and TDC 3000® are U.S.
registered trademarks of Honeywell International Inc.
Honeywell Enterprise Buildings Integrator™ is a trademark of Honeywell
International Inc.
Other trademarks
Microsoft and SQL Server are either registered trademarks or trademarks of
Microsoft Corporation in the United States and/or other countries.
Trademarks that appear in this document are used only to the benefit of the
trademark owner, with no intention of trademark infringement.
2 www.honeywell.com
Contents
1 Getting started 5
OPC Client support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
OPC server documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
OPC-specific Terms. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
3
CONTENTS
4 www.honeywell.com
Getting started
1
This reference describes how to set up, configure and test the OPC Client
Interface. (For a summary of other OPC interfaces, and their respective uses, see
the “Configuring OPC” section of the Server and Client Configuration Guide.)
This reference contains detailed information for configuring the OPC Client
Interface using Quick Builder.
Steps for connecting and configuring an OPC Client controller.
Complete each step before commencing the next step.
Steps Go to:
Install and set up the OPC server as specified in the documentation
supplied by the OPC server manufacturer.
Install any OPC server configuration files on the OPC client computer as
specified in the documentation supplied by the OPC server manufacturer.
Test communications between the OPC client computer and the OPC page 28
server computer.
Define channels with Quick Builder. page 16
Define controllers with Quick Builder. page 19
Download channel and controller definitions to the server.
Define points to address OPC server items with Quick Builder. page 22
5
1 – GETTING STARTED
6 www.honeywell.com
OPC SERVER DOCUMENTATION
7
1 – GETTING STARTED
OPC-specific Terms
CLSID
CLSID is the class identifier that identifies an object. An object registers its
CLSID in the system registration database so the object can be loaded and
programmed by other applications.
group
A number of items with the same update rate and deadband.
item
A single data source of the OPC server.
OPC
OPC stands for OLE for Process Control. It is a set of standards that define sets of
COM interfaces (based on Microsoft’s COM/OLE technology) to be observed by
OPC clients and servers. This set of standards was established by the OPC
Foundation to foster greater interoperability between automation and control
applications, field systems and devices, and business and office applications.
When the term OPC is used in this Reference, it refers specifically to the OPC
Data Access Standard.
ProgID
A programmatic identifier. A registry entry that can be associated with a class
identifier (CLSID). The format of a ProgID is
<Vendor>.<Component>.<Version>, separated by periods and with no spaces.
The ProgID identifies a class, but with less precision. The ProgID is used to
identify the OPC server from other COM/DCOM components on the same
computer. For more details, see any setup and installation instructions provided
by the OPC server manufacturer.
update rate
The internal update rate of the items in the OPC server.
8 www.honeywell.com
OPC Client interface setup
2
This chapter describes how to set up an OPC Client Interface.
9
2 – OPC CLIENT INTERFACE SETUP
Description of OPC
OPC provides data from a data source and communicates the data to any client
application in a standard way, thereby eliminating the requirement for an
application to have specific knowledge about a particular data source, such as
internal structure and communications protocols.
An OPC server and an OPC client, can reside either on the same computer (local
server) or on different computers (remote server).
Note
• There is no concept of hardware in the OPC Data Access Standard; there are just
items. An OPC server may represent a piece of hardware as an item and the item’s
value may indicate the state of the hardware. However, whether or not such
representation is available is server-specific.
• Although the OPC client can specify any update rate for a group, the OPC server
decides whether the request is honored.
• Although the OPC client can specify the deadband for a group, the OPC server decides
whether the deadband request is honored.
Callback
Generally, the OPC server sends data to OPC clients through callbacks. After a
group has been created, the OPC server creates a cache for the group items. The
cache is updated according to the group’s update rate. The OPC server sends only
updated values to the OPC client for items in the group if there has been
significant change since the last cache update (based on the group’s deadband).
This method of data update significantly reduces traffic between the OPC client
and the OPC server as there is no need for periodic read requests to the OPC
server. An OPC client gets data when there is a significant change. The level of
change required to trigger an update from the OPC server is defined by the OPC
client.
10 www.honeywell.com
DESCRIPTION OF OPC
11
2 – OPC CLIENT INTERFACE SETUP
Interface Methods
IOPCCommon SetClientName
IOPCServer AddGroup
GetStatus
RemoveGroup
IOPCItemMgt AddItems
RemoveItems
ValidateItems
IOPCSyncIO Read
Write
IOPCAsyncIO Read
Refresh
IOPCAsyncIO2 Read (OPC DA 2 only)
Refresh2 (OPC DA 2 only)
12 www.honeywell.com
ARCHITECTURES
Architectures
For the OPC Client Interface to communicate with an OPC server, the OPC server
must be installed on an appropriate computer. (The OPC Client Interface and the
OPC server can reside on the same computer or on different computers.)
To install an OPC server, install and set up the OPC server as specified in the
documentation supplied by the OPC server manufacturer.
13
2 – OPC CLIENT INTERFACE SETUP
14 www.honeywell.com
OPC Client controller
configuration and addressing 3
This chapter describes how to configure OPC Client controllers using Quick
Builder.
Note
An OPC Client controller is an abstract entity that is used as a container for OPC groups.
An OPC Client controller does not represent a real controller or a real piece of hardware.
For: Go to:
Steps for defining an OPC Client channel page 16
Steps for defining an OPC Client controller page 19
Defining an address for a point parameter value page 22
How to optimize scanning performance page 25
15
3 – OPC CLIENT CONTROLLER CONFIGURATION AND ADDRESSING
16 www.honeywell.com
DEFINING AN OPC CLIENT CHANNEL
Note
If you specify an alternate Host Name, Quick Builder builds a redundant OPC channel.
See the Configuration Guide for your server for information about monitoring redundant
channels.
Property Description
Name The unique name of the channel. A maximum of 10
alphanumeric characters (no spaces or double quotes).
Description (Optional) A description of the channel. A maximum of
30 characters, including spaces.
Marginal Alarm Limit The communications alarm marginal limit at which the
channel is declared to be marginal. When this limit is
reached, a high priority alarm is generated. A channel
barometer monitors the total number of requests and the
number of times the controller did not respond or
response was incorrect. The barometer increments by 2
or more, depending on the error and decrements for each
good call.
Set the channel marginal alarm limit to 10.
Fail Alarm Limit The communications alarm fail limit at which the
channel is declared to have failed. Set this to 20, that is,
double the value specified for the channel Marginal
Alarm Limit.
Connect Timeout Amount of time, in seconds, the server waits to connect
to the OPC server before abandoning the connection.
The default is 20 seconds.
Read Timeout Amount of time, in seconds, the server waits for a reply
from the OPC server after a synchronous read request.
The default is 2 seconds.
Note: When connecting to legacy third party control
networks, it is recommended that the Read Timeout be
set to 5 seconds.
Host Name (preferred) The name of the computer on which the preferred OPC
server software resides. If the OPC server is on the same
computer as the OPC Client Interface, the name must be
LocalHost.
17
3 – OPC CLIENT CONTROLLER CONFIGURATION AND ADDRESSING
Property Description
Host Name (alternate) (Optional) The name of the computer on which the
alternate OPC server software resides. If it is on the
same computer as the OPC Client Interface, the name
must be LocalHost.
Note: If you specify an alternate host name, Quick
Builder builds a redundant channel OPC connection. See
the Configuration Guide for the server for information
on monitoring the status of redundant channels.
Diagnostic Scan period The amount of time, in seconds, between diagnostic
scans. The diagnostic rate must be set to one of the valid
server scan periods. The default is 60 seconds.
This value is used as the rate for sending synchronous
requests for checking the OPC server’s current status.
Background Scan Period The background scanning period (in seconds). This must
be set to one of the valid server scan periods (defaults to
60).
This value is used as the rate for sending explicit read
requests of all items configured under a controller if that
controller is also configured with background scanning
enabled.
Note: When connecting to legacy third party control
networks, it is recommended that the background scan
period be set to 10 minutes.
ProgID The ProgID for the OPC server that is to be connected.
OPC server host time can drift If selected, indicates that the OPC server computer’s
clock (UTC time) is known to drift. This can occur if the
clock is synchronized to an external clock. Moving in or
out of daylight savings time is not a time drift as the
UTC time does not change.
Item Type Shows the channel’s type.
Last Modified Shows the date of the most recent modification to this
channel’s property details.
Last Downloaded This shows the date that the item was last downloaded to
the server.
Item Number This field displays the unique item number currently
assigned to this item by Quick Builder. You can change
the item number displayed in this field if you need to
match your current server database configuration. The
item number must be between 1 and the maximum
number of channels allowed for your system.
18 www.honeywell.com
DEFINING AN OPC CLIENT CONTROLLER
19
3 – OPC CLIENT CONTROLLER CONFIGURATION AND ADDRESSING
Property Description
Name The unique name of the controller. A maximum of 10
alphanumeric characters (no spaces or double quotes).
Description (Optional) A meaningful description for this controller.
A maximum of 30 characters, including spaces.
Channel Name The name of the channel on which the controller
communicates. You need to have defined the channel in
order for it’s name to appear in the list.
Marginal Alarm Limit The communications alarm marginal limit at which the
controller is declared to be marginal. When this value is
reached, a high priority alarm is generated. This limit
applies to the controller barometer which monitors the
total number of requests to the controller and the number
of times the controller did not respond or response was
incorrect. The barometer increments by 2 or more,
depending on the error and decrements for each good
call.
Set the channel marginal alarm limit to 10.
Fail Alarm Limit The communications alarm fail limit at which the
controller is declared to have failed. When this
barometer value is reached, an urgent alarm is generated.
Set this to 20, that is, double the value specified for the
controller Marginal Alarm Limit.
Background Scan Specify whether background scanning is performed in
addition to normal callback operation. Select Enabled if
you do not want the default (Disabled). The background
scan period is configured under the channel.
20 www.honeywell.com
DEFINING AN OPC CLIENT CONTROLLER
Property Description
Deadband The OPC deadband, which applies to all items
referenced by point parameters belonging to this
controller. Note that although the OPC client can specify
the deadband for a group, the OPC server decides
whether the deadband request is honored.
The deadband Indices are defined as:
0 = 0.000%
1 = 0.001%
2 = 0.002%
3 = 0.005%
4 = 0.010%
5 = 0.020%
6 = 0.050%
7 = 0.100%
8 = 0.200%
9 = 0.500%
10 = 1.000%
11 = 2.000%
12 = 5.000%
13 = 10.000%
14 = 20.000%
15 = 50.000%
Item Type Shows the controller’s type.
Last Modified Shows the date of the most recent modification to this
controller’s property details.
Last Downloaded The date that the item was last downloaded to the server.
Item Number The unique item number currently assigned to this item
by Quick Builder. You can change the item number
displayed in this field if you need to match your current
server database configuration. The number must be
between 1 and the maximum number of controllers
allowed for your system.
21
3 – OPC CLIENT CONTROLLER CONFIGURATION AND ADDRESSING
Entering an address
For Source Address and Destination Address the format for a OPC Client
controller address is:
ControllerName Address
Part Description
ControllerName The name of the OPC Client controller.
Address The address in the controller where the value is
recorded. See “Address syntax” on page 22.
If you would like help when defining an address, click next to Address to
display Address Builder. For details, see the help.
Address syntax
The format for the address is:
[AccessPath]OPCItemName [DataFormat]
22 www.honeywell.com
DEFINING AN OPC CLIENT ADDRESS FOR A POINT PARAMETER VALUE
Part Description
[AccessPath] The access path is not normally required. However, it is
required for OPC servers developed using the Rockwell
OPC Toolkit. You need to see the vendor’s
documentation to determine whether an access path is
required.
The access path generally represents a device driver or
topic (if the server was previously developed as a DDE
server).
Note, if you do specify an access path:
• You must include the square brackets. (In this
particular case, they do not simply indicate an
optional part of the syntax.)
• There is no space between the access path and the
OPCItemName.
OPCItemName The address in the controller where the value is
recorded. You need to see the vendor’s documentation
for the syntax.
For example, if you are using the system OPC server to
access the PV of a point named sinewave, the address
would be sinewave.PV.
A maximum of 64 characters. Any printable ASCII
character that you can type, including the space
character, is supported.
DataFormat The data format. If you do not specify a data format, the
default is IEEEFP.
See “Data format definitions” on page 23.
Format Counts
IEEEFP IEEE single-precision floating point
U3BCD 0 to 999 BCD
U4BCD 0 to 9999 BCD
U4095 0 to 4095
U999 0 to 999
U9999 0 to 9999
23
3 – OPC CLIENT CONTROLLER CONFIGURATION AND ADDRESSING
Format Counts
U100 0 to 100
U1023 0 to 1023
U8B 0 to 255
S16B -32768 to 32767
S8B -128 to 127
S9999 -9999 to 9999
U16B 0 to 65535
U15B 0 to 32767
U14B 0 to 16383
24 www.honeywell.com
OPTIMIZING SCANNING PERFORMANCE
25
3 – OPC CLIENT CONTROLLER CONFIGURATION AND ADDRESSING
26 www.honeywell.com
Server and Station tasks for
OPC Client 4
This chapter describes tasks for the OPC Client controller that you perform either
on the server or from any Station.
For: Go to:
Testing communications with the server page 28
Troubleshooting scanning errors page 28
27
4 – SERVER AND STATION TASKS FOR OPC CLIENT
28 www.honeywell.com
Index
A S
alternate data source 13 scanning, optimizing performance 25
architectures 13 single channel communications 13
C T
channel, defining 16 testing communications 28
communication errors 28
configurations 13
configuring OPC, steps for 5
controller, defining 19
O
OPC
callback, described 10
data transfer, described 10
explicit read request, described 11
group, described 8
item, described 8
overview 10
update rate described 8
OPC Client Interface
architectures 13
communication errors 28
configurations 13
controllers and channels, using 14
defining 19
defining a channel 16
interfaces and methods used 12
optimizing scanning performance 25
point parameter address 22
points, using 14
scan packets 25
testing communications 28
P
point parameter address, defining 22
29
INDEX
30 www.honeywell.com