.NET Based OPC UA Client/Server SDK
SDK Overview


The UA SDK is a set of .NET libraries that supports you in writing OPC UA servers and clients in the .NET environment.

The UA SDK actually consists of two SDKs, a Server SDK and a Client SDK. Both use the same UA Base Library which provides the communication stack and common functionality used in servers and clients applications.

UA SDK Architecture Overview

SDK Version Support

Each version of the UA .NET SDK supports different Frameworks and Security Policies. This table shows the supported compatibility between them.

UA SDK Support Overview

* Frameworks for which SDK assemblies are provided, and regulary tested. However, because of backward compatibility within .NET Frameworks, the assemblies may be used with Frameworks not listed here. For example, a Framework 4.5 assembly can also be used with Framework 4.6, 4.7, or 4.8 applications.

** These Security Policies are deprecated by the OPC Foundation, hence disabled by default on the server-side. Because of backward compatibility they can be activated by ServerSettings AllowDepreciatedPolicies.

Due to backwards compatibility our .NET Framework 4.8 and both .NET Standard assemblies already offer compatibility with Microsofts .NET5 Framework. But we cannot provide any support for it at the moment. Use it at your own risk.

Server Getting Started

The Unified Automation .NET OPC UA SDK contains several examples on how to build an OPC UA server using the SDK. The corresponding Visual Studio Solutions are included as well and can serve as a basis for your own projects.

The lessons provided in Getting Started describe how to develop a full-featured OPC UA server step by step based on a simple building automation scenario. Lesson 1 starts with an empty OPC UA server, and commonly used features are added step by step in the following lessons. The Unified Automation UaModeler provides a convenient way of building the information model. This is shown by example in Lesson 2.

The Getting Started is using the SDK toolkit functionality for rapid application development. The Server SDK Overview gives an architecture overview and describes the SKD layer and the toolkit functionality

In addition to that, the source code for the Unified Automation .NET based OPC UA demo server is included in the SDK. It contains an example (LargeArrayNodeManager.cs) for implenting information integration without the toolkit functionality.

Client Getting Started

There are different levels of examples provided with the Client SDK to jump start your OPC UA client development.

The first example Basic Client provides initial sample code in a single source file for a simple data access client including connection establishment, read, write and data monitoring. This example is a good starting point to get familiar with the basic functionality of OPC UA.

The Getting Started application provides a rich set of sample code for the different services and features of OPC UA. The examples are designed in a way that they provide self-contained sample code for the different OPC UA services with the following features:

  • Fully functional dialogs to execute single OPC UA services
  • Self-contained sample code that can be copied from the sample code dialogs. Source code can be opened directly from dialogs
  • Detailed documentation for the sample code. Documentation can be opened directly from dialogs

The Full Client is an enhanced example showing several features of OPC UA in a generic user interface.