7.14 UA_MonitoredItemAddList

FB-Name UA_MonitoredItemAddList
This Function Block can be used to add handle of multiple nodes using a list of node handles.
VAR_INPUT
BExecuteBOOLOn rising edge monitored items will be added to a subscription.
BSubscriptionHdlDWORDSubscription handle.
BNodeHdlCountUINTNumber of valid elements in the array to add.
BNodeHdlsARRAY OF
DWORD

Array of Node handles.

Max length of array is to be defined by the vendor and shall be same length thanVariables array length. Shall be the same size as NodeHdlCount.

See Constants of Array Lengths (MAX_ELEMENTS_MONITORLIST)

BSyncModeUAMonitoringSyncMode

See UAMonitoringSyncMode


See chapter 4.2 Monitored Items for general concept of SyncModes

0 = UAMSync_Unknown
Default, this results into an error code – has to be set to one of the following options

1 = UAMS_ControllerSync

2 = UAMS_FwSync

BNodeAddInfosARRAY OF
UANodeAdditionalInfo

See UANodeAdditionalInfo. Specifies the attribute and IndexRange.

See Constants of Array Lengths (MAX_ELEMENTS_MONITORLIST)

This parameter is optional. If not existing, the UAAI_Value (13) will be taken from internal implementation.

BTimeoutTIMETime to response.
VAR_OUTPUT
BDoneBOOLFB has completed its task.
BBusyBOOLThe FB is not finished and new output values are to be expected.
BErrorBOOLSignals that an error has occurred within the FB.
BErrorIDDWORDError code.
BNodeErrorIDsARRAY OF
DWORD

Array of DWORD. Contains an error code for each element of the Variables array.

Length is vendor-specific (MAX_ELEMENTS_MONITORLIST). See Constants of Array Lengths. Shall be the same length than NodeHdlCount.

BMonitoredItemHdlsARRAY OF
DWORD

Array of monitored item handles.

Length is vendor-specific (MAX_ELEMENTS_MONITORLIST). See Constants of Array Lengths. Shall be the same length than NodeHdlCount.

VAR_IN_OUT
BVariablesARRAY OF
UAMonitoredVariables

See UAMonitoredVariables.

Length is vendor-specific (MAX_ELEMENTS_MONITORLIST). See Constants of Array Lengths. Shall be the same length as NodeHdlCount

BMonitoringParameterARRAY OF
UAMonitoringParameter

See UAMonitoringParameter

Length is vendor-specific (MAX_ELEMENTS_MONITORLIST). See Constants of Array Lengths. Shall be the same length as NodeHdlCount.

BValuesChangedARRAY OF
BOOL

Indicates that the values of the monitored item have been changed.

Length is vendor-specific (MAX_ELEMENTS_MONITORLIST). Shall be the same length as NodeHdlCount.
See Constants of Array Lengths

BMinLostValueCountARRAY OF
UINT
Count the minimum lost values if queue size is > 1 – see also UAMonitoredVariables.

Notes: VAR_IN_OUT: „Variables” as would provide best type save solution for users: The client firmware is able to map the UA memory layout to the controller layout. The firmware client can receive the type definition from the OPC UA Server.
Workaround would be to provide a byte array as “Variables” and the firmware client just provide the blob (UA memory layout – so called “raw data”) into that byte array.

A “Variable” could be the name of the variable so the internal firmware can get address, length, data type of variable.

UA_MonitoredItemAddList
BOOLExecuteDoneBOOL
DWORDSubscriptionHdlBusyBOOL
UINTNodeHdlCountErrorBOOL
ARRAY OF DWORDNodeHdlsErrorIDDWORD
UAMonitoringSyncModeSyncModeNodeErrorIDsARRAY OF DWORD
ARRAY OF
UANodeAdditionalInfo

NodeAddInfos

MonitoredItemHdls

ARRAY OF DWORD
TIMETimeout
ARRAY OF
UAMonitoredVariables

Variables

Variables
ARRAY OF
UAMonitoredVariables
ARRAY OF
UAMonitoringParameter
MonitoringParameterMonitoringParameterARRAY OF
UAMonitoringParameter
ARRAY OF BOOLValuesChangedValuesChangedARRAY OF BOOL
ARRAY OF UINTMinLostValueCountMinLostValueCountARRAY OF UINT