C++ Based OPC UA Client/Server/PubSub SDK  1.8.3.628
OPC Introduction

This part of the documentation contains general information about the OPC Foundation, provides an introduction to the classic OPC specifications and gives a detailed introduction to OPC Unified Architecture.

This introduction is an extract from the book:
OPC Unified Architecture
Mahnke, Wolfgang, ABB Corporate Research
Leitner, Stefan-Helmut, ABB Corporate Research
Damm, Matthias, ascolab GmbH
2009, Approx. 310 p. 100 illus., Hardcover
ISBN: 978-3-540-68898-3
© Springer-Verlag Berlin Heidelberg 2009

OPC Foundation

The use of PC- and software-based automation systems in industrial automation rapidly increased since the early nineties. Especially, Windows-based PCs are used for visualization and control purposes. One of the major efforts for the development of standardized automation software in the past years was the access to automation data in devices where an uncountable number of different bus systems, protocols, and interfaces are used.

A similar problem for software applications did exist for the access to printers, where in old DOS days, every application needed to write its own printer drivers for all supported printers. Windows solved the printer driver problem by incorporating printer support into the operating system. This one printer driver interface served all applications that needed printer access. And these printer drivers are provided by the printer manufacturer and not by the application developers.

Since vendors of Human Machine Interface (HMI) and Supervisory Control and Data Acquisition (SCADA) software had similar problems, a task force initiated by the companies Fisher-Rosemount, Rockwell Software, Opto 22, Intellution, and Intuitive Technology was founded in 1995. The goal of the task force was to define a Plug&Play standard for device drivers providing a standardized access to automation data on Windows-based systems.

The result was the OPC Data Access specification released after short time in August 1996. The nonprofit organization that is maintaining this standard is the OPC Foundation. Nearly all vendors providing systems for industrial automation became member of the OPC Foundation. The OPC Foundation was able to define and adopt praxis relevant standards much quicker than other organizations. One of the reasons for this success was the reduction to main features and the restriction to the definition of APIs using the Microsoft Windows technologies Component Object Model (COM) and Distributed COM (DCOM). The focus on important features and the use of base Windows technologies allowed a quick adoption of the standard for the addressed use case.

As a result of the experience from product developments, multi-vendor demonstrations, and interoperability workshops, version two of the OPC Data Access specification was introduced in 1998. Based on this version, a large number of products implemented the standard. OPC Data Access version two is still the most important interface for OPC products.

SCADA and HMI systems, process management and Distributed Control Systems (DCS), PC-based control systems, and Manufacturing Execution Systems (MES) must support OPC interfaces today. OPC is the one—universally accepted—standard delivering the ability to exchange data between different industrial automation system in manufacturing and process industry.

After 12 years, the OPC Foundation has over 450 members including all relevant automation system suppliers around the world. The following figure shows the OPC Foundation member demography classified with membership classes and region. The membership class is based on sales number for corporate members and the classes for end user and non-voting members like universities or other organizations. The OPC Foundation is governed by a Board of Directors elected by the membership. The Board, in turn, appoints the Foundation’s Officers and the OPC Chief Architect. A Marketing Committee, a Technical Advisory Council, and various working groups have been established.

OPC foundation member demograpy broken down by membership classes (left) and regions (right)

The OPC Foundation has listed over 1,500 OPC-based products in its product catalog containing only products from OPC members. The total OPC market has over 2,500 vendors providing over 15,000 OPC-enabled products.

This great success requires verification mechanisms to make sure that all OPC products interoperate with each other and to ensure a certain level of quality. For this reason the OPC Compliance Program is, beside the development of new standards, the main focus of the OPC Foundation working groups.

The OPC Compliance Program defines two certification levels. The first level combines self certification and interoperability workshops. The OPC Foundation offers Compliance Test Tools for all relevant OPC standards. These tools are used for testing and the encrypted results are sent to the OPC Foundation. These test tools cover the functional tests on the interface level. Interoperability workshops are yearly events in Europe, North America, and Japan, where different vendors can test the interoperability of their OPC products against each other. Products passing self-certification can use the Self-Tested logo to indicate a basic level of OPC Compliance.

The second level is the product certification in independent Certification Test Labs. Accredited third party test labs are verifying OPC products with broader test coverage. In addition to the basic functional tests executed by the Compliance Test Tools, the test labs are running behavior tests, load and stress tests, interoperability tests as well as environment and usability tests. For products passing third party certification, the OPC Certified logo indicates a high level of quality combines self certification and interoperability workshops. The OPC Foundation and OPC Compliance.

End users are encouraged to buy only OPC Compliance tested products to reduce interoperability problems and to ensure reliability and performance of their OPC-based solution.

To continue the OPC introduction you can read Introduction to Classic OPC.

If you are not interested in the classic OPC interfaces you can continue with Motivation for OPC UA or Introduction to OPC UA.