Professional Documents
Culture Documents
(2008) 2:39–46
DOI 10.1007/s11740-008-0083-7
Received: 30 July 2007 / Accepted: 21 December 2007 / Published online: 19 February 2008
German Academic Society for Production Engineering (WGP) 2008
Abstract Developing PLC software for modern machine market and product development costs—parallelizing and
tools is becoming more difficult because of the increasing synchronizing the development tasks (concurrent engi-
functionality and resulting complexity. An approach for neering) is a basic premise for successful realization of
managing this is provided by the model-driven develop- future production systems [2].
ment of the control software. However, this innovative Concurrent engineering requires the use of modern
development method requires both a procedure that is development methods and a redesign of established pro-
adapted to the specific application domain and suitable cedures. While model-supported static and dynamic design
modeling techniques. The article describes an approach of the machine structure through the use of FEM and MBS
appropriate for machine tools. The focus is on introducing methods is already widely used in industry, model-based
the necessary description techniques and a methodology development of machine tool control software has not yet
for their use in product development. caught on in the real world. This is particularly true for
PLC software, which implements both technological and
Keywords Computer aided engineering safety-related functions. The reasons for this include the
Programmable logic controller Software development late integration of software engineering into machine
development and the unavailability of suitable develop-
ment tools. Additional obstacles are presented by
1 Introduction inadequate co-ordination between the disciplines involved
and the large amount of resources required to create the
The development of highly productive machine tools is necessary digital models. These can be traced back to the
characterized by the demand for high availability and an lack of suitable interdisciplinary modeling mechanisms for
increase in the functionality and degree of automation. This specifying the machine tool, and the lack of a continuous
leads to increased complexity of the machines, particularly procedure for developing the control software [3, 4].
with regard to the software for activating, co-ordinating The article will present an approach for the model-dri-
and monitoring the individual machine functions. Manag- ven development of PLC software for machine tools.
ing the complexity requires interdisciplinary co-operation Following a discussion on model-driven software devel-
between the various departments involved in development opment in general, the requirements for the development
[1]. For this reason—and for further reduction of time to environment and methodology for this purpose will be
described. Thereafter, different abstraction levels for
modeling the software and hardware components of the
M. F. Zaeh (&) C. Poernbacher machine tool will be presented. These provide the basis for
Institut für Werkzeugmaschinen und Betriebswissenschaften,
presenting suitable modeling methods and integrating them
iwb, Technische Universität München, Boltzmannstraße 15,
85748 Garching, Germany into an interdisciplinary development process. Further-
e-mail: michael.zaeh@iwb.tum.de more, the simulation-based verification and optimization of
C. Poernbacher the developed control software will be discussed, using a
e-mail: clemens.poernbacher@iwb.tum.de virtual prototype.
123
40 Prod. Eng. Res. Devel. (2008) 2:39–46
2 Model-driven software development (MDSD) the machine tool must be taken into consideration as soon
as development begins. The behavior of the electrome-
The model-driven development [5] of technical systems, chanical, electrical, hydraulic and pneumatic components
unlike development based on domain-specific documents, of the machine (hereafter referred to as hardware compo-
uses abstract models to define the multilayered functional nents) and software components and their interaction must
relationships between system components (Fig. 1). These be modeled with sufficient accuracy and used to develop
are further detailed in the course of the development pro- the control functions. When selecting suitable modeling
cess and enriched with information. Thereafter, special mechanisms for this purpose, it is necessary to consider the
generators create the necessary project documents directly different ways of thinking of the various disciplines
from the models [6]. involved. Mechanical design engineers are primarily
For software development, the basic idea is to create an interested in the sequences of machine operations and the
executable functional model of the software at an early design of its components and ensuring collision-free design
stage of the development process based on requirements and ease of assembly. Software developers often have a
specifications [7]. This serves as the starting point for all signal and logic-oriented point of view. Their focus is on
subsequent analytical and design-related development clear resolution of possible machine states and designing
steps. Later, an implementation model is created on this error handling mechanisms.
basis; finally, executable code is generated. A distin- Software developers must be given the opportunity to
guishing feature of MDSD is that the created models are, at validate and optimize the developed functions during the
first, platform-independent (PIM). The system behavior is early phases of development. This requires the provision of
described separately from the later physical and software simulation tools that permit verification and commission-
technology-related implementation. A gradual refinement ing of the software based on a virtual model of the machine
of the models takes place towards the implementation of tool. In order to allow a flexible adaption to the develop-
models customized for the selected target platform (PSM). ment task, the simulation must both enable simple
The effort to create models can be reduced by automating sequences to be tested and visualized based on a three-
model transformations, and the concluding generation of dimensional model and allow existing hardware and con-
target code. trol components to be integrated.
To keep the effort required for modeling to a minimum,
it is necessary to reuse previously generated information
3 Key demands on model-driven development and to incrementally refine the model components during
of PLC software for machine tools the course of development. The prerequisite for this is a
formal or semiformal representation of the machine tool
Model-driven development of PLC software requires a system. This also allows mechanisms to be implemented
practical real-world approach. At the same time, a number for consistency checks and model verification [8]. Fur-
of domain-specific requirements need to be taken into thermore, a methodical procedure must be provided in
consideration (Fig. 2). Due to the high level of complexity
of modern machine tools, a one-sided, software-oriented
point of view is no longer adequate when developing PLC
programs. Rather, the properties and structural design of
Fig. 1 Model-driven engineering (schematic representation) Fig. 2 Key demands on a model-driven development approach
123
Prod. Eng. Res. Devel. (2008) 2:39–46 41
Development Iteration
necessary to define how the individual model constructs are
Verification
123
42 Prod. Eng. Res. Devel. (2008) 2:39–46
123
Prod. Eng. Res. Devel. (2008) 2:39–46 43
123
44 Prod. Eng. Res. Devel. (2008) 2:39–46
Door closed
[t=1500] Elevate Ready
entry/closed
123
Prod. Eng. Res. Devel. (2008) 2:39–46 45
10 Software validation and optimization through The control software can be tested without additional
simulations effort required to model the behavior of the NC, PLC and
user interface. Likewise, labor-intensive and error-prone
Until now, the implemented control programs have usually adaptations to the control code can be avoided. The inte-
been verified and optimized using a real prototype of the gration of the familiar, complete control and operation
machine tool. Once the essential installation tasks are functionality ensures acceptance by the users of the simu-
complete, the control programs are loaded onto the lation system. Using standardized interfaces for the
machine control system and tested incrementally. Errors in integration of the control hardware ensures that the simu-
the software are identified and corrected onsite. The reason lation models of the machine tool are independent from the
for proceeding in this manner is that the control software control hardware used. The implementation of a system of
only works correctly when it interacts with the electro- this kind is presented in [21].
mechanical, electrical, hydraulic and pneumatic
components of the machine. Thus preceding system testing
is not feasible [20]. 11 Summary
The mentioned procedure means that great effort is
required to implement the suggestions for improvement This article has presented an approach for model-driven
that are gained while commissioning the software during software development. It has focused on describing a
machine development. Likewise, the enormous time pres- corresponding methodology as well as suitable modeling
sure during verification and optimization of the developed constructs for this purpose. Also the integration of
programs leads to lower software quality and high costs. appropriate simulation methods was discussed. Future
The objective, therefore, is to commission the control work will focus on the implementation of methods for
software using the virtual model of the machine tool’s automated model transformation, the further formaliza-
hardware components. Two possible approaches exist for tion of modeling constructs and their integration and
this procedure. For hardware-in-the-loop simulation validation based on complex examples from the indus-
(HILS), the real NC, PLC and HMI are connected to a trial field.
virtual model of the machine tool. Software-in-the-loop
simulation (SILS) does not use any real control hardware.
The behavior of these components is reproduced and References
emulated. Figure 8 shows a comparison of the two
approaches described above. 1. Weck M, Brecher C (2005) Werkzeugmaschinen—automatisie-
rung von maschinen und anlagen, 6th edn. Springer, Berlin
HILS has a few key benefits. One is that it enables 2. Gausemeier J, Lindemann U, Reinhart G (2000) Kooperatives
mapping of the real time behavior. Though this reduces the produktengineering. Bonifatius, Paderborn
possible complexity of the simulation models due to the 3. Gewald N, Mikk E (2003) Ein industrielles wiederverwendungs-
requirement for real-time ability, it allows the integration konzept für IEC 61131-3 auf der basis von UML. Atp—
Automatisierungstechnische Praxis 45(6):59–68
of real machine components and the display of the real 4. Bundesministerium für bildung und forschung BMBF (ed) (2005)
time behavior of the machine tool components. Positionspapier—forschungs-und handlungsbedarf für zuverläss-
ige mechatronische systeme. Forschungszentrum karlsruhe,
Karlsruhe
5. Kent S (2002) Model driven engineering. In: Buttler M (ed)
Proceedings of the 3rd international conference on integrated
Propertiesofofthe
Properties theapproach
approach HILS SILS
HILS SILS
formal methods, Turku (Finland). Springer, Berlin
Low
Low effort
effort for modeling
modeling and
andadaption
adaption 6. Rugaber S, Stirewalt K (2004) Model-driven reverse engineering.
IEEE Softw 21(4):45–53
Representation of real
Representation of real time
timebehavior
behavior 7. Schlingloff H, Conrad M, Dörr H, Sühl C (2004) Modellbasierte
Full
Full integration the control
integration of the controland
andhuman-
human- steuerungsgeräteentwicklung für den automobilbereich. In: Plö-
machine-interface functionality
machine-interface functionality derer E (ed) Automotive—safety & security 2004—Sicherheit
und Zuverlässigkeit für automobile Informationstechnik, Stutt-
Integration
Integration of real hardware
hardwarecomponents
components gart. Shaker, Aachen
8. Fischer K, Vogel-Heuser B (2002) UML in der automati-
High
High model
model complexity
complexity sierungstechnischen Anwendung—Stärken und Schwächen.
Widely
Widely accepted by users
accepted by users Atp—Automatisierungstechnische Praxis 44(10):3–69
9. Stahl T, Voelter M (2005) Modellgetriebene softwareentwick-
Independent target control
Independent from target controlhardware
hardware lung—techniken, engineering, management, 1st edn. dPunkt,
Heidelberg
Fulfilled Not Fulfilled PartiallyFulfilled 10. Zeigler BP, Praehofer H, Kim TG (2005) Theory of modeling and
simulation—integrating discrete event and continuous complex
Fig. 8 Hardware and software-in-the-loop simulation dynamic systems, 2nd edn. Academic Press, Amsterdam
123
46 Prod. Eng. Res. Devel. (2008) 2:39–46
11. Selic B (1998) Using UML for modeling complex real-time 17. IEC 61131-3: programmable controllers—Part 3: programming
systems. In: Mueller F, Bestravos A (eds) Languages, compilers languages. Beuth, Berlin (2004)
and tools for embedded systems, Montreal. Springer, Berlin 18. Object management group: model driven architecture guide—
12. Object management group: UML superstructure specification— version 1.0.1. \http://www.omg.org/docs/omg/03-06-01.pdf[
version 2.0. \http://www.omg.org/docs/formal/05-07-04.pdf[ (15th February 2007)
(15th February 2007) 19. Braatz A (2003) From model to code—generation of PLC soft-
13. Weilkiens T (2006) Systems engineering mit SysML/UML— ware from UML. In: Schraft RD, Brandenburg G, Bender K,
modellierung, analyse, design. dPunkt, Heidelberg Hoepf M (eds) SPS/IPC/DRIVES, Nuremberg. VDE-Verlag,
14. Object management group: systems modeling language specifi- Berlin
cation—version 1.0. \http://www.omg.org/docs/ptc/06-05-04.pdf 20. Zaeh MF, Ehrenstrasser M, Poernbacher C, Wuensch G Emerg-
[ (15th February 2007) ing virtual machine tools. In: Shimada K (ed) Design automation
15. Engell S, Frehse G, Schnieder E (2002) Modelling, analysis, and conference, ASME design engineering technical conferences,
design of hybrid systems. Springer, Berlin paper no. DETC2003/DAC-48756
16. Henzinger TA (1996) The theory of hybrid automata. In: Pro- 21. Zaeh MF, Poernbacher C (2005) A Model-based method to
ceedings of the 11th annual IEEE symposium on logic in develop PLC software for machine tools. Ann CIRP 54(1):371–
computer science, Los Alamitos (CA). IEEE Press, New Bruns- 374
wick (NJ)
123