Cyberlogic OPC Server Help
Cyberlogic OPC Server Help
Server Help
OPC Server for MBX, DHX and
OPC DA Server Devices
Version 7.1
Cyberlogic OPC Server Help
TABLE OF CONTENTS
Introduction ........................................................................................................6
Compatibility and Compliance ................................................................................... 6
What Should I Do Next?......................................................................................7
Learn How the OPC Server Works ............................................................................. 7
Read a Quick-Start Guide ......................................................................................... 7
Get Detailed Information on the Configuration Editors ............................................... 7
Verify That It’s Working or Troubleshoot a Problem ................................................... 7
Print a Copy of This Document ................................................................................. 7
Contact Technical Support ........................................................................................ 7
Theory of Operation ............................................................................................8
OPC Server Basics ................................................................................................... 8
OPC Crosslink ........................................................................................................ 10
OPC Crosslink Example ....................................................................................... 11
Main Server Features ............................................................................................. 12
Network Connections Tree ..................................................................................... 13
Network Auto-Configuration ................................................................................ 15
Health Watchdog................................................................................................ 15
Address Space Tree ............................................................................................... 15
Device Folders and Devices ................................................................................. 16
Folders and Data Items ...................................................................................... 19
Conversions Tree ................................................................................................... 22
Simulation Signals Tree .......................................................................................... 22
Alarm Definitions Tree ........................................................................................... 22
OPC Crosslinks Tree ............................................................................................... 23
Quick-Start Guide ..............................................................................................25
Configuring the Driver ............................................................................................ 26
Configuring the Network Connections Tree Automatically ......................................... 28
Configuring the Network Connections Tree Manually ................................................ 31
Selecting a Computer in the Network Connections Tree ........................................... 36
Selecting an OPC Server ......................................................................................... 41
Creating Address Space Device Folders and Devices ................................................ 44
Configuring the Access Paths .................................................................................. 47
Configuring Unsolicited Message Filters ................................................................... 50
Using DirectImport ................................................................................................ 53
Configuring Folders and Data Items Manually .......................................................... 56
Using the Data Item Duplication Wizard .................................................................. 61
Configuring a Crosslink Group ................................................................................ 68
Configuring a Crosslink .......................................................................................... 72
Saving the Configuration and Updating the Server ................................................... 78
Verifying Your Configuration ................................................................................... 79
Configuration Editor Reference ........................................................................81
Network Connections ............................................................................................. 82
Address Space ....................................................................................................... 86
Conversions .......................................................................................................... 87
Conversion Types ............................................................................................... 87
Creating and Deleting Conversions ...................................................................... 89
Editing a Conversion ........................................................................................... 90
Simulation Signals ................................................................................................. 93
INTRODUCTION
The Cyberlogic OPC Server provides OPC Data Access, Alarms & Events and XML Data
Access functions for various networks, controllers and compatible devices. It supports
major industrial brands, such as Allen-Bradley and Modicon.
The server has a modular structure that supports a variety of industrial devices and
communication networks. The various communication subsystems, which we call driver
agents, are plug-ins that you can easily add as required. As a result, the server maintains
a set of common features, but has the flexibility to allow additional features as required
by the specific driver agent.
This document describes only the common features of the Cyberlogic OPC Server. For
information related to a particular driver agent, refer to the help file specific for that
agent.
The Cyberlogic OPC Server is part of the DHX OPC Server Suite, DHX OPC Premier Suite,
MBX OPC Server Suite and MBX OPC Premier Suite.
These products are tested for compliance to the OPC specifications using the latest test
software from the OPC Foundation. All Cyberlogic OPC products are certified for
compliance by the OPC Foundation's Independent Testing Laboratory. In addition, they
are tested annually for interoperability with other OPC products at the OPC Foundation’s
Interoperability Workshops.
This document describes only the common features of the Cyberlogic OPC Server. For
information related to a particular driver agent, refer to the help file specific for that
Agent.
THEORY OF OPERATION
In this section, you will learn the details about all major architectural features of the
Cyberlogic OPC Server. If you are new to OPC or the Cyberlogic OPC Server, you should
first read the OPC Tutorial. You will find it in the Help section of your product installation.
Let’s start with a brief review of what you have already read in the tutorial.
The purpose of the OPC server is to obtain data from the field devices and present it, in
a standard way, to the OPC client applications. This relieves the client applications of
having to deal with the myriad of devices, networks, protocols, formats and so on that
exist among the various control device vendors. The client software need only concern
itself with the graphics, logic, storage and other operations that it provides to the user.
In short, the server deals with acquiring the data, while the client deals with
manipulating and displaying the data. Critically important are the OPC specifications,
which describe how the clients and servers exchange data. Compliance with the OPC
specifications means that any server will work with any client, even if they are from
different suppliers.
New users must be careful to learn the terminology of OPC systems to avoid being
confused by the difference between network connections and access paths or devices
and network nodes. It is also important to understand the relationship and distinctions
between the Network Connections tree and the Address Space tree.
To help keep this straight, remember that the OPC server provides the connection
between the field components and the OPC clients. This means that the server interfaces
in two directions, and both of these must be configured for the server to work properly.
When you open the Cyberlogic OPC Server Configuration editor, there will be five main
trees in the configuration. However, two of them—the Address Space tree and the
Network Connections tree—are critical when it comes to understanding the link between
the OPC clients and the physical field components.
On one side, the Network Connections tree describes the interfaces to the field
components. The server must use connections to physical networks (network
connections) to talk to physical field components on those networks (network nodes).
On the other side, the Address Space tree sets up the interface to the client. The server
must present the information that the client needs (data items) in a way that is
meaningful to the client. To do this, the information must be presented in a standard
manner that conforms to the OPC specifications.
The two sides come together by defining routes (access paths) that connect data items
through a network to a specific field component. This is done by creating devices in the
address space, which contain one or more access paths to the network nodes (field
components) in the Network Connections tree.
Since each device can be associated with several network nodes, an address space
device does not necessarily represent a single physical device. Throughout the remainder
of this document, the term ―device‖ will refer to a device in the Address Space tree
rather than a physical device, unless specifically stated otherwise.
If you are still unclear about some of the terms mentioned here, go back and re-read the
OPC Tutorial.
OPC Crosslink
The OPC Crosslink™ Suite and the DHX and MBX OPC Premier Suites include two
optional components for the Cyberlogic OPC Server. One is the OPC DA Driver Agent,
which treats other OPC servers like field components and communicates with them just
like other driver agents communicate with PLCs. (For detailed information on this feature,
refer to the OPC DA Driver Agent Help file.)
The second of these features is OPC Crosslink™, which gives the Cyberlogic OPC Server
the ability to transfer data between field components: from one OPC server to another,
from one PLC to another, or between PLCs and OPC servers.
The illustration above shows the general functional capability of OPC Crosslink. It can
read data from an input device and then write it to one or more output devices. These
input and output devices may be OPC servers, PLCs or both. That allows you to transfer
data from a PLC to another PLC, from an OPC server to another OPC server, from a PLC
to an OPC server, or from an OPC server to a PLC. These transfers can be configured to
occur at regular intervals, when the data changes, or when a trigger condition is
detected.
But notice that each device is actually a group of redundant OPC servers or PLCs. This is
made possible by the device-level redundancy that is a standard part of Cyberlogic’s OPC
Server. When configuring a device, you can associate an unlimited number of field
components or OPC servers with that device, in a prioritized list. This list tells the OPC
server the order that it should use to try to communicate with the listed data sources. If
the PLC or OPC server at the top of the list is not available, the next one on the list—and
then the next, and so on—will be tried until communication can be established. Once
communication is established, the data from that device will be available to all OPC client
software applications that wish to use it.
When a device higher on the priority list becomes available, the OPC server will switch
back to communicating through that device. In this way, data will always be obtained
from the highest-priority device that is available.
The basic function of OPC Crosslink is to pass data from one device, such as a PLC or
OPC server, directly to one or more other devices.
To set up a data transfer, you choose a data item that receives data from a PLC or OPC
server and designate it as the crosslink input. Note that this input may be associated with
an input bit, output bit, input register or any other type of data location anywhere in the
chosen input device. The crosslink input provides the data that OPC Crosslink will
transfer.
You then choose another data item, called the crosslink output, to receive the data.
Again, this data item may be associated with any writable memory location that is
capable of accepting that type of data, anywhere in the chosen output device. OPC
Crosslink will then read the data from the crosslink input and write it to the crosslink
output.
You are not restricted to a one-to-one transfer. A given crosslink input value can be
written to an unlimited number of crosslink outputs. Furthermore, both input and outputs
can be associated with the same device or different devices.
OPC Crosslink provides several ways to control the transfer. It can be scheduled to occur
when the data changes, when triggered by a change in the state of a data item, or at a
specific interval. You can also enable or disable the transfer by controlling the state of a
designated data item.
Refer to the Configuration Editor section for information on how to configure OPC
Crosslinks.
When you open the Cyberlogic OPC Server Configuration editor, you will find six main
trees, representing the six main areas that you will configure. These are:
The Address Space Tree is required for most configurations. Here you will
create and organize the data items that will be available to the client
application, and you will define how they are updated with new information.
The Conversions Tree is optional. In it, you can define formulas that can be
used to convert raw data values obtained from the field equipment into a
form that is more useful to the client. For example, you can change a
transducer’s voltage value into a pressure value in psi.
The Simulation Signals Tree is optional. If you want to be able to use
simulated data item values instead of real values, you can create various
types of simulated data functions in this tree. Simulations are often useful for
troubleshooting client applications.
The Alarm Definitions Tree is another optional tree. It is used when you will
interface to Alarms & Events clients. This tree allows you to define the
desired alarm conditions and specify what information should be passed as
they occur and clear.
The Network Connections Tree is required for all configurations. This is
where you select the networks and interface devices you will use, and
configure each of the field components as nodes on those networks.
The OPC Crosslinks Tree is optional. This is where you will identify the data
that you want to transfer among PLCs and OPC servers.
The following sections describe these operational features of the server. Because the
Network Connections Tree is normally configured first, we will start there.
Driver agents, the modular plug-ins that support different communication subsystems,
use various means for connecting to their devices or networks. In some cases a serial
COM port serves that purpose. In other cases, a network card is used. The Cyberlogic
OPC Server refers to all of these using the generic term ―network connection‖.
For example, in the Cyberlogic DHX architecture, the network connections will be DHX
devices. In some cases a DHX device corresponds to a physical network card, such as a
1784-PKTX. In other cases, it is an abstract object, such as an Ethernet DHX device, that
behaves like a network card. Network connections are grouped by their driver agents,
such as MBX (Modicon) or DHX (Allen-Bradley).
Each network connection allows access to a network of one or more physical devices.
The server refers to each of these physical devices on the network as a network node. A
typical network node might be a PLC-5 on a Data Highway Plus network or a Quantum
controller on a Modbus TCP/IP network. The server accesses the network nodes through
their corresponding network connection. The network node configuration contains the
communication parameters for the physical node device.
A user can define many network connections, each having many network nodes. These
network connections and network nodes will be used in defining access paths for devices
in the address space. This greatly simplifies the configuration process, because multiple
access paths can refer to the same network node, and the network parameters for each
node need to be entered only once. Any changes subsequently made to a network node
are automatically reflected in all the access paths that reference that node.
Notice also, that each network connection and network node can be given any name that
best describes its function. For example, rather than calling a node ―PLC-5‖, you could
call it ―Assembly A‖ or ―OP10‖ instead.
Refer to the Configuration Editor section for information on how to configure Network
Connections.
Network Auto-Configuration
For most driver agents, the Cyberlogic OPC Server Configuration Editor can automatically
detect the physical devices attached to the network connections and create
corresponding network nodes in the server configuration file.
Health Watchdog
This feature allows you to configure redundant networks with automatic failover and
recovery. The server monitors the health of the connection to each physical device. If
there is no network activity for a specified amount of time, the server sends a
communication request to the device to verify that it can still communicate. If the device
becomes inaccessible, the server rechecks it at a specified polling rate to see if it
becomes accessible again.
Once a failed network connection is reestablished, the server continues to exercise the
connection for a specified time to ensure that the connection is reliable. After these tests
complete successfully, the node is marked as healthy again.
When the health watchdog identifies that a network node has failed, you can configure
the server to switch to a backup network node. When communication to the failed
network node is restored, the server can then switch communication back to the primary
network node. For more information on this capability, refer to the Address Space Tree
section.
The branches of the tree are called ―device folders‖, ―devices‖ and ―folders‖. These
establish how the data items are organized. The data items themselves are the ―leaves‖
of the tree. You will begin construction of the tree at the Address Space root folder,
which may contain device folders and devices.
A device folder groups devices and other device folders. You can place a device folder
directly in the Address Space root folder or in another device folder, up to four levels
deep.
A device in the address space represents a logical data source, which is associated with
one or more network nodes to which the server communicates. Each device maintains a
list of access paths and a list of unsolicited message filters, which establish its
relationship with the configured network nodes and network connections.
A device in the address space is not the same thing as a network node. Each network
Note
node represents a single physical device, while an address space device may be
associated with many physical devices.
The main function of a device is to define valid sources of data for all of its data items.
Multiple devices can use the same network node as a data source, allowing greater
flexibility in the logical grouping of data items.
You may place a device directly in the Address Space root folder or in a device folder. In
addition to its device-specific functionality, a device operates as a folder. It can contain
folders and data items.
Access Paths
An access path is a logical connection to a network node. These connections link the data
items in an address space device with their values in a physical device. They tell the
server where and how to obtain these values during solicited data reads and writes.
Access paths are required only for solicited communications. If you plan to use
Note
unsolicited data updates instead, you do not have to configure any access paths. Refer
to the Unsolicited Message Filters section for more information.
Each device in the server’s address space can have a list of associated access paths. If
there are more than one, the access path at the top of the list is the primary access path,
and the rest are backups.
The Health Watchdog monitors the access paths to determine which are available and
which have failed. If the current access path fails, the server switches to the highest
available backup. When a higher-priority access path becomes available again, the server
switches back to it. This feature allows you to set up redundant networks for greater
communication reliability. If your controls design uses a backup controller, you can set
up access paths to both the primary controller and its backup.
You may specify an unlimited number of alternative access paths. For example, if you
have two network connections for each PLC, perhaps Data Highway Plus and Ethernet,
you can create four access paths: Data Highway Plus and Ethernet access paths for the
primary PLC, and Data Highway Plus and Ethernet access paths for the backup PLC.
Again, the order of these access paths specifies the order in which the server will switch
to the backup connections.
You can also specify a data item that will control the enable state of the access path. At
run time, the value of that data item will determine whether the access path is enabled
or disabled. For more information on Dynamic Enable, refer to the help file for the OPC
Driver Agent you are using.
In addition to the more common solicited updates, the Cyberlogic OPC Server supports
unsolicited data updates. In a solicited update, the server sends a request to a device
asking it for data, and the device replies. In an unsolicited update, the device decides
when to send data to the server. This helps to minimize the amount of traffic on the
network. For example, instead of having the server poll a device every 500 milliseconds
to see if some data has changed, you can configure the device to update the server only
when the data changes.
The disadvantage of unsolicited updates is the fact that the server has no control over
who may attempt to send data to it. Data written from unintended sources could corrupt
the server-maintained data, resulting in potentially catastrophic events.
Although unrestricted unsolicited updates are possible, the Cyberlogic OPC Server
supports a mechanism of unsolicited message filters to prevent data corruption.
Unsolicited messages must first pass through the user-defined filters before the server
accepts them. These filters guarantee that unsolicited messages are accepted only from
trusted sources.
Unsolicited message filters are used only for unsolicited communications. Only the
Note
driver agents that support unsolicited communications will support the use of
unsolicited message filters.
The unsolicited message filters are organized into groups. Each group is a list of trusted
network nodes and trusted network connections. A message may pass through any one
of these groups to be accepted by the server. In addition, the Configuration Editor allows
you to disable and enable entire groups of filters. This can be very convenient during
startup and debugging.
While the filter groups are of equal priority, the filters within a group can operate in
either of two modes. In the default non-priority mode, the server treats all of the filters
in the group equally. Any unsolicited message that passes any of the filters in the group
will be accepted.
In the alternative priority-unsolicited mode, the server treats the filters in each group as
a ranked list of preferred and backup data sources. It monitors the connections to each
unsolicited message source and accepts messages only from the highest-ranked node
that has a healthy connection.
You can configure as many groups of filters as you wish. Each group can be marked as
priority unsolicited or not, as your application may require.
Always keep in mind that the priority property applies only to the filters within a group.
Caution!
There is no priority implied between the groups themselves.
Folders logically group data items and other folders. A folder can be placed directly under
a device or under another folder, up to four levels deep.
A data item represents a register in the physical device, a range of registers, a bit inside
a register or a range of bits. The user can individually configure each data item for
solicited updates, unsolicited updates or both.
The Cyberlogic OPC Server supports a number of integer, floating point and string data
types. It also supports single-dimensional arrays of these types. The following table
shows all supported simple data types.
For each simple data type, a user can specify a canonical data type (a variant data type
in the form of VT_XXX) or choose the default type. When the default is selected, the
server selects the canonical data type that can best store the selected data type.
In general, the Cyberlogic OPC Server supports both read and write operations to its data
items. However, writing to some data items may create a safety hazard. Some registers,
such as PLC-5 inputs, are read-only and require no additional protection. For read/write
registers, you can disable the write capability at any level. That is, you can disable writes
for a:
Data item
Folder
Device
Device folder
Network node
Network connection
Driver agent
You can also disable DirectAccess writes at each network node, network connection or
driver agent.
DirectAccess
At run time, in addition to the user-configured address space branches, the Cyberlogic
OPC Server dynamically creates a branch called DirectAccess at the root of the address
space. OPC clients can use this branch to access any register in any configured network
node or device by directly specifying the register address.
The DirectAccess branch acts like a device folder that contains all configured driver
agents. Each driver agent branch contains its configured network connections, and each
network connection branch contains its configured network nodes. However, only driver
agents, network connections and network nodes that enable DirectAccess are present.
DirectAccess can benefit users in two ways. First, you can quickly deploy minimally-
configured servers, giving clients access to data in the shortest possible time. By
configuring just the network connection and network nodes, a user would have access to
all the registers in each network node.
Second, DirectAccess can help you to work around configuration errors. Suppose a user
forgets to configure a needed data register in the server. DirectAccess allows an OPC
client to access the forgotten register until the server configuration can be modified.
DirectAccess is available for OPC DA servers, if the OPC DA Driver Agent is installed. It
Note
is also available for crosslinks, if OPC Crosslink is installed.
Conversions Tree
The raw data associated with a data item may represent a signal value from some
instrument. Typically, this value is not expressed in the engineering units of the
measured signal. To simplify working with the data from these instruments, the
Cyberlogic OPC Server can associate a conversion with each data item.
A user can define a number of different types of conversions, and the server can then
apply each conversion to a number of data items. As a result, each conversion type
needs to be defined only once, regardless of how many data items will use it.
The server supports both linear and square root conversions. Each has a range of
engineering units that corresponds to the specified instrument range. The conversions
then keep a linear or square root relation between the engineering units range and the
instrument range.
In addition, the server supports data range clamping, which prevents the server from
reporting a value that is outside of a specified range. The clamping can be based on
either the engineering units range or a custom range.
The simulation signals available are: read count, write count, random, ramp, sine,
square, triangle and step. The signals other than read count and write count have
parameters that define properties such as amplitude, signal phase and number of steps.
Data can be simulated at any level in the server’s address space. Enabling data
simulation at one level automatically enables it at all levels below. For example, if you
enable simulation on a device folder, all of the data items in all of the devices in that
device folder will be simulated. This allows you to switch quickly between simulated and
real data for a large number of data items.
Refer to the Configuration Editor section for information on how to configure Simulation
Signals.
To receive the alarms and events reported by the server, the client application must
Note
also support the OPC Alarms and Events specification.
Alarms cannot be used with string data items, arrays or bit fields greater than 64 bits.
There are two categories of alarms: digital and limit (analog).
Digital Alarms
Digital alarms are normally used with Boolean data. A user can request an alarm when
the item’s value equals either TRUE or FALSE.
Each alarm has an associated alarm message and a severity level. The alarm message
describes the alarm condition. The severity value indicates the importance of the alarm
on a scale of 1 to 1000, where 1000 is the most severe. Optionally, an alarm can be
generated when the item’s data returns to its normal value. A user can also specify that
each alarm condition requires an acknowledgment from the client.
Limit Alarms
Limit alarms are normally used with numeric data. These alarm definitions divide the
data item range into five alarm states: LoLo, Lo, Normal, Hi and HiHi.
Every alarm state includes an alarm message and a severity level. In addition, you may
indicate whether the alarm requires an acknowledgment from the client. An optional
deadband value prevents the server from generating a large number of alarm messages
when the signal oscillates around one of the limits. When the deadband value is set
properly, the server will send only one alarm even if the signal oscillates.
Refer to the Configuration Editor section for information on how to configure Alarm
Definitions.
Crosslinks are organized into crosslink groups, which are enabled as a group. The
crosslinks in a group also use the same trigger for writing to the outputs, which may be
when the data changes, at a specified interval, or when a specified data item changes.
Each crosslink consists of a crosslink input and one or more crosslink outputs. You select
these by browsing the address space and selecting the desired data items. When the
crosslink group is enabled and the write criteria are met, the input value will be written
to each of the crosslink outputs.
Refer to the Configuration Editor section for information on how to configure OPC
Crosslinks.
QUICK-START GUIDE
Before you can use the OPC server, you must configure it by using the OPC Server
Configuration Editor. Every server requires configuration of the Network Connections
branch, and most users will want to configure the Address Space branch. The remaining
branches (Conversions, Simulation Signals, Alarm Definitions and OPC Crosslinks) are
optional features used by some systems.
The following steps show a typical configuration session using the DHX OPC Premier
Suite. This allows us to illustrate the configuration of all of the major features:
communication to Allen-Bradley controllers and OPC DA servers, use of auto-
configuration and DirectImport, and the configuration of unsolicited messaging and OPC
Crosslinks. Configurations using the other driver agents, such as MBX, would be very
similar. Not all of the features shown are available on all of Cyberlogic's OPC suites, so
some sections my not apply to your software. You should use this description only as a
guideline of how to configure the most common features. For detailed information on all
of the server’s features, refer to the Configuration Editor Reference and to the help file
for the driver agent you are using.
This example assumes that you are running under Windows XP and have a single
1784-KTX card connected to the Data Highway Plus (DH+) network, so this example
requires the DHX Driver. Because the 1784-KTX is not Plug-and-Play, you must create
the device manually. If you had used a Plug-and-Play PCI card, such as the 1784-
PKTX/A, a DHX device would have been created when you booted up the system. If you
use a different adapter card or different network, refer to the driver-specific help file for
more information on configuring the DHX devices.
Another assumption is that you have two Allen-Bradley PLC-5/20s connected to the Data
Highway Plus network. One is the primary PLC at node address 2 while the other is the
backup PLC at node address 50.
Finally, we assume that you are connected over Ethernet to another OPC server.
The first step is to use the DHX Driver Configuration Editor to create a DHX device.
1. To start the editor, open the Windows Start menu, locate the Cyberlogic OPC
product you have installed, then open the Configuration sub-menu and select OPC
Server and Crosslink.
Since you are running the Cyberlogic OPC Server Configuration Editor for the first
time, the editor will prompt you for a configuration file. Click the dialog box's Create
New... button to start with an empty configuration. The first step is to configure the
driver for the KTX adapter card.
2. From the Tools menu select DHX Connections for Allen-Bradley, and then select
DHX Driver Configuration….
3. Click the New button and select 1784-KTX from the drop-down box.
6. Click Close.
You have now created the DHX device that the server will use to connect to the DHX
network. To continue, go to Configuring the Network Connections Tree Automatically.
In complex systems, it is possible that part of your networks or devices will support
Note
automatic configuration and part will not. It may also be the case that some of the
PLCs which support automatic configuration are not yet connected. In those kinds of
cases, you should use the automatic procedure first, to get part of the configuration,
and then complete it manually.
If you cannot use automatic configuration, skip this section and go to Configuring the
Network Connections Tree Manually.
1. Select the Network Connections root folder and select Auto Config from the Edit
menu (or right-click on the Network Connections root folder and select Auto
Config from the context menu).
The editor will try to find all network connections and automatically detect and
configure all network nodes. This screen shows that the editor has detected two
PLC-5/20 programmable controllers, one at node address 2 (PLC-5/20@2) and the
other one at the node address 50 (PLC-5/20@50).
You can accept the names that were assigned automatically, but it is usually better
to give them names that are more descriptive.
3. In the Name field of the General tab, change the name to OP40 Primary@2.
4. Repeat this for the PLC-5/20@50 network node, changing the name to OP40
Backup@50.
If automatic configuration was able to configure all of your network connections and
nodes, then you can skip this section and go to Selecting a Computer in the Network
Connections Tree.
1. Right-click on the Network Connections branch and select New, then Allen-
Bradley Data Highway Plus from the context menu.
2. Click on the newly-created network connection and select its General tab.
5. Select the desired DHX device from the Map To DHX Device field.
7. Right-click on the network connection you just created and select New, then
Network Node from the context menu.
8. Click on the newly-created network node and select its General tab.
The specific fields available on the Settings tab will vary, depending on the type of
Note
network connection you are using. For example, instead of a DH+ station address, you
may need to enter an Ethernet IP address.
You must repeat the above procedures to create all of the needed network connections
and network nodes.
When you have finished, you will have completed the PLC communication portion of the
Network Connections Tree. The next step is the OPC DA server portion, which begins
with Selecting a Computer in the Network Connections Tree.
Connecting to other OPC servers is available only with products that include the OPC DA
Server Driver Agent. Those products are the OPC Crosslink Suite and the OPC Premier
Suites. If you do not have the OPC DA Server Driver Agent or do not want to connect to
other OPC servers, you can skip to Creating Address Space Device Folders and Devices.
1. Right-click on Network Connections and select New from the context menu.
The editor will create a new folder called OPC DA Servers, containing a computer
called New OPC DA Server Computer
You may, of course, use any name you wish for the computer.
The editor defaults to My Computer for the Computer/IP Address setting, which
represents your local computer.
6. Browse for the computer you wish to use, and click OK.
If the selected computer is not your local computer, you may need to provide a
Caution!
computer or domain name, user name, and password, so the OPC server can access
that computer.
To simplify configuration, you should enter this information on the Settings Tab of the
OPC DA Servers folder. This becomes the default computer/domain, user name and
password for all computers and OPC servers. However, you can override this default
setting by selecting Override and entering the computer or domain name, user name,
and password information for this computer only.
7. If you want to override the default User Name and Password, check the Override
box, and then enter the User Name and Password that you wish to use when
accessing this computer.
[<DomainNameOrWorkgroupComputerName>\]<UserName>
If the computer you wish to connect to is the local computer or is in the same
domain as the local computer, the domain name or workgroup computer name
specification is optional.
8. Click Apply.
1. Right-click on the Assy OPC Server computer branch you just created and select
New from the context menu.
2. Select Server.
The editor will create a new OPC server branch called New OPC DA Server
3. In the Name field, enter Assembly Area, or any other name you would like to use
for the OPC server.
8. Click Apply.
If you are willing to limit yourself to using DirectAccess to obtain data from PLCs and
Note
OPC servers, it is not necessary to configure the Address Space Tree at all. However,
you will not be able to take advantage of many of the features of the Cyberlogic OPC
Server, including redundant networks and PLCs, unsolicited communication, and data
conversion and simulation. Most users will want to configure the Address Space.
1. Right-click on the Address Space root folder and select New, then Device Folder
from the context menu.
3. Enter a descriptive name in the Name field. For this exercise, use the name
Assy 825/925.
6. Right-click on Assy 825/925 and select New, then Device, then DHX (Allen-
Bradley) from the context menu.
8. Enter a descriptive name in the Name field. For this exercise, use the name
OP40 PLC.
9. Enter an optional description, in this example, use Process controller for OP40.
You have just created a device for the OP40 PLC, and you can repeat this process to
create devices to be associated with the other controllers you will communicate with. If
you also want to obtain data from OPC servers, you can create devices for them as well,
in a similar manner.
An address space device represents a logical data source associated with one or more
physical devices to which the server communicates. In the next section, Configuring the
Access Paths, you will make this association.
Access paths are required for communication to OPC servers. For communication to
Note
programmable controllers, however, access paths are needed only for solicited
communication.
If your driver agent supports unsolicited communication and you want to use only that
type, you can skip this section and go to Configuring Unsolicited Message Filters.
The newly-created OP40 PLC device has not been associated with the physical network
nodes yet. In this section, you will set OP40 Primary@2 as the primary controller and
OP40 Backup@50 as the secondary controller.
1. Click on the OP40 PLC device and select the Access Paths tab.
3. In the Access Path dialog, select the OP40 Primary@2 node under DHX Device 0.
Dynamic Enable is not used in this sample configuration. It allows you to control the
enable of the access path at run time by changing the value of a specified Item ID.
For more information on Dynamic Enable, refer to the help files for the OPC driver
agent you are using.
6. Click OK.
You have just created the primary access path. Now you will add a backup access
path that will be used in case the primary connection fails.
8. In the Access Path dialog, select the OP40 Backup@50 node under DHX Device 0.
You have now created two alternative access paths, one to the primary PLC and one to
the backup PLC. For details of how the server will use these access paths, refer to the
Access Paths discussion in the Theory of Operation.
Not all driver agents support unsolicited communication. If the driver agent you are
Note
using does not have unsolicited support, the Unsolicited Message Filters tab will not be
available.
If your driver agent does not support unsolicited communication, or if you do not plan
to use it, you can skip this section and go to Using DirectImport.
2. Click the New… button and select Group… from the context menu.
3. In the Unsolicited Message Filter Group dialog, enter Group A in the Name field.
This creates the filter group. Now you must create the filters that the group will
contain.
7. Click the New… button and select Filter… from the context menu.
This creates a filter that will accept unsolicited messages from the primary PLC.
9. Click OK.
10. Repeat this procedure, this time selecting OP40 Backup@50 to create a filter to
accept unsolicited messages from the backup PLC.
If you then click the + sign beside Group A, your filter configuration will look like the
above picture.
You have now created two unsolicited message filters, one to accept message from the
primary and one to accept them from the backup PLC. Because you marked the group
priority unsolicited, the server treats the filters within the group as a ranked list of data
sources. In this example, if the connection to the primary PLC is healthy, only messages
from this PLC will be accepted. However, if the primary connection fails, only messages
from the backup PLC will be accepted. Other network nodes will not be allowed to send
messages to this device.
Now that the device communication is configured, the next step is to configure the data
items and organize them into folders. To begin this process, go to Using DirectImport.
Using DirectImport
DirectImport allows you to import data items and the folders that contain them directly
from the programmable controller or OPC server. If you have only a few folders or data
items to configure, they can be configured individually, as will be explained in the next
section. However, for PLCs and OPC servers with large or complex configurations, the
use of the DirectImport feature can dramatically speed up this configuration.
DirectImport is available only for the ControlLogix and OPC Server DA Driver Agents,
Note
and requires communication with the controller or server you are importing from.
If the driver agent you are using does not have DirectImport or if communication is not
available, you can skip this section and go to Configuring Folders and Data Items
Manually.
To illustrate the use of DirectImport, we will configure the data items and folders for an
OPC DA server device that we have created.
This is the OPC DA server device, which was created in the same manner as the
Assy 825/925 device.
The DirectImport window will open and will show all of the data items in the OPC
server you are importing from.
3. Expand the branches and select the desired folders and data items by checking them
in the left pane.
4. When you have checked all of the items you wish to import, click Finish.
The selected items will be imported into the address space tree.
5. You may then edit these folders and data items, if you wish to use different names
or arrange them differently.
To learn how to edit the items you've imported or to create folders and data items that
you could not import, go to Configuring Folders and Data Items Manually.
If you are willing to limit yourself to using DirectAccess at the device level to obtain
Note
data from PLCs and OPC servers, it is not necessary to configure the data items at all.
However, you will not be able to take advantage of many of the features of the
Cyberlogic OPC Server, including logical organization of data, and data conversion and
simulation. Most users will want to configure the data items.
If DirectImport was able to import all of the folders and data items you need, and you do
not want to make any changes to them, you can skip to Configuring a Crosslink Group.
1. Right-click on the OP40 PLC device and select New, then Folder from the context
menu.
3. Enter a descriptive name in the Name field. For this exercise, use Production
Counts.
5. Click Apply.
6. Repeat the process to create another folder called Inputs with the description
Discrete inputs.
7. Right-click on the Production Counts folder and select New, then Data Item
from the context menu.
9. Enter a descriptive name in the Name field. For this exercise, use GoodParts.
15. Repeat the process to create another Data Item called RejectParts at the register
address N7:1.
You have manually created two data items that represent some production-related
counts. The GoodParts count will be updated using solicited communications, while the
RejectParts count will be updated using unsolicited communications. In addition, if the
server does not receive unsolicited updates within one minute, it will downgrade the
RejectParts quality from Good to Uncertain.
For another way of creating data items, go to Using the Data Item Duplication Wizard.
The Data Item Duplication Wizard is available only for the DHX and MBX Driver Agents.
Note
If the Wizard is not supported by the driver agent you are using, or you do not need to
use it, you can skip this section and proceed to Configuring a Crosslink Group.
1. Right-click on the Inputs folder and select New, then Data Item from the context
menu.
2. Enter a descriptive name in the Name field. For this exercise, use I_001.
6. Click Apply.
This creates a single input. You will now use the Duplication Wizard to create four
more input data items in a single operation.
7. Right-click on data item I_001 and select Duplicate from the context menu.
On this screen, you will specify the duplicate data items you want to create. Notice
that the screen tells you the address of the data item you are duplicating.
The New Address box shows you the addresses of the data items that the wizard will
create.
You must now decide how you wish to name the data items you will create. You may
simply use the address as the name or you may create a custom naming scheme.
The wizard will create names for the data items for you. These names will consist of
a prefix, a numeric value and a suffix. The first data item we created was named
I_001 and we want the duplicates to have names of the same style.
19. Leave the Suffix field blank, because no suffix is necessary for this naming scheme.
The lower pane will show you the names that will be used for each data item.
21. Click Finish to create the data items and exit the wizard.
The Description field for each duplicate is the same as the original. You may wish to
Caution!
edit these descriptions.
After you have finished configuring all of the needed data items, go to Configuring a
Crosslink Group.
If you do not have an OPC Premier Suite or OPC Crosslink Suite, the OPC Crosslink
Note
feature is not included with your product, and you can skip to Saving the Configuration
and Updating the Server.
For this example, we will transfer data from a PLC to an OPC server.
The Network Connections tree contains a computer called Assy OPC Server that is
running an OPC DA server called Assembly Area.
In the Address Space tree, we have configured a new data item called Time In
Production in the OP40 PLC device. That will be used as the source of the data to be
transferred.
The Address Space tree also contains a device called Assembly OPC, whose access path
connects to the Assembly Area OPC server. Within the Assembly OPC device are a folder
containing production count data items and another data item called Production Time.
That is where we will write the data.
1. Right-click on the OPC Crosslinks tree and select New from the context menu.
These settings will cause the value to be updated every second, if there is a change.
This will cause the input data to be written to the output whenever the value
changes.
8. Click Apply.
Configuring a Crosslink
A crosslink designates the actual data to be read (known as the crosslink input) and one
or more locations to which it should be written (known as the crosslink outputs). Both
inputs and outputs can be any data items configured in the Address Space tree or
accessible through DirectAccess.
Crosslinks are contained in a crosslink group, which may contain many crosslinks. In this
example, we will create just one.
1. Right-click on the Sample Crosslinks group you just created, and select New.
2. Select Crosslink.
The Browse For Item ID window opens, showing you the data items as they are
arranged in the address space. DirectAccess branches will be shown for all devices
and network nodes that have DirectAccess enabled.
6. Browse through the tree to locate the PLC and data item you want to read from. In
this case, it is Time In Production in the PLC called OP40 PLC.
Notice that the assembly area OPC server is also shown, because it is possible to
select a data item within an OPC server as the input data item.
7. Click OK.
10. Select the data item you want to write the data to. In this case, it is
ProductionTime in the OPC server called Assembly OPC.
The selected data item is added to the list of output items. It is possible to add more
output items to the list, but we will use only one for this example.
To save your work and update the server with the new configuration, go to the Saving
the Configuration and Updating the Server section.
After you edit the configuration, you must open the File menu and select Save &
Caution!
Update Server, or click the Save & Update Server toolbar button, for the changes
you have made to take effect. Otherwise, the server will still be running with the old
configuration.
1. Open the File menu and select Save & Update Server.
2. Be sure to repeat this step every time you change the configuration.
The next step, Verifying Your Configuration, will introduce you to the diagnostic features
of the product.
1. Right-click on the Production Counts folder and select Data Monitor from the
context menu.
2. Check the Enable boxes to the left of each data item in the Data Monitor view
window.
Because the GoodParts data item was configured for solicited update, the Server
quickly retrieved new values with good quality. However, the RejectParts data item
will show bad quality until the primary PLC sends an update.
3. Program the primary PLC to send data to the N7:1 register address in the server.
4. Disconnect the Data Highway Plus cable from the primary PLC and wait for one
minute.
Because the PLC will not be able to send additional unsolicited updates, the quality of
RejectParts will change from good to uncertain.
5. With the primary PLC unable to communicate, the server will automatically switch to
the backup PLC. Notice that the quality of the GoodParts item still shows good
quality.
This concludes the Quick-Start Guide. To learn more about the features of the server,
refer to the Theory of Operation section. To learn more about configuration, refer to the
Configuration Editor Reference.
This section provides a detailed description of each of the configuration editor features. If
you are a new user and want a procedure to guide you through a typical configuration
session, refer to the Quick-Start Guide.
The Cyberlogic OPC Server Configuration Editor allows the user to create and modify the
configuration file used by the runtime module. It is needed only to generate
configuration files and is not otherwise required for the operation of the runtime module.
After you edit the configuration, you must open the File menu and select Save &
Caution!
Update Server, or click the Save & Update Server toolbar button, for the changes
you have made to take effect. Otherwise, the server will still be running with the old
configuration.
To launch the editor from the Windows Start menu, open the Configuration sub-menu
for the Cyberlogic OPC Server product you have installed and select the OPC Server
menu item.
The left pane of the main workspace window includes the five main configuration trees:
Address Space
Conversions
Simulation Signals
Alarm Definitions
Network Connections
OPC Crosslinks
The following sections provide descriptions of the configuration of these trees. They are
followed by a discussion of other important configuration features including:
Saving and Undoing Configuration Changes
Configuration Import/Export
Editor Options
Server Status Block
Connecting OPC Client Software
Network Connections
The features and details of the Network Connections tree configuration will vary
depending upon the driver agent you are using. Each driver agent has its own help file.
To access that help file, select the driver agent folder (or any folder below the driver
agent folder) for which you need help. The driver agent folders are those folders directly
below the Network Connections folder. A Help button will be available in the right pane
of the editor window.
If the driver agent folder you need is not shown, you can create a network connection of
that type, which will create the driver agent folder. You will then be able to access the
help.
There are two ways to create a network connection: manual and automatic.
Manual Configuration
You may prefer to configure your network connections and network nodes manually. This
will be necessary if you are doing the configuration on a computer that is not connected
to the target networks or if you wish to change the default values selected during an
auto configuration.
Right-click on the Network Connections root folder and select New, then select the
desired network type from the context menu.
The editor will create the proper driver agent and network connection folders.
After you edit the configuration, you must open the File menu and select Save &
Caution!
Update Server, or click the Save & Update Server toolbar button, for the changes
you have made to take effect. Otherwise, the server will still be running with the old
configuration.
Automatic Configuration
Before you can use the automatic configuration feature, you must install and configure
Caution!
the low-level device drivers that the OPC Server will use. The configuration editors
supplied with the device drivers will allow you to create the devices that the OPC
Server will then be able to detect.
After you edit the configuration, you must open the File menu and select Save &
Update Server, or click the Save & Update Server toolbar button, for the changes
you have made to take effect. Otherwise, the server will still be running with the old
configuration.
This is the most common automatic configuration procedure. It will find all network
connections, and detect and configure all network nodes.
To do this, right-click on the Network Connections root folder and select Auto Config
from the context menu.
After a driver agent folder has been created, you can automatically find all network
connections of that type available on your system. Typically, you would do this if you did
part of the configuration while not connected to the target network and want to quickly
finish the configuration once you are connected.
Right-click the driver agent folder and select Auto Config from the context menu.
After a network connection has been configured, you can automatically find and
configure all of the network nodes attached to that network connection. You might do
this, for example, if you add nodes to a network after it is configured and want to quickly
update the configuration with the new nodes.
Right-click the specific network connection and select Auto Config from the context
menu.
Address Space
The Address Space tree describes the hierarchical address structure of the Cyberlogic
OPC Server. The intent of this structure is to permit the user to organize the data items
into logical groups. For a complete description of the elements within the address space,
refer to the Address Space Tree section of the Theory of Operation.
The features and details of the devices in the address space will vary depending upon
the driver agent you are using. Each driver agent has its own help file. To access that
help file, select an address space device of the driver agent for which you need help. A
Help button will be available in the right pane of the editor window.
If the device type you need is not shown, simply create a device of that type and you will
then be able to access the help.
To do this, right-click on either the Address Space root folder or on an existing device
folder, and select New, then Device from the context menu. Select the desired driver
agent to create the device.
After you edit the configuration, you must open the File menu and select Save &
Caution!
Update Server, or click the Save & Update Server toolbar button, for the changes
you have made to take effect. Otherwise, the server will still be running with the old
configuration.
Conversions
The raw data associated with a data item may be a process value from an instrument. In
most cases, these measurements are not expressed in engineering units. To simplify
operations on the data, the Cyberlogic OPC Server allows you to associate a conversion
with each data item. A user can define many different types of conversions. A number of
data items can then use each such conversion. As a result, the user need not define the
same conversion many times over.
The conversions feature also supports data range clamping. You can instruct the server
to clamp the data within a specified range of engineering unit values. The clamping
feature is available even if you choose not to apply a linear or square root conversion
function to the data.
Conversion Types
Two types of conversion functions are available: linear and square root. These will
handle the conversion needs for most instrument types.
The conversion functions work on the data as it is passed in both directions. You will
Caution!
specify the conversion to be applied to data passed from the server to the client
application. When data is passed from the client to the server, the inverse conversion
will be applied. This means that the client must accept data as being in engineering
units and write data in engineering units.
In this section, we will discuss the functions used to make these conversions, as an aid in
helping you to apply them to your application. The definitions of the variables used are
as follows:
IDL and IDH are the low and high Instrument Data values you will specify during
configuration.
EUL and EUH are the low and high Engineering Units values you will specify during
configuration.
Linear Conversion
This performs a standard linear conversion with offset, according to the following
formula:
This is similar to the linear conversion, but is proportional to the square root of the value.
The formula is:
Conversions are created and deleted from the main OPC Server Configuration Editor
window.
After you edit the configuration, you must open the File menu and select Save &
Caution!
Update Server, or click the Save & Update Server toolbar button, for the changes
you have made to take effect. Otherwise, the server will still be running with the old
configuration.
Creating a Conversion
1. Right-click on the Conversions root folder and select New, and then Conversion
from the context menu.
2. Enter the information required in the Conversion dialog box, as described in Editing a
Conversion.
3. Click Apply.
Deleting a Conversion
To delete an existing conversion, select it and press the Delete key, or right-click on the
conversion and select Delete from the context menu.
Editing a Conversion
The Conversion dialog box consists of two tabs, General and Settings.
After you edit the configuration, you must open the File menu and select Save &
Caution!
Update Server, or click the Save & Update Server toolbar button, for the changes
you have made to take effect. Otherwise, the server will still be running with the old
configuration.
General Tab
Name
The name identifies the conversion. It can be up to 50 characters long, may contain
spaces, but must not begin with a space. In addition, it must not contain any periods.
Description
This optional field further describes the conversion. It can be up to 255 characters long.
Settings Tab
All of the values you will specify on this tab are taken as 64-bit floating point numbers.
Consequently, they may be positive or negative and have magnitudes in the range of
4.9 x 10-307 to 1.8 x 10+308 or 0.
Scaling
Select the type of scaling you wish to use. The choices are None, Linear and Square
Root.
Choosing None allows you to clamp the data without converting it. If you select linear or
square root scaling, you must enter values for the Instrument Data and Engineering
Units. These values specify the scaling factors applied to the data.
Clamping
Select the type of clamping you wish to use. The choices are None, Clamp on
Engineering Unit and As Specified.
If you choose Clamp on Engineering Unit, the value will be clamped within the range
specified in the Engineering Units box. If you choose As Specified, you must specify the
desired clamping limits in the Clamping Parameters box.
When clamping is used, any values below the minimum of the clamping range will be set
to the minimum value and any values above the maximum will be set to the maximum
value. Clamping is applied to the data after the scaling conversion.
If you choose not to scale the data, you may still use the clamping feature. The limits,
whether Engineering Units or As Specified, would then be applied to the raw data.
Instrument Data
The Instrument Data value entry fields are available only for linear and square-root
conversions.
Engineering Units
You may enter Engineering Units values even if you choose None for the conversion
type. This allows you to clamp on the Engineering Units limits, if you wish.
Clamping Parameters
Enter the values for the clamping range. These fields are available only if you choose As
Specified for the clamping type.
Simulation Signals
The Server can simulate the data for each data item according to a predefined formula.
This makes it easy to perform client-side testing without the need for a physical device.
For detailed information, refer to the Simulation Signals Tree discussion in the Theory of
Operation.
You can enable data simulation at any level in the server address space. Enabling data
simulation at any level automatically enables it at all levels below. This permits quick
switching between simulated and real data for a large number of data items.
The server can generate several types of simulation signals. Most of these signals have
parameters that define properties such as amplitude, phase and number of steps. The
signal definitions and waveform illustrations below will assist you in understanding the
parameters and specifying the simulation you want.
Read Count
This simulation function returns the number of read operations that have occurred.
Write Count
This simulation function returns the number of write operations that have occurred.
Random
With this function, the value varies randomly. The offset value sets the minimum and the
amplitude—added to the offset—sets the maximum.
Ramp
This function is a series of rising ramps. For a falling ramp, you can use the Triangle
function with a ratio set to zero.
Sine
Mathematically, the sine function takes values between -1 and +1. This means that the
value will vary both above and below the level set by the offset. Therefore, this is the
only function for which the Offset parameter specifies the middle of the range, rather
than the bottom. In addition, this is the only function for which the Amplitude parameter
does not specify the peak-to-peak range of values.
Square
The Ratio parameter specifies the fraction of the cycle during which the value is low. This
means that the relationship between ratio and the duty cycle is:
or
Triangle
The Ratio parameter specifies the fraction of the cycle during which the value is rising. If
the ratio is set to 1, this is the same as the ramp function. If the ratio is 0, this will be a
falling ramp function.
Step
Notice that the Number Of Steps parameter specifies the number of levels that the value
will take, not the number of step increases. Because both the bottom and top steps are
counted, there will be one fewer step increase than the number of steps. Keep this in
mind when specifying this parameter.
Simulation Signals are created and deleted from the main OPC Server Configuration
Editor window.
After you edit the configuration, you must open the File menu and select Save &
Caution!
Update Server, or click the Save & Update Server toolbar button, for the changes
you have made to take effect. Otherwise, the server will still be running with the old
configuration.
1. Right-click on the Simulation Signals root folder and select New, and then
Simulation Signal from the context menu.
2. Enter the information required in the Simulation Signal dialog box, as described in
Editing Simulation Signals.
3. Click Apply.
To delete an existing simulation signal, select it and press the Delete key, or right-click
on the simulation signal and select Delete from the context menu.
The Simulation Signal dialog box consists of two tabs, General and Signal.
After you edit the configuration, you must open the File menu and select Save &
Caution!
Update Server, or click the Save & Update Server toolbar button, for the changes
you have made to take effect. Otherwise, the server will still be running with the old
configuration.
General Tab
Name
The name identifies the simulation signal. It can be up to 50 characters long, may
contain spaces, but must not begin with a space. It also must not contain any periods.
Description
This optional field further describes the simulation signal. It can be up to 255 characters
long.
Signal Tab
Type
Select the simulation signal type from the drop-down box. The available signal types are:
Write Count
Read Count
Random
Ramp
Sine
Square
Triangle
Step
For a detailed explanation of the different signal types, refer to the Simulation Signal
Types section.
The signal type selection will enable the needed parameter fields, if any. You must enter
the values for the parameter fields that are not dimmed.
Amplitude
This is the peak value of the signal, measured from the offset level.
All signal types except Write Count and Read Count use this parameter.
Offset
This is a fixed offset for the value of the data item. The generated waveform varies
around this value.
All signal types except Write Count and Read Count use this parameter.
Period
The Ramp, Sine, Square, Triangle and Step functions use this parameter.
Phase
This is a phase offset for the waveform, specified in degrees. The value you specify will
be taken as a leading phase shift and cannot be a negative number. To create a lagging
phase shift, subtract the desired shift from 360. For example, if you want a leading shift
of 20 degrees, you would enter 20. If you want a lagging shift of 20 degrees, you would
enter 340.
The Ramp, Sine, Square, Triangle and Step functions use this parameter.
Ratio
For the Square function, it specifies the fraction of the cycle during which the value is at
the low level. A Square function with a period of 1000 ms and a ratio of 0.4 would be low
for 400 ms and high for 600 ms.
For the Triangle function, it specifies the fraction of the cycle during which the signal is
rising. A Triangle function with a period of 1000 ms and a ratio of 0.4 would rise for
400 ms and fall for 600 ms.
Number of Steps
Only the Step function uses this parameter. It specifies the number of value levels in
each signal period. The steps are of equal height and width.
Alarm Definitions
The Cyberlogic OPC Server supports the OPC Alarms and Events specification. If your
client application is also OPC AE compliant, it will then be able to receive the alarms and
events reported by the server. The user may define many different alarm conditions. A
number of data items can then use each such condition. As a result, the user need not
define the same alarm condition many times over.
There are two categories of alarms: limit and digital. Limit alarms are normally used for
numeric data, and digital alarms are normally used for Boolean data, but either alarm
type may be used with either data type. Alarms may not be used with string data, arrays
or bit fields greater than 64 bits.
Limit Alarms
Limit alarms divide the range of values for the data item into five alarm states: LoLo, Lo,
Normal, Hi and HiHi. These are normally used for numeric data items.
If you use a limit alarm with a Boolean data item, the software will convert its state to a
numeric value before checking for alarm conditions. A value of false will be converted to
0 and a value of true will be converted to -1.
Each alarm state allows you to designate a message and a severity level. You may also
indicate whether the alarm requires a client-side acknowledgment. If you wish, you can
specify a deadband value. The deadband prevents the server from generating a large
number of alarm messages when the signal jitters around one of the limits.
Digital Alarms
Digital alarms specify an alarm that must occur when a value is either true or false, and
so they are normally used with Boolean data items.
If you use a Digital Alarm with a numeric data item, a value of 0 is treated as false and
any other value is treated as true.
Each alarm state allows you to designate a message and a severity level. You may also
indicate whether the alarm requires a client-side acknowledgment. If desired, you can
have the server generate an alarm when the data item returns to its normal value.
Alarms are created and deleted from the main OPC Server Configuration Editor window.
After you edit the configuration, you must open the File menu and select Save &
Caution!
Update Server, or click the Save & Update Server toolbar button, for the changes
you have made to take effect. Otherwise, the server will still be running with the old
configuration.
1. Right-click on the Alarm Definitions root folder and select New, and then Limit
Alarm Definition or Digital Alarm Definition from the context menu.
2. Enter the information required in the Limit Alarm or Digital Alarm dialog box, as
described in the Editing Limit Alarm Definitions or Editing Digital Alarm Definitions
section.
3. Click Apply.
To delete an existing alarm definition, select it and press the Delete key, or right-click
on the alarm definition and select Delete from the context menu.
The Limit Alarm dialog box consists of two tabs, General and Settings.
After you edit the configuration, you must open the File menu and select Save &
Caution!
Update Server, or click the Save & Update Server toolbar button, for the changes
you have made to take effect. Otherwise, the server will still be running with the old
configuration.
General Tab
Name
The name identifies the limit alarm definition. It can be up to 50 characters long, may
contain spaces, but must not begin with a space. It also must not contain any periods.
Description
This optional field further describes the limit alarm definition. It can be up to 255
characters long.
Settings Tab
Limit
Check the boxes to indicate which alarm conditions the server should report.
Value
Message Body
Severity
The client uses this field to filter which events it wants to receive. Enter a value between
1 and 1000, where 1 is the least severe and 1000 is the most severe.
Req Ack.
A value of Yes in this field indicates that an alarm must be acknowledged before it can
clear.
Update Rate
Enter an interval, in milliseconds, at which the server will test the data item for an alarm
state.
Deadband
Enter a deadband value in percent of full scale. The server will not reevaluate the alarm
condition until the data item’s value changes by the specified amount.
Without a deadband, a data item that jitters just above and then just below an alarm
value will repeatedly trigger alarms, even though its value does not change significantly.
The deadband helps to prevent this from happening.
The Digital Alarm dialog box consists of two tabs, General and Settings.
After you edit the configuration, you must open the File menu and select Save &
Caution!
Update Server, or click the Save & Update Server toolbar button, for the changes
you have made to take effect. Otherwise, the server will still be running with the old
configuration.
General Tab
Name
The name identifies the digital alarm definition. It can be up to 50 characters long, may
contain spaces, but must not begin with a space. It also must not contain any periods.
Description
This optional field further describes the digital alarm definition. It can be up to 255
characters long.
Settings Tab
Enable
Check the boxes to indicate which alarm conditions the server should report.
Value
Select either True (1) or False (0) as the data item state that will trigger an alarm.
Message Body
Severity
The client uses this field to filter which events it wants to receive. Enter a value between
1 and 1000, where 1 is the least severe and 1000 is the most severe.
Req Ack.
A value of Yes in this field indicates that an alarm must be acknowledged before it can
clear.
Update Rate
Enter an interval, in milliseconds, at which the server will test the data item for an alarm
state.
OPC Crosslinks
Crosslinks allow you to transfer data from one data item to another. The data item you
read from is called the crosslink input. You may write this to any number of data items,
and these are called crosslink outputs. For more information on crosslinks, refer to the
OPC Crosslink discussion in the Theory of Operation section.
Crosslinks are organized into crosslink groups. The criteria for enabling the crosslinks,
disabling writes, scheduling the reads, and triggering the writes are specified for the
group. This allows you to easily and efficiently set these criteria in an identical way for
many crosslinks, all at once.
After you edit the configuration, you must open the File menu and select Save &
Caution!
Update Server, or click the Save & Update Server toolbar button, for the changes
you have made to take effect. Otherwise, the server will still be running with the old
configuration.
To create a crosslink group, right-click on the OPC Crosslinks branch and select New
from the context menu, and then select Crosslink Group.
To speed up the creation of similarly-configured crosslink groups, you can create multiple
groups in a single operation by duplicating an existing one. To do this, right-click on an
existing crosslink group and select Duplicate… from the context menu.
The above dialog box opens. You must specify how the duplicates are to be named by
entering values for the Base Text, First Number, Numeric Places and Number
Increment fields. To generate names for the duplicated crosslink groups, the editor
begins with the base text and appends a number to it. The first duplicate uses the
selected First Number value with the specified number of digits. This number is then
incremented by the specified number for each of the remaining duplicates.
As an example, if Numeric Places is 3 and First Number is 2, the number 002 will be
appended to the base text.
Use the Number Of Duplicates field to specify the number of crosslink groups you
wish to create. If you want to duplicate all of the crosslinks within the original crosslink
group, check the Including Subtree checkbox.
To delete an existing crosslink group, select it and press the Delete key, or right-click
on the crosslink group and select Delete from the context menu.
The crosslink group editor consists of two tabs, General and Settings.
General Tab
Name
The name identifies the crosslink group. It can be up to 50 characters long, may contain
spaces, but must not begin with a space. It also may not contain any periods.
Description
This optional field further describes the crosslink group. It can be up to 255 characters
long.
Enable DirectAccess
Checking this box enables client applications to use DirectAccess to read data from the
crosslink inputs and crosslink outputs for all crosslinks in the group. Clients can also read
Status Items for the crosslink group. If the Disable DirectAccess Writes box is unchecked,
the clients will also be able to write to the writable items, which include crosslink inputs,
crosslink outputs and some status items.
When this box is checked, clients cannot use DirectAccess to write to the writable items
(crosslink inputs, crosslink outputs and some Status Items) of the crosslinks in the group.
When this box is unchecked and DirectAccess is enabled, writing is permitted.
Crosslink Transfers
This radio selection allows you to control whether or not the crosslinks in the group will
be enabled. When they are enabled, the input data item will be read and its data will be
transferred to the output data items. When the crosslinks are disabled, the data is not
read from the input data item, nor is it transferred to the output data items.
If you select Use Data Item To Enable, you must specify a data item that will be used
to control the crosslink data transfers in the group. You must also enter a value for
Interval, which indicates how often the data item will be read to see if its value has
changed. If the value of the specified data item is true, the crosslink transfers will be
enabled, otherwise they will be disabled. You can click the Browse... button to open a
window that will allow you to browse for the desired data item. You can specify a
DirectAccess item or a Math and Logic item, if you wish.
If DirectAccess is enabled for the crosslink group, the TransferEnable data item will be
available in the DirectAccess branch for that crosslink group. This is a read/write item.
If the item you choose contains numeric data, a value of zero is taken as false and a
Note
nonzero value is true.
Settings Tab
Read Inputs
This section allows you to specify how the input data values for the crosslinks in the
group will be updated. You do this by specifying an update interval and a deadband.
Interval
You may specify the interval, in milliseconds, at which you want the input data to be
refreshed.
Deadband
Here you may specify the deadband in percent of full scale. This determines whether or
not the input data will be refreshed when it changes by a small amount, allowing you to
eliminate problems with values that jitter.
Write Outputs
This section allows you to specify when the input data should be written to the output
data items. There are three methods available, and you can choose any combination. If
you choose more than one, the data will be written when any one of the conditions are
met.
On Data Change
When this box is checked, the crosslinks in the group will write the data to the outputs
whenever the input data value changes.
When this box is checked, the crosslinks in the group will write the data to the outputs at
the interval you specify.
Triggered
When this box is checked, the crosslinks in the group will write the data to the outputs
when the specified data item changes state.
If you choose this option, you must specify an Item ID, Mode and Interval. You may also
specify a Deadband.
If DirectAccess is enabled for the crosslink group, the WriteTrigger data item will be
available in the DirectAccess branch for that crosslink group. This is a read/write item.
Item ID
Here you must specify a data item to use as the trigger. When the value of that data
item changes state as specified in the Mode selection, the write is triggered. You can
click the Browse... button to open a window that will allow you to browse for the
desired data item. You can specify a DirectAccess item or a Math and Logic item, if you
wish.
Interval
You must specify an interval when using triggered writes. The value you enter specifies
how often the trigger data item will be read to see if it has changed state.
Deadband
Here you may specify the deadband in percent of full scale. This determines whether or
not the trigger input data will be refreshed when it changes by a small amount, allowing
you to eliminate problems with values that jitter. For example, if you choose Any Change
mode with a numeric trigger item, this value will be used to determine if the trigger value
has changed.
Mode
This box allows you to choose the type of change in the trigger item that will cause the
write to occur.
Choose False to True to trigger when the value changes from false to true.
Choose True to False to trigger when the value changes from true to false.
Choose Any Change to trigger when any change in the value occurs.
A crosslink consists of a single crosslink input data item, which is read to obtain the
desired data, and one or more crosslink output data items, to which the data will be
written. Each of these data items may be from other OPC servers or may be directly
associated with a PLC.
After you edit the configuration, you must open the File menu and select Save &
Caution!
Update Server, or click the Save & Update Server toolbar button, for the changes
you have made to take effect. Otherwise, the server will still be running with the old
configuration.
To create a crosslink within a crosslink group, right-click on the group and select New
from the context menu, and then select Crosslink.
Duplicating a Crosslink
The above dialog box opens. You must specify how the duplicates are to be named by
entering values for the Base Text, First Number, Numeric Places and Number
Increment fields. To generate names for the duplicated crosslinks, the editor begins
with the base text and appends a number to it. The first duplicate uses the selected First
Number value with the specified number of digits. This number is then incremented by
the specified number for each of the remaining duplicates.
As an example, if Numeric Places is 3 and First Number is 2, the number 002 will be
appended to the base text.
Use the Number Of Duplicates field to specify the number of crosslinks you wish to
create.
Deleting a Crosslink
To delete an existing crosslink, select it and press the Delete key, or right-click on the
crosslink and select Delete from the context menu.
Editing Crosslinks
The crosslink editor consists of three tabs, General, Input and Outputs.
General Tab
Name
The name identifies the crosslink. It can be up to 50 characters long, may contain
spaces, but must not begin with a space. It also may not contain any periods.
Description
This optional field further describes the crosslink. It can be up to 255 characters long.
Disable Transfers
When this control is unchecked and the crosslink group is enabled, the data will be read
and written according to the criteria set on the crosslink group’s Settings Tab.
If this control is grayed-out, it means that Disable Crosslink Transfers has been selected
on the crosslink group’s General Tab.
Checking this box disables write requests to the crosslink from the OPC client
applications.
If the Disable Writes box is grayed-out, it indicates that writes have been disabled at a
Note
higher level.
Input Tab
Item ID
Enter here the data item you want to read data from. This may be any data item
associated with any OPC server or PLC that is available in the address space tree or
through DirectAccess.
Browse...
Click this button to open a window that will allow you to browse for the desired data
item.
Override Deadband
When this box is checked, the value entered in the data field is used as the deadband for
the input item. This overrides the group deadband that was set on the crosslink group’s
Settings Tab.
You may select the desired data type to be used for the data that is read. Refer to the
Folders and Data Items discussion in the Address Space Tree section for a table of
available data types.
Outputs Tab
Item ID
This is a list of the data items you want to write the data to. These may be any data
items associated with any OPC server or PLC that is available in the address space tree or
through DirectAccess. There is no specific limit to the number of data items you can
specify here, but you must include at least one.
DirectAccess writes are disabled by default. If you use DirectAccess to specify the Item
Caution!
ID, be sure that you enable DirectAccess writes for the device or network node
containing the data item you specify.
Description
This is an optional field that you can use to describe the data item.
New...
Click this button to open a window that will let you browse for the desired data item.
Edit...
Delete
For systems that include OPC Crosslink, the Cyberlogic OPC Server can be enabled to
dynamically create a folder called Crosslinks within the DirectAccess branch of its address
space. You will see this branch when you use an OPC client to browse for data items.
The Crosslinks folder acts like a device folder that contains all of the configured crosslink
groups, displayed as folders. Each crosslink group folder contains its configured
crosslinks.
DirectAccess provides read access to all of the data and status items available for the
crosslinks. In addition, it provides write access to most of the data and status items.
Write access can, however, be disabled for each crosslink group or for individual
crosslinks.
In the above example, the folder Production Crosslink Group is a crosslink group
containing a crosslink called Prod Time. The Prod Time crosslink writes to a single
crosslink output called Assembly Prod Time.
Each crosslink group that has DirectAccess enabled will be represented by a crosslink
group folder. A crosslink group folder contains one or more folders for the crosslinks in
the group, and a _Status folder. It may also contain a TransferEnable item, a
WriteTrigger item, or both.
The _Status folder provides access to the Crosslink Group Status items. If the crosslink
group is configured to use a data item to enable the crosslink transfers, that data item
will be shown as the item called TransferEnable. If the crosslink group is configured to
use a data item to trigger the crosslink transfers, that data item will be show as the item
called WriteTrigger.
Each crosslink in the crosslink group will be represented by a crosslink folder. A crosslink
folder contains one or more folders for the crosslink outputs that are written to by the
crosslink, a _Status folder and a Value item.
The _Status folder provides access to the Crosslink Input Status items. The Value item
provides access to the crosslink input.
Each crosslink output that the crosslink writes to will be represented by a crosslink output
folder. A crosslink output folder contains a _Status folder and a Value item.
The _Status folder provides access to the Crosslink Output Status items. The Value item
provides access to the crosslink output.
After you edit the configuration, you must open the File menu and select Save &
Caution!
Update Server, or click the Save & Update Server toolbar button, for the changes
you have made to take effect. Otherwise, the server will still be running with the old
configuration.
To save the configuration without updating the server, open the File menu and select
Save, or click the Save button on the toolbar. The changes will be saved but the server
will still be running with the old configuration.
To save the configuration and update the server, open the File menu and select Save &
Update Server, or click the Save & Update Server button on the toolbar.
To undo configuration changes and revert to the previously saved configuration, open
the File menu and select Undo Changes, or click the Undo Changes button on the
toolbar.
Configuration Import/Export
The Cyberlogic OPC Server normally stores its configuration information in a binary file.
The Cyberlogic OPC Server Configuration Editor and the runtime server module can easily
read and operate on this file. However, a different file format may be preferred for quick
viewing or processing by other applications.
The Export feature allows the entire server configuration to be saved in three text
formats: comma delimited (.csv), tab delimited (.tab) and XML.
The Import feature allows you to import these exported files or selected portions of
them. You may also import configurations from other vendors’ OPC servers.
The import/export capability of the Cyberlogic OPC Server Configuration Editor reduces
the time and effort required to configure the server. In addition, it can speed up the
configuration of similar Cyberlogic OPC Servers and is useful for backing up and restoring
server configurations. Furthermore, because it can import configurations from other OPC
server brands, it can greatly reduce the effort needed to migrate from those servers to
Cyberlogic’s OPC Server.
To provide better results, the import process performs verification tests on the
Note
imported data. On slower systems, those with relatively low memory or those that are
running other tasks concurrently, importing a configuration can take a significant
length of time. You should take this into consideration when choosing the system to
use for running the import operation.
This feature exports an entire server configuration to one of the supported file formats.
2. From the Save As drop box, select the format to use for the exported file. Your
choices are:
Comma separated values
Tab separated values
XML file
3. If you want to use this as the default selection when you run the export utility in the
future, check Use as default export type.
4. Click Next.
The Summary dialog will notify you about the number of exported items.
You can import all or part of a server configuration from a previously exported file or
from certain other configuration file formats. This section explains how to import an
entire configuration that was previously exported from a Cyberlogic OPC Server.
1. Open the File menu and select Import and then Full… .
2. From the Load From drop box, select the format of the file you wish to import. Your
choices are:
Cyberlogic OPC Server .mdb (Access database format)
Cyberlogic OPC Server .csv (Comma separated values)
Cyberlogic OPC Server .tab (Tab separated values)
Cyberlogic OPC Server .xml (XML file)
Various other vendors’ OPC server formats, depending on the driver
agents you have installed
3. If you want to use this as the default selection when you run the import utility in the
future, check Use as default import type.
4. Click Next.
6. Click Open.
Progress dialog boxes will open to show the status of the import. When it is finished,
the Success dialog box will be displayed.
After you edit the configuration, you must open the File menu and select Save &
Caution!
Update Server, or click the Save & Update Server toolbar button, for the changes
you have made to take effect. Otherwise, the server will still be running with the old
configuration.
1. Use the other product’s tools to export its configuration to a csv file. Refer to the
documentation for that product for instructions on how to do this.
2. Open the File menu and select Import and then Full… .
3. From the Load From drop box, select the format of the file you wish to import.
For this example, we will import from a Kepware OPC server, so the correct choice is
Kepware KEPServerEx.csv.
4. Click Next.
6. Click Open.
8. Click OK.
The import utility will partially process the file and then the Select Controller Family
dialog box will open.
The utility will finish preprocessing the file. It will then give you the chance to view
the results, which may contain warnings of errors or other useful information.
The results screen will show you the errors, warnings and other information with a
description of each.
When the processing is finished, the import wizard will close and you will be returned
to the OPC Server Configuration Editor.
After you edit the configuration, you must open the File menu and select Save &
Caution!
Update Server, or click the Save & Update Server toolbar button, for the changes
you have made to take effect. Otherwise, the server will still be running with the old
configuration.
It is possible to import only a part of a source file. Selective imports are available when
importing from Cyberlogic or other configurations. For this example, we will use a
Cyberlogic configuration.
1. Open the File menu and select Import and then Selective… .
2. From the Load From drop box, select the format of the file you wish to import. Your
choices are:
Cyberlogic OPC Server .mdb (Access database format)
Cyberlogic OPC Server .csv (Comma separated values)
Cyberlogic OPC Server .tab (Tab separated values)
Cyberlogic OPC Server .xml (XML file)
Various other vendors’ OPC server formats, depending on the driver
agents you have installed
3. If you want to use this as the default selection when you run the import utility in the
future, check Use as default import type.
4. Click Next.
6. Click Open.
The upper pane of the Selective Import editing screen shows the configuration you are
importing from and the lower pane shows the current configuration of your server.
1. Navigate through the Import From tree to locate the items you wish to import.
3. Navigate to the proper place in the lower pane, then right-click in the pane and
select Paste.
If some of the items you are trying to paste already exist in your server’s current
configuration, the Conflict Detected dialog box will appear.
Overwrite: The item you are pasting will replace the conflicting item in
your current configuration.
Skip: The editor will keep the item in your current configuration and not
import the item you pasted.
Quit: The paste operation will terminate immediately. Any items that
were added on this paste operation before the editor detected the
conflict will remain, but the conflicting item and all remaining items that
were to be pasted will not be imported.
If you selected more than one item to paste and you check Apply to all conflicts
for this operation before selecting Auto Fix, Rename, Overwrite or Skip, then
that selection will apply to all of the conflicting items detected for that paste
operation.
5. Repeat this procedure for all of the items you wish to import.
Once you have imported all of the items you wish to add to your configuration, you must
validate them before you can save the configuration.
The editor will perform the validation and will inform you of any conflicts.
2. Click OK.
The items that failed the validation will be highlighted with the yellow exclamation
point symbol.
In this instance, there are duplicate device numbers. Notice from the previous figure
that the imported network connection Ethernet0 has the same device number as the
network connection called Ethernet. You must change one of these device numbers
to resolve the conflict. You must also resolve the other two conflicts that the
validator detected.
4. Right-click on a problem item and select Fix Errors from the context menu.
The Fix Error dialog box will help you to correct the problem.
5. In this case, enter a new value for the address and click OK.
6. After you have cleared all of the errors, repeat the validation operation.
7. Click OK.
The import operation completes, your configuration is saved and the confirmation
dialog appears.
After you edit the configuration, you must open the File menu and select Save &
Caution!
Update Server, or click the Save & Update Server toolbar button, for the changes
you have made to take effect. Otherwise, the server will still be running with the old
configuration.
Shortening or deleting records during configuration edits will result in wasted space in
the configuration file. You can clean up this space by compacting the configuration file.
To do this, open the Tools menu and select Compact Configuration File. You will be
asked to confirm the operation, and then it will proceed automatically.
Editor Options
You can customize the editor by configuring several options.
To do this, open the Tools menu and select Options… . The options window contains
four or five tabs: General, Edit, Security and Server Control will appear for all
installations. Installations that have only the MBX or DHX OPC Server Suites, but not an
OPC Premier Suite or OPC Crosslink Suite, will have a fifth tab, Premier Features.
General Tab
This setting allows you to choose how the OPC server will report data to the clients when
the communication fails.
If Latch Last Known Value is checked and a last known value for the data is available,
the server will report that value with a substatus of Last Known Value. If no last known
value is available, the server will report no value with a substatus of Comm Failure.
If Latch Last Known Value is not checked, the server will report no value with a substatus
of Comm Failure, regardless of whether or not a last known value is available.
Here you can specify the interval, in milliseconds, at which the Data Monitor will request
data updates.
Edit Tab
Disable Edits
Users with administrator privileges can enable and disable edits for all users or just for
the current user.
Users with normal privileges can enable and disable changes only for themselves.
This setting specifies what the editor should do when you make changes to the
configuration of an object, and then select another object.
If the box is not checked, the editor will ask you if you want to save the changes.
If the box is checked, the editor will save the changes automatically, without asking.
This setting specifies how you want to select items in the right pane of the Selective
Import Screen.
If this box is not checked, you must click on the items to select them.
If this box is checked, you can select an item by just pointing to it with the mouse.
Hover Time
When hover selection is enabled, this is the amount of time, in milliseconds, that the
mouse pointer must hover before the item is selected.
Security Tab
For an OPC client and server to communicate, both systems must have proper DCOM
security settings. There is no standard setting for OPC applications because each
installation’s security needs are unique. Therefore, you must decide how to configure
security for your systems.
If you change the selection on this tab, you must restart the Cyberlogic OPC Server for
Caution!
the new settings to take effect.
To restart the Server, open the Windows Control Panel, go to Administrative Tools
and then Services. Right-click on Cyberlogic OPC Server and select Restart.
For help in making these decisions and a detailed discussion of how to do the
configuration, refer to the document OPC & DCOM: A Guide to Using the Cyberlogic OPC
Server via DCOM. A copy of this document was installed on your system along with the
software. To access it, open the Windows Start menu, navigate to the sub-menu for the
Cyberlogic OPC Server product you have installed, then open the Help sub-menu, then
open the OPC Server sub-menu and click on DCOM Help.
For information about additional Windows security settings, including user accounts and
the Windows firewall, refer to the Cyberlogic Control Panel Help.
As part of the security configuration, you must select the access permissions,
authentication level and impersonation level to be used. Two settings for these
parameters are used as defaults by many OPC-based products. These may be selected
by choosing the Low or Medium settings from this screen.
The preconfigured Low and Medium security settings override only the access
Caution!
permissions, authentication level and impersonation level for the Cyberlogic OPC
Server. The rest of the security settings must still be configured with the DCOMCNFG
utility.
If neither of these is the correct setting for your situation, you can choose Custom and
configure all of the security settings yourself through the Windows operating system.
Low
To use the low security settings, select Low and click the OK button. After that, click
Launch DCOMCNFG... to configure the rest of the security settings.
The low security setting overrides the default server-specific security values, giving them
the following settings:
When the Server starts, it will set the security level with the following call:
Note
CoInitializeSecurity(
NULL,
-1,
NULL,
NULL,
RPC_C_AUTHN_LEVEL_NONE,
RPC_C_IMP_LEVEL_IDENTIFY,
NULL,
EOAC_NONE,
NULL);
Medium
To use the medium security settings, select Medium and click the OK button. After that,
click Launch DCOMCNFG... to configure the rest of the security settings.
The medium security setting overrides the default server-specific security values, giving
them the following settings:
When the Server starts, it will set the security level with the following call:
Note
CSecurityDescriptor cSecurity;
cSecurity.InitializeFromThreadToken( );
CoInitializeSecurity(
cSecurity,
-1,
NULL,
NULL,
RPC_C_AUTHN_LEVEL_PKT,
RPC_C_IMP_LEVEL_IMPERSONATE,
NULL,
EOAC_NONE,
NULL);
Custom
To use custom security settings, select Custom and click the Launch DCOMCNFG...
button.
When the selection is Custom, the server does not override the default security values.
Instead, the settings you edited with DCOMCNFG are used.
Launch DCOMCNFG...
If you selected Custom, you must use DCOMCNFG to configure all of the security
settings.
If you selected Low or Medium, you must use DCOMCNFG to configure all of the security
settings except for the Cyberlogic OPC Server’s access permissions, authentication level
and impersonation level.
Startup Type
This setting allows you to select how the OPC server will start.
Automatic causes the OPC server to start when the system starts.
Manual requires you to manually start the OPC server for each Windows session.
Start
When the OPC server is stopped in automatic or manual mode, click this button to start
it.
Stop
When the OPC server is running in automatic or manual mode, click this button to stop it.
Server Status
The DHX and MBX OPC Premier Suites and the OPC Crosslink Suite include three Premier
features that are not included in the DHX and MBX OPC Server Suites:
OPC Math and Logic
OPC Crosslink
OPC DA Server Driver Agent
This tab allows you to run these features in demo mode on DHX and MBX OPC Server
Suite installations.
These features are always fully operational on systems that have the DHX OPC Premier
Note
Suite, MBX OPC Premier Suite or OPC Crosslink Suite installed. For that reason, this tab
will not appear on those systems.
In demo mode, these features will run continuously for two weeks after the software was
installed. After that, they will run for two hours after each system reboot.
The location of the server status block depends upon the network type. For example, in
the DHX OPC Server, the server status block is laid out as follows:
For information about location of the server status block for a particular driver agent,
refer to the help file specific for that agent.
The figure illustrates this process for the Cyberlogic OPC Client application. You would
navigate through the tree, looking for the available servers on the local machine or on
other computers attached to your network. When you find the desired server, select it
and click Connect.
An important feature of the Cyberlogic OPC Client is the Connect As option. If you check
this box, you can specify the user name and password of the account to be used to
connect to the selected OPC server. This will override the default user account you
configured for the client. Refer to the Cyberlogic OPC Client section for more details.
The servers available will be listed by their ProgID, Version-Independent ProgID or both.
The example above shows a ProgID of Cyberlogic.OPCServerDA.7, with the .7 at the end
specifying that this is version 7 of Cyberlogic’s OPC Server. A Version-Independent
ProgID would be Cyberlogic.OPCServerDA, with no version number appended.
To connect an OPC Alarms and Events client, you would proceed in the same manner,
selecting among the available AE servers. In the case of the Cyberlogic Alarms and
Events server, the ProgID would be Cyberlogic.OPCServerAE.7.
The procedure for connecting an XML Data Access client application is explained in
Appendix D: OPC XML Data Access Support.
Data Monitor
The Cyberlogic OPC Server Configuration Editor includes a built-in utility called the Data
Monitor. It is a diagnostic tool that allows you to monitor the values of the data items.
To enable the Data Monitor, open the View menu and select Data Monitor, or click the
toolbar button. Another way is to right-click in the right pane and select Data Monitor
from the context menu.
With the Data Monitor enabled, the Cyberlogic OPC Server Configuration Editor acts as
an OPC client to the Cyberlogic OPC Server. It creates an output display pane at the
bottom of the main workspace window.
To choose the data items to view, select a device or folder in the Address Space tree.
Each row in the Data Monitor corresponds to a data item in the selected folder or device.
Enable Checkbox
At the left end of each data item row is a checkbox that, when checked, enables
monitoring of its data item. By default, this checkbox is not checked. To minimize
unnecessary communications, enable only data items that you are interested in.
Item Name
Value
Type
The Data Monitor always requests data in the canonical (native) format. Therefore, the
Type column shows the canonical data type of the requested data.
Timestamp
Each data value returned by an OPC server has a 16-bit quality flag word associated with
it. The low eight bits are currently defined in the form of three bit fields: Quality,
Substatus and Limit Status. The Data Monitor displays the current value of each of these
fields for the data item value. For more information, refer to the OPC Quality Flags
section in the OPC Data Access specification.
The following steps show how to use the Cyberlogic OPC Client. Use this only as a
guideline of how to use the most common features. A detailed description of each
feature follows this demonstration section.
1. Open the Windows Start menu and locate the Cyberlogic OPC product you have
installed. Open the Diagnostics sub-menu and select OPC Client.
You can also open the client from the OPC Server Configuration Editor’s tool bar.
2. Click the Connect toolbar button, , or open the File menu and select
Connect….
The client application can connect to OPC servers running locally or on other
machines on a network. Notice that the servers are organized into folders according
to the OPC Data Access spec level they support.
These choices allow you to restrict the client’s operation to DA 1.0a level interfaces,
2.05a and below, or 3.00 and below.
5. If you want to specify a user account to be used when connecting to this server,
check Connect As and enter a User Name and Password. This will override the
default user account configured in the Client Options.
6. Click Connect.
7. Click the Add Items toolbar button, or open the Edit menu and select Add
Items….
8. Navigate through the tree to find the folder containing the data item you wish to
display.
If you had selected the data item, rather than the folder, from the tree, the Name
box would display the properties of that item, which could then be displayed.
You may limit the items shown in the Name box by using the Data Type Filter, Item
Filter and Access Rights Filter boxes.
10. Click Copy to add the data item or property to the list.
11. When all of the desired data items have been added, click Done.
12. Check the box next to each of the items to enable them.
A data item must be enabled for the client to display its real-time values.
13. Right-click on an item to open a context menu that allows you to delete the item,
move it up or down the list, view its properties and do other useful functions.
14. Select a data item that is not write-protected, and then click the toolbar’s
Asynchronous Write button, or open the Edit menu and select Write and then
either Asynchronous… or Synchronous….
The dialog box will close and the value will be written to the data item.
17. Select a data item and then open the Edit menu and select Read and then
Continuous Asynchronous Read... .
18. Enter a value for Requested Rate and Smoothing Factor, then click Start.
The Read Count field will display the number of reads that have occurred, and the
Average Rate field will display the average length of time for those reads. The
Average Rate calculation employs exponential smoothing, using the formula:
where α is the Smoothing Factor. This value must be less than 1, but not less than 0.
If it is 0, the Average Rate is simply the latest time for the read.
This type of rate monitoring with smoothing is also available for continuous write and
continuous browse operations.
19. Click Stop and close the dialog when you are finished.
22. Click Save to save the client configuration for later use.
When you are ready to reload a previously saved configuration, open the File menu,
select Open… , browse for the directory and file with the desired configuration, and
then click Open.
23. To disconnect from the Server, click the Disconnect button or open the File menu
and choose Disconnect.
The main window of the Cyberlogic OPC Client resembles the Data Monitor of the
Cyberlogic OPC Server Configuration Editor. Each data item uses one row with several
data fields.
Enable Checkbox
At the left end of each data item row is a checkbox that, when checked, enables
monitoring of its data item. By default, this checkbox is not checked. To minimize
unnecessary communications, enable only data items that you are interested in.
Item ID
This is the fully qualified Item ID string for the data item. The OPC client must use this
string to access the data item.
Value
Type
To change this, right-click on the data item and select Data Type from the context
menu.
Timestamp
Each data value returned by an OPC server has a 16-bit quality flag word associated with
it. The low eight bits are currently defined in the form of three bit fields: Quality,
Substatus and Limit Status. The Data Monitor displays the current value of each of these
fields for the data item value.
For more information, refer to the OPC Quality Flags section in the OPC Data Access
specification.
Update Count
This is simply the number of times the data item has been updated.
Deadband
This applies to DA 3.0 analog values only. It is the minimum change in a value,
expressed as percent of full scale, that must be exceeded for the data value to be
updated in the cache on the basis of the value having changed.
Sampling Rate
This applies to DA 3.0 values only. It is the interval at which the server will read the
item’s value from the device.
By default, the client controls always add a new data item at the end of the data item
list. To change this order, select an item and then click the Move Up or Move Down
button on the toolbar, or open the Edit menu and select Move Up or Move Down.
You can sort the data items in ascending or descending order based upon values in each
column by clicking on the column’s header bar.
Server Status
To view the server properties, open the File menu and select Server Status…. The
Server Status window will open.
This indicates the OPC Data Access specification level used by the client to communicate
to the server.
Interfaces
This button is available only for DA 3.0 servers. Click it to display a list of all of the COM
interfaces supported by this server object.
Number of Groups
This indicates the total number of groups being managed by the server on behalf of this
client. Since the Cyberlogic OPC Client uses a single group for all data items, this value is
always equal to 1.
Server Version
This field displays the software revision level of the OPC server.
Percent Bandwidth
The behavior of this field is server-specific. Typically, it shows the approximate percent of
bandwidth currently used by server. A value greater than 100% indicates that the
combination of items and update rate is too high. The server may also return
0xFFFFFFFF if this value is unknown.
This is the time (UTC) that the server was started. This is constant for the server
instance and is not reset when the server changes states.
Last Update
This is the time the server last sent a data value update.
Status
Group State
All of the data items you are viewing are part of a single OPC group. To view and edit
various parameters for this group, open the Edit menu and select the Group State…
option.
Name
Interfaces
Click this button to display a list of all of the COM interfaces supported by this group
object.
Update Rate
This is the update rate returned by the server, which may be different from the
requested update rate. In general, the OPC Server rounds the requested value up to the
next available supported rate.
Deadband
The percent change in an item value that will cause the server to send an update to a
client.
This parameter applies only to analog items. The range of the Deadband is from 0 to 100
percent of full scale (FS).
Time Bias
This indicates the time zone in which the data was collected and is specified in minutes.
The data collection time zone may be different from the time zone of either the client or
the server.
The default time bias for the group is that of the server.
The Time Bias behaves like the Bias field in the Win32 TIME_ZONE_INFORMATION
Note
structure, which is to say it does not account for daylight saving time (DST).
The time bias is set only when the group is created or when Set State is called. In
general, a client computes the data's local time by: Time Stamp + Time Bias + DST Bias
(if any).
LCID
This value identifies the language the server uses when returning values as text. The
following table shows the LCID codes for a few common languages.
Active
If you clear the Active checkbox for a group, you will disable all data item updates for
that group.
Groups and items within groups have an Active flag. The active state of the group is
maintained separately from the active state of the individual data items, so changing the
state of the group does not change the state of the items.
Keep Alive
When a subscription has a non-zero Keep Alive time, the client will receive a callback on
the subscription at least at the rate indicated by the Keep Alive time, even if there are no
new events to report.
To speed up the process of entering data items, the current client configuration can be
saved to an ids file. To do that, open the File menu and choose Save….
To reload a previously saved configuration, select Open… from the File menu and then
choose the ids file with the desired configuration.
For either of these options to be available, the client must be connected to the server. In
addition, the items contained in the ids file must correspond to those items available
within the present server configuration.
For quick access to client configuration files you have saved, you can set up Windows
shortcuts that will open the client and load a specified ids configuration file. Here is the
procedure to create such a shortcut.
1. Open the Windows Start menu and navigate to the sub-menu for the OPC Server
product you have installed.
2. Right-click on the OPC Client entry, drag it to the desktop, then drop it and select
Copy Here from the context menu.
3. Right-click on the shortcut and select Properties from the context menu.
5. Add the path and configuration file name to the Target field.
Notice that the path and file name are enclosed in quotes and preceded by a space.
Now, when you double-click the shortcut, the client will open and automatically load the
configuration file.
Client Options
Open the Tools menu and select Options… to set the client property preferences.
Security Tab
For an OPC client and server to communicate, both systems must have proper DCOM
security settings. There is no standard setting for OPC applications, because each
installation’s security needs are unique. Therefore, you must decide how to configure
security for your systems.
For help in making these decisions and a detailed discussion of how to do the
configuration, refer to the document OPC & DCOM: A Guide to Using the Cyberlogic OPC
Server via DCOM. A copy of this document was installed on your system along with the
software. To access it, open the Windows Start menu, then navigate to the OPC Server
directory and click DCOM Help.
As part of the security configuration, you must select the access permissions,
authentication level and impersonation level to be used. Two settings for these
parameters are used as defaults by many OPC-based products. These may be selected
by choosing the Low or Medium settings from this screen.
If neither of these is the correct setting for your situation, you must choose Custom and
click Launch DCOMCNFG... to configure all of the security settings yourself through the
Windows operating system.
The preconfigured Low and Medium security settings override only the access
Caution!
permissions, authentication level and impersonation level for the Cyberlogic OPC Client.
The rest of the security settings configured with the DCOMCNFG utility still apply.
For details of these settings, refer to the discussion of the Server Options Security Tab.
Custom
If neither of the preconfigured settings are suitable for your installation, you must choose
Custom. When the selection is Custom, the client does not override the default security
values. Instead, the settings you edited with DCOMCNFG are used.
Launch DCOMCNFG...
If you selected Custom, you must use DCOMCNFG to configure all of the security
settings. If you selected Low or Medium, you must use DCOMCNFG to configure all of the
security settings except for the Cyberlogic OPC Client’s access permissions,
authentication level and impersonation level.
If you change the selection on this tab, you must close the client and reopen it before
Caution!
the new settings will take effect.
The OPC Server address space is normally shown with a multi-level tree structure. When
browsing for elements, you may prefer to see the address space as a flat structure with
all of the elements at a single level. This is supported in Data Access 1.x and 2.x
compliant servers, but not in 3.x compliant servers.
If your server supports this feature, check Browse Flat Address Space to use it.
This tab allows you to specify a user name and password for the default account that will
be used to connect to OPC servers. If you wish, you can override this default for
individual servers when you connect to them.
The user name and password are encrypted and stored on the system in a secure
Note
manner.
Performance Monitor
Microsoft provides a diagnostic tool, the Performance Monitor, as part of the Windows
operating system. Applications supporting the Performance Monitor allow users to
monitor relevant performance information. Multiple devices can be monitored
simultaneously for comparison.
To run the program, open the Windows Start menu and locate the sub-menu for the
Cyberlogic OPC product you have installed. From that menu, go to the Diagnostics sub-
menu and select Performance Monitor.
Since extensive help is provided for this program by Microsoft, only a few points that are
relevant to the Cyberlogic drivers will be shown here. In this example, we will use the
tool to check the performance of the DHX Driver. You would use the same procedure for
any of the other drivers.
1. When the Performance Monitor program starts, click the + button on the tool bar.
3. Choose a counter and the DHX device, and click Add. Repeat this for all the counters
you want to view.
4. Click Close. The counters you chose will then be displayed in graphical format.
DirectAccess
At run time, in addition to the user-configured branches, the Cyberlogic OPC Server
dynamically creates DirectAccess branches in its address space. These are created for
network nodes, devices and crosslinks. For detailed information on DirectAccess to
crosslinks, refer to Accessing Crosslinks with OPC Clients.
DirectAccess allows read and write operations. However, for extra security, write
operations are disabled by default. If writes are permissible, they can be enabled on a
node-by-node basis as part of the network node configuration, and on a device-by-device
basis as part of the device configuration.
Device DirectAccess
Each device in the address space will contain all of its configured data items, plus a
DirectAccess branch, as shown in the example above. This branch will appear only for
devices that have DirectAccess enabled. OPC clients can then use this branch to access
any register in the device by directly specifying the register address.
In the DirectAccess branch for a device, the Cyberlogic OPC Server reports a list of hints
about the types of data items that may exist on the selected device. These are not valid
item addresses. Rather, they are just hints to help the user to specify a proper address.
For more details on using these hints, refer to the Address Hints section.
As you can see in the example above, each network connection branch contains its
configured network nodes. However, only network nodes that enable DirectAccess are
present. OPC clients can then use this branch to access any bit or register in any
configured network node by directly specifying its address.
For network nodes in the DirectAccess branch, the Cyberlogic OPC Server reports a list of
hints about the types of data items that may exist on the selected node. These are not
valid item addresses. Rather, they are just hints to help the user to specify a proper
address.
Address Hints
The next field, {3-999d}, specifies the file number, which must be a decimal number
between 3 and 999. A colon follows the file number.
The last field, {0-1999d}, specifies the register number, which must be a decimal
number between 0 and 1999.
Therefore, to access the register located at B3:100 using DirectAccess to the network
node, you would edit the Item ID field at the top of the dialog box to read:
To access the same register using DirectAccess to the device, you would edit the Item ID
to read:
An input address hint might be of the form "I:{0-277o}/{0-17o}". In this case, the
number ranges are in octal and a typical address is "I:3/1".
The address hints are shown enclosed in double-quotes, and the item address you
Note
specify in place of the hint must also be enclosed in double-quotes. If a data type
override is used, it is not enclosed in the double-quotes.
Previous versions of the Cyberlogic OPC Server did not require the double-quotes, but
had the requirement that any periods (.) in the address had to be replaced with a
forward slash (/). This format is still valid, for compatibility with existing configurations.
However, the double-quote format is preferred for new configurations.
Other types of controllers will have address hints that are appropriate for the type of
addressing they use. For more information about DirectAccess and additional information
on address hints, refer to the help file for your specific driver agent.
Status Items
The Cyberlogic OPC Server provides status items that are accessible to any connected
OPC client application. These items provide health and performance information about
the server itself, as well as the network connections, network nodes, devices and
crosslinks.
The following sections provide detailed information on the Cyberlogic OPC Server Status
Application as well as Status Item Definitions.
The Cyberlogic OPC Server Status application provides access to a wealth of information
about the operation of the Cyberlogic OPC DA server that is running on your system. It
also provides an easy means of starting and stopping the server and launching the
Windows Performance Monitor.
To launch the Cyberlogic OPC Server Status application, open the Windows Start
Menu and navigate to the Cyberlogic OPC suite you have installed. From there, open the
Diagnostics sub-menu and select OPC Status.
The application will open, showing you the available status information. For an
explanation of the displayed items, refer to DA Server Status in the Status Item
Definitions section.
When the application is running, an icon will appear in the Windows System Tray.
Start Server
Stop Server
Performance Monitor
Options...
Click this button to open a selection that allows you to indicate if you want the
application to start when Windows starts.
When you connect to the Cyberlogic OPC Server with a client application and browse for
items to display, the status items are shown in folders called _Status.
The contents of each folder will vary depending on the type of item that it is providing
status for:
DA Server Status
Network Connection Status
Network Node Status
Device Status
Crosslink Group Status
Crosslink Input Status
Crosslink Output Status
DA Server Status
This branch is located directly under the _Status branch at the root of the address space
(_Status.DA_Server_Status). The items in this branch provide global status information
about the overall operation of the OPC Data Access (DA) component of the Cyberlogic
OPC server. Most of the items can also be viewed through the Cyberlogic OPC Server
Status Application, which presents the data in a more readable form.
ActiveConfiguration
The name of the configuration file that is currently used by the server.
Clients_Count
Most client applications use a single server connection for all of their I/O requests, so this
number typically represents the number of connected OPC clients.
Clients_Info
This item provides status information for all current OPC DA server connections.
Clients_UpdateInfo
This item provides data update status for all current OPC DA server connections.
ComObjectsCount
Groups_ActiveCount
Active data items, which are part of these groups, are being updated by the server’s data
acquisition engine. The updates can be either solicited or unsolicited.
Groups_TotalCount
The total number of OPC groups created by all OPC clients connected to the server.
Items_ActiveCount
Number of data items whose data value or other property has been set to an active state
by some OPC client.
Active data items are updated by the server’s data acquisition engine. The updates can
be either solicited or unsolicited.
Items_DormantCount
The number of data items that recently participated in the data acquisition (were active),
but that are currently dormant (not in use).
While dormant, the server maintains the last data value for these items, which allows
quicker re-activation. The maximum dormant time for a data item defaults to 10 minutes.
If a dormant data item does not become active within that time, its data cache is
removed, reducing the amount of memory used by the server.
Items_InUseCount
The number of data items that are either set active by an OPC client or that are used
internally, such as status items.
The in-use data items are updated by the server’s data acquisition engine.
Items_TotalCount
This number includes all configured data items, status items, and the items dynamically
created through the DirectAccess branches.
Scanner_Count
The Cyberlogic OPC Server uses so-called scanner modules to handle all of its solicited
data updates. Each scanner runs at a different scan interval. The number of scanners
depends on the current requirements of the connected OPC clients.
Scanner_HighCount
The greatest number of scanners that operated simultaneously at some point in time.
The server operates most efficiently when there are fewer scanners being used. If this
number is high, you may want to review the requested update/sampling rates from your
OPC clients. Try to combine scan/sampling rates that are close to each other.
Scanner_ItemCounts
This item provides the status information for all scanner modules currently in use.
It is not unusual for only the reference count and the scan interval to have a non-zero
values, that is, no device or internal reads are performed. The server’s data acquisition
component optimizes communications, so, for a given data item, only the highest-rate
scanner acquires the data, while the lower-rate scanners only distribute the data to the
appropriate requesters.
Read_ActiveCount
This is the number of synchronous and asynchronous read requests being currently
serviced by the server.
Read_HighActiveCount
This is the highest number of simultaneous read requests at some point in time.
Read_TotalCount
This is the total number of synchronous and asynchronous reads serviced by the server.
Write_ActiveCount
The number of synchronous and asynchronous write requests currently being serviced by
the server.
Write_HighActiveCount
Write_TotalCount
The total number of synchronous and asynchronous writes serviced by the server.
The following items are shown in folders called _Status located directly under the
network connection branches in the DirectAccess tree of the address space root. These
branches are present only when DirectAccess at a given network connection is enabled.
For information on how to enable DirectAccess for a network connection, refer to the
help file for the driver agent you are configuring.
Description
HealthState
Indicates the current health state of the network connection in numeric form.
HealthStateString
Indicates the current health state of the network connection in text form.
OfflineCount
The number of times this network connection transitioned from the Online state to the
Offline state.
The following items are shown in folders called _Status located directly under the
network node branches in the DirectAccess tree of the address space root. These
branches are present only when DirectAccess at a given network node is enabled. For
information on how to enable DirectAccess for a network node, refer to the help file for
the driver agent you are configuring.
Description
HealthState
Indicates the current health state of the network node in numeric form.
0 = Online
1 = Online Delay
2 = Offline
The network node enters the Online Delay state after it re-establishes connection to the
associated physical device, but is still running diagnostic tests before transitioning to the
Online state.
HealthStateString
Indicates the current health state of the network node in text form.
The network node enters the Online Delay state after it re-establishes connection to the
associated physical device, but is still running diagnostic tests before transitioning to the
Online state.
OfflineCount
The number of times this network node transitioned from the Online state to the Offline
state.
Device Status
The following items are shown in folders called _Status located directly under the device
branches in the address space. These branches are present only when the DirectAccess
at a given device is enabled. For information on how to enable DirectAccess for a device,
refer to the help file for the driver agent you are configuring.
If you want to view the status items that relate to unsolicited communication, that is,
Caution!
those that begin with Unsolicited_, you must create at least one unsolicited message
filter group for the device. This is required even if you have configured the device to
accept all unsolicited messages. You can leave the filter group empty; it is not
necessary to create any filters within it.
AccessPath
This item shows the currently used access path in text form.
AccessPathNumber
This item shows the currently used access path in numeric form.
Description
DirectAccess_IsEnabled
DirectAccess_WritesDisabled
IsSimulated
This indicates whether or not the data items under this device are simulated.
ResetAllErrorCounts
An Off to On transition of this item resets all access path dynamic enable error counts to
zero.
This resets only the counts; the last error information is not cleared. This item can be
written to by any OPC client.
Unsolicited_AcceptAll
This item reflects the state of the Accept All Unsolicited checkbox.
Unsolicited_DataAcceptedMsgCount
The number of unsolicited messages that delivered data to at least one data item under
this device.
Unsolicited_DataRejectedMsgCount
The number of unsolicited messages that passed through the unsolicited filter, but could
deliver data to no data items under this device.
Unsolicited_PassedFilterMsgCount
The number of unsolicited messages that passed through the unsolicited filter associated
with this device.
Unsolicited_ReceivedMsgCount
WritesDisabled
Indicates whether or not writes are enabled for data items under this device.
In addition, the following status items are available for each defined access path.
Description
IsEnabled
DynamicEnable_ErrorCount
This is the error count for the dynamic enable item ID. It is incremented each time bad
quality data is received for that item ID.
This item is present only if the path’s enable check box is checked and dynamic enable is
configured.
DynamicEnable_ItemID
This item is present only if the path’s enable check box is checked and dynamic enable is
configured.
DynamicEnable_UpdateCount
The number of times the access path has changed from enabled to disabled or disabled
to enabled. This count is incremented each time IsEnabled changes state.
This item is present only if the path’s enable check box is checked and dynamic enable is
configured.
DynamicEnable_LastError
The last error code associated with the dynamic enable item ID.
This item is present only if the path’s enable check box is checked and dynamic enable is
configured.
DynamicEnable_LastErrorQuality
The last error quality associated with the dynamic enable item ID.
This item is present only if the path’s enable check box is checked and dynamic enable is
configured.
DynamicEnable_LastErrorString
The last error code string associated with the dynamic enable item ID.
This item is present only if the path’s enable check box is checked and dynamic enable is
configured.
The following items are shown in folders called _Status located directly under the
crosslink group branches in the DirectAccess tree of the address space root. These
branches are present only when DirectAccess at a given crosslink group is enabled, which
is done on the crosslink group’s General Tab. For more information on using
DirectAccess, refer to Accessing Crosslinks with OPC Clients.
Description
Inputs_ErrorCount
This is the total error count for all inputs associated with this crosslink group.
The counter is incremented each time bad quality data is received on any input in the
crosslink group.
Inputs_UpdateCount
The total update count for all inputs associated with this crosslink group.
This counter is incremented each time an OnDataChange update callback is received for
the inputs associated with this crosslink group.
IsEnabled
Outputs_ErrorCount
The total error count for all outputs associated with this crosslink group.
This counter is incremented each time a write to an output in this crosslink group fails.
Outputs_WriteCount
The total write count to outputs associated with this crosslink group.
This counter is incremented each time outputs in this crosslink group are written to.
ResetAllErrorCounts
An Off to On transition of this item resets all crosslink error counts to zero.
This resets only the counts; the last error information is not cleared. This item can be
written to by any OPC client.
TransferEnable_ErrorCount
This is the total error count associated with the TransferEnable control input.
The counter is incremented each time bad quality data is received for this input. This
item is not present if the TransferEnable input is not configured.
TransferEnable_ItemID
This is the Item ID string associated with the TransferEnable control input.
TransferEnable_LastError
The last error code associated with the TransferEnable control input.
TransferEnable_LastErrorQuality
The last error quality associated with the TransferEnable control input.
TransferEnable_LastErrorString
The last error code string associated with the TransferEnable control input.
TransferEnable_UpdateCount
The counter is incremented each time an OnDataChange callback delivers a new value
for the TransferEnable control input. This item is not present if the TransferEnable input
is not configured.
WriteTrigger_ErrorCount
The total error count associated with the WriteTrigger control input.
The counter is incremented each time bad quality data is received for this input. This
item is not present if the WriteTrigger input is not configured.
WriteTrigger_ItemID
This is the Item ID string associated with the WriteTrigger control input.
WriteTrigger_LastError
The last error code associated with the WriteTrigger control input.
WriteTrigger_LastErrorQuality
The last error quality associated with the WriteTrigger control input.
WriteTrigger_LastErrorString
The last error code string associated with the WriteTrigger control input.
WriteTrigger_LastValue
The last data value associated with the WriteTrigger control input.
WriteTrigger_UpdateCount
The counter is incremented each time an OnDataChange callback delivers a new value
for the WriteTrigger control input. This item is not present if the WriteTrigger input is not
configured.
The following items are shown in folders called _Status located directly under each
crosslink branch in the DirectAccess tree of the address space root. These branches are
present only when DirectAccess at the corresponding crosslink group is enabled, which is
done on the crosslink group’s General Tab. For more information on using DirectAccess,
refer to Accessing Crosslinks with OPC Clients.
Description
Input_ErrorCount
This counter is incremented each time bad quality data is received for this crosslink
input.
Input_ItemID
Input_LastError
Input_LastErrorQuality
Input_LastErrorString
The last error code string associated with this crosslink input.
Input_LastValue
Unlike the Value item in the crosslink folder that provides full read and, if enabled, write
access to the crosslink input, this value is read-only and is updated at the crosslink
group’s read inputs interval, but only when the item is enabled.
Input_UpdateCount
The counter is incremented each time an OnDataChange callback delivers a new value
for this crosslink input.
IsEnabled
Outputs_ErrorCount
The total error count for all crosslink outputs associated with this crosslink input.
The counter is incremented each time a write to an output for this crosslink input fails.
Outputs_WriteCount
The total write count to outputs associated with this crosslink input.
The counter is incremented each time crosslink outputs for this crosslink input are written
to.
The following items are shown in folders called _Status located directly under the
crosslink output branch in the DirectAccess tree of the address space root. These
branches are present only when DirectAccess at the corresponding crosslink group is
enabled, which is done on the crosslink group’s General Tab. For more information on
using DirectAccess, refer to Accessing Crosslinks with OPC Clients.
Description
ErrorCount
This counter is incremented each time a write to this crosslink output fails.
IsEnabled
ItemID
LastError
LastErrorString
The last error code string associated with this crosslink output.
LastStatus
LastValue
Unlike the Value item in the crosslink output’s folder that provides full read and, if
enabled, write access to the crosslink output, this value is read-only and is updated only
when crosslink writes data to this crosslink output.
WriteCount
This counter is incremented each time this crosslink output is written to.
Event Viewer
During startup and operation, the Cyberlogic OPC Server may detect problems or other
significant events. When a noteworthy event is detected, the server sends an appropriate
message to the Windows Event Logger. You can view these messages using the
following procedure.
1. Open the Windows Start menu and locate the sub-menu for the Cyberlogic OPC
product you have installed. From that menu, go to the Diagnostics sub-menu and
select Event Viewer.
The Event Viewer does not clear itself after rebooting. Check the time stamps of the
Caution!
messages to be sure that you are not looking at an old error message.
5. For further descriptions of the event log messages, refer to the Cyberlogic OPC
Server Messages section.
The OPC server runtime module failed to open configuration database file
"<file name>" (Error code = <error code>). Run the OPC Server Configuration
editor and verify that your configuration file is set as active. This error may
also happen if the configuration file resides on a shared network drive. To
correct the problem, move the file to a local drive.
The OPC server could not open the file that contains your configuration. Check the editor
to be sure that the configuration file is set as the active configuration. If the
configuration file is on a shared drive on another system, you may not have the needed
access rights. Move the file to a drive on your local system.
The OPC server runtime module failed to load configuration database file
"<file name>" (Error code = <error code>). Your configuration file may be
corrupt. Run the OPC Server Configuration editor and verify that you have a
valid configuration file. If the editor is also unable to load the configuration
data, create a new configuration file.
The OPC server detected that the file that contains your configuration information may
be corrupted. Try to open the file with the configuration editor. If you cannot open the
file, and no backup is available, you will have to create a new configuration.
Registration DLL failed to load. The OPC Crosslink has been disabled. Reinstall
the product.
A necessary registration DLL could not be loaded. This may indicate a corrupted
installation. Repair the existing installation, or remove and reinstall the software.
The OPC Crosslink has not been activated. The feature has been disabled.
Run the Activation Wizard to activate the OPC Crosslink Suite, DHX OPC Premier Suite or
MBX OPC Premier Suite. You will need the activation codes that came with your license.
If you have not purchased a license for any of these products, contact Cyberlogic's Sales
Department.
This is a time-limited installation of the software. After the stop time, the driver agent will
not allow any further I/O operations.
This is a promotional copy of the OPC Crosslink. The allowed operation time
has expired. The I/O operations of Crosslink have been disabled.
This is a time-limited installation of the software. The stop time has been reached or
exceeded, so the driver agent will not allow any further I/O operations.
The Cyberlogic License Server failed to respond with valid license information.
The I/O operations of the OPC Crosslink have been disabled. Contact the
manufacturer's technical support.
The driver agent experienced a problem when it tried to contact the Cyberlogic License
Server. If the license server is not running, start it and then try restarting the driver. If
the license server is already running, contact Cyberlogic Tech Support.
The specified function failed to allocate the needed memory. This is a fatal error. If you
are running low on memory, close some applications or add more memory to your
system. If the problem continues, contact technical support for more information on a
possible solution.
Indicates a possible programming bug in the server. Contact technical support for more
information on a possible solution.
Indicates a possible programming bug in the server. Contact technical support for more
information on a possible solution.
During startup, the Cyberlogic OPC Server failed to register the Service Control Handler.
Contact technical support for more information on a possible solution.
The Cyberlogic OPC Server detected an unsupported service request. Contact technical
support for more information on a possible solution.
Memory allocation error in <function name>. The server may not operate
correctly. Close some applications. Add more memory to your system. Contact
the manufacturer's technical support.
The specified function failed to allocate the needed memory. The server will continue to
operate, but some functions may not work. If you are running low on memory, close
some applications or add more memory to your system. If the problem continues,
contact technical support for more information on a possible solution.
Communication module for driver class <driver agent name> failed to load
(Error code = <error code>). All configuration related to this driver class will
be ignored. To resolve this problem, please contact the manufacturer's
technical support.
This error will be generated if your configuration file was generated on a system with the
listed driver agent installed, but the driver agent is not installed on your system. Install
the listed driver agent to correct the problem.
If you believe that the indicated driver agent is installed, this message may indicate that
you have a corrupted installation.
Service started.
Service stopped.
I am not connected to the network, but my data items are being updated.
What’s going on?
Simulation Signals are generating data for the items. Verify that the Simulate check box
is cleared for the data item and for each parent up the chain from the data item.
I created a new data item in the Address Space. When I try to look at it with
the Data Monitor, the item is shown as Not Available. The entire configuration
appears correct. What do I do?
You may not have updated the runtime module of the Cyberlogic OPC Server with your
recent configuration changes. To save current configuration and update the server, select
Save & Update Server from the File menu of the OPC Server Configuration Editor, or
click the Save & Update Server button on the standard buttons toolbar.
This help file describes only the common features of the Cyberlogic OPC Server. For
information related to a particular driver agent, refer to the help file specific for that
agent.
On some systems, Windows will spontaneously unregister the server application. You
must manually re-register it. To do this, locate the file CybOpcRuntimeService.exe. In
most installations, it will be in the directory C:\Program Files\Common Files\Cyberlogic
Shared\OPC.
From the Accessories group of the Windows Start menu, run Command Prompt. (In
the following commands, <Enter> indicates that you should press the Enter key.)
You must change to the drive and directory you just located. To change the drive to C:,
for example, type:
C: <Enter>
Once you are at the correct drive, change the directory by typing this command. (There
is a space after the cd.)
Now type the following. (Note that there is a space before the slash.)
Finally, type the following. (Again, there is a space before the slash.)
I cannot get XML Data Access to work. The Event Viewer shows an error for a
User called ASPNET, with the description: “Access denied attempting to launch
a DCOM Server using DefaultLaunchPermission”.
You must add the User account ASPNET to the DCOM security settings for the OPC
server software, giving it launch and access rights.
To do this, you will use the DCOM configuration editor, dcomcnfg.exe. For details on how
to use this editor, refer to the document OPC & DCOM: A Guide to Using the Cyberlogic
OPC Server via DCOM. A copy of this document was installed on your system along with
the software and can be accessed from the Windows Start menu by navigating to the
OPC Server directory and clicking on DCOM Help.
Note that on some systems, you may not get the Event Viewer error message.
Properties with IDs from 1 – 4999 are defined by the OPC Data Access specification.
Refer to the OPC Data Access specification for more information about these properties.
IDs 5000 and above are custom properties defined by each server vendor.
Standard Properties
Vendor-Defined Properties
110000LL - Non-specific
The value has been overridden. The Cyberlogic OPC Server returns this code when a
simulated signal is used.
000000LL - Non-specific
The value is bad but the reason is unknown. This is the default quality code used by each
data item.
At runtime, the server may detect that the physical device does not support the
requested register type. For example, some devices do not support 6xxxxx registers, so
you would get this code if you attempt to access, for example, register 600102 in such a
device.
The server could not complete the requested operation due to an internal failure, such as
insufficient memory.
Communication has failed, but the last known value is available. Note that the age of the
value may be determined from the time stamp.
This code is used only with unsolicited communications. The data item was not updated
within the Unsolicited Late Interval. The returned value should be regarded as stale.
Compatibility Considerations
The DLL implementing the Data Access Automation layer was developed by the OPC
Foundation and made available to OPC software vendors.
Some providers made custom changes to the DLL, but did not change its name or
Caution!
ProgID. Consequently, all of the different versions appear to be the same, so you
cannot install more than one version in a single system without causing conflicts.
The DLL provided with Cyberlogic’s software, OPCDAAuto.dll, is the standard OPC
Foundation file with no modifications. To avoid conflicts with other, altered versions that
may be on your system, Cyberlogic’s software installation program copies the file onto
your hard drive but does not register it. If you wish to use our version, you must register
it. Doing so will change the registration from any other version that may be on your
system to the Cyberlogic version. This, in turn, may affect the operation of software that
uses the other version.
It is not necessary to copy the DLL to the System 32 directory. You can leave it in the
directory where the installation program placed it and simply register it.
2. Change to the directory in which the DLL resides. The default installation directory is:
This appendix will assist you in determining what features and settings are required for
your system.
You will first install Windows Internet Information Services (IIS), with certain required
components. After that, you will install the OPC XML DA component of the Cyberlogic
OPC server and verify its security settings. Depending on your operating system, you
may then need to select an operating mode for ASP.NET. Finally, you will connect an
OPC XML DA client to the server.
Some of the procedures will vary, depending on the specific Windows operating system
you are installing under. These variations will be identified so you can follow the
procedure that applies to your system.
There are four procedures for installing IIS, depending on your operating system:
Windows XP and 2000
Windows Server 2003
Windows Vista
Windows Server 2008
5. Click Next and then follow the prompts to complete the installation.
6. When you are finished with the IIS installation, continue with Install the Cyberlogic
OPC Server XML Data Access Support.
4. Check the boxes for ASP.NET and Internet Information Services (IIS).
5. Click OK.
6. Click Next and then follow the prompts to complete the installation.
7. When you are finished with the IIS installation, continue with Install the Cyberlogic
OPC Server XML Data Access Support
Windows Vista
2. Open Programs and Features, and then Turn Windows features on or off.
4. Check the boxes for IIS Metabase and IIS 6 configuration compatibility and
ASP.NET, as shown in the figure above.
6. When you are finished with the IIS installation, skip to Install the Cyberlogic OPC
Server XML Data Access Support.
4. Click Next.
5. On the Select Role Services screen, check ASP.NET and IIS 6 Management
Compatibility.
6. Click Next, and then follow the prompts to complete the installation.
7. When you are finished with the IIS installation, continue with Install the Cyberlogic
OPC Server XML Data Access Support.
1. Run the Cyberlogic OPC Server Suite installation program from the disk or
download.
2. If you have already installed the OPC server and wish to add XML DA support, select
the option to Modify the installation.
3. When you are presented with the tree showing the components to install, open the
DHX OPC Server or MBX OPC Server branch.
5. Click Next, and then follow the prompts to complete the installation.
To continue with the setup, go to Adding a User Account to the Cyberlogic OPC Users
Group.
In some installations, IIS may be configured for a different account than its default. If
that is the case on your system, you must manually add this account to the group. The
following procedure shows how to determine if IIS is using a different account, and how
to add that account to the Cyberlogic OPC Users group.
This procedure may not be necessary, depending on your operating system and its
configuration. Once again, the procedure will vary with the operating system you are
using:
Windows XP (32-bit) and 2000
Windows XP (64-bit) and Server 2003
Windows Vista and Server 2008
The version of IIS provided with these operating systems uses only the default accounts,
so no additional configuration is needed.
2. Open the Services and Applications branch, and then the Internet Information
Services sub-branch.
4. Check the Identity tab to find which user account is specified and make a note of it.
5. Open the Windows Start menu, then go to Programs and navigate to the sub-
menu for the Cyberlogic OPC product you have installed. From there, open the
Configuration menu and select Cyberlogic Control Panel.
7. Verify that the IIS user account is shown. If it is not, click Add... to add it to the
group.
If you are running with 64-bit Windows XP, go to Selecting the ASP.NET Setting.
If you are running with Windows Server 2003, go to Connecting an XML DA Client.
4. In the center pane, select an application pool, and then click Advanced Settings...
in the right pane.
5. Look under Process Model for the value of Identity, and make a note of this user
account.
7. Open the Windows Start menu, then go to Programs and navigate to the sub-
menu for the Cyberlogic OPC product you have installed. From there, open the
Configuration menu and select Cyberlogic Control Panel.
9. Verify that the IIS user account is shown. If it is not, click Add... to add it to the
group.
Within 64-bit Windows XP, ASP.NET can be configured for 32-bit or 64-bit support.
Cyberlogic’s software requires 32-bit support, and you can select this mode through the
Cyberlogic Control Panel.
When you select 32-bit support, you will disable support for any web service that
Caution!
requires 64-bit ASP.NET support. Similarly, if you select 64-bit support, you will disable
support for the Cyberlogic OPC XML Data Access as well as any other web service that
requires 32-bit ASP.NET support. It is not possible to support both modes at the same
time.
1. If you don’t already have the Cyberlogic Control Panel open, then open the Windows
Start menu, go to Programs, and navigate to the sub-menu for the Cyberlogic OPC
product you have installed. From there, open the Configuration menu and select
Cyberlogic Control Panel.
3. In the radio selection in the right pane, select Enable 32-bit Support.
4. Click Apply.
The installation is now complete. For help with client connections, go to Connecting an
XML DA Client.
http://localhost/CybOPCXML/Cyberlogic.OPCServerDA.asmx
This is the exact form you would use if the client and server were on the same system.
Otherwise, you must replace localhost with the IP address, computer name or web
address of the server.