OPC UA Client and Server Development with C#, VB.NET and C++/CLI and support of OPC Classic
The OPC UA .NET SDK enables the development of OPC UA client and server applications according to OPC UA v1.03 and higher. The support of OPC Classic enables communication with OPC Classic Servers via OPC DA, OPC HDA and OPC AE. To implement a server, it is sufficient to define the data nodes (see below). The IP address and the transport protocol are defined with the default values "localhost:4840" and "opc.tcp". To establish a client connection, the server address together with the transport protocol scheme is sufficient (see below). To connect to an OPC Classic server, the ProgId and ClassId are also required. No membership in the OPC Foundation and no licence other than that for Traeger's SDK is required for development!
An OPC UA Server can be realised with just as few lines of code as an OPC UA Client. The OPC UA Server shown above provides a data node including the string value "Hello World!" The provision of the desired data nodes works without a multi-line "node setup". An OPC UA client which processes this data node is shown in the following example of an OPC UA client application.
Access to the respective data nodes works with the usual NodeId syntax (even after optional resolution via the Browse and Translate services). Any .NET language such as C#, VB.NET and C++/CLI can be used for programming. The interfaces themselves only differ in terms of the programming language used. For the connection to OPC Classic Server, the SDK must be used under Windows.
Only OPC UA Client and Server need to be developed? The OPC UA SDK is also available without OPC Classic: OPC UA .NET SDK
Do you want to equip a component, control system or plant with an OPC UA server? This can be done quickly and easily without programming with our OPC UA middleware: Codabix Industrial IoT
The data of several OPC (UA) servers should be merged, retrievable via REST API, stored in a database, forwarded to other devices or simply visualised? Take a look at our OPC UA Middleware: Codabix Industrial Edge
Still undecided? We will be glad to advise you free of charge and without obligation: Contact us now!
Our license options – as individual as your projects. Design your software development the way that suits you best. Whether subscription or lifetime – our license models offer you complete freedom, first-class support and continuous updates. Whether one-off or flexible – find the perfect solution for your vision. Find out more about our license models.
Controllers, components and entire plants
Scalar values, arrays and structured data types
Scalar values, arrays and structured data types
Events, alarms, conditions, methods and files
Events, alarms, conditions, methods and files
Location, namespaces, version, status and system time
Location, namespaces, version, status and system time
High-performance communication and consistent data
Constant connections through automatic reconstruction
Identifiers in OPC UA NodeId, BrowseName and BrowsePath format, also via LINQ to Nodes
1 to 8, 16, 32 and 64 bit data length - also as array and matrix
Byte, Int16, UInt16, Int32, UInt32, Int64 and UInt64 - also as array and matrix
Float (single) and Double - also as array and matrix
TimeSpan and DateTime (UTC)
Char to string - also via byte with own encoding
dynamic or own .NET types with implicit and explicit coding
C#, VB.NET and C++/CLI
.NET Framework 4.6+, .NET Standard 2.0+, .NET Core 3.1+, .NET 5.0+, .NET 6.0+ and .NET 8.0+
Microsoft's CLR, Mono, Xamarin, UWP and Unity
Windows, Linux, macOS, Android, iOS and Docker