Download Modelling Control Systems Using Iec 61499 Applying Function Blocks to Distributed Systems IEE Control Series 59 PDF

TitleModelling Control Systems Using Iec 61499 Applying Function Blocks to Distributed Systems IEE Control Series 59
TagsProgrammable Logic Controller Object (Computer Science) Xml Control Theory Systems Theory
File Size921.1 KB
Total Pages207
Table of Contents
Abbreviations and conventions
1 Introduction
	IEC 61499 function block standard
	Development of function block concept beyond IEC 61131-3
	IEC 61499 -
a developing standard
	Why use function blocks?
	System design views
	The future beyond IEC 61499
2 IEC 61499 models and concepts
	System model
	Device model
	Resource model
	Application model
	Function block model
	Function block types
	Execution model for basic function blocks
	Distribution model
	Management model
	Operational state model
	Common interfaces using adapters
	Textual syntax for IEC 61499 entities
3 Defining function block and subapplication types
	Types and instances
	Different forms of function block
	Defining basic function blocks
	Definitions for composite function blocks
	Defining subapplications
4 Service Interface function blocks
	Type definitions
	Behaviour of Service Interface function blocks
	Partnered Service Interface function blocks
	Management function blocks
5 Event function blocks
	Standard Event function block types
	Using Event function blocks
6 Industrial application examples
	Temperature control example
	Conveyor test station example
	Fieldbus applications
7 Future development
	Current status of IEC 61499
	Compliance with IEC 61499
	Engineering support task
	File exchange format
Appendix A: Common elements
Appendix B: Overview of XML
Appendix C: Frequently Asked Questions (IEC 61499 FAQs)
Appendix D: PID function block example
Appendix E: Textual syntax
Document Text Contents
Page 103

88 Modelling control systems using IEC 61499

IEC 61499 function block networks, an event is required to trigger the first function
block in every chain of function blocks. Control systems will typically also have
other requirements such as a need to split events to simultaneously trigger multiple
chains of blocks or to create trains of events so that blocks are regularly re-executed,
e.g. when modelling a system that scans I/O.

Figure 5.1 shows a simple example of a control system that starts execution
when the system is initially powered-up, i.e. ‘cold started’ and then goes on to
execute two chains of function blocks in parallel. A ‘cold start’ event is clearly
needed to initiate the first function block in the chain. When the first block FB1
has completed its execution, there is a requirement to execute two separate chains
of function blocks. This is shown by the event splitting and triggering blocks FB2a
and FB3a. When FB2b and FB3b have both completed their execution, events
from the two blocks are joined using a ‘rendezvous’ to create a single event that
then in turn fires the last function block FB4.

In this first example, the function blocks only execute once when the system
cold starts, because only one initial event is generated. However, typically a control
system will require scanned behaviour where function blocks need to execute
repeatedly to monitor plant states and update actuators and so on. This can be
achieved by passing a train of events into the first function block, as shown in
Figure 5.2. Assume that the event train consists of a regular stream of events sent at
regular intervals, say every 100 milliseconds. Now all function blocks in both
parallel paths will be continually re-executed every 100 milliseconds after cold start.

In Figures 5.1 and 5.2, each shaded circle represents some form of event
behaviour. In fact, we will see that each circle can be replaced by one of the IEC
61499 Event function blocks. The timing diagram shown below the function block
network in Figure 5.2 depicts the stream of events entering the event control header
of function block FB1. The event stream emerging from the event rendezvous is
also shown. Notice that here the events are slightly delayed because of the time to
execute algorithms in the parallel function block networks and because of delays
in resource scheduling. The period between events also varies slightly because
execution delays may vary; for example, an algorithm may not necessarily always
take the same period of time to execute as this may depend on the values of input
and internal variables.

Standard Event function block types

We will now review the rich repertoire of standard Event function block types
defined in IEC 61499 that allows a wide range of different event scenarios to be
modelled. In the following descriptions each figure shows the external template of
the function block type on the left of the figure and its corresponding type
specification on the right. Many of these event function blocks are of the ‘basic’
form and can be defined using an Execution Control Chart (ECC); some require
interactions with the resource and are therefore defined using Time-sequence
diagrams. There are a few complex event function blocks, such as the ‘Boolean

Page 104

Event function blocks 89

Figure 5.1 Event chain example

Figure 5.2 Cyclic Event chain example

Page 206

Index 191

initial values 147
instance behaviour 52
integer data type 143
integral function block 168
intranet 136

example of usage 109

example of usage 109

algorithms expressed using 175
new technologies 5
to express algorithm 47

Ladder Diagram 9,136
libraries, of function blocks 43,134
life-cycle 36
literals 108
loading, function block fragments 34
logical view 17

managed function blocks 84
main states 85

management application 33
management function block 82

service functions 84
management model 33
mapping, Fieldbus function blocks 124
mode control, in analogue function

block 127
mode ECC 128
modes, how are they modelled 158

characteristics 15
relationship to function blocks 16

OO, object oriented methodology 14

why OO concepts are used 159
operational state model 36

P&ID 6
permissive event, propagator 92
physical view 18

algorithm 166
as re-usable algorithm 27
function block example 165�79

in instruments 2
in subapplication 62
simple algorithm 109,113

plastics extruder 25

soft PLC concepts 4
systems 2

polymorphic behaviour, using adapters

process control 13
process interface 23
process view 17
production line 25
Profibus 121
PUBLISH, example of usage 119
publisher 70

RAMP function block 51

model 24
related to device 23

restart event, generator 94

sample-data 161
sawtooth function block, example 60
scanner, function block 111
scanning 110�11
scenarios 19
scheduling function 29,31
semantic integration 5
sensors 162
separate event table-driven, generator 97
service interface 24

function block behaviour 75
function block overview 69
function block type definition 71

service primitives 78,79
SI see service interface
SIFB see SI function block
software components 5
software tools 132

for variables 47
of inputs and outputs 47

string data type 145
structured data 148
Structured Text, to express algorithm 47

Page 207

192 Modelling control systems using IEC 61499

defining 61
distribution example 64
relation to application 25
rules for type specification 62
temperature control example 62
timing and performance 33

SUBSCRIBE, example of usage 119
subscriber 70
syntax see textual syntax
system design views 16
system life-cycle 36
system model 22

temperature control 62
example network 108

textual syntax
composite example (sawtooth) 60
function block example 50
outline description 38
SI function block example 78
see also Appendix E

time data type 144
time-sequence diagram 76
timing see execution timing
timing of events 88
transaction, defined in service interfaces

two event rendezvous 91

voter, function block example 39

WG6, IEC working group 6 12
WG7, IEC working group 7 13
WITH construct

concept 46
in composite function blocks 58
why it is used 161

XML 135–6
overview 151–4
proposal in IEC 61499 14

Similer Documents