Modelling Control Systems Using IEC 61499: Applying Function Blocks to Distributed Systems

The standard provides type definitions for three different forms of function block; each form has its own particular properties and uses, as listed in Table 3.1.
| Form | Distributable | Definition | Comment |
|---|---|---|---|
| Basic function block | No | States defined using the Execution Control Chart (ECC). Algorithms defined using an appropriate language, e.g. Structured Text, Java. | A basic function block cannot be distributed; it can only run on a single resource. Basic function blocks define the fundamental blocks from which large composite blocks can be built. |
| Composite function block | No | Constructed from a network of basic and composite function blocks. Definition is given in terms of the data and event connections between function blocks. | A composite function block is built from a network of lower level function blocks. These can be either basic or lower level composite blocks. |
| Subapplication | Yes | Constructed from networks of basic and composite function blocks. A subapplication can in turn contain copies of smaller subapplications. | This type of block is intended to provide a re-usable part of an application that can be distributed over many resources. |
The main characteristics of these three forms are depicted in Figure 3.1. It should be noted that basic and composite function blocks always reside on a single resource and provide variables at their inputs and outputs to hold data values. Basic blocks also require internal storage for the execution control state machine. However, in contrast a subapplication does not specifically have storage...