Internal data points of the OPC UA client
_OPCUA
A data point _OPCUA<num> of this type is used for several configuration settings for each OPC UA client. <num> stands for the manager number of the started client. By default, 3 data points of this type already exist: _OPCUA1, _OPCUA2 and _OPCUA3.
Data point element | Type | Description |
---|---|---|
Config.AlarmPrioMapping | dyn_string |
Defines the mapping of OPC UA severities to WinCC OA alert classes. A mapping has the following format:
An example of such a mapping is:
I.e.:
Tip: For further information see Mapping of alarm data.
|
Config.Servers | dyn_string | Defines which servers are assigned to a client with the corresponding manager number. The appropriate OPC UA server data point must be inserted without the leading "_" character. If there is a periphery address for the server, the server data point is inserted automatically. |
Config.HistoryReadResponseDps | dyn_string | The response data points must be registered on this data point element in order to write historical data to them. See also _OPCUAHistoryReadResponse. |
Command.AddServer | string | Can be used for assigning an OPC UA server to a client dynamically (without using the server config entry and a resulting restart). Therefore, the OPC UA server data point must be inserted. The server can thus be added dynamically without creating a peripheral address. |
_OPCUAHistoryReadResponse
If a data point of this type is created and entered at _OPCUA.Config.HistoryReadResponseDps, data of historical requests can be mapped onto it. The elements of this type are described in the following table.
Data point element | Type | Description |
---|---|---|
RequestId | string | Shows the ReguestId used for triggering the history read request. This element can be used to associate the result of a request with the specific request. |
ReturnCode | int |
The return code for the triggered history read request. The following values are possible:
|
DpList | dyn_string | In case that a peripheral address wildcard was defined in the parameters, this DPE contains a list of the appropriate data point elements where the corresponding peripheral addresses are configured (only when using method 3). |
ResultCodes | dyn_int |
The result codes for the history read request. If a peripheral address wildcard was defined in the parameters then this DPE contains a list of result codes for the appropriate data point elements. The following values are possible:
|
NodeStatusCodes | dyn_bit32 | The OPC UA node status code from the history read request. If a peripheral address wildcard was defined in the parameters then this DPE will contain a list of OPC UA node status codes for the appropriate server nodes. |
DataType | string |
The data type of the variable for which a history read request was triggered. This DPE is only set if either method NodeId or BrowsePath was defined in the parameters. |
DataValues | dyn_string |
The historical values returned for the read request. This DPE is only set if either method NodeId or BrowsePath was defined in the parameters. |
SourceTimestamps | dyn_time |
The source timestamps in local time returned for the history read request. This DPE is only set if either method NodeId or BrowsePath was defined in the parameters. |
ServerTimestamps | dyn_time |
The server timestamps in local time returned for the history read request. This DPE is only set if either method NodeId or BrowsePath was defined in the parameters. |
ValueStatusCodes | dyn_bit32 |
The OPC UA value status codes returned for the history read request. This DPE is only set if either method NodeId or BrowsePath was defined in the parameters. |
_OPCUAServer
A data point of this type contains the configuration and status information of an OPC UA server to which the client connects to.
The connection and security settings will not be applied until the server has been restarted. This means that the connection is not automatically terminated and established with the new parameters.
The elements of this type are described in the following table.
Data point element | Type | Description | ||||||||||||||||||||||||||||||
Config.ConnInfo | string |
Specifies the server URL. This defines how the server can be reached. An example for the format is: opc.tcp://localhost:4841 |
||||||||||||||||||||||||||||||
Config.AccessInfo | string | Contains the user name for the access to the server. If the data point element is empty, the client logs in anonymously. | ||||||||||||||||||||||||||||||
Config.Flags | bit32 |
Each bit (0-based counting) allows additional settings for the OPC UA Client.
|
||||||||||||||||||||||||||||||
Config.Password | blob |
Contains the password for the access to the server. The password is displayed encoded. Remember: If the password on the server was changed, the
changes also have to be updated on the client in order to decode
the password correctly.
|
||||||||||||||||||||||||||||||
Config.Security.Policy | uint |
The following security policies are possible:
|
||||||||||||||||||||||||||||||
Config.Security.MessageMode | uint |
The following message concepts are possible:
|
||||||||||||||||||||||||||||||
Config.Security.Certificate | string |
Certificate which should be used by the client for connection establishment (example: myCertificate.der). If this field is empty, the client uses "WinCC_OA_UA_Client.der". |
||||||||||||||||||||||||||||||
Config.Active | bool | With this data point element the communication to the corresponding server can be deactivated (FALSE) and activated (TRUE). | ||||||||||||||||||||||||||||||
Config.ReconnectTimer | uint | Time interval in seconds the driver tries to establish a connection to the server, if no connection is available. | ||||||||||||||||||||||||||||||
Config.StatusMapping | dyn_string |
Specifies the mapping of the OPC UA status codes to WinCC OA user bits. The mapping is specified in a dyn_string. The dyn_string contains entries in the following form:
Whereas one user bit on the right side can be used multiple times: For example:
|
||||||||||||||||||||||||||||||
Config.StatusFilter | dyn_uint |
Allows defining OPC UA status filters for incoming data values. This means that values from the OPC UA server are filtered and discarded based on the UPC UA status. It is possible to specify several status filters. |
||||||||||||||||||||||||||||||
Config.Separator | string | Separator for the view of the display names. | ||||||||||||||||||||||||||||||
Config.Subscriptions | dyn_dpid |
A subscription is always uniquely assigned to a server. A server can have multiple subscriptions. In this internal data point element the corresponding subscriptions are stored in the format:
|
||||||||||||||||||||||||||||||
Config.HistoryReadTimestamps | uint |
Defines which timestamp is applied when using method 3 (writing historical data to _archive config of the appropriate data point element). The following values can be set:
|
||||||||||||||||||||||||||||||
State.ServerState | string | Displays the server status. The usual state is "Running" which means that everything is OK. Otherwise an error status is indicated. | ||||||||||||||||||||||||||||||
State.StartTime | time | Displays the startup time of the server.
Format: JJJJ.MM.TT HH:MM:SS:MMM
|
||||||||||||||||||||||||||||||
State.TimeoutError | int |
Contains information of timeout errors. Possible values:
|
||||||||||||||||||||||||||||||
State.TimeoutItems | string | Lists all items for which the operation fails and a timeout error occurs. | ||||||||||||||||||||||||||||||
State.VendorInfo | string | Displays the vendor information of the server. | ||||||||||||||||||||||||||||||
Command.GQ | uint |
Triggers a general query on the server. The specified value indicates whether values, alarms or both are queried:
|
||||||||||||||||||||||||||||||
Command.HistoryRead | dyn_string |
Historical read requests are triggered via this element. The following parameters must be specified.
Important: At least two of the parameters
startTime , endTime und
maxNumValuesPerNode must be set!Note:
There are the following special use cases:
|
||||||||||||||||||||||||||||||
Redu.Config.ConnInfo | string |
Specifies the server URL of the redundant server. This defines how to connect the OPC UA server. An example of the format is: opc.tcp://localhost:4841 |
||||||||||||||||||||||||||||||
Redu.Config.Active | bool | With this data point element the communication to the redundant server can be switched off (FALSE) and switched on (TRUE). | ||||||||||||||||||||||||||||||
Redu.Config.HistoryReadMode | uint |
Defines the behavior for historical requests in case of redundant OPC UA servers. The following values are possible:
|
||||||||||||||||||||||||||||||
Redu.Config.InputMode | uint |
Defines the input data source within a redundant server pair. The allowed values are:
If a server is explicitly selected than the client does not use values of the other server, even if the connection to the selected server fails. In that case the application has to switch manually to the other server. The option only affects input data. In any case, output values are written to both servers. |
||||||||||||||||||||||||||||||
Redu.State.ConnState | uint |
Indicates the connection status to the redundant server.
|
||||||||||||||||||||||||||||||
Redu.State.ServerState | string | Indicates the server status of the redundant server (Good or Bad). | ||||||||||||||||||||||||||||||
Redu.State.StartTime | time |
Indicates the start time of the redundant server. Format: JJJJ.MM.TT HH:MM:SS:MMM |
||||||||||||||||||||||||||||||
Redu.State.TimeoutError | int |
Contains information of timeout errors. Possible values:
|
||||||||||||||||||||||||||||||
Redu.State.TimeoutItems | string | Lists all items for which the operation fails and a timeout error occurs. | ||||||||||||||||||||||||||||||
Redu.State.VendorInfo | string | Indicates the vendor name of the redundant server. | ||||||||||||||||||||||||||||||
Browse.GetBranch | dyn_string | With the aid of this data point element browsing is triggered.
The following is saved:
|
||||||||||||||||||||||||||||||
Browse.GetAlarmTypes | dyn_string |
Alarm type browsing is triggered via this datapoint element. The dyn_string contains only the ID from the UI (see Browse.GetBranch). The function corresponds to Browse.GetBranchbut . ConditionType is always used as the start node, any number of levels down are used, and only nodes representing alarm types are returned. |
||||||||||||||||||||||||||||||
Browse.RequestId | string | The client writes to this datapoint element the ID from . Browse.GetBranch or Browse.GetAlarmTypes, to be able to tell the user which request is being answered if there are multiple concurrent users. | ||||||||||||||||||||||||||||||
Browse.DisplayNames | dyn_string |
View of the names up from the start node. The levels are separated with a separator that was defined in the server data point. For example:
|
||||||||||||||||||||||||||||||
Browse.BrowsePaths | dyn_string |
View of the whole browsing path in the defined notation beginning at the node /0:Objects:
Note: Special characters as / . < > : # ! & are disguised
by &.
|
||||||||||||||||||||||||||||||
Browse.NodeIds | dyn_string |
View of each NodeId per browsed node in the defined notation: ns=1;s=AGENT.Objects.pUInt32 |
||||||||||||||||||||||||||||||
Browse.NodeClasses | dyn_string |
View of each NodeClass per browsed node:
|
||||||||||||||||||||||||||||||
Browse.DataTypes | dyn_string | View of the data type. | ||||||||||||||||||||||||||||||
Browse.ValueRanks | dyn_string | View of the value rank. | ||||||||||||||||||||||||||||||
Browse.AccessLevel | dyn_bit32 |
A bit mask indicating whether the current value of the Value Attribute is readable and writeable as well as whether the history of the value is readable and writeable.
|
_OPCUASubscription
This data point type provides the configuration of subscriptions and the indication of their status. There are some subscription parameters, which can be configured but might be overwritten by the server. For these parameters there is a data point element for configuration (Requested) and one which displays the actual value (Revised*).
Data point element | Type | Default-Werte | Description |
---|---|---|---|
Config.RequestedLifetimeCount | uint | 100 | Number of publishing intervals until the subscription is deleted by the server, if no publish request has been received. |
Config.RequestedMaxKeepAliveCount | uint | 10 | When the publishing timer in the server has expired this number of times without data to be sent, the subscription sends a keep-alive Message to the Client. |
Config.RequestedPublishingInterval | uint | 500 | In these intervals in seconds the values are read from the server's queues by the client. The intervals are set in milliseconds. |
Config.MaxNotificationsPerPublish | uint | 0 |
This DPE can be used to specify a limit for notifications the server shall send as response to a Publish request. It can be used to reduce peaks of communication load, when buffered data are transmitted. The value 0 means that the client does not specify a limit and the server will use the maximum number of notifications per publish. The maximum values are server dependent, e.g. the WinCC OA OPC UA server has a maximum value of 65535 |
Config.PublishingEnabled | bool | FALSE | Activates (TRUE) and deactivates (FALSE) a subscription ((no) reaction on value changes). |
Config.Priority | uint | 0 |
This value indicates with which priority the notifications of this subscription are sent by the server. Value range: 0 - 255; whereby 0 means no special priority and 255 the highest priority. |
Config.SubscriptionType | uint | 1 |
Defines whether this is a subscription on :
|
Config.MonitoredItems.TimestampsToReturn | uint | 3 |
Indicates which timestamp of the node should be used. In WinCC OA the corresponding availability is defined by:
|
Config.MonitoredItems.QueueSize | uint | 1 | Number of value changes of the items, which will be stored until the next publish. |
Config.MonitoredItems.DiscardOldest | bool | TRUE | Defines whether the oldest elements (TRUE - default) or the youngest elements (FALSE) are discarded from the queue, if the queue overflows. |
Config.MonitoredItems.SamplingInterval | uint | 0 | Interval the server uses for querying the monitored items from the underlaying system in milliseconds. |
Config.MonitoredItems.DataChangeFilter.Trigger | uint | 1 |
Defines the trigger to which the filter applies:
|
Config.MonitoredItems.DataChangeFilter.DeadbandType | uint | 0 |
Defines the deadband type for value calculation:
|
Config.MonitoredItems.DataChangeFilter.DeadbandValue | uint | 0 | Value in whose range from the original value up the deadband is valid. |
Config.Alarm.Acknowledgment | dyn_string | - | Not used. |
Config.Alarm.AlarmType | string | - | OPC UA alarm type node ID. |
State.AssignedOPCUAServer | string | - | Name of the OPC UA server to which the subscription is assigned. |
State.SubscriptionId | uint | - |
Internal identification number for every subscription. This is unique for each server.
|
State.RevisedLifetimeCount | uint | - | Returned LifeTimeCount. |
State.RevisedMaxKeepAliveCount | uint | - |
Returned MaxKeepAliveCount.
|
State.RevisedPublishingInterval | uint | - |
Returned publishing interval in milliseconds.
|
Command.GQ | uint | 0 |
Trigger for the general query per subscription. This is triggered independent of the value. Since a subscription can be either for values or alarms, the value passed is irrelevant. |