You are on page 1of 10

A MODELING APPROACH FOR VERIFICATION OF IEC1499

FUNCTION BLOCKS USING NET CONDITION/EVENT


SYSTEMS
Vyatkin, V., Hanisch, H.-M.
Institute for Automation Technology (IFAT), Dept. of Electrical Engineering
Otto-von-Guericke University of Magdeburg, PO-Box 4120, D-39016 Magdeburg, Germany
phone:+49-391-6712747; fax: +49-391-6711191, E-mail:fvyatkin,hamig@hamlet.et.uni-magdeburg.de
Abstract- This paper presents a preliminary report on veri cation of discrete control applica-
tions de ned by a new international standard draft IEC 1499. As a rst step to veri cation, the
structures presented in the IEC1499 are modeled with Net Condition/Event Systems, for which there
exist formal methods and tools of proo ng various qualitative and quantitative properties. The paper
illustrates the methodology of modeling and outlines further steps towards the full-scale veri cation
of execution control of IEC1499 applications.
1 Introduction plicated logic of the blocks activation.
Since the standard is especially dedicated to the
The soon-to-be-revealed international standard IEC- software reusability issue, stressing on such means
1499 provides a new event-driven framework of soft- as modularity, encapsulation, and inheritance, there
ware development for measurement and control sys- is an obvious need for a theoretical ground, which
tems. It follows the way paved by the previous stan- would enable development and investigation of ap-
dard on programming languages for programmable plications by formal methods.
logic controllers (PLCs) IEC1131-3 [2] extending it An inherent feature of present real-time systems
according to the new requirements of distributed con- development is their formal veri cation. Theoreti-
trol systems. cally it is based on the works of E. Clarke [8], J. Os-
According to the draft of IEC 1499 [1], the generic tro [12, 13], Z. Manna and A. Pnueli [11], R. Alur et
structure of an application is a function block, which al. [5, 6]. In particular, veri cation of PLC programs
can be either basic or composite. Application, which (within IEC1131) was studied in [7, 17, 10]. Emerg-
is de ned as a collection of function blocks, con- ing of the new programming concept of IEC1499
nected by event and data ows, can be distributed requires to adjust and extend the veri cation tech-
over multiple devices. For example, a control ap- niques according to the new realities.
plication may include a function block, implement- A typical framework for veri cation includes some
ing the controller itself, as well as a block respon- kind of formal model for the system that is stud-
sible for operator interface (displaying current state ied. Usually, nite state machines, Petri nets, Timed
of the system and processing human interactions), transition systems, etc. are used for this purpose.
and a block which would implement a locking con- The properties which ensure validity or invalidity
troller or supervisor. All these may be supplied by of the system are formally expressed as a predicate
some standard or user de ned blocks implementing (static property) or an expression in Temporal Logic
communication interface of devices where the blocks (dynamic property). Once the properties have been
reside. For instance, the controller may be placed in expressed in the formal language, they are checked
one device (let us say a PLC), the operator interface by means of some "veri cation engine", which usu-
in another device (PC), and the supervisor in a third ally attempts to build the whole space of reachable
device (another PLC). states of the system and check the validity of required
The standard o ers an extensive framework to properties for all of them.
describe system architecture on the logic level, which Although the theory is quite well developed, some
includes the notions of system, device, resource, sub- additional aspects have to be taken into considera-
application, composite and basic function blocks. This tion if one deals with practical control applications.
logic architecture can be mapped onto various phys- The most signi cant are:
ical hardware structures to provide means of porta-
bility and better software reusability. 1. Industrial control systems are usually designed
The IEC1499 de nes a framework for processing and implemented by engineers. Their main
events, which includes as the notion of execution con- task is to come up with a control system which
trol for a single function block, as well as collection actually has to perform some speci c tasks such
of prede ned blocks performing basic logic opera- as controlling a manufacturing system, a pro-
tions over events. Those can be used in de nition cess system, etc. Formal methods for model-
of composite function blocks along with other user ing and veri cation should support the design
de ned blocks, implementing thereby a quite com- and implementation process, but dealing with
the theory of formal modeling and veri cation
cannot be the central part of daily business of
an engineer. Hence, the formalisms of mod-
els and methods have to be adapted smoothly
to the practical needs, and, more than this,
they should be encapsulated and hidden as far
as possible. That means that these methods
should establish an optional support in improv-
ing the quality of a design but not a must in
the design which requires detailed background
knowledge of formal methods and eventually
delays the design process signi cantly. Other-
wise, an engineer would not accept the methods
in his daily business.
2. A model is not the system itself but always
an abstraction re ecting some properties of the Figure 1: Characteristics of function block.
system which are of interest for a particular
question. It must be ensured that the model
really copes with the aspects which are of inter- 2 Structure of IEC1499 function
est. This means that a proper modeling formal-
ism should be chosen to meet the requirements
blocks
of the application, and that a formal or semi- A general diagram of a function block is shown in
formal methodology of model building should Figure 1. Functionality of a basic function block in
be suggested. IEC1499 is provided by means of algorithms, which
3. Formal methods give answers to formal ques- process input and internal data and generate output
tions in terms of the formal model. Questions data. The block consists of head and body, where
and answers have to be mapped to properties of head is connected to the event ow, and the body
the real system. According to our experience it - to the data ow. The algorithms included in the
is extremely useful if the modeling formalism is block are programmed in terms of IEC1131.
as close as possible to the real system for this Causal behavior of the block (i.e. sequencing of
purpose. Each transformation causes a need algorithms' calls) is organized in IEC1499 by means
for establishing a re-transformation and there- of Execution Control (EC), which is a state machine,
fore more formal overhead and possibly loss of connecting event inputs with algorithms and event
relevant information. outputs. Execution Control is de ned by Execution
Control Charts (ECCs), whose notation is simpli ed
4. The modeling formalism as well as the veri- from the Sequential Function Charts of IEC1131-3.
cation engine should successfully cope with The signi cant di erence of this new approach in
the state explosion problem, which is unavoid- contrast to IEC 1131 is that a collection of interact-
able for the realistic-size applications. At least ing function blocks may be distributed over several
ecient construction and simulation of rather control devices, and there is no more a sequential
large models should be possible. control function for interacting function blocks as it
would be the case in IEC 1131. The execution con-
Keeping these requirements in mind when trying trol of function blocks is distributed as well and is
to come up with models for function blocks according established by event interconnections among several
to IEC1499, a suitable model must be chosen or even function blocks.
developed. The draft of IEC1499 states that ECC consists
The remainder of our paper deals with some ba- of EC states, EC transitions, and EC actions, which
sic considerations on how to establish a formal model shall be represented and interpreted as follows:
at least for a part of function block speci cation,
namely the execution control. For this purpose, we 1. The ECC shall be included in an execution con-
rst consider the general structure and behavior of trol block section of the function block type
function blocks following IEC 1499. We then illus- declaration, encapsulated by the control block
trate a way of modeling which seems to signi cantly construct.
meet the requirements stated above from our point
of view. An outlook of further work that needs to be 2. The ECC shall contain exactly one EC ini-
done concludes the paper. tial state, represented graphically as a round
or rectangular, double-outlined shape with an
associated identi er. The EC initial state shall
have no associated EC actions. The ECC shall
contain one or more EC states, represented graph-
ically as round or rectangular, single-outlined
shapes, each with an associated identi er.
3. The ECC can utilize (but not modify) event
input (EI) variables, and utilize and/or modify
event output (EO) variables. Also, the ECC
can utilize but not modify Boolean variables
declared in the function block type speci ca- Figure 2: Example of NCES in two states: transition
tion. forces t2 to re by means of event arc.
t1

4. An EC state can have zero or more associated


EC actions. The association of the EC actions
with the EC state shall be expressed in graph-
3 Net Condition-Event Systems
ical or textual form. The algorithm associated Net Condition/Event Systems (abbr. NCES) have
with an EC action, and the event to be issued been developed in our prior work [14, 15]. It is a for-
on completion of the algorithm, shall be ex- malism for modeling of discrete event systems, based
pressed in graphical or textual form. on Petri nets augmented by information and sig-
5. An EC transition shall be represented graphi- nal exchange capabilities (condition and event arcs),
cally or textually as a directed link from one which provide a certain data exchange and synchro-
EC state to another (or to the same state). nization between modules without exchange of to-
Each EC transition shall have an associated kens.
Boolean condition, equivalent to a Boolean ex- We illustrate brie y behavior of NCES without
pression utilizing one or more event input vari- giving a rigorous de nition of the evaluation rules
ables, input variables, output variables, or in- on a trivial example given in Fig. 2. The net has as
ternal variables of the function block. usual components of Petri nets: places 1 , 4, two p p

transitions 1 2 and arcs ( 1 1), ( 1 2), ( 3 2),


t ;t p ;t t ;p p ;t

Figure 4-a illustrates the type declaration of a ( 2 4) as well as speci c NCES parts: event link
t ;p

function block on the example of INTEGRAL-REAL from the transition 1 to transition 2, and condition
t t

function block borrowed from the draft of IEC 1499 link from the place 3 to transition 1 . The event
p t

(Table 2.2.1 and Annex H), and Figure 4-b shows arc ( 1 2) forces transition 2 to re simultaneously
t ;t t

its Execution Control Chart and internal algorithms, with 1 if it is enabled. In general, a transition having
t

illustrating the rules stated above. Functionality of several incoming event arcs res (when it is enabled)
the block is quite trivial - it integrates the function when at least one of the event inputs is true (one
given by the value of the input XIN (of type REAL) of the driving transitions res). Firing of such de-
driven by the event input EX, providing the result pendent transitions occurs simultaneously, which is
as an output XOUT. Initial value 0 is set to XOUT called as transition step. In the example the transi-
by the algorithm INIT, which is called driven by the tion step is = [ 1 2].
TR t ;t

signal INIT, and then every occurrence of EX event The condition arc ( 3 1 ) adds an additional con-
p ;t

adds to XOUT value of XIN integrated over the time dition on the enableness of 1 - along with marking
t

interval DT. in 1, marking of 3 is also required to make 1 en-


p p t

Thanks to the simple functionality, we use this abled. So, in the state, described by the marking
example to illustrate the rules of transformation of P = f 1 3g (state is de ned by the set of places,
p ;p

function blocks to the model. The same rules can having non-zero marking) the net exhibits the follow-
obviously be applied to blocks with much more so- ing behavior: spontaneous transition 1 is enabled, t

phisticated behavior. since both 1 and 3 are marked. Transition 2 is


p p t

As far as the IEC1499 function blocks concerned, enabled but cannot re spontaneously because of in-
we are interested in veri cation of temporal and qual- coming event arc. However, when 1 res, it drives t

itative liveness and safety properties expressed in t2 to re too. So the next state of the net would
terms of timing and sequencing of input and output be = f 2 4g which is terminal, since no more
P p ;p

signals, resource sharing, etc. Especially in compos- enabled transitions exist.


ite function blocks, where total execution control is A timing mechanism for NCES is described in
de ned as a net of component ECCs, veri cation of [3]. It is based on Petri nets with timed arcs as pre-
the behavior is far from being trivial. sented in [16]. In the Timed NCES (TNCES) each
arc leading from a place to a transition may have
an attached "permeability" time interval [ ], DL; DR

where stands for the lower, and


DL - for the DR

upper limit, which are also called delay and perme-


ability of the arc. In this case the arc is called timed.
gradually extending the modeling framework to the
A timed arc forces transition to re if it becomes en- whole applications and systems. We mostly concen-
abled within the permeability intervals of all of its trate on the execution control issues described by the
incoming timed-arcs. If even a single arc is timed, Execution Control Charts and by the structure of
the whole net becomes timed. In this case we assume event interconnections. Thus we pay little attention
that all non-timed arcs have the permeability interval to the modeling of the internal algorithms as long as
[0 1] and the net would have no really spontaneous
; they do not strongly concern the execution logic of
transitions, which means that even a non-timed and the block. Calls of the algorithms can be modeled by
not event-driven transition res as soon as it becomes the corresponding time delays when such a timing is
enabled. This provides a good framework for model- essential.
ing synchronous objects, in particular programs such This agrees with the practical view on modeling
as Execution Control Charts. - to get more or less valuable results we need to con-
A possible modeling framework might include not centrate only on the important issues sacri cing the
only the TNCES model of a function block (say a neglectable ones.
controller), but also model of uncontrolled plant be- Concerning the variety of data types admitted by
havior. In this case use of timing in the net brings a the standard, we divide them on the four categories:
certain duality: on one hand it allows to make more event signals, which are modeled mainly by event
precise model, which would provide better check of arcs of NCES; Boolean variables which can be mod-
some quantitative properties, but on the other hand eled by marking of a place in the NCES model and
would hamper the check of some qualitative prop- by condition signals, which convey the value of vari-
erties because of elimination of spontaneous transi- able without a ecting tokens ow of the net; time
tions. However, it preserves non-determinism of the parameters, which are mapped onto corresponding
net which is especially important for many qualita- permeability intervals of some NCES arcs, and other
tive estimations. numerical data which are not precisely modeled as
As for the formal veri cation engine, the TNCES far as it does not concern the logic of execution.
are supported by the tool SESA developed in Hum- Based on the analysis of the IEC1499 draft we
boldt University of Berlin [9], and by the simulator, conclude that model of a basic function block should
developed in Magdeburg University. SESA allows include the following components:
to perform quite sophisticated analysis of TNCES, 1. Event input state machine (EI-SM) implemen-
which in particular includes: tation module (one for each event input).
1. Analysis of the integrity, liveness and bound- 2. Event input variables storage (EIVS) models
ness of the net (in terms of Petri nets); (one for each event input).
2. Building the reachability graph of the net and 3. Model of EC operation state machine (ECO-
its processing, such as nding paths which sat- SM).
isfy a predicate over states of the net, nding
the shortest path, and the path with minimal 4. Module implementing ECC (ECC model), in-
time duration; cluding the sub-modules implementing actions
and algorithms (optional).
3. Checking the temporal logic properties of the
net's evolution, expressed in the Computation 5. Event output variables (EOV) models (one for
Tree Logic (CTL) [8]; each event output).
Using SESA it is possible, for example, to nd According to the standard, informationabout events
fragments of dead code (which is never activated), is transmitted between function blocks by means of
answer whether the modeled system passes through event variables. For each event input (EI) shall be
a certain state or a sequence of states, measure short- maintained an EI variable plus a storage, which ex-
est or longest time between speci ed events (say re- hibits the behavior de ned by the state machine,
sponse of the controller). However, at the current given in the draft in Figure and Table 2.2.2.2-1. The
stage of the work major progress in the application of state machine along with its NCES model is shown
all these abilities of SESA to veri cation of IEC1499 in Fig.3-a. Its transition arcs are marked both with
function blocks is yet to be achieved. conditions of transitions and with operations, exe-
cuted upon the transitions as listed in Table 1. The
operations consist of issuance of event signals "In-
4 Modeling of IEC 1499 by TNCES voke ECC" at 1 and "set Event Input variable" at
t

3. t
The hierarchy of structures provided in the standard In our model, we implement the behavior of event
implies the corresponding way of modeling - we go- input and event input variables by two NCES pre-
ing to start from the simplest basic functional blocks, sented in Figure 3-a,b.
a) b) c)

Figure 3: a)Event input state machine and its NCES model; b) Event input variable model; c)Operation of execution control
state machine modeled by NCES.

Operation of the Execution Control Chart is de- plays the place 1 , 2 - it ensures that new transition
S

scribed in the IEC1499 by means of the state machine evaluation is done after the event variables used in
shown in Figure and Table 2.2.2.2-2 of the draft. It is the previously cleared transition have been reset.
represented by the NCES model in Figure 3-c. Sim- For structural clearness we connect the correspond-
ilar to the event input state machine, the state ma- ing EI-SM and EIVS modules by the event arc "Set
chine of execution control also de nes a Mealey au- EI" though originally this operation was initiated by
tomaton with input and output symbols associated the state machine ECO-SM (the following behavior
with arcs. The table of conditions and operations is de ned in the standard: rst event X occurs and
is presented in Table 2. It requires some comments forces transition of EI-SM from S0 to S1, then it is-
since there are multiple operations associated with sues "Invoke ECC" which is input of ECO-SM. The
some transition arcs. Sequence of the operations and latter must issue the "Set EI" for the event input
their timing seem to be important. Thus transition variable X). Implementing exactly this requirement
t1 is driven by the event "Invoke ECC" and has the would need one ECO-SM model for each event input.
following associated operations: Instead, we change the sequence of the transitions as
follows: rst event X occurs, then EI-SM issues "Set
1. Set EI variables and sample associated vari- EI" event signal which forces transition in the EIVS
ables; of X, and the latter invokes ECO-SM.
2. Con rm input(s) mapped; Building the NCES model for execution control
chart is described in the next section.
3. Evaluate transitions;
First operation sends an event signal to the model of
corresponding event input variable, second - to the
5 Model of Execution Control
state machine implementing the corresponding event The draft of IEC1499 states that "the operation of
input, and the third sends activation signal to the the ECC shall be functionally equivalent to the rules
NCES model of Execution Control Chart. It is essen- of evolution for Sequential Function Charts (SFCs)
tial to ensure that the latter signal is issued after the given in subclause 2.6.5 of IEC 1131-3".
rst operation has been completed, because value of The ECC is a simpli ed sequential function chart
event input variable might be used for evaluation of (SFC), where the only initial state is present, and
transitions in the model of ECC. To ensure this func- each transition has exactly one source and target
tionality we initiate the rst operation in the model state. As a consequence, in ECC only one active
of event input (EI-SM). By means of event arc "Set state can be present at every time instance.
EI" it forces transition in the Event Input Variable The execution control chart is transformed into
Storage, which, in turn invokes the ECO-SM model. an NCES model, which consists of the corresponding
Finally, the latter issues the signal "Evaluate transi- "modules" for each state, action, and transition, and
tions". Though basic structure of ECO-SM model is has an additional module, named Transition Evalu-
similar to the original ECO SM (places 0, 1, 2 cor-
S S S ation Monitor (further abbr. TEM), which insures
respond to the states 0, 1, 2), we introduce an ad-
S S S the issuance of either of the output signals "A tran-
ditional "transitional" place in the ECO-SM model sition clears" or "No transitions clear", required by
(marked 0 , 1), which ensures that variable setting
S the EC state machine.
is completed before the transition evaluation. Since
the transition from 0 , 1 to 1 is not forced by any
S S

event, and the net is assumed to be timed, it res


as soon as 0 , 1 becomes marked. The same role
S
Transition Condition Operation
t0 map input none
t1 event arrives ECC invocation request
t2 event arrives implementation dependent
t3 map input set EI variable

Table 1: Conditions and actions associated with


transitions of the Event Input state machine.
a)
Transition Condition Operation
t1 invoke ECC set EI variables
con rm input mapping
evaluate transitions
t2 no transition clears issue events
t3 a transition clears schedule algorithms
t4 algorithms complete clear EI variables
set EO variables
evaluate transitions

Table 2: Conditions and actions associated with


transitions of the ECC operation state machine.
b)
5.1 Transitions

The standard sets the followingrules concerning tran- Figure 4: Type declaration of INTEGER-REAL function
block (a), its execution control chart (b).
sitions between states of EC:
1. Each EC transition shall have an associated response to the forcing signal "Evaluate transitions"
Boolean condition, equivalent to a Boolean ex- and to issue the corresponding signal.
pression utilizing one or more event input vari- Figure 5-a shows an example of TEMs binding to
ables, input variables, output variables, or in- the NCES model of ECC. Structure of the TEM is
ternal variables of the function block. shown in detail in Figure 5-b. Places in the TEM
2. Evaluation of an EC transition condition is dis- have the following meaning:
abled until ALL the algorithms associated with 1p - ECC is ready to "Evaluate transitions"
its predecessor EC state have completed their 2p - Transitions are being evaluated;
execution. 3p - No transition cleared so far;
4p - A transition cleared;
3. "Evaluation of transitions" consists of evalu- Transitions in the TEM have the following nota-
ating the conditions at all the EC transitions tion:
following the active EC state and clearing the 1t - TEM turns into evaluation mode;
rst EC transition (if any) for which a TRUE 2t - Transition clears, return to the initial state;
condition is found. "Clearing the EC transi- 3t - Clearance is established;
tion" consists of deactivating its predecessor 4t - No clearance of transition is proved;
EC state and activating its successor EC state. The input signal "Evaluate transitions" is directly
The order in which the EC transitions follow- connected to every transition which models an ECC
ing an active EC state are to be evaluated may transition. Every such a transition has a single out-
be provided by software tools. put event link, all of which are merged at the tran-
sition 3 of TEM. In our example all the transitions
t

The model has event input "Evaluate transitions" have the conditions expressed only in terms of con-
and is also connected to the event input variable dition variables.
modules. Input signal "Evaluate transitions" is con- In case if any of such transitions clears, it imme-
nected to every transition of ECC. The latter are diately forces 3 to re and moves the token from
t

transformed into NCES transitions with condition p4 to 3 . Simultaneously, the token of 1 moves to
p p

input from the Boolean expression. (Implementation p2 driven by the original "Evaluate transition" sig-
of Boolean expressions in NCES was in detail illus- nal. Thus, in the next state places 2 and 3 will
p p

trated in [3]). Besides, a transition has an event out- be marked and transition 2 becomes enabled and is
t

put, which is connected to the "Transition Clears" forced to re by the arc from 3. Therefore, it will
p

input of TEM. The main purpose of TEM is to de- re, issuing event T ransitionC lears and returning a
tect a situation when no ECC transition clears in token to the initial state.
a)

a)

b)

Figure 6: Example of ECC state with actions (a), and its


n
NCES implementation (b)
b)
This is modeled by the module 10 11 which issues
p ;t

Figure 5: NCES model of the Execution Control Chart of the signal "Algorithms complete" provided the signal
the INTEGRAL-REAL function block (a) and NCES imple- "Schedule algorithms" is issued.
mentation of the Transition Evaluation Monitor (b) If more than one action is associated with a state,
then their execution follows the evaluation rules for
SFC given by IEC1131-3. Since the notion of action
Otherwise, if the initial signal "Evaluate Tran- quali er is not mentioned in IEC1499, we assume
sitions" causes no subsequent ring of ECC transi- that each action has the null quali er ( ), which
N
tions, a token moves from 1 to 2 , but another token
p p means that all the actions have to be started simul-
remains in 4. It will cause 4 to re and issue the
p t taneously.
signal "No transitions clear". A model of such a state is shown in Figure 6-a,b.
Models of each action can be further detailed using
5.2 States de nition of its particular algorithm. In the NCES in
Figure 6-b it is assumed, that conditions "ACTION-
An EC state can have zero or more associated EC ac- completed" are issued by the corresponding NCES
tions. Each action can have an associated algorithm
i

models of algorithms. If detailed models of algo-


and an associated output event, which is issued upon rithms are not available, they can be substituted by
completion of the algorithm. simple "bi-stable" models having two states: "Algo-
Figure 5-a shows a NCES model for the ECC of rithm active" and "Algorithm idle", and two transi-
INTEGER-REAL function block (Fig. 4-b). The tions: one (Idle to Active) forced by the "Schedule
module consisting of places 1 , 3 and transitions
p p
ACTION- ", and the other (Active - Idle) being a
1 , 4 corresponds to the ECC itself. Fragment
i
t t
(pseudo-) spontaneous one.
p4 , 5 , 5 , 6 models state INIT with call of INIT
p t t

algorithm. Module 8 9 is responsible for the is-


6 Example of the model
p ;t

sue of INITO output event. Correspondingly, mod-


ule 6 , 7 , 7 , 8 models state MAIN, and module
p p t t

9 10 issues output event EXO.


p ;t To illustrate the above-stated ideas of modeling we
In the case if no actions associated with a state consider a simple example of function block INTEGRAL-
(like in case of the START state), the correspond- REAL, the type declaration of which was given in
ing "Algorithm completed" condition is always true. Figure 4-a. The resulting NCES model is presented
in Figure 6. Among other goals, which we regard as the most
Interconnection of the modules within the model important are formulation of validity conditions for
is implemented by means of event and condition arcs. the function blocks and their translation into Com-
Connection of several function blocks in a composite putation Tree Logic form, which is the input lan-
function block can be realized in a similar way. guage for SESA.
Let us consider a simple veri cation example, check-
ing how the model responds to the event input EX.
Assume the model to be in the initial state 0 =
f1
p ; p3 ; p5 ; p7 ; p9 ; p14 ; p17 ; p18 ; p21 ; p23 ; p24 ; p26 ; p27 ; p29 ; p31
s

g
8 Acknowledgement
as shown in Figure 6. First, the event signal EX The work is supported by the Deutsche Forschungs-
forces to re the following set of transitions: 0 = TR
gemeinschaft under the reference Ha 1886/10-1.
[ 6 12 13]. The following sequence of states and
References
t ;t ;t

transition steps unfolds then:


! ! :
f 1 4 50 8 110 14 17 18 21 23 24 26 27 29 31g
s0 TR s

[1] Function Blocks for IndustrialProcess Measurement and


! =[ ]! :
p ;p ;p ;p ;p ;p ;p ;p ;p ;p ;p ;p ;p ;p ;p

Control Systems International Electrotechnical Com-


f1 1 3 51 8 1411 41520 1623 20 212 23 24 26 27 29 31g
s TR t ;t ;t ;t s

mission, Tech.Comm. 65, Working group 6, Committee


! =[ ]! :
p ;p ;p ;p ;p ;p ;p ;p ;p ;p ;p ;p ;p ;p ;p

draft
f2 1 3 52 8 3613 1514 2717 203 21 23 25 26 27 29 31g
s TR t ;t ;t s
p ;p ;p ;p ;p ;p ;p ;p ;p ;p ;p ;p ;p ;p ;p
Algorithm MAIN completed: [2] International Standard IEC 1131-3, Programmable Con-
! =[ ]! : trollers - Part 3, Bureau Central de la Commission Elec-
f3 1 3 53 7 2912 1614 3117 3420 1121 234 24 26 27 30 31g
s TR t ;t ;t ;t ;t s

trotechnique Internationale, 1993, Geneva, Suisse


! = ]! :
p ;p ;p ;p ;p ;p ;p ;p ;p ;p ;p ;p ;p ;p ;p

f4 1 3 54 8 1711 2015 251619 18 215 23 24 26 27 30 31g


s TR t ;t ;t ;t s
[3] H.-M. Hanisch, J. Thieme, A. Luder, O. Wienhold. Mod-
! =[ ]! :
p ;p ;p ;p ;p ;p ;p ;p ;p ;p ;p ;p ;p ;p ;p
eling of PLC Behavior by Means of Timed Net Condi-
f5 1 3 55 8 3612 1514 3717 1618 216 23 24 26 27 30 31g
s TR t ;t ;t ;t s
tion/Event Systems International conference on Emerg-
6 ! 5 = [ 17 20 ] ! 7 :
p ;p ;p ;p ;p ;p ;p ;p ;p ;p ;p ;p ;p ;p ;p
ing Technologies and Factory Automation (ETFA'97),
f 1 3 5 8 11 15 17 18 21 23 24 26 27 30 31g
s TR t ;t s
September 1997, Los Angeles, USA
! =[ ]! :
p ;p ;p ;p ;p ;p ;p ;p ;p ;p ;p ;p ;p ;p ;p

f7 1 3 56 8 219 1814 3517 18 8 21 23 24 26 27 29 31g


s TR t ;t ;t s

p ;p ;p ;p ;p ;p ;p ;p ;p ;p ;p ;p ;p ;p ;p [4] H.-M. Hanisch, A. Luder. On the mutual Dependency of


Output event EX O issued; Safety Controllers and Procedural Controllers Interna-
Thus 8 = 0 , so the initial state is reached again,
s s
tional Symposium on Industrial Electronics (ISIE'98),
and the output signal has been generated in Pretoria, South Africa, July 1998, Proceedings, pp.622{
EX O
627
the sequence of 9 states. This proves that the block
correctly responds to the event input EX. Such a [5] Alur, R., C. Courcoubeitis and D.L.Dill. Model checking
result could be easily obtained using the SESA, for for real-times. In Proc 5th Annual IEEE Symposium on
Logics in Computer Science, Philadephia, 1990.
example as result of checking a temporal logic prop-
erty, stating that in every path of the reachability [6] Alur, R., T.A. Henzinger and P.H.. Ho. Automatic sym-
graph the initial state is eventually reached. bolic veri cation of embedded systems. IEEE Trans
Software Engineering, 1996, 22,181-201
[7] Aygalinc, P. and J.P.Denat. Validation of functional
7 Conclusion and outlook Grafcet models and performance evaluation of the as-
sociated systems using Petri Nets. Automatic Control
Thus, our preliminary study of NCES suitability for Production Systems A.P.I.I.,1993, 27,81-93
IEC1499 function blocks modeling shows, that there [8] Clarke, E., E.A. Emerson and A.P. Sista. Automatic
are no obstacles in expressing in this formalism the veri cation of nite state concurrent systems using tem-
rules of function blocks execution control. It gives us poral logic. ACM Trans. on Programming Languages
and Systems., 8,244-263.
a hope on the successful realization of the following
goals: [9] S.Roch, P.H.Starke. INA - Integriert Netz Analysator,
Version 2.1, Hanbuch Humboldt-Universitat zu
 Express the event-function blocks of IEC1499, Berlin,1998, (in German)
which implement basic event operations, by means [10] De Loor, P. J.Zaytoon and G.Villerman-Lecolier. Ab-
of NCES. straction and heuristics for the validation Grafcet con-
trolled systems European Journal of Automation, 1997,
 Develop formal rules of transformation of IEC1499 31, 561-580
function blocks into NCES. [11] Manna, Z. and A. Pnueli. The temporal Logic of reactive
and concurrent systems. Springer, Berlin, 1992
 Implement real examples of distributed con-
trol algorithms by means of IEC1499 function [12] Ostro , J.S. Temporal Logic for real-time systems. Wi-
blocks. ley, London, 1989
[13] Ostro , J.S. Veri cation of safety-critical systems using
 Verify their properties using transformation of TTM/RTTL In L.N.C.S., 1991, Vol. 600, pp 573-602,
function blocks into NCES and the tool SESA. Springer, Berlin
[14] M. Rausch and H.-M. Hanisch. Net condition/event sys-
tems with multiple condition outputs. Symposium on
Emerging Technologies and Factory Automation, Paris,
France, October 1995, Proceedings volume 1, pp 592{
600, INRIA/IEEE, 1995.
[15] M. Rausch. Modulare Modellbildung, Synthese und
Codegenerierung ereignisdiskreter Steuerungssysteme.
PhD Thesis, Otto-von-Guericke-University of Magde-
burg, Dept. of Electrical Engineering, 1996.
[16] H.-M. Hanisch. Analysis of Place/Transition Nets with
Timed Arcs and its Application to Batch Process Con-
trol. Lecture Notes in Computer Science, Vol. 691, pp.
282{299, Springer-Verlag, 1993.
[17] J.E. Reich, B.H. Krogh, I.D. Baxter. Symbolic
Simulation-Based Techniques for Debugging Discrete
Control Programs. 13th IFAC World Congress, San
Francisco, USA, 1996, Preprints, Vol. J, pp. 413{418.

You might also like