OPC UA Connections
OPC Connection Statusβ
The OPC Connections page displays all currently configured OPC (both UA and DA) connections, as well as their status. If any are faulted, you can click the red faulted status to get an error message popup with a full description of the error.
The main OPC Connections page displays the following information for all current OPC connections
Attributes | Description |
---|---|
Name | OPC server name. |
Type | OPC server type - UA or DA |
Description | A short description of the OPC UA connection. |
Uptime | Total time OPC server is connected. |
Enabled | True or false value whether the device connection is enabled. |
Status | Current status of OPC server. |
From this list of connections, you can expand the three dots menu for any connection and select the View Details option to open the Connection Details panel. This displays diagnostic information for the connected OPC UA server, split between a Server and Client tab. The Server Diagnostics tab shows server diagnostics, while the Client Diagnostics tab shows client connection subscription diagnostics.
Serverβ
By default, server diagnostics are set to off since they can generate a considerable amount of network overhead and impact performance. To turn on server diagnostics, click Enable Server Diagnostics. Not all OPC UA servers support server diagnostics.
Clientβ
Clicking the Client Diagnostics tab brings up the subscription information for that particular server. It will list out all of the subscriptions to that server with the publishing rates, as well as the number of items within that subscription.
Attributes | Description |
---|---|
Filter | Search criteria to filter for specific subscriptions. |
View | Change the number of subscriptions displayed on each page. |
Refresh | Refreshes subscription data. |
Name | Displays the subscription name. |
Rate | The rate defined in the Tag Group, used as the requested sampling interval for monitored Items belonging to the corresponding subscription. |
Request Publishing Interval | The rate a subscription will report accumulated change notifications at. The interval is derived from Rate, unless explicitly defined. |
Revised Publishing Interval | The server's revised rate for accumulated change notifications. |
Tag Count | The number of Tags currently subscribed to that Tag Group. |
Nodesβ
Clicking the dropdown arrow for any of the subscriptions will open the list of subscribed OPC items.
Attributes | Description |
---|---|
Node ID | The OPC item path. |
Requested Sampling Interval | The rate the underlying tag/node will be polled at. |
Revised Sampling Interval | The revised rate at which the underlying tag/node will be polled at. |
Requested Queue Size | Determines how many data points can be stored and transferred to the client once the sampling rate elapses when the sampling rate is slower that the publishing rate. |
Revised Queue Size | The revised amount of data points that can be stored and transferred to the client once the sampling rate elapses when the sampling rate is slower that the publishing rate. |
Status Code | Status of the node. |
Configuring an OPC Client Connectionβ
An OPC UA connection is used to communicate with an OPC UA compliant server, such as the one the OPC UA Module provides.
The following steps walk through connecting Ignition (as an OPC UA client) to a OPC UA server.
On the Connections tab of the Gateway Webpage, go to OPC > Connections. The OPC Connections page is displayed.
Click on Create OPC Connection +. A popup wizard will appear.
Select OPC UA Connection from the list and click Next. The Server Discovery page appears.
Enter an OPC UA endpoint URL for the OPC UA server Ignition should connect to. The format should be as follows:
opc.tcp://IpAddress:Port
Alternatively, you can use a host name instead of an IP address:
opc.tcp://myServer:12345
noteUsing the Skip to Advanced Configuration link on the bottom right of the popup will allow you to manually configure connection settings. This is useful in cases where a server does not allow anonymous endpoint access, but provides separate discovery endpoints.
Click Next.
Choose a server, then click Next.
Choose an endpoint, then click Next.
A summary of your selections thus far will be displayed. Once you confirm your settings, click Next.
A Manage Certificate window will open if you havenβt previously trusted a certificate. If the certificate that the Endpoint sends you to is already in Ignitionβs trust store, this step is skipped. Trust the Certificate and click Next.
If you entered a discovery URL in step 4, you also have an option to enter another URL if the host is unreachable.
Select a Security Policy and Message Security configuration to use when connecting to the endpoint, then click Finish. The policies that appear here are determined by the server.
On the New OPC UA Connection Settings page, give the connection a name. Some OPC UA servers may require a username and password, but this is not always the case. Check with the OPC UA server's documentation for more details. Credentials for Ignition's OPC UA server can be found on the Ignition's OPC UA Server page.
Once credentials have been entered, click the Create New OPC Connection button.
Ignition is now connected to the OPC UA server.
OPC UA Client Connection Settingsβ
The following tables describe all the available properties.
Mainβ
Property | Description |
---|---|
Description | Short description of this connection. |
Enabled | Disable the connection to the OPC server. |
Read Only | Puts the connection into read-only mode. All writes sent to this server will fail. |
Authenticationβ
Property | Description |
---|---|
Username | A username the connection will use when authenticating with the UA server. |
Password | The password to use when authenticating with the UA server. You can select between None, Embedded, or Referenced. |
Keep Aliveβ
Property | Description |
---|---|
Keep-Alive Failures Allowed | The allowed number of consecutive failures before disconnecting. A zero or negative value will not cause a disconnect. Default is 1. |
Keep-Alive Interval | The interval between keep-alive requests, in milliseconds. Default is 15,000. |
Keep-Alive Timeout | The maximum duration to wait for a response to a keep-alive request, in milliseconds. Default is 10,000 |
Advancedβ
Property | Description |
---|---|
Host Override | When specified, if the endpoint address returned by the OPC server has a different IP address or hostname than the discovered endpoint, the overridden value will be used. Expects just an IP address or hostname, for example: 192.168.1.10 |
Connect Timeout | The timeout, in milliseconds, when opening a socket connection to a remote host. Default is 5,000. |
Acknowledge Timeout | The timeout, in milliseconds, to wait for an Acknowledge message in response to the client's Hello message. Default is 5,000. |
Request Timeout | Maximum amount of time, in milliseconds, to wait for the response to a request. Default is 60,000. |
Session Timeout | Requested session timeout value, in milliseconds. Default is 120,000. |
Max Per Operation | Specify the maximum number of nodes to read, write, subscribe, or unsubscribe to in any given UA server request. Default is 8,192. |
Max References Per Node | Configures the number of references per node. A "node" in this case is any item inside of a UA server, so items like tags and folders would qualify as a node, while references simply means a reference to another node. This setting is useful in situations where the address space is completely flat, so a large number of adjacent nodes could potentially run into a maximum message size. In these cases decreasing the value of this property can be useful. However, most systems will not need to change this setting. Defaults to 8,192 references. |
Max Pending Public Requests | The number of concurrent Publish Requests allowed to be pending at any given time. Default is 2. |
Max Notifications Per Publish | The maximum number of notifications per publish. Default is 65,535. |
Max Message Size | The maximum allowable size of an OPC UA application layer message. Default is 33,554,432. |
Max Array Length | The maximum allowable size for arrays. Default is 2,147,483,647. |
Max String Length | The maximum allowable size for strings. Default is 2,147,483,647. |
Deprecated Data Type Dictionary Support | When enabled, the deprecated DataType Dictionary mechanism will be used to decide custom DataTypes, instead of the DataTypeDefinition attribute. |
Browser Origin | The Node that browsing should originate from. Options are OBJECTS_FOLDER or ROOT_FOLDER. Most OPC UA Servers use OBJECTS_FOLDER, but some non-standard servers may require ROOT_FOLDER to browse correctly. Ignition's OPC UA Servers uses OBJECTS_FOLDER. |
Failoverβ
Property | Description |
---|---|
Failover Enabled | Enable failover on the connection, allowing the UA client to switch to a backup server in the event the primary server is unavailable. |
Failover Threshold | The number of retry attempts before the failover connection is used. Default is 3. |
Failover Discovery URL | The discovery URL for the backup server's OPC UA server. Expects the following format: opc.tcp://hostname:port |
Failover Endpoint URL | The endpoint of the failover server. Example: opc.tcp://192.168.1.0:62541 |
Failover Host Override | When specified, if the endpoint address returned by the failover OPC server has a different IP address or hostname than the discovered endpoint, the overridden value will be used. Expects just an IP address or hostname. Example: 192.168.1.10 |
Securityβ
Property | Description |
---|---|
Certificate Validation Enabled | Enables validation of server certificates. This is required by the OPC UA specification, but it may be disabled for troubleshooting or temporarily connecting to servers with invalid or untrusted certificates. Default is true. Caution: Disabling certificate validation compromises the security of the connection. |
Keystore Alias | The alias of the certificate and private key stored in the client KeyStore. |
Password | The password to use when authenticating with the UA server. You can select between None, Embedded, or Referenced. |
Failover Versus Backup Propertiesβ
The Failover properties should be used when a single Ignition Gateway needs to connect to a pair of redundant OPC UA servers. The failover OPC UA server will be used in the event the primary OPC server goes down. To enable failover, set the Failover Enabled property to true, and specify the Failover Discovery URL, Failover Endpoint URL, and Failover Host Override. The Failover Threshold can be adjusted if desired.
Failover events are "sticky." That means once control has moved to a backup OPC UA server, it stays there until that server fails.