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

Composite function blocks provide a means for building up more complex blocks from basic and other smaller composite blocks in a hierarchical fashion. The type definition for a composite function block contains declarations of function block instances of selected types that are linked by data and event connections. The standard regards blocks that are used within a composite block as component function blocks. The data connections between component blocks define the transfer of data values between block outputs to inputs while the event connections define the order of execution of algorithms within the blocks.
There are a number of rules and restrictions regarding the specification of composite function block type definitions, particularly regarding the connection of the external event and data inputs and outputs with the internal component blocks. These rules arise because events cannot be fanned-out directly; i.e. there must be a one to one connection between an event output and an event input. It is possible to make an event generate multiple concurrent events by using an E_SPLIT function block; this is one of IEC 61499's special event function blocks discussed in chapter 5. In contrast, data inputs can be fanned-out allowing a single data output to drive many different data inputs.
Each composite event input must be connected to exactly one input event of an internal component function block or must be through routed to a composite block event output. That...