OPC UA - Get Variables efficient

Hy,

how can I efficient get the variables from OpcUa-Server for pairing them? → I don’t want to traverse the biiiiiig OpcHeader… :wink:

I know the folder of my desired variables:

image

Are there another possibilites as:

Please help… :slight_smile:

Thx & Regards
Feature

If you don’t already know the OPC UA Ids of the variables you want to pair you do need to traverse the tree structure provided by the Browse method.

Note that it uses lazy iteration, so if you don’t access the Children of some ITreeNode, those nodes never get loaded from the server, so your tree traversal strategy matters.

If you do know the OPC UA Node Ids, then your can create the variable id objects and create pairs using those. See the help page for IConnectivityCore for example code.

Hy @TSy ,

my you have a little snippet for the pairing for this?

How can I construct a “VisualComponents.Connectivity.Core.SimulationVariableInfo” for use it with “… .AddItem(VisualComponents.Connectivity.Core.SimulationVariableInfo vI, object iD);”

Thx & Regards
Feature

Similarly by either traversing the simulation tree structure provided by IConnectivityCore or by directly creating the variable info objects of correct type. If I recall, these are also shown in the code examples on the IConnectivityCore help page.

1 Like

Hy again,

have I access to the UnifiedAutomation-Namespace over VC?

image

Thx & Regards
Feature

You can just add a reference to the appropriate Unified Automation dll from the VC installation folder.
There is of course much more you can do directly with this library, and you can access the Connectivity’s server connections through IOpcUaServer (or something like that) interface.

However, at which point you should legally purchase your own developer license is a bit up to the interpretation of the license agreement:
https://www.unified-automation.com/License/SLA/latest/

The strict interpretation is that writing any code that uses the library directly would require a license for the developer. Including just creating those NodeId objects.

1 Like