New Design Patterns for Time-Predictable Execution of Function Blocks
IEC 61499 function blocks are used to design many safety-critical and time-predictable systems in the fields of smart grids robotics and medical devices. This chapter focuses on the time-predictable design of International Electrotechnical Commission (IEC) 61499 applications and implementations. It presents coding guidelines for common pitfalls encountered when designing time-predictable IEC 61499 applications. The chapter proposes two design patterns to aid the designer in choosing the appropriate execution semantics when designing time-predictable systems. One of the design patterns is tailored to centralized systems and the other is tailored to distributed systems. Both design patterns are time-predictable and provide determinism and reactivity. Design patterns are reusable solutions that solve recurring design problems by using a well defined structure. One of the most popular programming language independent design pattern is the model view control pattern. The ordered synchronous design pattern is unsuitable for inter-resource function blocks because a strict execution order is restrictive for distributed execution.