1 August 2005
OPC enriches Web services for manufacturing
Control systems have process controllers and HMI machines for operating and monitoring.
By Tetsuya Kawashima
The OPC Foundation has released its first Web service specification.
The specification provides a standard method for exchanging information between control and enterprise applications across a wide range of platforms.
The Extensible Markup Language Data Access (XML-DA) specification represents the first industry standard move from Microsoft's proprietary COM/DCOM technology to an open and platform independent Web services technology.
This is likely the start of a trend to using Web services at all layers of manufacturing systems.
Let's look at how a Java based process controller with an embedded XML-DA server benefits end-users by removing the need for a separate OPC server computer, increases reliability by using process controllers and redundancy, enables clients to directly access data in controllers, increases interoperability between operating system vendors and manufacturing system layers, and supports wide area and low communication speed and quality networks for true distributed control and data acquisition.
We'll also discuss technical achievements associated with the system architecture, performance, and security of XML-DA communications.
Within manufacturing domain
Since the standardization of XML in 1998, Simple Object Access Protocol (SOAP), Universal Description, Discovery, and Integration (UDDI), and Web Service Description Language (WSDL) have been developed as basic Web service technologies.
The OPC Foundation decided to adopt XML and released its first XML based specification, XML-DA, in July 2003. OPC XML-DA has standardized a schema for plant data exchange based on the SOAP technology.
This standardization enables information exchange across a wide range of platforms. With OPC DA, based on Microsoft's COM/DCOM technology, the OPC Foundation provided the manufacturing industry the ability to horizontally integrate—to exchange plant data across a wide range—machines and vendors within its domain. The OPC Foundation is now working to enable vertical integration between the plant and enterprise domains.
This advance of network technology has enabled information systems such as Manufacturing Execution System (MES) and Enterprise Resource Planning (ERP) to exchange plant data of process controllers distributed to wide areas through the Internet.
The whole system is a wide-area distributed system. A process controller embedded OPC XML-DA Web service to resolve problems is known as a Controller with OPC XML-DA.
Previous architecture of wide-area distributed system
Wide-area distributed systems have more than one control system and each control system is typically connected to the Internet or the Intranet.
Control systems have process controllers and Human Machine Interface (HMI) machines for operating and monitoring.
In this wide-area distributed system, the sites A, X, Y, and Z connect to the Internet/Intranet. The sites X, Y, and Z have a process control system, which has a controller and a local HMI machine.
The site A has an information system, which has a client machine for a business domain. The sites X, Y, and Z have a separate server machine to collect and manipulate plant data for the information system.
An application for the business domain is running on the client machine in the site A and exchanges the plant data between the server machines in the sites X, Y, and Z using TCP/IP communication protocol such as OPC DA.
The previous architecture of a wide-area distributed system loses the X'ed server machines by incorporating OPC XML-DA into the controller.
Weak points of previous architecture
The previous architecture of wide-area distributed systems has weak points in need of improvement that include management of the server machines; costs vs. reliability and redundancy of the server machines; accessing the controllers indirectly; vendor or platform barriers; and poor support of wide-area network communications.
Server management is a serious matter, and assigned personnel must keep the systems in good health. The cost of this can be significant due to the knowledge and skill required.
Desktop PCs or HMI PCs can work in place of separate, dedicated, server machines to save costs. In this case, reliability decreases because PCs often contain lower cost components such as hard disk drives that have lower reliability. On the contrary, a high-priced server PC with higher quality components can work to increase reliability or implement redundancy. In this case, additional cost is required.
The client machines need to exchange plant data via the server machines. The hierarchy of wide area distributed system has three layers: client machines, server machines, and controllers. The server machines can be a bottleneck to collect and manipulate the plant data.
If the protocol used between the client and the server is proprietary, normally the software on both machines must come from the same vendor. And even if the protocol is OPC DA, which is a standard one based on COM/DCOM, both machines should have same operating system, Windows.
If the system exists within a local site, it is usually acceptable to demand a single vendor or operating system. However, when the system lies across multiple sites, this can become a problem.
Even though network communications use TCP/IP, the installation and setting of IP routers and firewalls adds complications to the exchange information.
For example, COM/DCOM uses its own TCP port numbers, and the numbers generate automatically. You can restrict the range of numbers by editing the Windows registry hive, but it still needs multiple port numbers. The TCP port numbers should open on the firewalls to permit COM/DCOM traffic to pass. This configuration requires firewall knowledgeable engineers and is a load on system installation. Hence, it is tough to use COM/DCOM for distributed system over the Internet or the Intranet with firewalls.
Features of a controller with OPC XML-DA
This new controller architecture may resolve the problems listed above. It has an OPC XML-DA Web service, a Java engine, a Control Logic engine, and highly reliable and robust hardware.
The OPC XML-DA Web service is an interface between the inside of the controller with OPC XML-DA and the outside of it. Namely, OPC XML-DA client machines can access the interfaces provided by the OPC XML-DA Web service directly.
The OPC XML-DA Web service embeds in the controller. In addition, the OPC XML-DA Web service can exchange the data stored in the Java engine or the Control Logic engine.
The Java engine is a Java programming environment to run applications customized by end users and independent of the Control Logic engine. The Java language is popular and easy-to-use. The Java engine can exchange the data not only with the Control Logic engine but also with the OPC XML-DA Web service and has the same capability to manipulate plant data as the server machines had.
The Control Logic engine executes basic control algorithms, such as function blocks and SFCs. In addition, it is typical that the Control Logic engine uses the PLC IEC61131-3 standard.
From the point of view of hardware, generally, the controller with OPC XML-DA works on the assumption that it will be active continuously on a long-term basis. The controller with OPC XML-DA inherits high reliability and robustness from process controllers and has network and CPU redundancy capabilities.
|Human machine interface
OPC XML-DA improvements
During a sample deployment of a wide-area distributed system using controllers with OPC XML-DA, the sites A, X, Y, and Z connect to the Internet or the Intranet, and each has the same roles as before. The difference is the sites X, Y, and Z have installed controllers with OPC XML-DA as process controllers, and they have removed the separate server machines in their sites because the controllers with OPC XML-DA have OPC XML-DA Web services in them.
The improvements of the wide-area distributed system using the controllers with OPC XML-DA include reducing the cost of the server machine management and maintenance; increasing reliabilities and robustness; accessing the controllers directly; increasing interoperability; and rich support of the wide-area network.
The controller with OPC XML-DA reduces the cost of server machine management and maintenance by removing the separate server machines. The management and maintenance cost for the controller will be less than for server PCs.
The controller with OPC XML-DA brings reliabilities and robustness to the same or higher level than the previous system using separate server machines because the controller leverages industrial hardware. In addition, the cost of the redundancy is less than with a separate server machine.
The controller with OPC XML-DA enables client machines to access Web services directly without separate server machines. This results in flatter control system hierarchies by removing separate server machines.
While the previous system hierarchy had three layers, the controller with OPC XML-DA has only two: client machines and controllers. This enables users to install and modify the wide-area distributed system more easily.
OPC XML-DA enables distributed systems to use various vendors and platforms, not only Windows operating system but also UNIX operating systems. It brings high interoperability between various vendors and platforms because of the capabilities of XML.
XML communications contain not only data bodies but tags. Each tag has a meaning in itself. The tag is in an XML schema, and the XML schema is independent of the XML data. The appropriate XML schema is an important factor for XML data exchange, and the OPC Foundation has defined the XML schema for XML-DA. Clients and servers using OPC XML-DA can share same concepts by using the same XML schema. Hence, OPC XML-DA brings high interoperability.
OPC XML-DA supports wide-area network because it uses on HTTP/SOAP communications. HTTP/SOAP communications use TCP port number 80 only, this is a well known port number. The normal settings of firewalls usually permit traffic on port 80 to pass; therefore, it is easy to send the XML data over the Internet or the Intranet. OPC XML-DA has an advantage over OPC DA based on COM/DCOM because of this.
OPC XML-DA controller architecture
Future investigation yield
There are two of subjects that require future investigation into the OPC XML-DA communications to realize a secure and real-time wide area communication system: security of the XML-DA communications and performance of the XML-DA communications.
The XML-DA communications can be eavesdropped easily if someone has access to the network route between the XML-DA client and the server because the XML-DA communications are composed of text and not encrypted. If you use the XML-DA communication through the Internet, one should take prevention measures such as using HTTP Secure Socket Layer (HTTPS) or Virtual Private Network (VPN).
The speed of OPC XML-DA communication is one-half or one-third that of OPC DA communications. The cause of this is the time spent converting binary data to XML data in XML-DA Web services, converting from XML data back to binary data in the client machine, and the increased size XML data compared with binary data.
Therefore, OPC XML-DA communication is not suitable for exchanging large quantities of XML data at a high frequency, such as on a one-second basis. It is necessary to consider different options concerning the quantity and frequency of XML data when the XML-DA communications goes into force.
In final analysis, the controller with OPC XML-DA has the key feature of OPC XML-DA Web services within (embedded) the controller and a Java engine as a user custom program environment. This robust controller hardware is superior for long-term continuous operations. And the advantages for wide-area distributed systems extending using the controller with OPC XML-DA are:
Reducing the cost of the server machine management and maintenance by removing the separate server machines.
Increasing reliability and robustness using industrial hardware.
Accessing the controllers directly without separate server machines.
Increasing interoperability by adopting OPC XML-DA.
Rich support of wide-area network by using HTTP/SOAP communications.
We believe the controller with OPC XML-DA will realize the future ubiquitous computing world.
Behind the byline
Tetsuya Kawashima (Tetsuya.Kawashima@jp.yokogawa.com) is development manager at Yokogawa's U.S. Development Center in Texas.
SOAP: A way for a program running in one kind of operating system (such as Windows 2000) to communicate with a program in the same or another kind of an operating system (such as Linux) by using the World Wide Web's Hypertext Transfer Protocol (HTTP)and its Extensible Markup Language (XML) as the mechanisms for information exchange.
OLE: Object Linking and Embedding, a Microsoft contribution to industrial control. It allows operators to link the same object in several different applications.
OPC: OLE for process control.
HMI: For our purposes, Human Machine Interface (HMI) is a software application that presents information to the plant operator about the state of a process, which accepts and implements the operator's control instructions. It may also interpret the plant information and guide the interaction of the operator with the system (Man Machine Interface, or MMI).
MES: Manufacturing Execution Systems track and manage all aspects of a job in real time while in the execution phase or in process. It may include resource management, capacity scheduling, maintenance management, statistical quality control, laboratory information management, process management, data collection, plant wide document management, and process optimization. MES focuses on the short term and may link to ERP software for higher-level planning and control tasks.
ERP: Enterprise Resource Planning is the broad set of activities supported by application software that helps a manufacturer or other business manage the important parts of its business, including product planning, parts purchasing, maintaining inventories, interacting with suppliers, providing customer service, and tracking orders.