4.4. FUZZY CONTROLLER DESIGN 151
4.4.2 Example: controlling dynamics of a servomotor
We now investigate the design of a fuzzy controller to control the dynamics of a
DC servomotor. Compare this with the example of a classical controller design
to solve this problem (see page 71).
In this example, we wish to control the angular position of the rotor to
coincide with some desired position. Let us define position error as the difference
ìdesired position minus actual positionî where desired position is the set point.
We can then use position error and rotor velocity as the two input variables to
the controller and obtain the necessary voltage to be applied to the motor as
the output of the controller. Schematically, the fuzzy controller can be shown
in Figure 4.8.
Figure 4.8. Closed-loop control system
The dynamics of the DC servomotor are such that we can rotate the shaft
of the motor either in the clockwise or counterclockwise direction by simply
reversing the polarity of the applied voltage. Therefore, if the actual position
is less than the desired position (a positive error), we can achieve the desired
position faster by boosting the voltage applied to the motor terminals. For a
negative error, when the rotor position is greater than that which is desired, the
voltage polarity can be reversed so that the rotor turns in the opposite direction.
(a) Position error (b) Rotor velocity
Figure 4.9. Prototype fuzzy membership functions for DC servomotor control