.NET OPC UA-Client
Entry-ID: 42014088, V1.2, 12/2017
Copyright Siemens AG 2017 All rights reserved
3 Basics
3.1 Basics on OPC
Overview
In recent years, the OPC Foundation (an interest group of well-known
manufacturers for the definition of standard interfaces) has defined a large number
of software interfaces to standardize the information flow from the process level to
the management level. According to the different requirements within an industrial
application, different OPC specifications have been developed in the past: Data
Access (DA), Alarm & Events (A&E), Historical Data Access (HDA) and Data
eXchange (DX). Access to process data is described in the DA specification, A&E
describes an interface for event-based information, including acknowledgement,
HDA describes functions for archived data and DX defines a lateral server to server
communication.
Based on the experience with these classic OPC interfaces, the OPC Foundation
defined a new platform, called OPC Unified Architecture (UA). The aim of this new
standard is the generic description and uniform access to all information which is to
be exchanged between systems or applications. This includes the functionality of
all previous OPC interfaces. Furthermore, it is to generate the possibility of natively
integrating the interface in the respective system, irrespective of which operating
system the system is operated on and irrespective of the programming language in
which the system was created.
This example discusses the OPC Unified Architecture interface. A detailed
documentation is available on the SIMATIC NET CD. For more information, please
go to www.opcfoundation.org.
What is OPC?
In the past, OPC was a collection of software interfaces for data exchange between
PC applications and process devices. These software interfaces have been defined
according to the rules of Microsoft COM (Component Object Model) and can
therefore be easily integrated into Microsoft operating systems. COM or DCOM
(Distributed COM) provides the functionality of inter process communication and
organizes the information exchange between applications, even across network
boundaries (DCOM). Using mechanisms of the Microsoft operating system, an
OPC client (COM client) can use it to exchange information with an OPC server
(COM server).
The OPC server provides process information of a device at its interface. The OPC
client connects itself with the OPC server and can access the offered data.
The use of COM or DCOM causes OPC servers and clients to run only on a
Windows PC or in the local network and that the communication to the respective
automation system has to be realized mainly via proprietary protocols. Additional
tunneling tools often have to be used for the network communication between
client and server in order to get through firewalls or to avoid the complicated
DCOM configuration. The interface can furthermore only be accessed natively with
C++ applications; .NET or JAVA applications can only gain access via a wrapper
layer. In real-life situations, these restrictions lead to additional communication and
software layers which increase the configuration workload and the complexity.
Due to the widespread use OPC, the standard is increasingly used for the general
connection of automation systems and no longer only for the original application as
driver interface in HMI and SCADA systems to access process information.