Control of A DC Motor Using Fuzzy Logic Control Algorithm: I. H. Usoro, U. T. Itaketo and M. A. Umoren
Control of A DC Motor Using Fuzzy Logic Control Algorithm: I. H. Usoro, U. T. Itaketo and M. A. Umoren
ABSTRACT
This study sought to establish the impact of a fuzzy logic controller (FLC) and a ProportionalIntegralDerivative (PID)
controller in the control performance of an industrial type DC motor using MATLAB. The fuzzy logic controller was
developed on the basis of Mamdani type fuzzy inference system (FIS). The centroid method of defuzzification was also
adopted. A choice of seven membership functions was designed for the error and change in error inputs alongside the
output, hence a resultant of 49 rules was achieved for the fuzzy controller. Simulations for the PID controller and with the
fuzzy controller were obtained at no load and for a selected reference speed of 1200 rpm. The simulations were further
repeated for a load torque of 7Nm with the same reference speed. The simulated results were compared. Based on the
findings, it was observed that the fuzzy speed controlled DC motors perform better than the PID speed controlled DC
motors in terms of its faster settling time, absence of an overshoot and its sensitivity to applied load. Sequel to the
foregoing findings, the researchers concluded that fuzzy logic controllers should be readily implemented in our local
industries to enhance precision and improve performance in operations involving DC motors.
approximate, imprecise nature of the real world. The be undertaken by the inference engine. Should an error
papers of Zadeh on the linguistic approach and system exist, the inference engine looks up the corresponding
analysis based on the theory of fuzzy sets led to the membership values as defined by the condition of the
pioneering research by Mamdani and his colleagues [12]. rule and maps it to the appropriate output membership
According to Zadeh, fuzzy set theory provides a means function to be defuzzified (i.e. converted to a crisp
for representing uncertainty. In general, probability is output).
the primary tool for analyzing uncertainty, and assumes Rule Base: This step involves regulating a process output
that uncertainty is a random process. However, not all around a desired set point or reference value. There are a
uncertainty is random and fuzzy set theory is used to variety of different methods available for presenting the
model the kind of uncertainty associated with “IF-THEN” rule format [1]. The fuzzy rule base consists of
imprecision, vagueness and lack of information. a set of antecedent and consequent linguistic rules of the
The fuzzy logic controller (FLC) provides an algorithm form; IF part called the "antecedent" and the “THEN” part
which can convert a linguistic control strategy into an called the "consequent"
automatic control strategy [6].Viewed in this perspective, Defuzzification: Defuzzification is the procedure for
the essential part of the fuzzy logic controller (FLC) is a mapping from a set of inferred fuzzy control signals
set of linguistic control rules related to fuzzy implication contained within a fuzzy output window to a non-fuzzy
and its rule of inference [9]. The Fuzzy controller (crisp) control signal [11]. According to [15, 1, 16],
converts a linguistic control strategy into an automatic defuzzification occurs when all the actions that have
control strategy. Fuzzy rules are constructed by expert been activated are combined and converted into a single
experience or knowledge database [6, 10, 16].The basic non-fuzzy output signal which is the control signal of the
fuzzy logic control system is composed of a set of input system. The output levels are depending on the rules that
membership functions, a rule-based controller, and a the systems have and the positions depending on the
defuzzification process. The structure of a fuzzy logic non-linearity’s existing to the systems. There are five
controller is illustrated in Figure 1. built-in methods supported: Centroid, bisector, middle of
maximum (the average of the maximum value of the
output set), largest of maximum, and smallest of
maximum. The centre of area (centroid) method is the
most well-known defuzzification technique which is
expressed as:
other as they are both needed to achieve desirable the motor used has either interpoles or compensating
results. A simulation environment in MATLAB was built. winding to minimize the effects of armature reaction.
Prior to running the simulation in MATLAB/SIMULINK, When the field current is constant, the flux induced by
the fuzzy logic controller was designed. This was done the field winding remains constant, and usually it is held
using the fuzzy inference system (FIS) editor. The design at its rated value Φ. The voltage, eb, is the back emf in
of the fuzzy logic controller required choosing volts. In a separately-excited DC motor, the back emf is
appropriate membership functions after which a proportional to the product of speed of motor and the
convenient rule base was created. field. Considering the armature controlled D.C. motor in
Figure 2 and assuming that the demagnetizing effect of
3.1 System Design Model armature reaction is neglected, the magnetic circuit is
The chosen system is an industrial type, armature- assumed linear and the field voltage is constant i.e. I f =
controlled separately excited permanent magnet DC constant.
motor (PMDC). Its equivalent circuit is shown in Figure The back EMF eb is directly proportional to the speed,
2. hence:
⁄ ω
Ia Ra La Applying KVL to the armature circuit we get
If
1
[ ]
Our specified DC motor parameters are as follows: Rated Power: 3.7kW; Rated Speed: 1750rpm; Supply Voltage: 240V;
La = 0.1214H; B = 0.002953Nms/rad; Ra 11. Ω; J . 1 kgm2; KT = 1.28NmA; Kv = 0.0045 Vs/rad
(Ahmed et al, 2013);
Putting these parameter values into the transfer function (equation 12), the equation becomes:
1.
1
. 1 . 1 . 1
1.
1
[ . . . ] 1
Equation (14) is further simplified as change in speed error (ce) and control output (u). The
1 membership functions of the inputs and outputs were
1
[ . . . ] designed after the rule data base, and the controller was
Equation (15) represents the transfer function of the DC tested on the system to adjust any seemingly wrong
motor based on chosen motor parameters. Figure 4 parameters.
shows the DC motor model built in Simulink. The motor The rule base works by monitoring the error and change
model is a single input single output system. The input in error of the controller system. The rule base was
port is the armature voltage (Va), while the output port is formulated using fuzzy operators in IF – THEN
the angular speed. The load torque (TL) and armature statements i.e. IF (Process State – input parameters
current (Ia) outputs were included for observation defined using fuzzy operator) THEN (Control Output).
purposes. This model is not pre-existent in the matlab The choice of the fuzzy operator used was the Minimum
environment. (Product) fuzzy operator. The general rules for the DC
motor speed control were that if motor speed is less than
the desired speed, then increase motor speed and if
motor speed exceeds the reference speed, then reduce
the speed. If the error is large positive and the change in
error is large negative, then the output of the controller
must be zero and there is no need to increase the motor
speed to meet the reference point which is directly
proportional to the voltage of the controller. These fuzzy
rules are summarized in the fuzzy rule matrix shown in
Figure 4: Simulink functional block model of the DC Table 1.
motor Subsystem Illustrating the fuzzy rule matrix Table 1 for three valid
rules,
In the fuzzy logic controller design, the inputs and output 1. IF the error (e) is Small Negative (SN) AND the
linguistic variables were partitioned into seven (7) fuzzy change in error (ce) is Large Positive (LP), THEN the
subsets and are presented by seven (7) membership control action (u) is Medium Positive (MP).
functions which are; Large Negative (LN), Medium 2. IF the error (e) is Zero (Z) AND the change in error
Negative (MN), Small Negative (SN), Zero (Z), Small (ce) is Large Negative (LN), THEN the control action
Positive (SP), Medium Positive (MP), Large Positive (LP). (u) is Large Negative (LN)
A triangular membership function was defined for each
input and output variables which are: speed error (e),
It can be deduced from this table that when compared speed has been carried out in this work. The simulation
with the PID controller, the fuzzy controller does not results were obtained using MATLAB/SIMULINK
experience any overshoot due to its steady rise time. software.
Also, it takes the fuzzy controller a shorter settling time
to stabilize at the desired speed value of the motor.
The PID controller on the other hand possesses an
overshoot due to its quicker rise time, resulting in a
higher peak speed value thus taking a longer time to
stabilize to the desired motor speed value.
required for the final speed value to be as close as [7] Harith M., Remya K. P. and Gomath S. “Speed
possible to the desired/referenced speed value. Control of Brushless DC Motor Using Fuzzy Based
From the foregoing results, it can be observed that in ontroller”, International Research Journal of
Engineering and Technology (IRJET), Volume 02
controlling the speed of the DC motor, the Fuzzy
Issue 04, , pp. 875- 881. 2015.
controller performs more effectively than the PID
controller due to the absence of an undesirable [8] Kaur, A. & Kaur A. “ omparison of Mamdani Type
overshoot, its faster settling time and its ability to and Sugeno Type Fuzzy Inference Systems for Air
onditioning System”, International Journal of Soft
maintain DC motor speed irrespective of the torque load
Computing and Engineering (IJSCE), pp. 2231 –
applied. 2307. 2012.
On the premise of these findings, it would be tactful in
[9] Suradkar, R. P. and Thosar, A. G. “Enhancing the
keeping the nation abreast with the era of artificial
Performance of DC Motor Speed Control Using
intelligence if fuzzy logic controllers could be readily Fuzzy Logic”, International Journal of Engineering
implemented in our local industries to enhance precision Research and Technology, IJERT, pp. 103-110,
and improve performance in operations involving DC 2012.
motors.
[10] Monika & Amrit K. “ omparison of Fuzzy Logic and
Neuro Fuzzy Algorithms for Load Sensor”,
6. REFERENCES International Journal of Soft Computing and
Engineering (IJSCE), Volume-3, Issue-2, pp. 219-
[1] Ahmed, H., Singh, G., Bhardwaj, V., Saurav, S., and 222. 2013.
Agrawal, S. “ ontrolling of D Motor using Fuzzy
Logic ontroller”, Conference on Advances in [11] Mathworks Inc “Simulink Getting Started Guide”
Communication and Control Systems,, DIT www.apmath.spbu.ru/ru/staff/smirnovmn/files/s
University, pp. 666-670, 2013. l_gs.pdf, Access on February 21, 2017.
[2] Aisha J., Sadi M., and Syed O. “Controlling Speed of [12] Nagrath, I. J. and Gopal, M. “Control Systems
DC Motor with Fuzzy Controller in Comparison Engineering”. Fifth Edition, Delhi, India, 2010
with ANFIS ontroller”, Intelligent Control and [13] Nwodoh T. and Ejimofor I. “Implementation of
Automation, Vol. 6, pp. 64-74, 2015. fuzzy logic based temperature-controlled, heat
[3] Asgharpour-alamdari H., Alinejad-beromi Y., and exchanger”, Nigerian Journal of Technology, Vol.
Yaghob H. “A fuzzy-based Speed Controller for 29 Number.1, pp. 94-109. 2010.
Improvement of Induction Motor's Drive [14] Ogbogu, S. E. & Itaketo U. T. Systems and Control
Performance”, Iranian journal of fuzzy systems, Engineering, Nnewi: M C Computer Press, Nnewi,
vol. 13, no. 2, pp. 61-70, 2016. Nigeria, 2006
[4] Burns, R. S. Advanced Control Engineering, Jordan [15] Rai, J. N., Singhal, M. & Nandwami, M. “Speed
Hill, Oxford, 2001 control of D Motor using Fuzzy Logic Technique”.
[5] Choi, J., “Modelling of DC Motors: Control Systems Journal of Electrical and Electronics Engineering
Lectures”, Department of Mechanical Engineering, (IOSR - JEEE), pp. 41 – 48. 2012.
University of British Columbia, pp. 1-15. 2008, [16] Yen, J & Langari, R. Fuzzy Logic. Upper Saddle
[6] Gupta, M. M. and Tsukamato, Y. Fuzzy Logic River, New Jersey, 2004.
Controllers – Perspective San Francisco, California,
1980