Next: OPC XML Data Access
Up: Existing Solutions for SOAP
Previous: Existing Solutions for SOAP
Contents
OPC - Object Linking and Embedding for Process Control
The OPC Foundation 25 concentrates on delivering standards for greater
interoperability between automation/control applications, field
system/devices, and business/office applications in the process
control industry.
Specifications from OPC do not cover implementation issues by
intention. This gives vendors the important option to implement OPC
standards by using their specific key technology. On the other hand
OPC standards guarantee interoperability between OPC compliant devices
by providing standardized interfaces and communication methods.
OPC standards cover many common data exchange situations observed in
industrial automation environments. Instead of providing one huge
standard, OPC designs specifications for particular communication
situations. Historically, OPC concentrated on vertical data exchange
and introduced a client/server architecture where enterprise level
clients could access data from plant floor devices through so-called
``OPC Data Access'' (OPC DA) servers. These servers aggregate data
from fieldbus nodes and present them to the client in an abstract
manner. A newer standard also addresses the communication between OPC
servers, called ``OPC Data Exchange'' (OPC DX). figure 17
depicts the client/server server/server communication abilities of OPC
compliant devices.
Figure 17:
Data flow between OPC servers
![\begin{figure}\centering
\includegraphics[scale=0.7]{graphics/opc-clientserver.eps}\end{figure}](img25.png) |
Historically, OPC used COM/DCOM as key technology, which forced users
of these standards to use Microsoft Windows-based
environments26. OPC now concentrates on SOAP Web Services technology and
has released two related standards.
OPC defines so-called interfaces which describe accessing data
by different protocols or programming languages as depicted in
figure 18:
- Custom Interface:
- This is the basic interface which is
directly based on COM/DCOM and is programmed with Microsoft Visual
C++. The OPC Custom Interface describes base concepts and
capabilities and provides a base for all other interfaces.
- Automation Interface:
- This interface enables accessing data
with Microsoft Visual Basic 5.0. As Visual Basic can be embedded in
various Microsoft applications, such as Excel or Access, this is an
easy way to read and write data from OPC servers and embed data into
office applications.
- SOAP Interface:
- This is the next step taken by OPC to
improve interoperability by providing an interface based on open
standards like XML, SOAP and WSDL. Moreover, Microsoft's .NET framework
relies on the SOAP Web Services technology and promotes it as the
successor of COM/DCOM.
Figure 18:
Available interfaces to OPC servers
![\begin{figure}\centering
\includegraphics[scale=0.7]{graphics/opc-interfaces.eps}\end{figure}](img26.png) |
OPC introduces three objects which establish hierarchical data
access (see also figure 19).
- 1. OPC Items:
- These Components can be seen as data sources and
provide the actual plant floor data in an abstracted way. Every Item
consists of the following data:
- Value:
- This object contains the actual data of a plant floor
device. It can be provided in various data formats, like strings,
integers or more complex formats like enumerations or arrays. All
available data formats and necessary conversion rules are specified by
the OPC standards.
- Quality:
- This data is modeled as a bit mask with predefined
options27 that are used to
express common states of the value from plant floor devices.
- Timestamp:
- Data transferred from fieldbus devices to an OPC
Client over a gateway OPC Server takes an unspecified amount of
time. Therefore a timestamp field is transported together with the
actual data to inform the client when the data was valid.
Associated to each item are so-called ``Item Properties'' that provide
various information and configuration options about the item, such as
its data type, the data range or its precision. The OPC standards
provide several common properties and further allow vendors to add
their own custom Item Properties.
- 2. OPC Groups:
- OPC Groups aggregate OPC Items and provide
clients a way to organize data.28
- 3. OPC Servers:
- This component is the top level object and
contains one or multiple OPC Groups. OPC Servers maintain information
about themselves, like status information and provide configuration
functions to OPC Clients. One Internet/fieldbus gateway may run
multiple OPC Servers. The definition and configuration of the server
address space29 is not specified and is left open. The address space might
be fixed, or dynamically assigned; it could be configured outside of
the OPC environment or configured at startup of the server.
Figure 19:
Available interfaces to OPC servers
![\begin{figure}\centering
\includegraphics[scale=0.7]{graphics/opc-objects.eps}\end{figure}](img27.png) |
OPC provides specifications for various common tasks in the industrial
automation. The following list gives an overview of significant OPC
standards:
- OPC Data Access Custom Interface Specification:
- This is a basic
standard that describes data access (DA) provided by OPC servers via
COM/DCOM. The current release of the standard is version 3.0 and
provides only limited compatibility to previous releases, such as
version 1.0 or 2.05a. OPC DA is the base for many other standards
that are designed as companion standards to this specification.
Further references can be found in [OPCDA].
- OPC Data Access Automation Interface Specification:
- This
standard is a complement to the OPC DA custom interface and
provides data access with Visual Basic 5.0 applications.
- OPC XML Data Access (XML-DA) Specification:
- XML-DA is also a
companion to the OPC DA custom interface and enables data access by
means of the SOAP Web Service technology. In depth specifications
can be found in [OPCXMLDA].
- OPC Complex Data Specification:
- The OPC DA standard
specifies the data transfer of simple data types, like integers,
strings or arrays. The OPC Complex Data Specification describes
accessing and representing complex data and is meant as a complement
to the OPC DA standard. The standard utilizes XML and XML-Schema
for defining complex data types.
- OPC Data Exchange (DX) Specification:
- The OPC DA standards
are designed and limited to vertical data exchange. As also
communication between OPC servers is required, OPC created the OPC DX
standard that describes horizontal data exchange between OPC
servers. OPC DX servers incorporate an OPC DA server and rely on
XML/SOAP technology.
- OPC Alarms and Events Custom Interface:
- This standard
specifies interfaces to alarm and event systems that are often needed
in industrial automation environments.
- OPC Historical Data Access Specification:
- This standard is only
loosely coupled with other standards and is designed for retrieving
historical data from dedicated servers by means of COM/DCOM
technology.
Subsections
Next: OPC XML Data Access
Up: Existing Solutions for SOAP
Previous: Existing Solutions for SOAP
Contents
Hermann Himmelbauer
2006-09-27