首页    期刊浏览 2025年08月16日 星期六
登录注册

文章基本信息

  • 标题:Design aspects of the OPC unified architecture.
  • 作者:Stopper, Markus ; Katalinic, Branko
  • 期刊名称:Annals of DAAAM & Proceedings
  • 印刷版ISSN:1726-9679
  • 出版年度:2008
  • 期号:January
  • 语种:English
  • 出版社:DAAAM International Vienna
  • 摘要:The OPC Foundation is approaching completion of the first stage of its new Unified Architecture (UA). The new Unified Architecture is meant to unify all of the existing OPC technology (OPCOLE, 2003). Importantly it means open standards and no longer just the proprietary Microsoft standard (OPCDCOM, 2000). OPC vendors are already working through the design and implementation phase of their OPC UA technology products. After three years of specification work and a further year of prototyping the first version of Unified Architecture is now being released considering the following characteristics for the communication stack (OPCUA, 2008):

Design aspects of the OPC unified architecture.


Stopper, Markus ; Katalinic, Branko


1. INTRODUCTION

The OPC Foundation is approaching completion of the first stage of its new Unified Architecture (UA). The new Unified Architecture is meant to unify all of the existing OPC technology (OPCOLE, 2003). Importantly it means open standards and no longer just the proprietary Microsoft standard (OPCDCOM, 2000). OPC vendors are already working through the design and implementation phase of their OPC UA technology products. After three years of specification work and a further year of prototyping the first version of Unified Architecture is now being released considering the following characteristics for the communication stack (OPCUA, 2008):

* multiple platform implementation including portable ANSI C, Java and .NET implementations

* scalability from embedded controllers up to Mainframes

* the stack can support multi-threaded as well as single-threaded/single-task operation, which is necessary for porting the stack onto embedded devices

* an own security implementation, based on new standards, realizes true security (e.g. compare with [OPCSEC, 1998])

* configurable time-outs for each service

* chunking of big datagram's

Consequently perhaps the most obvious change compared to the legacy OPC standard that users will notice right away is that OPC-UA is even not based on Microsoft COM/DCOM. Everyone on the market is embracing open, internet-based communication standards. Naturally, OPC has done the same by basing UA on TCP/IP, HTTP, SOAP, and XML. Not being tied solely to Microsoft platforms makes OPC-UA highly scalable. It is expected to see OPC-UA implemented on everything from embedded field devices through to Unix or mainframe-based enterprise applications (OPCUA, 2008).

All of the base services defined by OPC are abstract method descriptions which are protocol independent and found the basis for the whole OPC UA functionality. The transport layer puts these methods into a protocol, which means it serializes/de-serializes the data and transmits it over the network. Currently there are two protocols specified for this purpose. One is a binary, towards high performance optimized TCP protocol and as second, a Webservice-based one. The OPC information model isn't just a hierarchy based on folders, items and properties any more, but a so-called Full Mesh Network based on nodes instead. These nodes can additionally transmit all varieties of meta information. Additional new and important features of OPC UA are redundancy support, heartbeat for connections in both directions, which means that the server as well as the client recognizes interruptions, and buffering of data and acknowledgements of transmitted data, so lost connections don't lead to lost data anymore. Lost datagram's can get fetched repeatedly (OPCUA, 2008).

2. ARCHITECTURE BASE DESIGN

The OPC Unified Architecture blurs the distinction between Data Access, Historical Data Access or Alarms & Events in a way, that existing OPC applications are largely broken down on functional lines based on which of the OPC specifications are supported. Clients and Servers based on the Unified Architecture will blur this distinction since the transfer of all data, no matter of what its type or purpose, is transferred using the same base UA services.

This mechanism coupled with the support of complex data (arrays, binary structures, XML documents, etc.) leads to a situation where server vendors expose data with complete trustworthiness as it naturally exists in the system. They presently expose only a subset of data forced into an OPC-defined data format. Forward thinking vendors will realize that there will no longer be a need for any proprietary vendor defined interfaces with this capability and they will only expose the data via UA (OPCUA, 2008).

The OPC Foundation has been working with other standards organisations to gear UA as a premier vehicle for conveying and transporting data defined by these other specifications. With the acceptance of UML based models and XML Schema to define and render complex data, many information model specifications are emerging.

It can be expected to see companion specifications emerging that bind the data models described by these and other specifications to OPC UA, thus providing for complete information level interoperability from one application to another. Note also that applications that use this type of data are not the current round of typical factory floor applications that traditionally implement OPC. Instead they are enterprise applications for use at MES and ERP level. It can be expected to see OPC-UA implemented in certain applications far outside the scope of nowadays OPC applications (OPCUA, 2008).

Further robustness and reliability play an important role. Rather than live at the kindness of the underlying internet protocols, the Unified Architecture takes direct responsibility for all of the necessary failure detection and recovery logic making UA viable for mission-critical communication. Beyond robustness and reliability, several redundancy schemes are defined such that vendors may provide this capability in a standard way. It is expected to see OPC-UA used as the native communication method by applications, usurping proprietary vendor protocols and possibly some existing field bus protocols (OPCUA, 2008). Existing OPC applications vary greatly in their compatibility and interoperability with other OPC applications. Although OPC is currently stressing the need for products to be both certified and tested at interoperability workshops, the reality is that only a small percentage of OPC products on the market presently meet that mark. With OPC Unified Architecture, the certification tests cover both servers and clients and will be administered by sanctioned testing labs. These facilities are expected to be available in time to test the very first UA products coming to the market. The certification status of any UA component will be available in real time via electronic certificates issued by OPC directly though the UA interface. OPC-UA applications which are properly certified thus greatly increase the likelihood of true plug-n-play (OPCUA, 2008).

Backward compatibility will ensure quick adoption. The OPC Foundation is providing its members with several code-based deliverables to simplify vendor development and aid with backward compatibility. First, the OPC-UA API provides much of the plumbing and low level generic serialisation and wire support so that vendors need only to code the high level aspects of UA into their applications. The API is expected to be available in several languages supporting multiple popular computing platforms.

In addition to the API, the OPC Foundation is also providing its members with shippable binary adapter modules which allow new OPC-UA clients direct access to all of the legacy COMbased OPC servers, and legacy COM-based OPC clients access to a subset of the features of new OPC-UA servers. The two adapters can even be used together to connect a legacy client to a legacy server, replacing the standard DCOM communication with the new OPC-UA internet-based protocols. With complete backward compatibility ensured, vendors will have much to gain and nothing to loose by adopting the new OPC Unified Architecture (OPCUA, 2008).

Summarized can be said that OPC UA specifies an abstract set of services and the mapping to a concrete technology. OPC UA does not specify an API but only the message formats for data exchanged on the wire. A communication stack is used on client- and server-side to encode and decode message requests and responses. Different communication stacks can work together as long as they use the same technology mapping. The following section gives an overview over the different components of OPC UA clients and servers followed by a section of technology mappings and a section of possible interactions between OPC UA servers (OPCUA, 2008).

3. CLIENT AND SERVER PARTS

An OPC UA client consists of a client implementation using an OPC UA communication stack. The client implementation accesses the communication stack using the OPC UA API. Note that the API is not standardized. It may vary for different programming languages and potentially for different communication stacks. Several communication stacks may exist for different operating systems, programming languages and mappings. The client-side communication stack allows the client to create request messages based on the service definitions. The client-side communication stack communicates with a server-side communication stack. The OPC Foundation standardized only this communication. Thus, everybody can develop his or her own communication stack with its own API as well. The server-side communication stack delivers the request messages to the server implementation via the OPC UA API. Since the OPC UA API realizes the abstract service specifications, it may be the same as on the client-side. The server implementation implements the logic needed to return the appropriate response message. The OPC UA server implementation gets its data from some underlying system. For example, this can be a configuration database, a set of devices or some OPC server (OPCUA, 2008).

4. TECHNOLOGY MAPPING

The OPC UA mapping specification currently defines two mappings: UA Web Services and UA Native. The first mapping uses SOAP and the various WS-* specifications. The second mapping uses only a simple binary network protocol and integrates certain security mechanisms.

The encoding of the data can be done in XML or UA Binary. UA Binary specifies the serialization of data into a byte string. The UA Binary encoding is faster than the XML encoding since the message size is smaller than for the XML encoding. On the other hand, the XML encoding allows generic SOAP-clients to interpret the data in the SOAP message, while they would only get a binary string using the UA Binary encoding. In theory, the encoding of the data is independent of the mapping. However, the XML encoding will typically only be used in the UA Web Service mapping in combination with the various WS*-specifications. The protocol of the UA Web Service mapping is SOAP/HTTP(S) while the UA Native mapping typically runs directly on TCP/IP. For bypassing firewalls, the UA Native mapping also allows putting the binary encoded messages into SOAP messages using HTTP(S). UA messages can also be encoded and transported with other protocols, for example using WCF Binary. However, by using this technology interoperability is lost since only communication with WCF clients is then possible (Resnick, 2008).

5. AGGREGATING SERVERS

Build-into the OPC UA specification is the concept of aggregating servers. An aggregating server aggregates one or more OPC UA server and provides the information of those servers--or an excerpt of the information--in its address space. Thus, a client does not have to access several servers but only one server. This mechanism allows a flexible architecture by chaining several OPC UA servers for different clients with different requirements (OPCUA, 2008).

For example, several OPC UA servers running on small devices will be aggregated by one OPC UA server. Several clients of the distributed computing system may access this server. Another OPC UA server aggregates this server and provides part of the information to the MES system. The MES system could work as an aggregating server, too. OPC UA supports aggregating servers by allowing marking the origin of data.

6. CONCLUSION

OPC UA is an important step to integrate new technologies and concepts into industrial applications. The strong meta model, the open and standardized service-oriented architecture (SOA) and the ability of unifying different kind of OPC servers opens the door for new areas of application. Especially in the field of process automation, it will help to simplify the integration of other applications like MES, HMI or SCADA systems.

6. REFERENCES

OPCDCOM (2000). DCOM on Non-Microsoft Platforms, Software AG, http://www.opcfoundation.org/, 2000

OPCOLE (2003). OPC Specification: Data Access, Alarms & Events, Historical Data Access, OPC Foundation, http://www.opcfoundation.org/, 2003

OPCSEC (1998). OPC, DCOM and Security, Intellution Inc., http://www.opcfoundation.org/, 1998

OPCUA (2008). OPC UA Specification: Parts 1-11, OPC Foundation, http://www.opcfoundation.org/, 2008

Resnick, S., Crane, R. & Bowen C. (2008). Essential Windows Communication Foundation (WCF): for .NET Framework 3.5, ISBN 978-0321440064, March 2008, Addison-Wesley Longman, Amsterdam, Netherlands, 2008
联系我们|关于我们|网站声明
国家哲学社会科学文献中心版权所有