Please ensure Javascript is enabled for purposes of website accessibility
Powered by Zoomin Software. For more details please contactZoomin

Edge HMI

Create a new OPC DA Client worksheet

  • Last UpdatedOct 29, 2026
  • 9 minute read

Create and configure an OPC DA Client worksheet to associate project tags with OPC server items.

Before you begin this task, you must have created at least one OPC DA server connection that the client worksheet can use. For more information, see Create a new OPC DA connection.

You should also be familiar with how to edit worksheets in the project development environment.

Tip: You can create multiple worksheets and then configure them to have different settings, so you do not need to make any single worksheet unnecessarily large or complicated.

To configure a new OPC DA Client worksheet:

  1. Do one of the following:

    • On the Insert tab of the ribbon, in the Communication group, click OPC Client, and then select OPC DA Client from the drop-down list; or

    • In the Comm tab of the Project Explorer, right-click the OPC DA folder, and then on the shortcut menu, click Insert.

    A new OPC DA Client worksheet is displayed.

    OPC XML/DA Client worksheet

  2. In the Description box, type a description of the worksheet.

    This is for documentation purposes only and does not affect the execution of the worksheet.

  3. In the Connection list, select the connection or redundancy group that you created earlier.

  4. In the Status box, type the name of a project tag (Integer type) that will receive connection status codes during project run time.

  5. In the Status Message box, type the name of a project tag (String type) that will receive the corresponding status messages.

  6. In the Publish Rate box, type the frequency (in milliseconds) at which the client will request updates from the server.

  7. In the Disable box, type a tag/expression.

    While this tag/expression evaluates as TRUE (non-zero), the worksheet will not be executed and it will not use the specified connection. If any other OPC DA Client worksheets share the same connection, however, the connection will remain open and active unless those worksheets are also disabled.

  8. In the Percent Deadband box, type a value between 0.0 and 100.0, as a percentage of the full engineering units scale. (The scale is calculated using the specified minimum and maximum values of the server item.)

    This tells the server to publish only changes in item values that are greater than the specified deadband. For example, if the minimum value is 1000, the maximum value is 5000, and the deadband is 0.1, only changes greater than 4 (that is, 0.1% of 4000) will be published by the server.

    If you do not specify a deadband, the default is 0.0, which means the server will publish all changes in item values.

    Percent Deadband only applies to server items that have the Engineering Units Type attribute (dwEUType) set to Analog (1). For more information about this attribute, see either the OPC DA specification or the documentation for your OPC server.

    If Ensure cache synchronization (in the advanced settings) is selected, Percent Deadband should not be used.

  9. In the Root node or view box, specify a server node that will serve as the root for all browse paths in the worksheet body.

    Specifying a root node makes it easier to find items and improves runtime performance.

  10. For each project tag that you want to associate with an OPC server item/node, complete a row in the worksheet body:

    1. In the Tag Name field, type the name of a project tag.

    2. In the Browse Path field, do one of the following: for DA, type <item name>; or for XML, type <item path>//<item name>. To browse the server's list of items, right-click in this field, and then on the shortcut menu, click Browse.

      Note: If you selected the Enable bit notation option in the advanced settings, you can select a specific bit of a server node value by appending the bit number to the item name (for example, <browse path>.<bit>). Please note that this is supported only for unsigned variables and 32-bit signed variables; if you try to do it with 16-bit or 8-bit signed variables, the most significant bit (MSB) will not work properly.

    3. In the Scan field, select either Always to have the row continuously scanned (that is, processed) during project run time or Screen to have the row scanned only when a project screen that uses the specified tag is open.

    4. In the Div field, type a number to be used for scaling during project run time. This is optional.

      When a value is read from the server, it is divided by this number. When a value is written to the server, it is multiplied by this number.

    5. In the Add field, type a number to be used for scaling during project run time. This is optional.

      When a value is read from the server, this number is added to it. When a value is written to the server, this number is subtracted from it.

    Both tag expansion and array distribution are enabled by default for all OPC DA Client worksheets. You can disable tag expansion for this worksheet by clearing the Enable Tag Expansion option in the advanced settings. You cannot disable array distribution.

    If your project was created with a previous version of this software and then upgraded to the latest version, the worksheet body might include an additional Array Index field. That field has been deprecated in favor of array distribution.

  11. When you are done, save and close the worksheet.

    The worksheet is saved in the OPC DA folder in the Project Explorer.

    In order for your OPC DA Client worksheet(s) to be scanned during project run time, the OPC DA Client Runtime task in your project must be started. As such, the first time you configure and save a worksheet, the task's startup mode is set to Automatic. This is done for your convenience, and it means that when you run your project, the task will be started and the worksheet(s) will be scanned. You can set the task's startup mode back to Manual, however, if you want more control over how your project runs. For more information, see Runtime Tasks.

The worksheet is continuously scanned during project run time, so that the configured project tags and server items are updated as needed. Also, the project tags that you specified for the Status and Status Message settings in the worksheet header will receive appropriate values.

Tip: As long as the client is communicating normally with the server, the read/write status codes and messages (as configured in the advanced settings) will provide more information about each operation.

In certain situations, if the worksheet does not behave as expected during project run time โ€” and especially if you see OPC communication errors in the runtime log โ€” you might need to adjust the worksheet's advanced settings: in the worksheet header, click Advanced, and then in the Advanced dialog box, review and configure the settings.

Advanced settings for the OPC XML/DA Client worksheet

Read actions

Advanced settings that control how values are read from the OPC UA server.

Enable subscription

While this value is TRUE (non-zero), the client will subscribe to the server nodes so that it can receive notifications when the node values change.

This setting has a default value of 1, which indicates it is always enabled. If it is disabled, or if you type a tag/expression that will cause it to be disabled during project run time, you might need to use read triggers instead (see below).

Maximum group size

The maximum number of server nodes that may be read in a single read operation.

For example, if you have 1000 items/rows configured in the worksheet and Maximum group size is set to 100, 10 read operations will be performed when a read is triggered.

Synchronous read trigger

When the value of this tag/expression changes, the client reads all of the node values from the server. The read operation is performed synchronously, which means all other client operations are blocked until the read operation is finished. When the read operation is finished, the client increments the tag configured in Read count.

Asynchronous read trigger

The same as Synchronous read trigger except that the read operation is performed asynchronously, which means that other client operations may continue while the read operation is being performed.

Read count

The name of a project tag (Integer type) that will receive a count of the number of read operations performed since the project was run.

Status

The name of a project tag (Integer type) that will receive a status code for the last read operation performed by a trigger:

Status Code

Description

0

Bad

1

Good

Status message

The name of a project tag (String type) that will receive a status message for the last read operation performed by a trigger. For more information, see List of read/write status messages for OPC DA.

Maximum aging

The maximum age (in milliseconds) of values that will be accepted from the server's cache. If a value is older than this, the server will be forced to get the latest value from the field device.

Sampling rate

When this option is selected, you can change the rate (in milliseconds) at which the OPC server reads from field devices. By default, the sampling rate is half the publishing rate.

Queue size

This is the requested size of the OPC UA specification MonitoredItem queue. The default value is 1, which returns the minimum queue size the OPC UA Server requires for Event Notifications as revisedQueueSize for data monitored items. A value of 0 returns the default queue size for Event Notifications as revisedQueueSize. Other integer values are possible; for more information, see the OPC Foundation documentation (https://reference.opcfoundation.org/).

Write actions

Advanced settings that control how values are written to the OPC UA server.

Enable write on tag change

While this value is TRUE (non-zero), an asynchronous write operation will be performed automatically whenever the value of a project tag changes. All tag changes that occurred since the last scan of the worksheet will be written in a single write operation, or in multiple write operations if the number of tag changes exceeds the maximum group size.

This setting has a default value of 1, which indicates it is always enabled. If it is disabled, or if you type a tag/expression that will cause it to be disabled during project run time, you might need to use write triggers instead (see below).

Maximum group size

The maximum number of tag changes that may be written in a single write operation.

For example, if you have 1000 items/rows configured in the worksheet and Maximum group size is set to 100, 10 write operations will be performed during each scan of the worksheet.

Synchronous write trigger

When the value of this tag/expression changes, the client writes all of the tag values to the server. The write operation is performed synchronously, which means all other client operations are blocked until the write operation is finished. When the write operation is finished, the client increments the tag configured in Write count.

Asynchronous write trigger

The same as Synchronous write trigger except that the write operation is performed asynchronously, which means that other client operations may continue while the write operation is being performed.

Write count

The name of a project tag (Integer type) that will receive a count of the number of write operations performed since the project was run.

Status

The name of a project tag (Integer type) that will receive a status code for the last write operation performed by a trigger:

Status Code

Description

0

Bad

1

Good

Status message

The name of a project tag (String type) that will receive a status message for the last write operation performed by a trigger. For more information, see List of read/write status messages for OPC DA.

Other

Other settings that control how this worksheet communicates with the OPC UA server.

Reload trigger

The name of a project tag (Boolean, Integer, or Real type) that can be used as a trigger. When the value of this tag changes, the worksheet is reloaded. String expressions configured in the body of the worksheet are reevaluated only when the worksheet is reloaded. After the worksheet is reloaded, the value of this tag will be reset to 0.

Read upon connection

When this option is selected, the worksheet will read the current values of all configured items immediately after the client connects to the server, regardless of any other settings that control read actions.

Ensure cache synchronization

When this option is selected, the client will wait after each write operation for confirmation from the server that the node values actually changed. If the client does not receive confirmation, it will restore the previous tag values.

Enable bit notation

When this option is selected, bit notation is allowed in the Browse Path column of the worksheet body.

Enable Tag Expansion

When this option is selected, tag expansion is enabled for this worksheet. You can disable it for this worksheet without affecting any other OPC client worksheets, and you may choose to do so if you want more control over how OPC server items are associated with your project tags

Note: This software does not normally use the Triggering Mode that is defined the OPC standard. Instead, it allows any change in any tag/expression to be used as a trigger. If you want to use Triggering Mode, configure one worksheet to read the trigger values, and then configure another worksheet that specifies the read values as triggers.

Related Links