|
OPC
UA Overview
The
OPC Foundation announced the UA architecture vision in 2003 and formed the
UA working group in January 2004. The first parts of the specification were
released in June 2006.
The current UA specification consists of 11 parts. OPC Foundation members
can download
the specification from the OPC Foundation web site.
OPC UA
is much more complex than previous OPC specifications and is designed to:
- Use cross-platform
capable Web Services instead of DCOM
- Combine the OPC DA,
A&E, HDA functionality into a single set of services
- Model complex data
structures for collaboration with other standards organizations
- Be implementable on
different platforms, from embedded systems to enterprise systems
An extract
of the OPC
Unified Architecture book
is available as a free download. This PDF document explains and justifies
the complexity of the UA specification. It focuses on server development
and details that the complexity is mostly optional. This isn’t
necessarily true for client applications.
|
|
ExpressInterface OPC Xi
OPC Xi is the
newest technology added to the OPC Foundation technology portfolio
complementing OPC Unified Architecture (UA) and COM-based OPC Classic
technologies.
The OPC Xi interface is the result of collaboration among several OPC
vendor companies from the process industry to develop an easily integrated
and secure solution for a variety of plant communications. OPC Xi's primary
objective was to provide a .NET-based migration path from OPC Classic.
Additionally, OPC Xi defines a standard .NET WCF interface for newly
developed OPC servers.
Key features of
OPC Xi:
- Security
– secure communications including access through firewalls
- Simplicity
- make servers and clients easy to implement, configure and deploy
- Robustness
– reliable communications with error recovery
- Plug-and-Play
– automatic discovery of servers and their communications capabilities
- Backward compatibility - accessing OPC DA, AE and HDA servers using a
single .NET interface
- Protocol transparency – efficient client/server communications when both
the client and server are on the same platform or within the same LAN
and when the client is located on external networks including the
Internet (see Figure below)
|
OPC
UA Specification
The
UA specification is structured to be implementation independent and adaptable
to new technologies. While this has important advantages, it makes reading
harder. Several specification documents have to be consulted for complete
information.
- The Services part defines the UA core
services in an implementation independent way.
- The Mappings part describes how the UA core
services are mapped to the communications interface.
Currently two mappings are defined, Native (TCP/IP based) and Web
Services ( .NET3 based )
- The Access Types parts detail the data
structures passed to/from the services for
Data Access, Historical Access, Alarms and Conditions,
Programs.
- The Address Space Mode and Information
Model part describe the UA core.
- The Profiles part defines possible subsets
of the UA functionality
The current status of the UA
specification is:
|
Part
|
Description
|
Status
|
Version
|
Published
|
|
1
|
Overview
and Concepts
|
Released
|
1.01
|
2009-02-09
|
|
2
|
Security
Model
|
Released
|
1.01
|
2009-02-09
|
|
3
|
Address
Space Model
|
Released
|
1.01
|
2009-02-09
|
|
4
|
Services
RC
|
Released
|
1.01
|
2009-02-09
|
|
5
|
Information
Model
|
Released
|
1.01
|
2009-02-09
|
|
6
|
Mappings
|
Released
|
1.0
|
2009-02-09
|
|
7
|
Profiles
|
Released
|
1.0
|
2009-02-09
|
|
8
|
Data
Access
|
Released
|
1.01
|
2009-02-09
|
|
9
|
Alarms
|
Released
|
1.0
|
2010-03-09
|
|
10
|
Programs
|
Released
|
1.0
|
2009-01-29
|
|
11
|
Historical
Access
|
Released
|
1.0
|
2007-01-05
|
|
12
|
Discovery
|
Announced
|
|
|
|
13
|
Aggregates
|
Announced
|
|
|
|
The UA specification documents can be downloaded
from the OPC Foundation web site.
Only part 1 (Overview and Concepts) is available to the public. All other
parts are available only to OPC Foundation members and may be used only as
long as the user is an active OPC Foundation member.
OPC
UA SDK
The OPC Foundation OPC UA Software Development Kit
is available for OPC Foundation members.
The UA SDK V1.0 has been released 2009-07-31. This release of the SDK supports
the released versions of Parts 1 through 9 of the UA Specification.
The SDK version 1.1 and the Compliance Test Tool (CTT) is in beta testing stage.
The Accelerated Adoption work group was created in
May 2009 with the task to create additional profiles, samples and
documentation to make the development of UA server and client applications
simpler and quicker.
OPC
UA Basics
The
UA core implements a network database with nodes that describe items and item
attributes. The nodes can be linked in a complex manner, allowing all kinds
if information structures to be modeled. Network databases are difficult to
implement and therefore the more restricted relational databases are far more
widely used.
The OPC Foundation implemented a reference UA server and a SDK. Probably all
UA server products will base on this implementation. On this base the UA server development will probably
not be much more complex than the development of a DA, AE or HDA server based
on a server toolkit. The server developer can model the server according his
preferences and can ignore other UA features.
The UA client development/configuration
is significantly more demanding than it is for OPC DA clients. This is mainly
because UA server can be modeled in different ways. The server developer can
choose his favored structure and build the server accordingly. For client
applications to be universal, they must be able to handle all UA features
that different servers may use.
OPC UA Licensing
The
OPC Foundation license conditions for OPC UA are more stringent than they are
for the earlier OPC specifications. The UA specification documents are only
available to OPC Foundation members and the specification may not be copied
and distributed with products. Each user has to individually download the
specification from the OPC Foundation web site and may use it only as long as
an active OPC Foundation membership is uphold. For users that have to
maintain an application the yearly membership fees add up to significant
costs. A discussion of the license policy can be found at http://www.opcfoundation.org/forum/viewtopic.php?t=1812
Due to
the complexity of OPC UA most or possibly all vendor products will base on
the OPC Foundation UA SDK (software development kit). The current OPC Foundation
license agreement allows the distribution of OPC Foundation UA material
only to OPC Foundation members. SDK based UA products need to include OPC
material and can therefore only be distributed to OPC Foundation members. SDK
License changes are announced and will have to be made because it’s not
practicable to request every user of UA technology to be a member of the OPC
Foundation.
How the UA SDK is going to be maintained is still unclear. In October 2008
Kepware Technologies announced
that it partnered with the OPC Foundation for the management of the UA SDK.
The OPC Foundation has not commented this announcement.
OPC
UA Products
The OPC Foundation web site shows a long list of UA products, but don't get
exited too quickly. Most listed products are not yet available or are OPC
products that don't yet support UA. Actually it's still too early for UA
products. The compliance test tool and the corresponding SDK are in beta
testing state.
Most announced and available UA products are for embedded systems. This is
understandable because there is no other standard for these systems while for
Windows/.NET environments the DCOM based classic OPC solutions are widely
used, despite their deficiencies.
Advosol currently offers a free OPC Experimental UA
Server that bases on the OPC Foundation OPC UA SDK and the Advosol OPC DA
.NET Server Toolkit. Interested developers can experiment with UA without
having to be OPC Foundation member.
XML
DA Alternative
For applications that only need Data Access (OPC DA) functionality XML DA is
a viable alternative. Based on .NET3 XML DA has the same communication
security as UA and DCOM is not used, eliminating the frustrating DCOM issues.
Advosol offers XML DA components that
make the XML DA server/client development simple. Gateways to/from OPC DA are
also available.
All Advosol
XML DA products are provided in versions for .NET2 and .NET3 (WCF). The
secure and efficient WCF communication configurations can be used when client
and server are .NET3 based.
Express Interface (OPC Xi)
OPC Xi is designed as a .NET interface with the functionality of the classic
OPC DA, AE and HDA specifications. The communication bases on WCF (Windows
Communication Foundation) and can be configured for high performance or high security.
Xi eliminates the DCOM communication with its difficult configuration but
doesn’t add complexity.
Consider OPC Xi for applications that need neither multi-platform nor complex
data modeling features.
|