what is MELON
MELON is a software that reads a plain-text fuzzy code file containing linguistic variables, fuzzy sets definitions, linguistic or Takagi-Sugeno rules and other options such as the sampling frequency, and implements a real-time control action. MELON can communicate with real devices through the COMEDI library or with plant simulation processes through shared memory resources, regular files or named pipes. Though originally designed to work with fuzzy logic, MELON can actually implement other types of control action such as traditional PID or even be used as a plain data acquisition software.
This program was developed by jeremy theler as part of both bsc and msc thesis in nuclear engineering at instituto balseiro, argentina. Work was done at laboratorio de cavitacion y biotecnologia, centro atomico bariloche under the supervision of dr. fabian j. bonetto and ing. eugenio urdapilleta.
download
MELON version 1.0 released February 2008 under the GNU General Public Licence.
This program was originally designed to work only in Linux platforms, though some reduced functionality may be achieved in other Unix-based systems (not tested). This fact is easily explained as follows. Besides being free (in the sense of GNU) and widely available, almost any text-based application will compile and work smoothly in any Linux version, either present, past or future. As MELON is just a software that essentially gathers, processes and outputs numerical data without actually needing a graphical interface, aiming at working in Unix-based systems is the natural choice. MELON may (and actually did) run in old 486 control-dedicated processors running a modern and decent text-only version of debian.
Furthermore, if some kind of graphical user interface is needed for a given practical situation, it may be designed ad-hoc in a particular and convenient way using specific GUI-based tools. Should any kind of the gathered or processed data be needed by other process, it may be shared between MELON and any other standard or specific program either through shared memory resources or even plain text files. It has been largely proved that Unix philosophy "divide and konquer" beats Redmond's "give me everything and I'll tell you what to do". Windows is currently not supported, and there are no short term plans to port MELON to Windows.
documentation
Full MELON documentation is included in available in the main distribution. Anyway, you may get it separately.
examples
As described in the manual, there are some sample packages that illustrate how MELON may be applied to control non-linear plants.
nuclear reactor control
A simplified model for the control of the power generated in a nuclear reactor core.
the lorenz system
Control chaos using a Takagi-Sugeno fuzzy controller. The justification of why the controller works may be found in the manual bibliography or in my bsc thesis (only in spanish).
hot water temperature control
MELON is also able to control real plant (using a COMEDI-supported data acquisition card), as illustrated in the following experimental setup:
An example of the obtained result is
lorenzian waterwheel (a.k.a. malkus waterwheel)
Funny computer-simulated experiment about controlling this chaotic waterwheel.
See also the experimental lonrez waterwheel.
640x480 4.0 mb AVI 40 seconds video
links
|