콘텐츠 바로가기


Research - 1


Home > R&D CENTER > R&D Center > Research - 1

Research - 1 

PLCStudio: SIMULATION BASED PLC CODE VERIFICATION


ABSTRACT
Proposed in this paper is the architecture of a PLC programming environment that enables a visual verification of PLC programs. The proposed architecture integrates a PLC program with a corresponding plant model, so that users can intuitively verify the PLC program in a 3D graphic environment. The plant model includes all manufacturing devices of a production system as well as corresponding device programs to perform their tasks in the production system, and a PLC program contains the control logic for the plant model. For the implementation of the proposed PLC programming environment, it is essential to develop an efficient methodology to construct a virtual device model as well as a virtual plant model. The proposed PLC programming environment provides an efficient construction method for a plant model based on the DEVS (Discrete Event Systems Specifications) formalism, which supports the specification of discrete event models in a hierarchical, modular manner.



Generally, industrial production lines are dynamic systems whose states change according to the occurrence of various events, thus exhibiting the characteristics of a discrete event system.
If manufacturers are to remain competitive in a continuously changing marketplace, they must not only continue to improve their products, but also strive to improve production systems continuously [10]. Thus, an efficient prototyping environment for production systems is crucial. A modern production line is a highly integrated system composed of automated workstations such as robots with tool-changing capabilities, a hardware handling system and storage system, and a computer control system that controls the operations of the entire system. The implementation of a production line requires much investment, and decisions at the design stage have to be made very carefully to ensure that a highly automated manufacturing system will successfully achieve the intended benefits.
Simulation is an essential tool in the design and analysis of complex systems that cannot be easily described by analytical or mathematical models [5, 6]. It is useful for calculating utilization statistics, finding bottlenecks, pointing out scheduling errors and even for creating manufacturing schedules. Traditionally, various simulation languages, including ARENA® and AutoMod®. are used for the simulation of manufacturing systems [14]. Those simulation languages have been widely accepted both in industry and in academia; however, they remain as analysis tools for the rough design stage of a production line, because their simulation models are not realistic enough to be utilized for a detailed design or for implementation purposes. For example, real production lines are usually controlled by PLC (Programmable Logic Controller) programs [3], as shown in Fig. 1, but conventional simulation languages roughly describe the control logic with independent entity flows (job flows) between processes.



Figure 1: Production system controlled by a PLC program


For a detailed design (virtual prototyping) of a production line, it is necessary to create a much more detailed simulation model that can forecast not only the production capability of the system but also the physical validity and efficiency of co-working machines and control programs.
As shown in Fig. 1, various machines that operate simultaneously in an industrial manufacturing system are usually controlled by PLCs, currently the most suitable and widely employed industrial control technology [1-4].
A PLC (Programmable Logic Controller) emulates the behavior of an electric ladder diagram. As they are sequential machines, to emulate the workings of parallel circuits that respond instantaneously, PLCs use an input/output image table and a scanning cycle. When a program is being run in a PLC it is continuously executing a scanning cycle. The program scan solves the Boolean logic related to the information in the input table with that in output and internal relay tables. In addition, the information in the output and internal relay tables is updated during the program scan. In a PLC, this Boolean logic is typically represented using a graphical language known as a ladder diagram [3]. Previous approaches on PLC programs can be categorized into two groups; 1) Verification of a given PLC program [18, 19], and 2) Generation of a dependable PLC program [15-17]. In the first group, various software tools have been developed for the verification of PLCbased systems via the use of timed automata, such as UPPAAL2k, KRONOS, Supremica and HyTech, mainly for programs written in a statement list language also termed Boolean [2]. Those software tools verify PLC programs to a certain extent; however, they remain limited. Since they are mainly focusing on the checking of theoretical attributes (safety, liveness, and reachability), it is not easy for users to determine whether the PLC programs actually achieve the intended control objectives. In the second group, many researchers have focused on the automatic generation of PLC programs from various formalisms including state diagrams, Petri nets and IDEF0. Those formalisms can help the design process of control logics, however, it is still difficult to find hidden errors which are the most difficult part of the verification of a control program. To cope with the problem, we need a more transparent PLC programming environment helping users to recognize hidden errors. The objective of this paper is to propose the architecture of a PLC programming environment that enables the visual validation of a PLC program. The proposed PLC programming environment employs a virtual plant model consisting of virtual devices, so that users can easily verify the PLC program. The overall structure of the paper is as follows. Section 2 illustrates the architecture of the proposed PLC programming environment, while Section3 describes an efficient construction methodology for a plant model, which can be synchronized with a PLC program. Section 4 shows an example and illustrations. Finally, concluding remarks are given in Section 5.



EXAMPLES & ILLUSTRATIONS


3D graphic model of a welding Cell, Plant model of a welding cell

Figure 4: Gantt chart for checking simulation result



DISCUSSION AND CONCLUSIONS


This paper proposes the architecture of a PLC programming environment that enables a visual verification of a PLC program by synchronizing a PLC program with a corresponding virtual plant model. The model layer of the proposed architecture consists of three models: a plant model (virtual factory model), a PLC program (control model) and an I/O mapping model. The plant model includes all manufacturing devices of the production system, and the PLC program contains the control logic for the plant model. The I/O mapping model functions as a communication link between these two models. As the plant model plays a key role in the proposed PLC programming environment, it is essential to develop a practical methodology in the construction of a virtual device model as well as a virtual plant model. To do so, this paper addresses an efficient construction method of a plant model based on the DEVS (Discrete Event Systems Specifications) formalism, which supports the specification of discrete event models in a hierarchical, modular manner. The proposed methodology for the construction of a plant model has two major benefits. The first is the reusability of a virtual device model, signifying that the structure of the virtual device model achieves independence from the configurations of a production system. The second benefit is that we can intuitively define the state transition diagram of a virtual device model. It is not necessary for users to have in-depth knowledge of discrete event system modeling, as they simply have to identify a set of tasks in order to define a virtual device model.



Route Map About UDMTEK Recruit