|
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.
|
|
Express Interface (Xi / OPC .NET 3.0)
is the newest
technology added to the OPC Foundation technology portfolio complementing OPC
Unified Architecture (UA) and COM-based OPC Classic technologies.
OPC .NET 3.0 enables users of OPC Classic to leverage the WCF technology,
facilitating the transfer of data securely through firewalls.
As an enhancement to OPC Classic, OPC .NET 3.0 serves to bridge the gap
between Microsoft .NET and the world of OPC Classic.
The Express
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.
Key features of
OPC .NET 3.0 (WCF):
- 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
|
Draft
|
1.0.1
|
2009-09-30
|
|
8
|
Data
Access
|
Released
|
1.01
|
2009-02-09
|
|
9
|
Alarms
|
Released
|
1.0
|
2010-03-09
|
|
10
|
Programs
|
Draft
|
1.0.1
|
2009-09-30
|
|
11
|
Historical
Access
|
Release
Candidate
|
1.0.1
|
2010-10-01
|
|
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 (basically
DA functionality only). The V1.0 SDK is ‘Release’ state SDK until SDK V1.1 is
upgraded to ‘Release’ state.
The SDK V 1.1.320 Beta was released Sep-2-2010
The
Compliance Test Tool (CTT) V1.0
Release Candidate was released Sep-16-2010
The SDK V 1.1.324 Beta was released Nov-2-2010
The SDK V 1.1.331 Beta was released Aug-24-2011
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 upheld.
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.
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 an OPC UA Server
Toolkit that bases on the OPC
Foundation OPC UA SDK and the Advosol OPC DA .NET Server Toolkit. The same
plug-in .NET assembly can be used with the Advosol OPC DA, XML DA, Xi and UA
server toolkits.
For client developers Advosol offers the UA Option for OPCDA.NET.
Applications developed for classic OPC DA can access UA servers through the
same API.
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 (Xi / OPC .NET 3.0)
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 a complex data model like UA.
Consider Xi for applications that need neither multi-platform nor complex
data modeling features.
Advosol offers a comprehensive set of Xi
components including Xi converter servers, client SDKs and server
toolkits.
|