Erlangen, Germany – August 10, 2009. Unified Automation GmbH, ascolab GmbH and QNX Software Systems have proven OPC UA technology on QNX Neutrino 6.4.1. Unified Automation GmbH announced its new product: a Software Development Kit (SDK) supporting QNX. This proven and production ready OPC UA SDK reduces development effort, thereby shortening time to market for the integration of OPC UA on Neutrino based embedded devices.
“This is a very promising product for all industrial application developers” says Kroy Zeviar, Business Alliance Manager at QNX “it helps embedded device vendors to quickly adopt to the latest OPC communication standard and offer plug and produce functionality in their products. QNX is the first embedded platform for which a professional OPC UA SDK is offered.”
Common Use Cases
Besides the device I/O communication where in most cases hard real time is a requirement and direct connections or field bus protocols are used, there is an increasing demand for multi-vendor device interconnection. Devices of different vendors need to share information on a plug and produce basis. This level of interoperability can only be achieved by an international standard that is world wide adopted like OPC UA which is also known as IEC 62541 Standard.
In addition higher level systems need to access specific information from the shop floor, but won’t accept flat, raw data. These systems need data, semantics and descriptions provided at standardized services. Here OPC UA brings in its enhanced capabilities of modeling information and perfectly representing and describing the real process in a generic fashion.
OPC Unified Architecture
The very successful classic OPC specifications were interface definitions for accessing process data, event messages and archived data. Microsoft’s COM/DCOM technology was used as transport protocol. The new Unified Architecture not only combines the functionality of all classic OPC interfaces, it also introduces a platform independent transport protocol and rich modeling capabilities for data, semantics and extended information. The main features in OPC UA can be summarized as:
- Secure Binary Transport Protocol
- Enhanced Information Model
The abstract services in OPC UA were defined independently from the used transport protocol. For different use cases OPC UA offers optimized protocols, one standard web service for enterprise integration and internet access and secondly a TCP based binary protocol for efficient and high performance data exchange. The service mapping on these two protocols was implemented by the OPC Foundation and is known as OPC UA Stack. Applications using the services can decide at runtime which protocol they want to use, the TCP binary protocol is mandatory and must be supported by all UA applications. Security mechanisms are an integral part of the protocols. Authentication and encrypted transmission guaranties access permission and data integrity having a logical connection between server and client applications called “Session” using a save transport connection called “SecureChannel”.
Modeling data with OPC UA enables not only providing data but also providing related meta information in an object oriented approach. An information model can be created containing Objects, Variables, Events, Methods, Complex Data Types, Programs and History of Data or Events. Thus rich but scalable possibilities for modeling of information are offered. In addition to instance information an UA Server provides type information being able to fully describe literally any kind of complex system. On an embedded device not all of these modeling capabilities might be used, e.g. a simple device may just provide a list of variables, but sophisticated devices hosting e.g. a soft PLC might make use of object oriented modeling.
Prerequisite of using OPC UA on embedded devices is easy portability of the software components to different operating systems. For this reason the OPC Foundation decided to implement an OPC UA Stack in portable ANSI C Code. This communication stack has a platform adoption layer that encapsulates all operating system specific code and hides CPU architectural differences. The ANSI C Stack can be configured to run on single- or multi-task environments and resource consumption can be adjusted in terms of message length, buffer and memory size.
UA Multilayer Design
To develop an OPC UA Server or Client different layers in the software architecture must be taken into account.
- Client/Server Application Level Code
- SDK/Toolkit Level Code
- Stack Level Code
- Platform Layer Code
The OPC UA Server application is normally used to describe the available information from a vendor system and to provide access to the data for external systems in a standard way. The SDK simplifies the UA Stack APIs, implements common UA functionality needed in most or all UA applications, provides base functionality and helper functions, implements the security handling and provides samples for common use cases. The SDK itself is platform independent and depends only on the ANSI C Stack and its platform layer and the crypto API defined by the stack. Platform layer and crypto API were adopted to run on QNX Neutrino 6.4.x using the SSL crypto implementation coming with QNX.
About Unified Automation GmbH
Unified Automation offers products and services in the field of standardized communication in automation industry and beyond. Based on OPC Unified Architecture technology they offer a cross-platform software development framework to enable vertical information integration for application providers, from embedded device manufacturers up to enterprise application developers. Unified Automation’s products enable companies to easily build, deploy and integrate standard communication technology. The products are designed to improve the appeal and quality of customer’s applications and devices. Unified Automation enables customers to accelerate innovation, shorten time to market and increase revenues.
About ascolab GmbH
Ascolab GmbH is dedicated to industrial communication. The consulting and development services are focused on the open communication interface OPC Unified Architecture (UA). From the beginning ascolab pushed the OPC UA Specification by being an active member and an editor in the UA working group. The development of OPC UA core components for the OPC Foundation, respectively some of their most important members, shows the faith in the excellent implementation work of ascolab. ascolab did the implementation of the UA communication stack for cross platform usage i.e. for embedded devices, it was completely written in ANSI C. ascolab is doing platform layer adoption and consulting regarding best practices and usage of the new OPC UA technology with the QNX Neutrino operating system.
About QNX
QNX Software Systems is the industry leader in real-time, microkernel OS technology. The inherently reliable and scalable QNX® Neutrino® RTOS and powerful QNX® Momentics® development suite together provide the most trusted foundation for embedded systems in the networking, automotive, medical and industrial markets. Global leaders such as Cisco, Delphi, Siemens, Texaco, and Ford depend on QNX technology for network routers, medical devices, intelligent transportation systems, safety and security systems, next-generation robotics, and other mission- or life-critical applications. Founded in 1980, QNX Software Systems is headquartered in Ottawa, Canada, and distributes its products in more than 100 countries worldwide.