1、英文原文Graphical Development of Software for Programmable Logic ControllersAbstractGraphical languages are standard in the field of computer programming. Complex software development is best handled by graphically connecting pre-built, fully tested and highly specialized software components, instead of
2、 writing and debugging thousands of lines of code. Modern programming environments include complete libraries of such components. In the field of Programmable Logic Controllers (PLCs), this is not the case. PLC programs can be developed using graphical languages, as Ladder Diagrams (LD) or Function
3、Block Diagrams (FBD),but the standard libraries are very limited, so the programmer must develop his own libraries, building software objects from scratch. In this paper, a framework is presented for automatically building complex software modules using based on two key pillars: on the one hand, usi
4、ng object oriented concepts as encapsulation, inheritance and generic programming, and, in the other one, closely following the physical model of the objects used in building electrical control cabinets (ECBs).I. INTRODUCTIONThe development of PLC programs is a crucial point in the construction of m
5、odern automation installations. As PLC Open organization states in 1, “software plays an ever-increasing role in industrial automation. With this, the associated software costs increase, even to the point that it becomes the highest part of the total system”. Old programming languages give a limited
6、 support to this task: the code tends to be obscure, with limited capabilities of flow control, and internal interdependencies make any minor modification a nightmare. To solve this problem, a new standard has been established, the IEC-61131-3. It defines elements that can be used as blocks for buil
7、ding new programs, such as Function Blocks (FBs), and brings some of the benefits of OOP, such as encapsulation, as Lewis 2 or John and Tiegelkamp 3point out. Nevertheless, other major OOP features like inheritance, generic programming and polymorphism are not supported in the standard. In spite of
8、this limited support, Brendel 4 develops software components using IEC-61131 FB modules. Bonfe and Fantuzzi 5 present an object-oriented (OO) program for a manufacturing machine, and HVan der WalH 6 develops a complete OO library of motion control components, as a result of PLCOpen effort. OOP, besi
9、des being a way for developing well structured PLC programs, brings also added benefits as self-explanatory programs, Plomp et al.7, or graphical programming, Lewis 8.There are different approaches for choosing the software objects that can serve as the building blocks for constructing well structur
10、ed, failure-proof PLC programs: Mathematical methods, which formalize the structure of the software components and their relationship from a mathematical point of view. Feldmann et al.9, Polic and Jezernik 10 use Petri nets as the tool for modeling discrete event systems (DES). Bridge methods, which
11、 develop the control program using high level, object oriented program languages and translate the resulting code to IEC-61131-3 FB modules. Plaza and Medrano 11 use C language as the source, Heverhagen and Tracht 12 use Unified Modeling Language (UML). Jammes and Smith 13 follow instead the model o
12、f Web Services. MIM (Model Integrated Mechatronics) considers each object as a complete unit which integrates the electrical mechanical and software aspects. Thramboulidis 14 15 and Vyatkin16 develop such Mechatronic components. An interactive “Intelligent Mechatronic Testbed” can be found at 17. Ar
13、chimedes 18, CORFU 19 and OONEIDA 20 are general frameworks built upon this concept.These approaches have drawbacks from the point of view of the technician that develops PLC programs. Mathematical methods are often too abstract and difficult to track. Real time constraints are alien to general purp
14、ose language programs such as C or Java. And Mechatronics models tend to be far too complex, because they try to model all the behavioral aspects of a specific device. What it is needed is a simple, clear, robust and flexible OOP model that allows for the assembly of PLC programs following the same
15、procedure used to build modern ECBs: by cabling pre-built, fully tested components. Thats way a new framework, Object Oriented Framework for PLC Software Development (OOPLC), has been developed and is presented in this paper. Its goal is to build PLC programs by assembling pre-built, fully tested so
16、ftware components in a simple, graphical way, analog to the drawing of electrical schemas.The structure of this paper is as follows: section I is the introduction. Section II establishes the main OOPLC framework features, which are fully developed in section III. In section IV an example program developed with the proposed method is shown, and in section V the conclusions are presented.II. OOPLC FEATURESOOPLC is founded on th
