GF SP DCDS Jun 2007

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 6

1st IFAC Workshop on Dependable Control of Discrete Systems (DCDS'07)

ENS Cachan, France - June 13-15, 2007

OPERATION MODES HANDLING IN DISTRIBUTED AUTOMATION SYSTEMS

Seno Panjaitan and Georg Frey

University of Kaiserslautern, FB EIT, JPA²


Erwin-Schroedinger-Str. 12, D-67653 Kaiserslautern, Germany
{panjaitan|frey}@eit.uni-kl.de

Abstract: Operation mode handling is one of the important tasks in automation systems.
Guidelines for the definition and handling of operation modes are currently provided by
academicians and related organizations focusing on centralized systems. In distributed
automation systems, such guidelines are seldom dealt with. Therefore, operation mode
guidance compatible with the distributed application idea is proposed in this paper.
Some modes such as automatic (including setup/starting-up, normal production, hold,
stop, tolerance error handling and abort), semi-automatic, manual, emergency stop and
idle are considered for managing the operation. The modeling using UML state machine
is presented to describe the behavior of modes and their internal states. An
implementation based on a task scheduling approach is presented as an example for the
application of the developed strategies. Copyright © 2007 IFAC

Keywords: operation mode handling, distributed automation system, UML.

1. INTRODUCTION and do not offer the high degree of flexibility needed


in advanced automation system. Today, embedded
In automation systems, there are always several controllers as well as fast and reliable communication
modes of operation which have to be handled to get a networks are available. These technologies enabled
controlled system. Inefficiencies of both cost and the development of distributed automation systems
time will arise if moving from one mode to another is (DAS), providing a higher flexibility and re-
not managed properly. The relationship of states configurability. A DAS can be defined as a set of
inside a mode should also be described clearly. In systems that are geographically distributed and
addition, to give a clear semantics and reduce operated in a cooperative way in order to work as a
misunderstanding among people involved in design whole. Such a system allows autonomous control and
and use of a system a common notation is very supervision in each of its constituents.
important. It is clear to see that some form of
operation mode (OM) guideline is required to Strategies to handle OMs locally (one controller) and
improve comprehensibility and re-usability of a globally (overall system) in a DAS tend to be more
control strategy. complex than for centralized system. Since OM
methods for centralized systems can not directly be
In automation there are different possible system applied to DAS, a new guidance for OMs compliant
architectures. In a centralized automation system a with distributed applications is proposed in this
large number of sensors and actuators are handled paper. As modeling tool, UML state machine is
using a single control and supervision system. employed.
Therefore, flexibility and re-usability of the
developed system is very limited. Distributed control The rest of this paper is organized as follows. The
systems (DCS) using modular controllers with a next section gives an overview of current approaches
central supervision system are a first step to solve related to OMs. Section 3 presents the proposed OMs
this problem. Such systems however tend to be for distributed systems. Resetting and restarting in
developed using large monolithic software packages OMs is discussed in Section 4. Section 5 discusses
which are generally difficult to integrate for a new the transition between modes. Section 6 illustrates
application. Concisely, centralized and traditional how to implement the OMs. The last section
distributed systems are hard to modify and extend concludes the paper and gives an outlook.
2. OMs IN AUTOMATION SYSTEMS is a position where the process is started or launched.
The final state is a status where the process is
In automation systems, operation modes determine completed, e.g. state complete. The transition state is
how the system (or sub-systems thereof) will operate a related activity to accomplish particular tasks and
in response to the commands that are issued to it. For its state name always ends with “ing”, e.g. holding,
a given system, the possible OMs as well as the restarting, running, pausing, stopping, and aborting.
corresponding behavior have to be specified. In The quiescent state confirms the status when an
distributed systems, this specification needs to activity has been done and contains no process
consider the OMs of each sub-system where different activity. For instance, some states named held,
sub-systems may possess different OMs. Moreover, paused, stopped, and aborted are categorized as
it can be necessary to define some OMs for the quiescent. Additionally, the proposed commands
complete system either by defining additional modes used to enable a state of activity include start, stop,
for it or by synchronizing OMs of the sub-systems hold, restart, abort, reset, pause and resume. The
via the communication network. As an example for OMs allow modular batch automation implementing
an OM that is not restricted to a sub-system an a series of control steps (traditional DCS).
emergency stop scenario may be considered where
the stop of one sub-system due to a critical situation The third guideline is named PackML which is
may lead to the stop of the overall system. Current proposed by Open Modular Architecture Controls
guidelines related to OMs are listed in Table 1. (OMAC) users group. The guideline is specialized
for packaging machinery automation. Three proposed
Table 1. Overview of OM Guidelines. modes include automatic, maintenance, and manual,
Guideline Reference while three categories of state are acting state, wait
GEMMA Moreno and Peulot (1997) state, and dual state. Some valid states are Stopping,
S88 Pharshall and Lamb (1999) Stopped, Aborting, Aborted, Resetting, Idle, Starting,
PackML OMAC (2006) Execute, Suspending, Suspended, Unsuspending,
Holding, Held, Unholding, Clearing, Completing and
GEMMA (Guide d’Etude des Modes de Marches et Complete. The transitions between states are the
d’Arrêts) is a guideline for planning the operation- result of manual intervention, changes of the process
modes and stand-still modes using a design form. It status, or completion of a mode state. Furthermore,
was proposed by ADEPA (France) in 1984. It two different modes are defined: unit control and
includes four state groups: normal operation, procedural mode. A mode manager has also been
standstill state, fault states and shut down (no power included to manage unit mode change.
supply of the control). The production process will
run among the particular subsets inside the first three For the three presented approaches to be compatible
state groups. The proposed design process using this with DAS implementations extensions should be
approach is based on three steps as follows. First provided so that the OMs in each sub-system and
Step: the regarded operation modes are selected in their corporation could be detailed unequivocally.
design form based on the requirements of the process
to be controlled. Second Step: the transitions and
switching conditions between states (modes) are 3. THE PROPOSED OMs GUIDELINE
defined. Third Step: the resulting design form along
with additional specifications of the modes is For the latest technology in automation i.e., DASs,
transformed into a model such as Grafcet or Petri net. OMs guidelines are rarely dealt with. Some standards
Based on this model, the implementation is started in this area such as IEC 61804 (IEC, 2000) and IEC
into low level languages. GEMMA is quite general, 61499-1 (IEC, 2005) have mentioned such terms. Yet
i.e., not specific to any special kind of controlled those standards provide inadequate specific details.
process. However, GEMMA is a manual process, i.e. In IEC 61804, OM is defined as managerial function
there are no tools supporting it directly. Hence, it is and some OMs are mentioned without sufficient
not easy to integrate GEMMA into a modern details. In IEC 61499-1 the explanation of operation
development process. mode is too short and focused on the operation of
software components (mode of a function block)
Another guideline for OMs in manufacturing control Therefore, the guideline specified in this work is
is the S88 standard from ISA. It used specifically to based on the ideas from GEMMA, S88 and PackML.
guide the development of batch control processes.
S88 uses three modes for procedural elements (i.e., The modes in DAS may cover two areas: system and
automatic, semi-automatic and manual) and two sub-system (cf. Fig. 1). The system is the integration
modes for basic control (i.e., automatic and manual). of all sub-systems via system bus. The sub-system is
A mode in S88 determines how equipment units and a set of elements, which is a system itself, and a part
procedural elements respond to commands and how of the whole system communicating via system
they operate. There are two important elements in a and/or local bus, e.g., cell system, work-stations,
mode, i.e., procedural states and commands. In machines. The proposed OMs guideline considers
procedural states, four kinds of states are employed: both areas. Normal operation mode is general and
initial, final, transient and quiescent. The initial state may be implemented in different levels.
Fig. 1. Areas of a DAS as a concern of OMs
For uncritical systems it is often sufficient to put only
one OM feature to a system level. However, OM Fig. 2.State machine of general OMs for a system
features can also be put in each sub-system which
seems to be a better solution for the DASs. A central
3.2. Automatic Mode (Sub-system level)
command for all those OMs can still be built at
system level, e.g., Estop command could be linked to
Fig. 3 shows the state machine for automatic mode.
Abort command in all the sub-systems.
The atomic states are ready, stopped, aborted, held,
In the following, UML state machine is used to error handled, and stand-by. Process states are
model OMs. UML provides reusability of models Starting-up, Normal Production, Holding, Error-
and can be directly employed for implementation handling, Stopping and Aborting. When the
based on the object-oriented idea. The UML state Automatic mode is selected, the initial state in this
machine consists of states (atomic or process) and mode is Stopped. The next state is either Setup or
transitions. An atomic state holds a status until its Production_Process. In Setup software parameters as
post transition is enabled whereas a process state well as positions of mechatronic devices are
contains a sequence of operations to be executed initialized. When those activities are finished, the
when the state is active. process is started by moving to Stand-by state. Run
condition starts to Normal_Production automatically.

3.1. General model of OMs

Fig. 2 shows the five modes which are proposed here


for a general model of OMs using UML state
diagram. Each mode can be defined as follows.
Automatic pertains to the process or operation which
runs automatically based on the control algorithm
from one state to another when the respective
conditions are met without intervention by an
operator. However, the operation can be held or
aborted via an emergency condition. Manual
represents the processes operated by mechanical Fig. 3. State machine of automatic mode
force, applied by personal intervention where the
order is specified by an operator. Semi automatic is The process can be stopped or aborted from all states.
a combination of manual and automatic features. A Stopping executes the logic which brings the machine
manual command is required to enable the automatic to a controlled and safe stop. It is normally caused by
feature to execute a function or a part of a process. the fulfillment of provided conditions (e.g. elapsed
Test is a mode dedicated to validate the system, off- waiting time. Abort (Aborting → Aborted) state can
line or on-line to check the control logic. Emergency be entered at any time in response to the emergency
stop (Estop) can be defined in two different ways stop command in the sub-system. Since its domain is
depending on the controlled system. Firstly, when the only in the sub-system, it can not force other sub-
push button corresponding to Estop is pushed, the systems in the system level to stop. An emergency
process is stopped and can not be restarted to stop of the entire system level can be done by Estop
continue the previous operation. It should not be command (Fig. 2). After aborting the process has to
creating a hazardous condition. The system must be be reset to the initial state via Stopped.
reset to the initial condition so the process starts from
the beginning. This method is very common and is
used as Estop definition in the general model of OMs 3.3. Semi-automatic Mode (Sub-system level)
and as Abort command in the sub-systems. Secondly,
pushing the Estop button immediately stops all A UML state machine for semi-automatic mode is
operations. In this case, the previous process and the shown in Fig. 4. The activity outside the production
remaining tasks are possible to be restarted. This kind process reveals the similarity with the automatic
of Estop is named Hold on sub-system level. mode model. However, the state model inside the
production process is quite different. After the stand- 3.6. Test Mode
by state has been reached the process will be started
partly and manually. A process part (batch) could be The specification of the test mode highly depends on
compounded as a sequence of tasks which run the requirements of system, user and developer.
automatically. When the processes have been done, Therefore, the test mode is hard to be generalized.
the operation will move to stand-by state and wait for This mode allows, for example, off-line simulation to
another manual start before continuing the process. test the control logic using a particular testing tool or
Each process part can still be held by human on-line testing to check the reliability of the
intervention. After it is restarted, it will be waiting employed mechatronic components. Some on-line
for a Run command in the stand-by state. testing considering the steps of operation can also be
done using the manual mode in normal operation.

4. RESETTING AND RESTARTING PROCESSES

Resetting and restarting are necessary if work was in


progress and an abort or hold command had
occurred. In resetting, it is clear that all the
production processes should be started from the
beginning (initial condition). Hence, the parameters
should be reset to initial values. The initial position
of each mechatronic device later will be set by a
starting-up activity in each operation mode.
Fig. 4.State machine of semi-automatic mode
Restarting is an attempt to continue the previous
process after it was held by human intervention. This
3.4. Manual Mode (Sub-system level) activity should be handled carefully since there are
several possible ways to do it. Depending on the
In manual mode, the model becomes simpler (see controlled process, the interrupted task may be
Fig. 5). The starting-up is done manually as well as restarted from the beginning or from the point where
the process sequences. This means that each task is it was stopped. Alternatively the last task is ignored
done one by one responding to the manual start from and the process goes on with the next task.
an operator. For an interruptible task, its progress can
be held and later be continued. The process can be There are several approaches to give a better way to
stopped or aborted easily. This mode is usually used restart a machine after a hold or pause and continue
when there are problems in the automatic process. the previous process. In (Tittus, et al., 2000), a restart
points approach is applied to production states from
which a cell can continue its work after the
occurrence of an error. A similar approach is
proposed in (Loborg and Törne, 1996). However, the
number of restart paths, which are employed in each
state, can become very large. In (Klein, et al., 1996),
an approach for re-planning an assembly line after an
error is presented. A quite powerful processor is
required to deal with this approach. (Brandin, 1996)
includes error recovery in the system specification by
assuming that errors can be foreseen and later on
automatic recovery can be done off-line as in
Fig. 5.State machine of manual mode (Adamides, et al., 1996). Nevertheless, in many
applications it is hard to foresee the errors that may
occur especially after human intervention. A method
3.5. Emergency Stop Mode (System level) to resynchronize and restart a manufacturing system
after the occurrence and subsequent repair of a fault
Once the Estop button is pushed the process will be
is proposed in (Andersson, et al., 2006).
stopped and some data is recovered for diagnosis (cf.
Fig. 6). This mode has the highest priority. It can be
In DASs production tasks are distributed over several
activated even when processes is still running.
components. Therefore, the restart of a production
means restarting the component executions. The
proposed way of handling re-starting depends on the
existence of a synchronizer component capable of
supervising the currently executed tasks. Section 6
will present the corresponding software architecture
Fig. 6.State machine of Estop mode and provide an example.
5. TRANSITIONS BETWEEN MODES similar function as emergency stop but it is
implemented in the sub-system, not for the whole
For the transitions between modes two cases are system. For example, a system has four sub-systems
distinguished: (1) transitions between modes inside and each of them has their own Estop named abort.
normal operation and (2) transitions between normal Furthermore, some transitions may depend on other
operation modes and the other states shown in Fig. 2. sub-systems. In this case the relevant information has
to be managed globally or distributed via the
network. For example, step 3 in sub-system II which
5.1. Transition in Normal Operation has a task to assemble a work piece should be
waiting the finalization of step 2 in sub-system I
Normal operation has three modes: automatic, semi- which has the task to supply a work piece. Therefore,
automatic and manual. The models of these modes sub-system II should go to stand-by until sub-system
(see Fig. 3-5) show a similar structure with some I reports the successful execution of step 2.
differences inside the production process state. The
main difference lies in the handling of the normal
production. In automatic it is done automatically, in 6. IMPLEMENTING OMs IN DAS
semi-automatic it is done part by part manually but
inside the part the processes run automatically, while The approach for implementing OMs here is based
in manual, the process order is done manually step by on Functionality Based Control (FBC) and the
step. The key of the transition between the modes is Scheduler-Selector-Synchronizer Architecture (S³).
to memorize the currently executed step. For FBC is an approach to build software controllers
example, in the normal production state in automatic based on common functionalities of mechatronic
process there is a task sequence which should be devices. The goal is to improve reusability by using
done. Let say that the normal production is provided functional objects to control different
employing the third step, so in order to move to semi- mechatronic components. However, the interactions
automatic mode then the process should be held. among components in many cases are very complex.
Semi-automatic should be selected and then the Consequently changing the scenarios of component
process can be restarted by going directly to the third execution becomes hard. As a solution, S³ is
step. Concisely, the transition between modes in proposed. Scheduler is employed to receive schedule
normal operation always contains the following scenarios, manage them, and issue tasks. Based on
steps: (1) hold the normal production, (2) memorize the issued tasks, Selector will execute the controlled
what step is stopped (manually or automatically), (3) objects. Synchronizer will confirm the execution to
change the mode, and (4) restart the process and Scheduler. Based on the confirmation, Scheduler will
continue the memorized step after the run condition take a decision for the next action. In Scheduler,
is enabled. schedule scenarios are representations of OMs. For
example, a process employs four components, i.e.,
conveyor (C1), rotary table (C2), driller (C3), and
5.2. Other Transitions tester (C4). The components provide one or more
functionalities indicated by the dot-notation below
Other transitions manage the relationships of (e.g. C4.pull and C4.test). The sequence of operation
operation modes in the normal operation to the (SOP) for each state in the automatic mode can be
emergency stop and test mode as well as to the represented as follows:
atomic states OFF and IDLE. At the beginning the
system of course is off (without power). When it is Automatic Mode (M1):
turned-on, the process will be in idle position waiting S1: Starting-up = <C3.pull || C4.pull, C2.move>
S2: Normal Prod. = <C1.move, C2.move, C3.drill,
for a command. From here there are four options, to C2.move, C4.test, C2.move >
test mode, to a mode in normal production, S3: Holding S2.3
emergency stop or turning off. The transition of them S4: Error_handling S2.4
should be considered case by case. For instance, the S5: Aborting S2.4
S6: Stopping S2.2
process in a particular mode in normal operation will
be stopped dramatically by issuing an Estop signal. In this example S1 and S2 are process states
After Estop the system will be moved to a safe state. containing several steps. In sequence S1, components
From this, the normal operation is not allowed to be C3 and C4 are run concurrently in the first step
restarted. Hence, resetting to the IDLE state has to be (S1.1). Thereafter C2 is executed (S1.2) finally S1
done first. Another option is to turn off the system will move to ready state after all tasks are completed.
from the Estop mode. Therefore, the Estop mode Start then establishes normal production, i.e.,
here should be issued only in emergency cases that sequence S2. In holding an operation step, there are
can not be handled by holding the system or stopping three possible cases: (1) task finished, (2) undone and
a sub-system. In case that the solution can be done by uninterruptible task, or (3) undone and interruptible
holding the process the hold command as a soft kind task. For instance, the third step in sequence S2
of stop can be given as a manual intervention. In (S2.3), i.e., C3.drill process, is held. The possible
other cases, a sub-system can be stopped cases for this process are (1) and (3). If the drill
dramatically using abort command which has a process is restarted, it will start the forth sequence on
case (1) or continue the previous task on case (3). For to be implemented as a controller, but as scenarios to
Error_handling S2.4, error on C4.test component will enhance the controllability of the system. Therefore,
be repaired. Later the normal production will be modes here are part of the controller employed by
restarted from the forth sequence. Additionally, the scheduler, selector and synchronizer to manage the
interrupted sequence is recorded for diagnosis, e.g. execution of components as controlled objects. By
state S5 is enabled as the aborting of S2.4 operation. providing this guidance, it is expected that the
SOPs of process states in semi-automatic mode (M2), developer starts to consider the OMs at an early stage
manual mode (M3) and Emergency-stop mode (M4) of system development. Future work is directed at
can be represented in similar way. Changing the fully integrating the OMs into the UML-based
modes from M1 to M2 is also possible. For example, development process for distributed automation
automatic mode process held on M1.S2.3 can be systems presented in (Panjaitan and Frey, 2006).
restarted in manual mode M2.S2.4.

The architecture combining FBC and S³ in sub- REFERENCES


system level is shown in Fig. 7, including OMs.
Command of Operation (COP), such as Start, Restart, Adamides, E., E. Yamalidou and D. Bouvin (1996) A
Hold, etc., is issued to Scheduler via the network systematic framework for the recovery of
using the signals sent from a console device. The flexible production system, Int. Journal of
sub-system will respond to the command and process Production Research, Vol. 34, no. 7, pp. 1875-
the Sequence of Operations (SOP) related to the 1893.
selected OM. Therefore, SOPs for all OMs have to be Andersson, K., Lennartson, B. and Fabian, M. (2006)
pre-defined and either stored internally in the devices Restarting flexible manufacturing systems;
or submitted from the console via the network. Data Synthesis of restart states, Proc. of the 8th
of Operation Restrictions (DOR) can be added to International Workshop on Discrete Event
describe restrictions on the schedules. Moreover, Systems, pp. 201- 206.
some critical commands such as Estop/abort or hold Brandin B. (1996). Error-recovering supervisory
will be sent not only to the scheduler but also to all control of automated manufacturing systems,
components as controlled objects. Based on the Integrated Computer-Aided Engineering, Vol. 3,
information of component execution in Synchronizer, no. 4, pp. 255-267.
Scheduler will restart a held process. Panjaitan, S. and G. Frey (2006), Designing
generic/reusable functionality based controllers
for distributed control using UML, Proc. of the
22nd IEEE Int. Conf. on Robotics and
Automation, Florida (USA), pp. 321-326.
IEC (2001). IEC 61804: function blocks (FB) for
process control - part 1 overview of system
aspects, Committee Draft for Vote (CDV), 2001.
IEC (2005). IEC 61499-1: function block – part 1:
architecture, IEC International Standard Press.
Klein I., P. Jonsson and C. Backstrom (1999).
Efficient planning for miniature assembly line,
Vol. 34, No. 7, pp. 1875-1893.
Loborg, P. (1994). Error recovery in automation – an
overview, AAAI Spring Symposium on Detecting
and Resolving Errors in Manufacturing system,
Stanford, USA, 1994.
Loborg, P. and A, Törne (1996). Towards error
recovery in sequential control applications, Proc.
of the 6th International Symposium on Robotics
COP: Command of Operations and Manufacturing, Montpellier (France), pp.
OMs: Operation modes 377-383.
SOP: Schedules of Operations Moreno, S. and E. Peulot (1997). Le GEMMA –
DOR: Data of Operation Restriction
Guide d’Etude des Modes de Marches et
Fig. 7. Example of OMs implementation in DAS d’Arrêts, Educalivre, Paris (France).
OMAC (2006). Packaging Machine Language V3.0
Mode & States Definition Document, OMAC
7. CONCLUSION AND OUTLOOK Motion for Packaging Workgroup.
Parshall, J. and L. Lamb (1999). Applying S88: Batch
In this paper, an approach to handle operation modes Control from a User’s Perspective, ISA Press.
(OMs) of a system and its sub-systems especially for Tittus, M., S.–A. Andréasson and A.P. Adlemo
distributed applications has been elucidated. Design (2000). Fast restart of manufacturing cells using
models using UML state machine have been depicted restart points, Proc. of the 4th World Automation
to describe its behavior. The OMs model is not meant Congress, Wailea (Maui).

You might also like