OPC
Dedicated to interoperability in automationHomeView Shopping Cart / CheckoutSite MapLogin
OPCFailoverSoftware Toolbox
About OPC ▼
News ▼
Events ▼
Downloads ▼
Products ▼
Support ▼
Links ▼
Search ▼
My Account ▼
 

OPC Unified Architecture

In January of 2004 the OPC Foundation tasked a working group to create a new architecture that would take OPC to the forefront of technology and provide an interoperability framework that would be viable for the next 10 years and beyond. The first parts of this new "Unified Architecture" were released in June, 2006.

Why a new Architecture?

Introductory Articles

In-depth Presentations

Specifications

Backward compatibility

Collaboration

Events

Specification release schedule

Code deliverables and release schedule

Why a new architecture?

The existing OPC COM based specifications have served the OPC Community well over the past 10 years, but as technology moves on so must our interoperability standards. Here are the factors that influenced the decision to create a new architecture:

Microsoft has deemphasized COM in favor of cross-platform capable Web Services and SOA (Service Oriented Architecture)
OPC Vendors want a single sent of services to expose the OPC data models (DA, A&E, HDA ...)
OPC Vendors want to implement OPC on non-Microsoft systems, including embedded devices
Other collaborating organizations need a reliable, efficient way to move higher level structured data

The Unified Architecture (OPC-UA) is described in a layered set of specifications broken into Parts. It is purposely described in abstract terms and in later parts married to existing technology on which software can be built.  This layering is on purpose and helps isolate changes in OPC-UA from changes in the technology used to implement it. The structure and depth of material to absorb in learning OPC-UA is harder than the OPC COM Specifications.  It is best to read the introductory articles and in-depth presentations before tackling the OPC-UA Specifications.

back to top

Introductory Articles

Here are the latest published articles related to OPC-UA:

Published OPC-UA Articles

back to top

In-depth Presentations

Here are downloadable presentations and videos related to OPC-UA:

Download OPC-UA related videos and PowerPoint presentations

back to top

Specifications

The following Parts comprise the OPC Unified Architecture Specification. In general they should be read in order.

Part 1 - Concepts
Part 2 - Security
Part 3 - Address Space
Part 4 - Services
Part 5 - Information Model
Part 6 - Mappings
Part 7 - Profiles
Part 8 - Data Access
Part 9 - Alarms and Conditions
Part 10 - Programs
Part 11 - Historical Access
Part 12 - Discovery

back to top

Backward Compatibility

To aid in a swift adoption by OPC client and server vendors, the code deliverables from the OPC Foundation include the following:

A client-side proxy used to connect an existing COM based OPC Client to an OPC-UA Server.

A server-side stub used to connect a new OPC-UA Client to any existing COM-based OPC Server.

back to top

Collaboration

The Unified Architecture is designed specifically to allow object and information models defined by others (vendors, end-users, other standards ...) to be exposed without alteration by OPC-UA Servers. Here are some of the other standards organizations OPC has identified as candidates for OPC-UA companion specifications that will describe how other data is exposed and rendered via OPC-UA:

EDDL in cooperation with Fieldbus Foundation, Hart and Profibus.
ISA S95 and S88
OAGiS
MIMOSA
IEC TC57 WG13

back to top

Events

To help jumpstart developers, architects and other visionaries with the OPC-UA technology, OPC hosted a DevCon in Munich, Germany October 10-12, 2006 , and one in Tokyo, Japan November 28, 2006 and one in the U.S. in June 2007.  Check for upcoming UA DevCons, workshops and plug-fests on the events page.

back to top

Specification release schedule

The following Parts of the Specification have been released:

Part 1 - Concepts
Part 2 - Security
Part 3 - Address Space
Part 4 - Services
Part 5 - Information Model
Part 8 - Data Access
Part 10 - Programs
Part 11 - Historical Access

The following parts of the Specification will be released in November 2008:

Part 6 - Mappings
Part 7 - Profiles

The following Parts of the Specification will be released in December 2008:

Part 9 - Alarms and Conditions
Part 12 - Discovery

back to top

Code deliverables and release schedule

In addition to the OPC-UA Specifications, the OPC Foundation and a group of member volunteers (UA Early Adopter Workng Group) are creating code based deliverables to aid in the creation of OPC-UA applications and to speed adoption. The features include the following:

XML/text Web Service
This combination of encoding and protocol allows OPC-UA communication using industry standard SOAP-over-HTTP Web Services that conform to the WS-SecureConversation specification.

UA Binary
The UA Binary encoder/decoder is used to serialize and de-serialize messages in an OPC-defined optimized binary format that greatly increases speed and efficiency compared to the XML/text encoding.

UA Binary Web Service
This combination of encoding and protocol attaches the UA message encoded in UA Binary to a SOAP message. In this case all of the security is handled within the UA binary message, allowing a very simple SOAP stack to be used (i.e. no dependency on WS-SecureConversation).

UA TCP
The UA TCP protocol used to transport UA Binary messages over TCP/IP.

UA Secure Conversation
The ability to secure UA TCP communications.

UA API
The UA API provides the high level language dependent implementation of the core OPC-UA services defined in Part 4.

Sample Client
A
UA GUI client suitable for testing and trouble shooting.

Sample Server
A UA Server with APIs to facilitate customization.

DA COM Wrapper
A UA Server that that connects to existing OPC COM DA 2.05a/3.0 Servers and provides a UA interface for them.

AE COM Wrapper
A UA Server that that connects to existing OPC COM AE Servers and provides a UA interface for them.

HDA COM Wrapper
A UA Server that that connects to existing OPC COM HDA Servers and provides a UA interface for them.

XML-DA Wrapper
A UA Server that that connects to existing OPC XML-DA Servers and provides a UA interface for them.

DA COM Proxy
An OPC DA COM Server that connects to and exposes a DA-appropriate subset of a UA Server.

AE COM Proxy
An OPC AE COM Server that connects to and exposes a AE-appropriate subset of a UA Server.

HDA COM Proxy
An OPC HDA COM Server that connects to and exposes a HDA-appropriate subset of a UA Server.

Query
Functionality in the Sample Server and Sample Client to support the Query Service Set defined in
Part 4.

Alarms & Conditions
Functionality in the Sample Server and Sample Client to support
Part 9 - Alarms and Conditions.

Programs
Functionality in the Sample Server and Sample Client to support
Part 10 - Programs.

Historical Access
Functionality in the Sample Server and Sample Client to support
Part 11 - Historical Access.

Data Access
Functionality in the Sample Server and Sample Client to support
Part 8 - Data Access.

 

Three separate code bases are being developed to provide UA capability on a wide variety of systems and environments:

ANSI C/C++
This code will be as portable as possible with specific requirements for embedded systems. The portability layer source code is provided for MS Windows. Linux and other environments can be adapted by editing the source code in a small portability layer.

JAVA
A portable JAVA implementation. Phase 1 will provide a JAVA API on top of the C/C++ stack.  Phase 2 will provide a pure JAVA implementation. (Environment requirements TBD).

Microsoft .NET
The Microsoft .NET platform code base will utilize .NET 3.0 SP1 and the Windows Communication Foundation (aka Indigo).

Feature/Platform Delivery Schedule for UA Core Deliverables. These deliverables will be available from OPC in production-tested binary form:

Core Feature ANSI C/C++ JAVA Microsoft .NET
XML/text Web Service    
UA Binary 2008-12
UA Binary Web Service (P) (P)
UA TCP 2008-12
UA Secure Conversation 2008-12
UA API 2008-12
DA COM Wrapper    
AE COM Wrapper     2008-12
HDA COM Wrapper     2008-11
DA COM Proxy    
AE COM Proxy     2008-12
HDA COM Proxy     2008-11
Discovery Server  

                Feature delivered.
                    (Additional testing will be necessary before deployment by end-users.)

YYYY-MM    Year and Month of expected feature-complete delivery to OPC Corporate Members.
                     (Additional testing will be necessary before deployment by end-users.)

(P)              Feature is planned but delivery not yet scheduled.


The following deliverables will be created first to validate the UA specifications and also to serve as sample code for UA developers.  This source code will be available to all OPC Corporate Members.

Validation/Sample Code Feature ANSI C/C++ JAVA Microsoft .NET
Sample Client   (*)
Sample Server   (*)
XML-DA Wrapper     (P)
Query     (P)
Alarms & Conditions     2008-12
Programs     (P)
Historical Access     (P)
Data Access    

YYYY-MM    Year and Month of expected feature-complete delivery to Early Adopter Program  Members.
 (These dates are subject to change based on the level of volunteer commitment by the Early Adopter Members.)

(P)              Feature is planned but delivery not yet scheduled.

(*)              A non-commercial JAVA Sample Client and Server are available from
                     VTT Technical Research Centre of Finland
.
                      Please email Matti.Paljakka_AT_vtt.fi.

 

back to top