IEC 61131-7: Fuzzy Control Programming (edition 1.0 - 2000)
This part of IEC 61131 defines a language for the programming of Fuzzy Control applications used by programmable controllers.
The object of this part of IEC 61131 is to offer the manufacturers and the users a well-defined common understanding of the basic means to integrate fuzzy control applications in the Programmable Controller languages according to IEC 61131-3, as well as the possibility to exchange portable fuzzy control programs among different programming systems. To achieve this, annex A gives a short introduction to the theory of fuzzy control and fuzzy logic as far as it is necessary for the understanding of this part of IEC 61131. It may be helpful for readers of this part of IEC 61131 who are not familiar with fuzzy control theory to read annex A first.
The theory of fuzzy logic in the application of control is named fuzzy control. Fuzzy control is emerging as a technology that can enhance the capabilities of industrial automation, and is suitable for control level tasks generally performed in Programmable Controllers (PC).
Fuzzy Control is based upon practical application knowledge represented by so-called linguistic rule bases, rather than by analytical (either empirical or theoretical) models. Fuzzy control can be used when there is an expertise that can be expressed in its formalism. That allows taking available knowledge to improve processes and perform a variety of tasks, for instance:
- control (closed or open loop, single or multi-variable, for linear or non-linear systems)
- on-line or off-line setting of control systems' parameters
- classification and pattern recognition
- real-time decision making (send this product to machine A or B ?)
- helping operators to make decisions or tune parameters
- detection and diagnosis of faults in systems
Its wide range of applications and natural approach based on human experience makes Fuzzy Control a basic tool that should be made available to Programmable Controller users as a standard.
Fuzzy control can also in a straightforward way be combined with classical control methods.
The application of fuzzy control can be of advantage in such cases where there is no explicit process model available, or in which the analytical model is too difficult to evaluate or when the model is too complicated to evaluate in real time.
Another advantageous feature is that human experience can be incorporated in a straightforward way. Also it is not necessary to model the whole controller with fuzzy control: sometimes fuzzy control just interpolates between a series of locally linear models, or dynamically adapts the parameters of a "linear controller", thereby rendering it non-linear, or alternatively just "zoom in" onto a certain feature of an existing controller that needs to be improved.
Fuzzy control is a multi-valued control, no longer restricting the values of a control proposition to "true" or "false". This makes it particularly useful to model empirical expertise, stating, which control actions have to be taken under a given set of inputs.
The existing theory and systems already realized in the area of fuzzy control differ widely in terms of terminology (definitions), features (functionalities) and implementation (tools).
Fuzzy control is used from small and simple applications up to highly sophisticated and complex projects. To cover all kinds of usage by this part of IEC 61131, the features of a compliant fuzzy control system are mapped into defined conformance classes.
The basic class defines a minimum set of features which has to be achieved by all compliant systems. This facilitates the exchange of fuzzy control programs.