QuickOPC on .NET
Are you having difficulties incorporating OPC data into your .NET solution? Need to do an OPC.NET application quickly and in quality? If so, QuickOPC comes to the rescue. You can use the "original" .NET Framework, or you can switch to .NET 8+, and develop multi-platform projects, for Microsoft Windows, Linux and macOS.
QuickOPC is a set of .NET components that simplify the task of integrating OPC into applications. Reading a value from OPC Data Access or OPC Unified Architecture server, or writing a data value can be achieved in just one or two lines of code.
QuickOPC is a radically new approach to access OPC data. Traditionally, OPC in .NET required complicated code, no matter whether you used OPC custom or automation interfaces. OPC Server objects must be instantiated, OPC Group objects must be created and manipulated, OPC Items must be added and managed properly, and subscriptions must be established and maintained. Too many lines of error-prone .NET code must have been written to achieve a simple goal – reading or writing a value. QuickOPC saves you all that hassle.
The components can be used from various .NET languages and environments. The available examples show how the components can be used from C#, Visual Basic.NET, managed C++, and F#. Windows Forms, ASP.NET pages, Windows services, console applications, and WPF applications are all supported. For example. you can develop HMI-s, or OPC Loggers with QuickOPC. The development tool we have targeted primarily is Visual Studio. Both 32-bit and 64-bit applications can be created. If you like LINQPad, you can use it to quickly test out your code and ideas with QuickOPC.
If you are using a development tool that is not .NET-based, and supports COM Automation, check out QuickOPC in COM instead.
Useful links: Documentation / Examples / Knowledge Base
Key Features
- Tested for compliance with OPC protocol standards, and for interoperability.
- Integration with Visual Studio development environment.
- Internal messaging layer provides isolation between OPC communications and the custom client code, resulting in high resiliency.
- Automatically connects to and disconnects from OPC Servers.
- No limits to number of connections, subscriptions, or tags.
- Supports all flavors of OPC synchronous and asynchronous reads and writes internally, subscriptions, discovery, browsing, and property access.
- Wide range of developer productivity features: Intellisense, ReSharper annotations, serialization support, and many more.
- Browsing Dialogs: Ready-made set of rich user interface (UI) components for browsing the OPC world.
Simple QuickOPC Code Example in C#
The code below (in C# language) reads and displays an item value, using the QuickOPC component:
// Read item value and display it in a message box
MessageBox.Show(EasyDAClient.SharedInstance.ReadItemValue( "", "OPCLabs.KitServer.2", "Demo.Single").ToString());
The code below subscribes to changes of an item, and displays the value with each change:
// The callback is a lambda expression that displays the value
EasyDAClient.SharedInstance.SubscribeItem(
"", "OPCLabs.KitServer.2", "Demo.Single", 1000,
(_, args) => Console.WriteLine(args.Vtq.Value));
No other product can do this in such a clear and concise code, in a single statement! The programming is straightforward, and the developer can focus on getting the work done and not on fighting the intricacies of OPC protocols.
.NET 8+
QuickOPC works in the "original" .NET Framework, and in the new .NET 8+. This allows programs written with QuickOPC to run in different runtimes and on different operating systems; most importantly, not just on Microsoft Windows, but also on Linux and macOS, with the .NET 8+ runtime.
If you have previously developed with QuickOPC for .NET Framework and are now transitioning to .NET 8+, you may continue to use your existing code, as there are practically no coding differences between the two.There are, however, differences in other aspects, such as the supported functionality, tooling, installation, security, user interface, deployment, use of examples, etc.; more details.
When you target .NET 8+, OPC Unified Architecture and OPC XML-DA are directly supported on all platforms; COM/DCOM-based OPC "Classic" is supported on Windows.
You can use the "full" Visual Studio, .NET CLI Tools, JetBrains Rider, Visual Studio Code, or other tools to develop with QuickOPC for .NET 8+.
Footnote & required disclosure: Connectivity Software (QuickOPC, Excel Connector, OPC Wizard, etc.) is a suite of software development kits (SDKs) for development of automation software applications. Installing Connectivity Software or its parts or options does not change system settings.
