0% found this document useful (0 votes)
9 views

Model-based control of a handling system with SysML

This paper presents a model-based approach for developing control logic in industrial automation systems using SysML, addressing the limitations of traditional IEC 61131 programming languages. The methodology involves creating an executable model that integrates virtual components with real hardware, facilitating virtual commissioning and reducing programming effort. The proposed approach was successfully applied to a handling system, demonstrating its effectiveness in managing complex production systems.

Uploaded by

Jesús Sánchez
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
9 views

Model-based control of a handling system with SysML

This paper presents a model-based approach for developing control logic in industrial automation systems using SysML, addressing the limitations of traditional IEC 61131 programming languages. The methodology involves creating an executable model that integrates virtual components with real hardware, facilitating virtual commissioning and reducing programming effort. The proposed approach was successfully applied to a handling system, demonstrating its effectiveness in managing complex production systems.

Uploaded by

Jesús Sánchez
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 9

Available online at www.sciencedirect.

com

Procedia Computer Science 16 (2013) 197 – 205

Conference on Syst
Eds.: C.J.J. Paredis, C. Bishop, D. Bodner, Georgia Institute of Technology, Atlanta, GA, March 19-22, 2013.

Model-based control of a handling system with SysML


Christian Brecher, Johannes A. Nittinger*, Andreas Karlberger
Laboratory for Machine Tools and Production Engineering (WZL)
of RWTH Aachen University, Steinbachstr. 19, Aachen 52056, Germany

Abstract

For programming controllers in industrial automation systems languages based on IEC 61131 represent the state-of-the-art.
However, these languages have limited capabilities for describing multi-disciplinary aspects. Model-based approaches that have
successfully been applied to software engineering projects also provide a promising alternative for the engineering of automated
manufacturing systems. The integration of model-based approaches into conventional control architectures still represents a
challenge. Using a handling system for unloading parts from a pallet as an example this paper demonstrates and evaluates a
practical approach for developing control logic based on a SysML model. The approach consists of three steps: First, the
behavior of the system components (e.g. grippers, axes) are described in an interdisciplinary way, representing the internal state
as well as an IEC 61131 compliant signaling interface. The second step is to develop agents that implement the actual logic and
are able to control the virtual components using the implemented interface. In the last step, during commissioning of the real
system, the virtual components are replaced by a module syncing the signals of the virtual agents interface with a PLC providing
the same interface for the real system, effectively having the real system now being controlled by virtual agents.

© 2013
© 2013The
TheAuthors.
Authors. Published
Published by Elsevier
by Elsevier B.V. B.V.
Selectionand/or
Selection and/or peer-review
peer-review under
under responsibility
responsibility of Georgia
of Georgia InstituteInstitute of Technology.
of Technology

Keywords: SysML; model-based; handling system; automation; PLC; IEC 61131; executable model

1. Introduction

Manufacturers of customer-specific automation systems such as production lines are faced with a complex
engineering process. Due to the tight integration of components and the multi-disciplinary character of most
automated industrial systems that typically combine electrical, mechanical, control, and software engineering, it is
crucial to establish a high level of communication between different departments of the company [1]. Problems that
are created due to a lack of communication often remain undetected until production start-up of the system. Solving
these problems then is usually an expensive and time consuming iterative process.

* Corresponding author. Tel.: +49-241-80-27592; fax: +49-241-80-22293.


E-mail address: [email protected].

1877-0509 © 2013 The Authors. Published by Elsevier B.V.


Selection and/or peer-review under responsibility of Georgia Institute of Technology
doi:10.1016/j.procs.2013.01.021
198 Christian Brecher et al. / Procedia Computer Science 16 (2013) 197 – 205

For managing the engineering process in a more efficient and formal way model-based systems engineering
(MBSE) is a promising approach. According to a survey performed by Reichwein and Paredis [2] there are
numerous different frameworks and modeling languages available for MBSE. Because the Systems Modeling
Language (SysML) [3] allows the modeling of structural as well as behavioral aspects of a system facilitating
multiple diagram types and because of its strong object-oriented capabilities, modeling based on SysML is a
promising approach and has thus been subject of several publications. While Weilkiens [4] illustrates the SysML
based MBSE process for systems in general, there have also been activities focusing on specific needs for
engineering of industrial automation and manufacturing systems. For example Thramboulidis and Frey [5] assessed
that SysML rather than Unified Modeling Language (UML) is capable for modeling automation systems and
propose the extension of SysML with a profile for modeling elements of IEC-61131 [6], a widely accepted industry
automation standard for programmable logic controllers (PLC). A similar proposal using UML instead of SysML
has been published before [7], furthermore suggesting to facilitate the system model for hardware-in-the-loop
simulations. The field of simulation has recently been addressed again by ModelicaML [8], a proposed UML profile
for integrating the behavioral modeling language Modelica with SysML.
Languages that are based on the IEC standard 61131-3 are commonly employed in control engineering for PLCs.
The standard is supported by almost all manufacturers of control hardware and has been part of industrial education
for many years. Thus, from an industrial point of view, revolutionary approaches in the field of control technology
are risky and not well accepted. Furthermore, control components such as axis control modules require precompiled
driver modules that are based on IEC 61131-3. For these components difficulties with integration arise if the control
architecture is not following the IEC standard.
However, regarding the increasing complexity of automation systems and the shortening development cycles and
commissioning times possibilities for abstraction as used in object-oriented programming or in MBSE will also be
needed in controller programming. While the graphical language Sequence Function Chart (SFC), which is specified
in IEC 61131-3, does support programming on a higher level of abstraction it only addresses a primarily sequence
oriented view. An object oriented extension of the IEC 61131-3 standard has also recently been adopted, but
regarding the possible level of abstraction there is still a gap between MBSE and PLC programming [9].

2. Approach

The approach that we follow here is to integrate IEC 61131-3 compatible PLCs into a model-based development
process. Therefor the controller with its behavior is modeled as part of the overall system. Similar approaches
propose to generate PLC compliant code from a Unified Modeling Language model and to use that code on the PLC
[10]. However, this splits up model and code and does not encourage the use of the model during the operational
phase of the PLC. Thus, the approach presented in this paper is not generating PLC code, but generating code for
executing the model as a higher level application that directly controls the PLC. Only elementary logic and e.g. the
described controller driver modules are implemented within the PLC program and all data is passed to or received
from the executed model.
Effectively, the approach of this paper is the proposal of a methodology including the following aspects:

Evolutionary transfer of model-based approaches into industrial control architectures


Description of the system as an executable model based on state machines
Usage of the system model for development of the control application
Testing the control application with virtual components within the model
Replacement of the controlled virtual components with real hardware

The main purpose of the described methodology is to decrease the effort for programming, commissioning and
modification of complex production systems significantly and to increase the reutilization ratio of developed assets.
For reasons of efficiency, the creation of component behavior models based on state machines has to be
integrated in an overall system modeling process. The behavior models should be reused whenever applicable, e.g.
for diagnostics during the operational phase or for the development of modifications of the production system that
may become necessary. The model includes the structure of each system component and communication
mechanisms between components must be analyzed and modeled accordingly. Since the component interfaces will
Christian Brecher et al. / Procedia Computer Science 16 (2013) 197 – 205 199

be used for communication with real and virtual components, behavior and structure of each interface has to be
modeled compliant to the IEC 61131-3 signal structure.

Fig. 1. Architecture of the proposed approach

Once the model contains component behavior, control agents based on state charts are developed for controlling
the virtual system components as seen in Fig. 1. The agents consume and trigger events that are sent to the
controlled components via the ioController
C interface. During the development process the agents can be tested using
virtual components by generating and compiling code for the executable SysML model without a connection to the
real system.
For switching the system from operating with virtual components to controlling real components the behavior
model of the virtual model component is replaced with an interfacing component. The interfacing component
provides the same interface as the virtual component but redirects the signals to (or from) an OPC server of the real
system. Then, generating and compiling the executable model leads to an application that contains only the agents
controlling the real system via the interfacing module.

3. Application scenario: handling system

3.1. Overview

For supplying parts to a robot assembly cell a handling system of the company Festo is installed within the cell
(cf. Fig. 2). The handling system receives configurable pallets filled with parts from a transportation table. The main
task of the system is to pick up parts from the pallet with the gripper and to place them on a conveyer belt within
reach of the robot. The handling system has three translational axes and a pneumatic gripper that can be rotated by
two additional axes. While the rotational axes are pneumatically driven and can be moved between two fixed
positions, the translational axes can be continuously displaced within the operation range and have corresponding
controller systems. The types of drives for the translational axes are:

Asynchronous servo motor (X-axis)


Electrical stepper motor (Z-axis)
Pneumatic linear axis (Y-axis)

Being driven by the translational axes the gripper can operate within the whole area above the pallet and also
within a small area within the robot operation range. For placing a part on the belt there is a defined exchange
position.
200 Christian Brecher et al. / Procedia Computer Science 16 (2013) 197 – 205

Fig. 2. Main components and structure of the handling system

3.2. Control architecture

The central component of the control architecture of the handling system as shown in Fig. 3 is the PLC. For
communication it has an industrial bus system (PROFIBUS) connecting it to the axis controller modules, sensors,
valve terminals for controlling the pneumatic actuators, and an operator panel. For accessing the axis controllers
within the PLC program precompiled driver modules are provided by the controller manufacturer and have to be
imported into the PLC base program.
For programming the PLC conventionally the control logic would completely be implemented within the PLC
using any of the languages defined in IEC 61131-3. As the proposed approach requires only the most elementary
functions to be implemented within the PLC, the PLC application used in this setup consists only of the driver
modules. Access to all PLC functions from external software components is provided by input-/output-variables via
standardized OPC connection. This interface allows control of all system functions from a PC-based application
such as the generated executable SysML model for instance.
Christian Brecher et al. / Procedia Computer Science 16 (2013) 197 – 205 201

Fig. 3. Control architecture of the handling system

Fig. 4. AssemblyCell model structure: (a) block definition diagram and (b) internal block diagram
202 Christian Brecher et al. / Procedia Computer Science 16 (2013) 197 – 205

4. Developing the system model

4.1. Modeling the structure of the handling system

The model structure as seen in the block definition diagram (BDD) in Fig. 4 (a) is highly oriented on the structure
of the real system. The main component, in this case AssemblyCell has several subcomponents of which PcControl,
Festo and FestoOpc are of special relevance for the control system. While PcControl represents the embedded
computer implementing the control logic, Festo and FestoOpc represent either the behavior model of the real system
or an interfacing model to it. As indicated in Fig. 4 (b) choosing between real and virtual system is done by
reconnecting the FlowConnection from PcControl to the desired communication partner.
The behavior model of the handling system Festo as seen in Fig. 5 is composed of further sub-models such as
AxisController, Gripper or OperatorPanel. Each component that can be controlled by the PLC has a FlowPort,
which provides continuous signal communication mechanisms between model components according to the
industrial bus system of the PLC. The signal properties of this communication such as variable names and data types
are defined as flowProperties within the shown elements of type flowSpecification.

Fig. 5. Structure of the handling system model


Christian Brecher et al. / Procedia Computer Science 16 (2013) 197 – 205 203

4.2. Modeling of component behavior

For modeling component behavior state charts are used. These allow a highly structured and intuitive way of
visualizing the system states on different levels of abstraction and to link transitions between states to certain
conditions or actions such as waiting for or triggering of an event. As seen in Fig. 5 with the base class Axis
components can inherit certain elements including state charts thus providing an efficient way for reusing model
elements. To give an example of how a state machine can implement behavior, Fig. 6 (a) shows the state chart of the
gripper opening and closing behavior. The virtual gripper starts in state closed and can be transitioned to the states
opening, open and closing by either activation of a triggering event or by a timeout of 1000 milliseconds. Each of
the states has entry actions that trigger the setting of the virtual gripper signals (e.g. the PLC sensor inputs such as
gripperOpen or gripperClosed) d respectively. All component communication is event-based and events are sent to
and received from a StandardPort which is connected with the ioController of the gripper.
While the gripper is a relatively simple example there are also more complex cases that have been realized, such
as the axes in Fig. 6 (b) which may also have to implement physical aspects such as moving mass or acceleration
limits.

Fig. 6. (a) Behavior model of opening and closing the gripper (b) Behavior model of an axis
204 Christian Brecher et al. / Procedia Computer Science 16 (2013) 197 – 205

4.3. Interfacing IO-based and event-based communication

A central challenge of the proposed concept is the design of an interface between IO-based and event-based
communication as introduced in [1]. While the PLC operates with virtually continuous IO signals, SysML blocks
communicating with StandardPorts are following an event-based paradigm. For translating between these two kinds
of communication mechanisms each continuous signal has a state chart (cf. Fig. 7) within the model element
ioController. On the IO-based side this element provides a FlowPort which communicates with the real or virtual
system while on the event-based side it provides a StandardPort. For inputs (a) the state chart listens for change
events
t of the relevant variable at the FlowPort
F and sends events to a StandardPort accordingly. For outputs it
consumes events from a StandardPort and then sets the FlowPort
F variables

Fig. 7. (a) ioController for PLC input GripperClosed1 (b) ioController for PLC outputs GripperOpen and GripperClose

5. Discussion, conclusions and future work

In this work we demonstrated how executable SysML models can be used for the control of industrial automation
systems. Furthermore, we illustrated how model-based engineering approaches can be combined with standardized
industrial control components. Compared to the conventional development process a major advantage of using
SysML is the possibility to use powerful but still easily creatable behavior models that allow a virtual
commissioning of the overall system before any real component is built.
During the development process the developer can significantly benefit from an online visualization of the model
using one of the numerous types of SysML diagrams for analysis, e.g. by automatically generating a sequence
diagram of the executed model communication. Additionally, the modeling of a physical system as a state machine
leads to a high level of system understanding and thus creates a solid base for intuitive and efficient control
development. For evaluation, the proposed methodology has successfully been applied to control a handling system,
enabling it to unload parts from a pallet.
The presented work provides a base for discussions to overcome established approaches and procedures in
industrial control programming. Potential for future work can be seen in a (partly) automated model generation for
standardized communication structures. In this context the development and acceptance of a profile for modeling
IEC 61131-3 compliant language elements for a vendor independent use of integrated scenarios is desirable. Besides
an automatic model generation, it may be possible to generate the base PLC code from the system model. In
addition, it could be investigated how parallel operation of behavior models and real systems can be realized, e.g. for
model-based prediction within the controller. Furthermore, for integration of more complex behavior models the use
Christian Brecher et al. / Procedia Computer Science 16 (2013) 197 – 205 205

of ModelicaML as an integrated approach for MBSE and physical simulation with Modelica and its powerful
simulation tools may be considered. Overall, the model-based control development provides an important
contribution for managing complex production systems in an increasingly dynamic environment.

Acknowledgements

The authors would like to thank the German Research Foundation (DFG) for its kind support of the research within
the Cluster of Excellence Integrative Production Technology for High-Wage Countries .

References

1. C. Brecher, W. Herfs, A. Karlberger, Efficient Order Processing for Individualised Machine Tools Through Modelling of Product Families,
Integrative production technology for high-wage countries, Springer, Berlin, 2012, pp. 209-239
2. A. Reichwein, C. Paredis, Overview of Architechture Frameworks and Modeling Languages for Model-Based Systems Engineering,
Proceedings of the ASME 2011 International Design Engineering Technical Conferences & Computers and Information in Engineering
Conference, 2011
3. Object Management Group, Systems Modeling Language (OMG SysML), 1st ed., 2012.
4. T. Weilkiens, Systems engineering with SysM/LUML, Morgan Kaufmann OMG Press/Elsevier, Amsterdam, 2007.
5. K. Thramboulidis, G. Frey, Towards a Model-Driven IEC 61131-based Development Process in Industrial Automation, Journal of Software
Engineering and Applications, Vol. 4 No. 4, April 2011, pp. 217-226.
6. International Electrotechnical Commission, Programmable Controllers Part 3: Programming languages;, 3rd ed. 35.080, 2009.
7. M.F. Zaeh, C. Poernbacher, J. Milberg, A Model-Based Method to Develop PLC Software for Machine Tools, CIRP Annals -Manufacturing
Technology 54 (2005) 371 374.
8 C. Paredis, Y. Bernard, R. Burkhart, H.-P. de Koning, S. Friedenthal, P. Fritzson et. al., An Overview of the SysML-Modelica
Transformation Specification, Proceedings of the 2010 INCOSE International Symposium, Chicago, Illinois, July 12-15, 2010.
9. K. Thramboulidis, G. Frey, An MDD process for IEC 61131-based industrial automation systems, Emerging Technologies & Factory
Automation (ETFA), Toulouse, France, September 5-9, 2011.
10. B. Vogel-Heuser, D. Witsch, U. Katzke, Automatic Code Generation from a UML model to IEC 61131-3 and system configuration tools,
International Conference on Control and Automation, pp. 1034 1039.

You might also like