description
The automation of processes has reached the point where one can not go without applying sensors, actuators, PLC (Programmable Logic Controllers) and SCADA (Supervisory control and Data Acquisition) systems that enable acquisition of large quantities of data. The process automation is particularly important in isolated rooms where physical presence of humans is undesirable, as for example in the production of electronic components or in the pharmaceutical industry. Such manufacturing systems operate with various degrees of success and are not modified very often. Every alternation of any industrial process is followed by extensive documenting, testing and validating of the new system. Quite often the production must be stopped which gives a rise to substantial costs for entire operation. On the other hand there are a number of research laboratories where various approaches are constantly a subject to change, development and testing in order to bring about improvements. The research work often implements mathematical and simulation software such as Matlab (Matrix Laboratory) which enables solving of complex mathematical operations, simulations, optimisations, etc. However, their main disadvantage is that they are substantially limited in their connectivity to other systems and applications. Manufacturing processes include many procedures where large amounts of data could be processed, examined and optimised: regulation loops, optimal production structuring, calculation ol illumination in various points, etc. The equipment that is used in the industry, such as PLC and SCADA, is not suitable for performing such data processing. Instead, Matlab would be much better if only it were possible to leed it with real-time data from the manulacturing process. By applying this technology a wide spectrum of possibilities for testing and analysis emerges which can contribute to the improvement of the process. The system can also be upgraded to perform a real-time parallel optimisation procedure. In this configuration the manulacturing process would be running independently whereas Matlab would be performing in parallel all the necessary mathematical operations, the results of which would be led back into the process. There are two difficulties in implementing such real-time connections: the problem of connectivity and the difficulty of presenting a universal solution enough that would not require altering our existent manufacturing systems, especially when new research requires updating or changing our existing configurations. One possible solution would be to use the OPC standard and the associated technology. OPC means OLE for Process Control (OLE - Object Unking and Embedding) and represents an international industrial standard (Specifications v.1.0a) that is based on the Microsoft's OLE/COM/DCOM technology. It provides a unified communication interface based on Plug&Play between various devices of process control. The OPC interface thus belongs to one of the new technologies applied to connecting and interlacing systems of process control which is based on the component technology. The main properties of the component technology can be summarised by the properties of OLE automation which enable that one application can contain objects from other applications, the linking of both applications results in data being simultaneously updated in both, and non-native objects can be executed or changed inside the application where they are embedded. In the usual systems of process control each SCADA software has to have its own piece of software code in order to be able to communicate with the kernel of the 1/0 driver or with any other part of the soltware code that is used to communicate with the 1/0 unit. In other words: each SCADA system needs drivers in order to be able to communicate with other devices and each device connected to the system must have its own driver. If a system is connected to another SCADA system then this system needs its own drivers again for all the devices that will communicate with it and that are connected to it. The number of required drivers can be calculated by multiplying the number of 1/0 units with the number of SCADA packets. The result is a very high number and thus an inelegant solution. As a solution, the OPC creates a "soltware bus" where applications only need to be aware on how to access data on the OPC. Testing system consisted of an OPC server which captured data from the controller, it checked the data's quality, evaluated it for a change of state, and then forwarded it to the OPC client who returned it along the same route once it was processed. For the "worst case" scenario synchronous reading was used where each piece of data was changed every time and the same computer ran a server, two clients, as well as the SCADA and Matlab software. The measurements performed show that due to the fixed dead time the worst results are obtained when transferring a single piece of data only. The results show a rate of approximately 1000 pieces of data per second can be expected with large quantities of data. The process data is available to Matlab virtually at the same time as to the SCADA system which makes the application suitable for industrial environments. The proposed solution is especially suitable for manufacturing processes with slower rates of change since here it can also be used for process control. Main advantages of proposed solution are the integration of the numerical, computational and graphical powers of MATLAB with the robustness of industrial system, universality, on-line data processing and accessibility to other software programs, without any physical connection or disturbance of the manufacture automation system.