1 July 2005
Web services in real time
Plant information exchange easier between plant, information systems.
By Tetsuya Kawashima
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 developed as basic Web service technologies.
Industry officials expect OPC will be the leading technology that brings XML to the manufacturing industry. The OPC Foundation adopted XML and released its first XML based specification, XML Data Access (XML-DA) in July 2003. XML/SOAP messages go in the "Platform Specific Network Interface" layer. OPC XML-DA 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 Data Access (OPC DA), based on Microsoft's COM/DCOM technology, the OPC Foundation provided the manufacturing industry the ability to horizontally integrate machines and vendors within the manufacturing domain. The foundation is now working to enable vertical integration between the plant and enterprise domains. OPC XML-DA, based on XML Web services technology, enables users to exchange plant information more easily between plant systems and information systems.
Technology advances enabled information systems such as Manufacturing Execution System (MES) or Enterprise Resource Planning (ERP) to exchange plant data of process controllers distributed to wide areas through the Internet.
Wide area distributed systems have more than one control system, and each control system typically connects to the Internet or the intranet. Control systems have process controllers and Human Machine Interface (HMI) machines for operating and monitoring.
In one example, a company has sites A, X, Y, and Z connected to the Internet/intranet. The sites X, Y, and Z have a process control system that has a controller and a local HMI machine. The site A has an information system that 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 wide area distributed systems needs improvement as follows:
- Management of the server machines
- Costs vs. reliability and redundancy of the server machines
- Accessing the controllers indirectly
- Vendor or platform barriers
- Poor support of wide area network communications
The first point is management of the server machines. Server management is a serious matter, and personnel must keep the systems in good health. The cost of server management can be significant due to the knowledge and skill required.
The second point is costs vs. reliability and redundancy. You can use desktop PCs or HMI PCs 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. To the contrary, a high-priced server PC with higher quality components can increase reliability or implement redundancy. In this case, you will incur additional cost.
Accessing the controllers indirectly is another area to improve. 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.
Vendor or platform barriers need improvements as well. If the protocol used between the client and the server is proprietary, normally you would purchase the software on both machines from the same vendor. Even if the protocol is OPC DA, which is a standard one based on COM/DCOM, both machines should have the 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 goes across multiple sites, this can become a problem.
Poor support of wide area network communications is the fifth area in need of improvement. Even though network communications are 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 assign 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.
There is now a new type of controller architecture called Controller with OPC XML-DA, which can resolve the problems mentioned. The structure of the controller with OPC XML-DA 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 is in the controller. It 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 it has the same capability to manipulate plant data as the server machines had.
The control logic engine, based on the PLC IEC61131-3 standard, executes basic control algorithms, such as function blocks and SFCs.
From the point of view of hardware, the design of the controller with OPC XML-DA goes under the assumption 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.
In one example, a wide area distributed system using controllers with OPC XML-DA with sites A, X, Y, and Z connected to the Internet or the intranet. Sites X, Y, and Z have installed the 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.
Improvements of the wide area distributed system using the controllers with OPC XML-DA are:
- Reducing the cost of the server machine management and maintenance
- Increasing reliabilities and robustness
- Accessing the controllers directly
- Increasing interoperability
- Rich support of 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 uses 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. The previous system hierarchy had three layers: client machines, server machines, and controllers. The controller with OPC XML-DA changes this to two layers: 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. OPC XML-DA brings high interoperability between various vendors and platforms because of the capabilities of XML.
XML communications contains not only data bodies but also 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. OPC XML-DA brings high interoperability.
OPC XML-DA supports wide area network because they base it 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.
The architecture using the controller with OPC XML-DA is beneficial to wide area distributed systems. However, there are a couple of subjects of 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
- 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 consist of text and not encrypted. If you use the XML-DA communication through the Internet, you should take prevention measures such as using HTTP Secure Socket Layer (HTTPS) or Virtual Private Network (VPN).
It is said that the speed of OPC XML-DA communication is one half or one third that of OPC DA communications. The cause 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 adopting XML-DA communications.
The key features for OPC XML-DA are embedded Web services in the controller, Java engine adopted as a user custom program environment, and the robust controller hardware superior for long-term continuous operations. 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.
Behind the byline
Tetsuya Kawashima is development manager at the U.S. Development Center for Yokogawa Corp. of America in Carrollton, Texas.
Web services catching on
The openness of Web services lends itself to the changing environment that results from fluctuations in customer demands.
Because Web services are not hardwired to connections, things can change, enabling manufacturers to remain nimble. This feature allows them to react to dynamic business conditions and relationships and not experience a break in interaction. Even diverse technology assets can communicate with one another. But what could matter most to manufacturers is that they can implement Web services incrementally and leverage existing Information Technology (IT) assets, making them more responsive and flexible.
Standards exist that establish connections for Web services: extensible markup language (XML) schema, simple object access protocol (SOAP), Web services description language (WSDL), and universal description, discovery, and integration (UDDI)—a standard for a Web services (WS) registry.
Another area of concentration is security and reliability. Security exists for network level, with hypertext transfer protocol with secure sockets layer (SSL) and encryption via SSL. The WS-Security specification addresses a more complete scope. A complete solution must address:
An optimal model for Web services security is for it to be a network service (versus node-embedded) for efficiency and scalability.
Web services are software components that you can call up over a network, using two newly evolved standards, SOAP and WSDL. The former describes a way to send a message with an XML payload to invoke a service; the latter is a way for a service to describe what it offers and establish how it should come into play. SOAP is typically bound to the hypertext transfer protocol, which allows it to pass through firewalls, but SOAP can also work with more robust network protocols.