This work is focused on the development of embedded software using the fuzzy logic concept. The research work helped to develop a Rapid Application Development RAD platform which will eliminate the entire FLES-code writing.
Depending on the task to be performed, the name, units of input and output variables; input membership functions (IMFs) and the number of IMFs, output membership functions (OMFs) and the number of OMFs, and finally the knowledge base (KB) can be altered to design a new system with less effort. The code is designed using a popular general purpose language named C++ which provides ease of modification. The working of this fuzzy logic concept is demonstrated by implementing a hardware console for controlling and stabilizing an inverted pendulum effectively. The fuzzy logic concept converts the absolute values to linguistic form to achieve maximum system accuracy and efficiency. The rule sets and membership functions calculate the required motor current which gives a proportional angular shift to the DC gear motor. The angular rotation by the motor stabilizes the inverted pendulum from falling. The development board named Arduino Due which has an embedded microcontroller named Atmel SAM3X8E ARM Cortex-M3 is used for controlling the entire system. The hardware developed has successfully controlled the inverted pendulum problem, though it can be further improved which can be an excellent follow-up. In addition, we have done an extensive survey of all modern Microcontroller systems which will be helpful for all future studies.
There is a document with this project which describes this project in more detail.