OPC-DA Server

The OPC-DA Server tab is used to configure the OPC-DA Server feature of a node. This feature enables the node to act as an OPC-DA Server, exposing devices defined within the node to external OPC-DA Clients. The variables contained in the devices will be exposed to OPC-DA Clients as OPC Tags.

The OPC-DA Server will ensure that the data types that are used in the native device drivers are mapped to the corresponding OPC data types. The read and write access defined for the device variables will be assigned appropriately to the Access Rights property for each OPC tag.

For information on the different device types and the device drivers that are supported, see Device types. Any of the devices defined on the node can have their variables exposed as OPC Tags. This includes logical devices, such as Global Variables devices and Property File Reader devices, and physical devices such as the Mitsubishi, Modbus, Omron, Rockwell and Siemens devices.

This feature is available for Enterprise Gateway for Windows nodes only. The OPC-DA Server is compliant with the OLE for Process Control (OPC)® Data Access (DA) Custom Interface Standard 3.0 and 2.05 Specifications.

Installing the OPC-DA Server

The task of configuring the OPC-DA Server fits into the overall process as follows:

  1. Installing your OPC-DA Client software.
    An OPC-DA Client will be used to communicate with the OPC-DA Server. This client must be installed on the same node that is running the OPC DA-Server. The detailed installation of your OPC-DA Client software is beyond the scope of this documentation. Refer to the documentation for your OPC-DA Client.
  2. Installing the product software and Workbench.
    Refer to the appropriate Installing product software section for installation information.
  3. Ensure the node has the OPC DA Server package installed and the required license to enable the OPC DA Server functions.
    • For information on how to add the OPC DA Server package, refer to System Administration > Packages.
    • For information on how to install a license, refer to System Administration > Licenses.

Once the OPC-DA Server package and its associated license has been installed and the system has re-started, an OPC-DA Server tab will be available on the Administration panel.

Configuring the OPC-DA Server

The following parameters are shown on the OPC-DA Server tab:

Parameter Description
Status The Server status will be either Started or Stopped.
Polling Rate (seconds) The rate at which OPC-DA Clients will be allowed to poll the OPC-DA Server for data values.
Number of Active Tags Displays a count of the number of tags the server has put into an active state.
Tags in an active state can be read from and written to by OPC-DA Clients.
The OPC-DA Server will automatically activate a group of tags when it is started. OPC-DA Clients will activate additional tags as they are read from or written to.
Maximum Number of Active Tags The maximum number of tags that the OPC-DA Server will allow to become active for the node.
The default value is 5000 tags, with 60,000 tags being the maximum number of tags that can be active at any one time.
Visible Devices: Available The list of all devices defined on the node. The icon preceding the device name indicates the current state of the device. The green check mark icon indicates the device is currently in a Started state. The device must be in a Started state for its variables to be available to OPC-DA Clients.
Visible Devices: Selected The list of devices that will be exposed to OPC-DA Clients.
View Filter Enter text in the Name field to filter the Available devices. Additionally it is possible to select the check boxes Started and Stopped/Disabled to further filter your results.

The arrow buttons between the Visible Devices: Available pane and the Visible Devices: Selected pane are used to move a device between the two panes. Edits to the configuration of the OPC-DA Server are allowed only when the OPC-DA Server's status is Stopped.

The buttons at the bottom of the panel allow the user to Start and Stop the server. The Save button will be disabled when the status of the OPC-DA Server is Started. This prohibits configuration changes to the server while it is running.

OPC-DA Server Performance Considerations

The OPC-DA Server has a limit of 60,000 tags that can be in an active state. A tag in an active state can be read from and written to, as long as its access state allows those actions. Simply browsing through the tag tree does not automatically make a tag active. Typically OPC-DA Clients have an option to move tags into a subscription group, which would be the manner in which a tag becomes active within the OPC-DA Server.

The Polling Rate parameter can be used to improve server performance in situations where the quality of the values being read is bad. This usually is caused by clients that are polling for many variables at a fast rate. Increasing the polling rate, to a larger value, will allow the server to service the read requests for all of the requested tags in this situation.

OPC-DA Clients will appear to hang if they are attempting to connect to the OPC-DA Server while it is in a Stopped state.
Selecting the Start button on the OPC-DA Server panel will move the server into a Started state, allowing the OPC-DA Clients to connect to the server.

Individual devices can be stopped without having to stop the OPC-DA Server. In these situations OPC-DA Clients browsing the server will not see the OPC tags associated with stopped devices. Any client that is actively reading tags associated with a device that is then stopped, will see the quality of the tags read become bad. Tag reads will resume once the device in this situation is re-started.

Individual tags within a device may not be displayable by an OPC-DA Client if the tag name contains a character that is not valid under the OPC Specification. An example of this is the '/' character. The use of this character in a tag name is not supported under the OPC Specification, even though it may be valid under the naming conventions for a device being exposed by the OPC-DA Server. Variables that contain characters that do not conform to the OPC naming conventions may not be displayed by OPC-DA Clients.

If you are using the OPC-DA Server and subsequently want to run the OPC-DA Client on the same node, you may encounter conflicts that cause the OPC-DA Server to no longer accept connections. This behavior has been seen on one of the deviceWISE Windows based platforms. If this situation is encountered you will have to run the components on separate nodes.

OPC-DA Server Trouble Shooting

The OPC DA Server is not seen by OPC DA Clients

The OPC DA Server is identified by most OPC DA Clients as the deviceWISE OPC-DA Server or as ILSTechnology.deviceWISE.DA.1. If your OPC DA Client does not display any of these options when browsing for a server check to see if the "OpcEnum.exe" process is running. If it isn't, you may need to download and install the OPC Core Components software found on the http://www.opcfoundation.org site.

Referencing integer bit items in the OPC DA Server

Many of the devices that can be exposed by the OPC DA Server support referencing individual bits within a one-byte, two-byte, four-byte, or eight-bye integer. Care must be used when referencing individual bits as each bit referenced will require its own read / write request against the physical device where the integer resides. As an example, assume that each of the 32 bits associated with a four-byte (DINT) variable on a Rockwell ControlLogix contains a unique alarm instance that you would like to expose on the OPC DA Server. The first bit of the integer represents one type of alarm, the second bit of the integer a different alarm state, and so on. Reading these bits individually requires 32 separate read requests made to the Rockwell ControlLogix PLC, which may require multiple trips across the network. The variable being read in each of the 32 reads is the same four-byte variable, the only difference is the bit will be extracted once the four-byte variable is transfered from the Rockwell ControlLogix. A more efficient manner to expose these values would be as individual items in a Global Variables device. The items in this device can be given descriptive names that uniquely identify each alarm. This device would be exposed to the OPC DA Clients by the OPC DA Server. A Scheduled Trigger can then be developed to read the four-byte variable periodically. The value read can be separated into the individual elements of the Global Variables device using the Decode Binary Buffer trigger action. A second trigger can be defined using a Variable Group to write the data back to the Rockwell four-byte variable when any of the alarm bits exposed in the Global Variables device is changed.

Rockwell UDT tags are not being displayed by my OPC DA Client when I connect to the OPC DA Server

The OPC DA Server will enumerate all of the tags off the root element of the device it is exposing to the OPC DA Clients when it is started. This may not be the full set of tags that are available on the device, which is the case with the Rockwell UDTs. Because each OPC DA Client is unique, these tags may not initially be shown by some clients. If the tags you need are not initially visiable be aware that all OPC DA Clients allow you to add tags by browsing into the full tag tree and selecting the tags that you need to monitor. In the image below, the OPC Client does not show the tags for the Rockwell UDT named AUDT04 in the left hand panel of tags that were queried when it connected to the OPC DA Server. The client provides the ability to walk the entire tag tree, allowing you to add the tags associated with this UDT, as well as tags in nested UDT members.