Hubbry Logo
search button
Sign in
Fuzzy Control Language
Fuzzy Control Language
Comunity Hub
History
arrow-down
starMore
arrow-down
bob

Bob

Have a question related to this hub?

bob

Alice

Got something to say related to this hub?
Share it here.

#general is a chat channel to discuss anything related to the hub.
Hubbry Logo
search button
Sign in
Fuzzy Control Language
Community hub for the Wikipedia article
logoWikipedian hub
Welcome to the community hub built on top of the Fuzzy Control Language Wikipedia article. Here, you can discuss, collect, and organize anything related to Fuzzy Control Language. The purpose of the hub i...
Add your contribution
Fuzzy Control Language

Fuzzy Control Language, or FCL, is a language for implementing fuzzy logic, especially fuzzy control. It was standardized by IEC 61131-7. It is a domain-specific programming language: it has no features unrelated to fuzzy logic, so it is impossible to even print "Hello, world!". Therefore, one does not write a program in FCL, but one may write part of it in FCL.

Example

[edit]
RULE 0: IF (temperature IS cold) THEN (output IS low)
RULE 1: IF (temperature IS very cold) THEN (output IS high)

Limitations

[edit]

FCL is not an entirely complete fuzzy language, for instance, it does not support "hedges", which are adverbs that modify the set. For instance, the programmer cannot write:

RULE 0: If (Temperature is VERY COLD) then (Output is VERY HIGH)

However, the programmer can simply define new sets for "very cold" and "very high". FCL also lacks support for higher-order fuzzy sets, subsets, and so on. None of these features are essential to fuzzy control, although they may be nice to have.


References

[edit]
[edit]
  • fuzzyTECH, a commercial fuzzy logic development system containing the specification document for IEC1131-7 (select Fuzzy Application Library)
  • IEC 1131-7 CD1 Archived 2021-03-04 at the Wayback Machine IEC 1131-7 CD1 PDF
  • fuzzylite, A fuzzy logic controller library written in C++.
  • Free Fuzzy Logic Library (FFLL), an implementation library written in C++.
  • JFuzzyLogic, open source FCL + Fuzzy Logic Package (sourceforge, java)
  • AwiFuzz, open source implementation written in C++ covering all three levels of IEC 61131-7 Fuzzy Controller Language
  • pyfuzzy, open source implementation written in python.