OPC-UA Generic/Data
Most OPC Unified Architecture client applications need (just) this part of QuickOPC. It is an equivalent of OPC "Classic" Data Access, and its main features provide reading, writing, and subscriptions.
Supported OPC-UA Operations
With QuickOPC, you can perform following OPC Unified Architecture operations:- Discover (browse) OPC servers (applications) on the computer and on the network.
- Browse the address space of the OPC server.
- Read one or more values/items/node attributes.
- Write one or more values/items/node attributes.
- Subscribe to changes of a value/item/node attribute, and possibly later change the parameters of the subscription, or unsubscribe.
- Call a method or multiple methods.
Most developers use the imperative programming model to create their applications. You can also:
- Display ready-made browsing dialogs and use browsing controls with rich user interface.
- Use Live Binding to enrich visual controls by OPC data without writing a code.
- Use Live Mapping to create .NET objects that represent connected OPC entities.
- Use Reactive Programming for high-level abstraction and complex operations on streaming data.
If you need to match the client capabilities against requirements expressed in terms of OPC UA profiles, see OPC UA Profiles in the documentation for the full list of profiles supported. You can also consult lists of OPC UA Services and OPC UA Security Policies supported.
Useful links: Documentation / Examples / Knowledge Base
QuickOPC Example in Visual Basic (VB.NET)
The code below (in Visual Basic) reads and displays a monitored item value, using QuickOPC:
' Obtain value of a node and display it in a message box
MessageBox.Show(EasyUAClient.SharedInstance.ReadValue(
"opc.tcp://opcua.demo-this.com:51210/UA/SampleServer", "nsu=http://test.org/UA/Data/;i=10853"))
The code below subscribes to changes of a monitored item value, and displays the value with each change:
' The callback is a lambda expression that displays the value
EasyUAClient.SharedInstance.SubscribeDataChange(
"opc.tcp://opcua.demo-this.com:51210/UA/SampleServer", "nsu=http://test.org/UA/Data/;i=10853", 1000,
Sub (sender, args) Console.WriteLine(args.AttributeData.Value))
No other product can do this in such a clear and concise code, in a single statement!
Simple QuickOPC Example in C#
The code below (in C#) reads and displays a monitored item value, using QuickOPC:
// Obtain value of a node and display it in a message box
MessageBox.Show(EasyUAClient.SharedInstance.ReadValue(
"opc.tcp://opcua.demo-this.com:51210/UA/SampleServer",
"nsu=http://test.org/UA/Data/;i=10853").ToString());
The code below subscribes to changes of a monitored item value, and displays the value with each change:
// The callback is a lambda expression that displays the value
EasyUAClient.SharedInstance.SubscribeDataChange(
"opc.tcp://opcua.demo-this.com:51210/UA/SampleServer", "nsu=http://test.org/UA/Data/;i=10853", 1000,
(_, args) => Console.WriteLine(args.AttributeData.Value));
No other product can do this in such a clear and concise code, in a single statement!
Footnote & required disclosure: QuickOPC (including its Options) is a software development kit (SDK) for development of OPC clients and subscribers. Installing QuickOPC or its Options does not change system settings.