Fuzzy Logic Applied to Motor Control
Today in Europe, the trend in home appliance is to have more and more features offering friendly use of and appliances minimizing energy consumption. Low-end micro controller associated to fuzzy logic
software are used inside different equipment: for instance to optimize the charge of batteries; to minimize water and energy consumption in washing machines; to regulate temperature in air conditioning systems and refrigerators;
. PRACTICAL PPLICATION
Fig. 2 describes the topology of the motor speed control application. The 400-W universal motor of the food processor is supplied in dc mode. This voltage is adjusted using PWM techniques through a chopper stage composed of an insulated gate bipolar transistor (IBGT) STGPlONSO and a freewheeling diode STTA806DI. A standard microcontroller, the ST6265.With its on-board PWM timer and A/D converter, measures the speed of the motor and drives the IGBT through a 5/15 V interface. In addition, the microcontroller manages tasks such as minimum mains voltage detection, tachogenerator voltage measurement, fuzzy logic speed control, PWM duty cycle generation, and motor speed selection.
A. Description of Food-Processor Motor
The universal motor used in this application has a speed ranging up to 22000 r/min (i.e., 366 Hz). The gear ratio between motor speed and accessory speed is equal to 7.5. The ratio between tachogenerator frequency and motor frequency is equal to 16. One of the advantages of using fuzzy logic for such an application is to overcome the need for a precise mathematical model of the system. Nevertheless, the system behavior has to be known and this knowledge can be acquired with some simple experimental graphs.
. FUZZYL OGIC A PPROACH
The fuzzy logic approach is used to develop this application covers all the steps of a fuzzy logic design from the definition of the project, of the linguistic variables and of the rules. Furthermore, this tool generates the executable code for the ST6 microcontroller. Fig. 6, giving the program flow chart, shows a fuzzy logic development can be divided in two main parts:
The microcontroller environment program and the fuzzy logic application itself.
−The environment program consists of
microcontroller initialization, motor
speed acquisition, calculation of speed
error and speed error variation, input
variable adaptation to fuzzy logic
kernel code values, fuzzy logic kernel
calling, PWM duty cycle update,
acquisition of new motor speed
command, and end of synchronization
time base waiting.
A. Project Definition
The first step when using the fuzzy logic is to define the structure of the controller. Fig. 7displays the controller structure and allows the designer to directly access linguistic variables and rule definitions.
B. Linguistic Variables Definition
The next step of the controller design is the definition of linguistic variables. The graphic interface of the development tool allows the designer to easily create the most suitable linguistic variables and the membership functions for the application. The input membership functions shown in Fig. 8 are defined taking into account the speed and the acceleration of the motor and the system resolution. The motor speed range is well covered with five membership functions. According to the sensibility of the speed measurement line and to the speed sampling rate, (3 rotations/s each 30 ms corresponds to an acceleration of 100 rotations/s), the motor speed variation range is described with three membership functions. The triangular shaped (“Pi-Type”) membership functions “Zero” and “Null” make the PWM duty cycle variations less sensitive to the A/D converter resolution.