Universal Connection of Automation Control Software and Hardware

This article introduces OPC and Plug and Play technology, focusing on the development, technology, characteristics, applicable scope, and interface applications of the actual application standards of OPC.

1. Introduction – Background of OPC Development

Automation technicians have a beautiful dream: whether it is possible to connect automation control software and hardware universally, without considering driver and interface issues, which is very simple Plug & Play. Using OPC (OLE for Process Control) can help realize this dream. Of course, users are very interested in this, and it has first won the support of automation software manufacturers – the first batch of OPC products was launched before the standardization committee’s determined date. In the past, few communication technology specifications in the automation field have caused as much sensation as the new OPC technical standard. OPC, the acronym for OLE for Process Control, has naturally been gradually developed into a de facto new technical standard by manufacturers of automation components today. The term OLE means Object Linking and Embedding, used for process control. Today, the importance of software in the field of automation is increasing day by day. Regardless of whether the project involves operation, visualization, data archiving, or control, the trend towards purely PC-based software solutions is unstoppable. Time has proven that these software solutions are no longer developed as individual blocks, but consist of dedicated individual software components. The entire system is composed of reusable modules and utilizes the flexibility of these modules, which seems irreplaceable, with the only exception being the incompatibility of communication interfaces. Time and funds must be invested to adapt communication interfaces, with the aim of combining these software modules. This has led to the development of hundreds of communication interface software programs, such as interface programs for communication between process control or visualization systems and peripheral devices. However, at the same time, it has significantly increased costs. OPC (OLE for Process Control) provides a remedy for this situation: OPC allows software components such as software connectors to be combined together, enabling them to communicate without special adaptations. Therefore, Plug and Play has become a reality in automation. This answers the question of why OPC is needed?

2. Why is OPC Needed?

This can be explained from the following two points:

First, for early computer systems, a lot of time had to be spent developing individual communication programs to achieve data exchange and communication between computers composed of different hardware and software. However, it is precisely because of the existence of industrial standards for data exchange and communication that it is possible to connect different computers into a vast network like the Internet. Therefore, when developing an enterprise information system, if industrial standard-compliant databases and client-server interfaces are used, more effective energy can be devoted to the development of the functionality of the application program itself. Second, industrial manufacturing systems also face the same problem. That is, machines provided by different suppliers can connect with each other without special software development. For example, when implementing a multi-layer production control information system as shown in Figure 1, from the field device layer that processes equipment data to the process control system layer that conducts process processing, to the uppermost layer of production management, establishing and popularizing an effective data exchange industrial standard will be urgent. In this case, the use of OLE/COM technology in Microsoft Windows to achieve the standardization of data exchange in industrial manufacturing system process control is precisely the original purpose of OPC.

Universal Connection of Automation Control Software and Hardware

3. What is OPC? OPC defines an open interface on which PC-based software components can exchange data. It is based on Windows’ OLE – Object Linking and Embedding, COM – Component Object Model, and DCOM – Distributed COM technology. Thus, OPC provides an ideal method for connecting industrial application programs and office programs to typical field devices in the automation layer. The introduction of standard interfaces for Windows programs has reduced the number of interface programs developed by hardware manufacturers for their components to one, as they only need to develop an interface program for the OPC server. Similarly, software manufacturers only need to develop a single communication interface program – the OPC client interface. This is beneficial not only to manufacturers but also to end customers. At this point, a specific analysis of the above-mentioned OPC based on COM technology will be made.

3.1 OPC Based on COM Technology

Microsoft developed the so-called Component Object Model (COM) technology to provide interoperability between commercial applications and specific-purpose software packages. COM is an effective method for data exchange between software components. It is a binary and network standard. It is also the core of DCOM, ActiveX (ActiveX is an update and upgrade of the widely used OLE control technology. It relies on COM technology and is a renaming and restructuring of OLE control technology), and OLE technology.

COM technology has the following characteristics:

* COM is not a computer language; it is independent of the machine on which it runs, the operating system of the machine (as long as it supports COM), and the software development language. It is a binary and network standard that allows any two software components to communicate with each other.

* A COM server is a possible program that provides COM services according to the requirements of the COM client and can be published as an executable file on a Win32 server.

* COM client programs and COM servers can be developed in completely different languages. This allows programs developed in different languages such as C++, Visual Basic, and applications used as macros in Excel to connect with each other.

* COM components can be published to users in binary form.

* Compared to the past difficulties of version management with DLLs (Dynamic Link Libraries), COM technology can provide maximum compatibility between different versions of COM servers and COM client programs.

* As a technology extension of COM, Distributed COM technology further allows COM components to be distributed across different computers and connected and exchange data over the network. Therefore, for COM client programs, it is just like connecting to a local COM server on the local computer to connect to a remote COM server on a remote computer. Of course, the communication speed may differ, but importantly, it is possible to freely construct component interconnections like those achieved with COM and DCOM (Distributed COM) over the network without modifying the server program.

Universal Connection of Automation Control Software and Hardware

The emergence of COM technology provides a technical basis for the simple realization of data exchange between control devices and control management systems. However, if an industrial standardized COM interface is not provided, it will still be impossible to connect the COM components developed by various control device manufacturers. The provision of such industrial standards is the purpose of OPC. In summary, OPC is a special COM interface defined as an industrial standard.

3.2 Comparison of OPC and DDE

Before the emergence of OPC technology, DDE (Dynamic Data Exchange) technology had made a significant contribution to process control. However, DDE is a technology based on Windows message passing, so DDE technology has the following problems: * Slow data transmission speed * Lack of security management mechanisms * Difficult to develop * Lack of flexibility in functionality * Reliability is also unsatisfactory Therefore, it is logical that the advanced COM-based OPC technology will gradually replace the widely used DDE in process control. With the introduction of OPC technology, it shows its superiority over the past DDE technology in the following aspects: * High-speed data transmission performance * Security management mechanisms based on Distributed COM * Reduced development costs * Implementation of systems with highly flexible functionality * Implementation of systems with high reliability

Universal Connection of Automation Control Software and Hardware

Figure 3 is an example of the experimental results of data transmission performance using OPC and DDE. From here, the superiority of OPC technology in transmission speed can also be seen.

4. How Do Users Benefit from OPC?

In the past, there were usually only limited interface programs that could be compatible with specialized automation components. It is well known that it is impossible to develop interface programs for all specialized interfaces. Today, a clear innovation is that users can combine any visualization or control system with any hardware (i.e., PC boards) of their choice through OPC, as shown in Figure 4. From Figure 4, it can be seen that the OPC-standard software bus allows the integration of various field bus systems, such as PROFIBUS networks, CANopen (Controller Area Network) networks, DeviceNet, etc. Figure 4 also reflects the relationship between OPC and field bus standardization: OPC provides important additional performance beyond field buses, where the main goal of standardization in the field bus area is fast and reliable data transmission. OPC allows standard communication to the extent that any OPC server and application software can run on the network without any issues.

Universal Connection of Automation Control Software and Hardware

In Figure 4, PROFIBUS is an internationally recognized open field bus standard and is part of the international standard IEC61158 Type III. Improvements in the quality of interface programs and OPC servers further enhance this advantage, allowing manufacturers to focus their efforts on developing a unique OPC server, as they do not have to face numerous interface programs, allowing them to invest energy in increasing additional functionality and improving user-friendliness. Moreover, the consistency testing implemented by the dedicated OPC Foundation promotes the improvement of OPC product quality. In the past, using specialized interface programs was often limited to individual applications. Now, an application can access the OPC server through several OPC client interfaces. Therefore, it can access the functionality and internal data of the OPC server more flexibly. This multi-client capability not only benefits local PCs but can also be used on distributed networks via DCOM (Distributed Component Object Model). Thus, for example, a visualization system running on an office computer can connect to an OPC server located in a factory workshop without having to purchase additional interface program software. The flexibility and high level of maneuverability that OPC possesses provide the following benefits for manufacturers and users:

* Device developers: It makes the unification of device driver development possible. * Application software developers: They can use general development tools. There is no need to develop special interfaces, making the development of device interfaces simpler and easier. * Users: They can choose from a variety of commercial software packages, greatly reducing the cost of system composition. At the same time, it becomes easier to realize industrial control systems composed of devices provided by different suppliers. With the promotion and popularization of control components based on OPC standards, not only does it make the addition of control systems and the replacement of components simpler, but it also makes access to process data easier. For example, process control programs can connect directly with data analysis software packages or spreadsheet applications, achieving a high degree of informatization of factory control systems. Therefore, a detailed analysis can be made of how OPC solves your problems. 5. How Does OPC Solve Your Problems?

It should be said that before OPC was born, there was no unified standard for the interfaces between hardware drivers and the applications they connected to. For example, in the field of FA (Factory Automation), connecting PLCs and other control devices to SCADA/HMI software requires different FA network systems to be constructed. According to a survey, the cost required for control system software development accounts for 70% of the cost of designing various machine applications, while the development of connection interfaces between machine devices accounts for 30%.

In addition, in the PA (Process Automation) field, when it is desired to transfer all process data from a Distributed Control System (DCS) to a production management system, specific interfaces must be developed for each model from various suppliers, such as using C language DLLs to connect DDE (Dynamic Data Exchange) servers or using FTP (File Transfer Protocol) text, etc. For a system composed of four control devices and three applications such as monitoring, trend graphs, and reports, a lot of time must be spent developing interface software for monitoring, trend graphs, and report applications corresponding to devices A, B, C, and D, totaling 12 different drivers. At the same time, the coexistence of various drivers in the system also makes it more difficult to maintain the stability and reliability of the operating environment. OPC was proposed to standardize the software interfaces between devices and applications from different suppliers to simplify data exchange between them. As a result, it can provide users with process control software component products that can be freely combined without relying on specific development languages and development environments. The OPC system consists of an OPC server that provides data acquisition services according to the requirements of the application program (client program), the necessary OPC interfaces for using the OPC server, and the OPC application programs that receive services. The OPC server is developed according to the hardware of various suppliers, allowing it to absorb the differences in hardware and systems from various suppliers, thus achieving a system composition that is independent of hardware. At the same time, by using a data type called Variant, it can provide data formats according to the requirements of the application program, regardless of the inherent data types in hardware.

Using OPC to standardize interfaces can construct a system as shown in Figure 5.

Universal Connection of Automation Control Software and Hardware

From Figure 5, it can be seen that users can choose monitoring, trend graphs, and report applications without depending on the internal structure and suppliers of devices A, B, C, and D.

6. Where is OPC Applicable?

OPC is a software interface standard for connecting data sources (OPC servers) and data users (OPC application programs). Data sources can be control devices such as PLCs, DCS, barcode readers, etc. Depending on the composition of the control system, the OPC server as a data source can be either a local OPC server running on the same computer as the OPC application program or a remote OPC server running on another computer, as shown in Figure 6.

Universal Connection of Automation Control Software and Hardware

In Figure 6, it can be seen where OPC occupies a position in the control system. The OPC interface can provide the original data of the lowest-level control devices to data users (OPC application programs) such as HMI (Human-Machine Interface)/SCADA (Supervisory Control and Data Acquisition), batch processing, and other automation programs through the network, as well as direct connections between applications and physical devices. Therefore, the OPC interface is a highly flexible interface standard applicable to many systems. The application range of OPC can be seen in Figure 7.

Universal Connection of Automation Control Software and Hardware

Since OPC interfaces are mentioned, it is necessary to explain the definition of OPC interfaces.

6.1 OPC Interface Definition Explanation

The OPC interface defines certain component types and specifies what performance these components must have. Such a “service provider” is referred to as an OPC server. Unique OPC servers realize connections to existing communication systems. The users of the OPC server’s services are called OPC clients. OPC clients can be operational and monitoring systems, archiving systems, and many other process data users. This service will be reflected through object-oriented attributes and methods. Each OPC server provides program segments of these attributes and methods. Therefore, cooperation between components from different manufacturers will not be a problem – the Plug and Play technology of automation software.

6.2 What is the Application of the OPC Interface?

In what situations do users need to use the OPC interface? That is, component manufacturers providing process data (communication systems, measuring instruments, etc.) will use components together with the OPC server. The OPC server can connect with data sources. The communication conversion component with the data source is the sole responsibility of the component manufacturer. Users of the OPC server do not need to worry about the detailed specifics of the manufacturer.

The OPC interface is independent of specific applications; even traditional office applications can connect to automation systems; users will decide themselves and can choose to install automation components with OPC without considering drivers or interfaces, eliminating the cumbersome and time-consuming task of matching drivers, thereby greatly reducing engineering costs.

7. How Powerful is OPC?

To qualitatively assess the performance of OPC, the selected instruments were tested at Softing (Softing) using two commercial PCs. Configured with Pentium 90 processors and 48 or 64 megabytes of memory, low-performance configurations were intentionally selected to exclude the possibility that good measurement results were due to high-performance computers. The operating system on both computers is Windows NT4.0.

For local testing, a small OPC client testing application and a PROFIBUS DP OPC server from Softing are installed on one PC. For testing distributed OPC applications that include DCOM, the OPC test client is launched on a second remote PC. In both local and two combined computers, the changes of 5000 process variables (a very practical visualization system) can be transmitted between the OPC server and the OPC client within 1 second. For only 500 process variables, it only takes 100 milliseconds. Therefore, OPC is considered very suitable for applications that collect a large number of dynamic process variables at very short update rates.

This is why, in addition to those applications in process visualization and data collection products, such as Soft-PLC 4CONTROL for time-critical control programs will be completely based on OPC. In this configuration, the remote PC is connected to the first PC through the company’s internal network. The test selected is a daily report driven by event data transmission. The OPC server continuously generates values, which are transmitted to the OPC client. The test group repeatedly tests the time taken from the first readout of a limited number of data values from the cache of the NT (Network Terminal) interface program to the time all values are received and confirmed by the OPC client. The result is that only the transmission time between the pure server and client needs to be considered, without considering the time to collect values from the automation device.

Since the OPC discards data after the test client receives it, all specific application processes such as data archiving or visualization are included in the test. The average of the values measured continuously over different times is taken. The number of values transmitted to the OPC client ranges from 1 to 5000 to investigate the degree of dependence on transmission time.

8. Integrated OPC Servers

The “zero-engineering” visualization features included in the 4CONTROL system are automatically generated by IEC source code assembly and can be viewed anywhere through standard Internet browsers. If the pre-generated visualization does not meet requirements, users can use a visualization system software package provided by SCADA (Supervisory Control and Data Acquisition) manufacturers. Through the OPC interface, 4CONTROL can serve as a dedicated OPC server for visualization, with the OPC interface used for the entire process visualization system. All variables, function blocks, programs, and tasks in all IEC control programs are displayed as OPC entries/OPC variables in the visualization window; through the integrated 4CONTROL OPC server, user inputs are directly transmitted to the control program. With standards like OPC and 4CONTROL as new control program standards, hardware with different power requirements can be used in factories with different deviation requirements. The open OPC interface provides customers with a high degree of freedom, allowing them to break free from manufacturer requirements and use existing technologies and other advanced technologies with high flexibility.

9. Conclusion

Using OPC (OLE for Process Control) technology has achieved seamless linking between automation control software and hardware without considering driver and interface issues for the first time. OPC, based on Microsoft Windows’ COM/DCOM technology, defines an interface in the industrial application field that is manufacturer-independent. Even highly welcomed Office programs can connect to the world of automation. OPC not only provides numerous advantages for manufacturers of automation components. For the first time, users have full flexibility in choosing their hardware and software modules. Through standardized communication interfaces, products from multiple suppliers can be combined and matched together, allowing them to interact without the need for program modification. OPC has made Plug and Play a reality in automation applications and also allows the integration of various field bus systems. Summarizing the numerous advantages provided by OPC: * “Plug and Play” in the field of process control and machine manufacturing industry.

* OPC makes the concept of Plug and Play in automation environments a reality. OPC allows data exchange between hardware devices and application software developed by different suppliers through a common interface. Windows technology and the OPC interface make it possible to combine programmable control hardware and software without the need to develop a large number of dedicated communication interface programs, thereby saving considerable human and material resources.

* OPC simplifies and makes access from office products to process data easy, flexible, and reliable.

Source: PLC Free Learning

Business Cooperation: 010—88379790 ext 822, 802

Disclaimer: This article is a network reprint, and the copyright belongs to the original author. However, due to numerous reprints, it is impossible to confirm the true original author, so only the source of reprint is indicated. If the videos, images, or texts used in this article involve copyright issues, please inform us immediately, and we will confirm the copyright based on the proof materials you provide and pay remuneration according to national standards or delete the content immediately! The content of this article represents the views of the original author and does not represent the views of this public account or take responsibility for its authenticity.

Leave a Comment