0% found this document useful (0 votes)
54 views7 pages

Fuzzy Logic Control vs. Conventional PID Control of An Inverted Pendulum Robot

This document summarizes a research paper that compares fuzzy logic control and PID control for balancing an inverted pendulum robot. It presents the development of a fuzzy logic controller using a four-input Takagi-Sugeno model. Simulation results showed that fuzzy logic controllers had better performance than PID controllers in terms of overshoot, settling time, and response to parameter changes for balancing the inverted pendulum. The document aims to demonstrate that fuzzy logic control is better suited than conventional PID control for complex, nonlinear control problems like balancing an inverted pendulum robot.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
54 views7 pages

Fuzzy Logic Control vs. Conventional PID Control of An Inverted Pendulum Robot

This document summarizes a research paper that compares fuzzy logic control and PID control for balancing an inverted pendulum robot. It presents the development of a fuzzy logic controller using a four-input Takagi-Sugeno model. Simulation results showed that fuzzy logic controllers had better performance than PID controllers in terms of overshoot, settling time, and response to parameter changes for balancing the inverted pendulum. The document aims to demonstrate that fuzzy logic control is better suited than conventional PID control for complex, nonlinear control problems like balancing an inverted pendulum robot.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 7

See discussions, stats, and author profiles for this publication at: https://www.researchgate.

net/publication/224343461

Fuzzy logic control vs. conventional PID control of an inverted pendulum


robot

Conference Paper · December 2007


DOI: 10.1109/ICIAS.2007.4658376 · Source: IEEE Xplore

CITATIONS READS

33 5,323

3 authors, including:

Mutasim Nour
Heriot-Watt University
33 PUBLICATIONS   193 CITATIONS   

SEE PROFILE

Some of the authors of this publication are also working on these related projects:

Sustainable and Smart Buildings View project

All content following this page was uploaded by Mutasim Nour on 07 January 2014.

The user has requested enhancement of the downloaded file.


Fuzzy Logic Control vs. Conventional PID Control
of an Inverted Pendulum Robot
M. I. H. Nour, J. Ooi, , and K. Y. Chan
University of Nottingham Malaysia Campus,
Jln Broga, 43500, Semenyih, Malaysia
[email protected], [email protected]

Abstract - This paper addresses some of the potential benefits of straightforward and easy path to describe or illustrate specific
using fuzzy logic controllers to control an inverted pendulum outcomes or conclusions from vague, ambiguous or imprecise
system. The stages of the development of a fuzzy logic controller information [1].
using a four input Takagi-Sugeno fuzzy model were presented. Review on existing conventional and fuzzy logic techniques
The main idea of this paper is to implement and optimize fuzzy
has highlight the significance and importance of control
logic control algorithms in order to balance the inverted
pendulum and at the same time reducing the computational time systems. Researchers have proven that fuzzy logic control
of the controller. In this work, the inverted pendulum system was systems are able to overcome nonlinear control problems
modeled and constructed using Simulink and the performance of which may not be solved easily using conventional methods
the proposed fuzzy logic controller is compared to the more and the delicate process in designing a fuzzy logic controller
commonly used PID controller through simulations using Matlab. that is able to mimic the human experience and knowledge in
Simulation results show that the Fuzzy Logic Controllers are far controlling a system. Therefore, it will be interesting to show
more superior compared to PID controllers in terms of overshoot, that fuzzy logic controllers are able to control many of these
settling time and response to parameter changes. problems without having a clear understanding of the
underlying phenomena and are more favorable and superior
I. INTRODUCTION compared to conventional PID controllers.
This paper presents the systematic design of a fuzzy logic
It has been traditional for roboticists to mimic the human controller using the Takagi-Sugeno model for a car-pendulum
body. The human body is so perfect in many ways that it mechanical system, well-known as the inverted pendulum
seems like a long way before a robot will ever get close to problem. Here, the inverted pendulum and control system is
exactly representing a human body. first modeled before putting them into simulations using
One of the less thought about issues in robotics is the issue Matlab where the control system is further tuned to increase its
of balance, which can be appropriately represented by the performance. The control system is then further optimized in
balancing act of an inverted pendulum. This explains the fact order to reduce the computational time of the system by
that although many investigations have been carried out on the reducing the number of rule bases. This is followed by the
inverted pendulum problem [1]-[10], researchers are still implementation and comparison of the PID and fuzzy
constantly experimenting and building it as the inverted controllers through simulations.
pendulum is a stepping stone to greater balancing control
systems such as balancing robots. II. INVERTED PENDULUM MODEL
Therefore, in order to control the balancing act of the
inverted pendulum, a control system is needed. As known, Fig. 1 shows the block diagram of an inverted pendulum
fuzzy logic control systems model the human decision making system with a feedback fuzzy control block. The output of the
process based on rules and have become popular elements as
they are inexpensive to implement, able to solve complicated plant ( θ , θ, x, x ) is fed into the controller to produce the
nonlinear control problems and display robust behavior subsequent force to balance the pendulum to its upright
compared to the more commonly used conventional PID position and at the same time maintaining the cart initial
control systems [1, 2, 11]. position.
In general, there are numerous and various control problems The inverted pendulum system consists of a moving cart and
such as balancing control systems which involve phenomena a pivoted bar that is free to oscillate in the x-y plane. However,
that are not amenable to simple mathematical modeling. As the cart is constrained to move only in the x-plane as shown in
known, conventional control system which relies on the Fig. 2. In Fig. 2, mc is the mass of the cart, mp is the mass of the
mathematical model of the underlying system has been pendulum, µ is the coefficient of friction, g is the acceleration
successfully implemented to various simple and non-linear of gravity and I is the moment of inertia of the pendulum about
control systems. However, it has not been widely used with the pivot.
complicated, non-linear and time varying systems [3, 4, 5, 11]. From Fig. 2 and the pendulum’s free body diagram, the state
On the other hand, fuzzy logic is a powerful and excellent equations in terms of the control force, F can be expressed as,
analytical method with numerous applications in embedded
control and information processing. Fuzzy provides a

1
2 2
Km Kg Km K g
( m c + m p ) gθ − V+ x
θ = Rr Rr 2 (5)
4 ( mc + m p )l − m p l
3

The model of the inverted pendulum is then created using


Simulink. The input to the plant is the disturbance force
imparted to the cart. The current angle and angular velocity is
fed back to the system to calculate the angular acceleration and
Fig. 1. Block diagram of inverted pendulum system with feedback fuzzy logic acceleration of the cart and pendulum respectively. The
controller. angular acceleration and the acceleration are then integrated to
obtain the outputs of angle, angular acceleration, position and
velocity.
As a whole, the balancing algorithm (controller) measures
two outputs from the plant (Inverted Pendulum) and calculates
the torque forces, F needed for balance. Fig. 3 shows how the
forces, F are determined from the angle, angular velocity,
position and velocity measured from their respective sensors.
Fig. 3 shows that the motor shaft encoder measures the
position of the cart’s wheel while the angle sensor measures the
tilt angle of the pendulum. The angular velocity and the
velocity of the cart are then derived respectively from the
measured tilt angle and the cart’s position. The four triangles
K1, K2, K3 and K4 are the “knobs” that apply gain to the four
Fig. 2. Inverted pendulum system. feedback signals. They are summed together and fed back to
the system as the PWM motor voltage to drive the cart. This
can be expressed as,
4 F − 4 m p lθ 2 sin θ − m p g sin θ cos θ
x = 3 3 (1) F = ( Angle , θ × K 1 ) + ( AngularVel ocity , θ × K 2 ) +
4 ( mc + m p ) − m p l cos 2 θ (6)
3 ( Position , x × K 3 ) + (Velocity , x × K 4 )
( mc + m p ) g sin θ − F cos θ + m p lθ 2 sin θ cos θ
θ = (2) The controller input gains, K1, K2, K3 and K4 are determined
4 ( m c + m p )l − m p l cos 2 θ using the Linear-Quadratic Regulator (LQR) method described
3
by Friedland [11]. This method finds the optimal K based on
the state feedback law and the state-space equation derived
where length, L =2 l and I = 4/3 mp l 2. θ is the falling angle,
earlier. It is found that the input gains, K1, K2, K3 and K4
θ is the angular velocity, θ is the angular acceleration of the respectively are approximately 40, 10, 3 and 4.
pendulum. x is the acceleration of the cart.
Since the control force, F in terms of the motor voltage, V III. FUZZY LOGIC SYSTEM
can be expressed as [6],
Fuzzy controllers are very simple. They consist of an input
2 2 stage, a processing stage and an output stage. The input or
KmKg Km K g
F= V− x (3) fuzzification stage maps sensor or other inputs to the
Rr Rr 2 appropriate membership functions and truth values. The
processing or the rule evaluation stage invokes each
where x is the velocity of the cart, Km is the motor torque appropriate rule and generates a result for each, then combines
constant, Kg is the gearbox ratio, R is the motor armature the results of the rules.
resistance and r is the motor pinion radius, the state equations The output or the defuzzification stage then converts the
for the inverted pendulum in terms of the motor voltage, V has combined result back into a specific control output value using
been derived as, the Centroid Method.
Fig. 4 shows the fuzzy inference process as discussed above
K K K K
2 2 while Fig. 5 shows the shape and range of the membership
4 ( m g V − m g x ) − m p gθ functions for the input angle, angular velocity, position and
3 Rr Rr 2 (4) velocity respectively.
x =
4 ( mc + m p ) − m p
3

2
Membership Functions of Input Angle

NL NS Z PS PL
1

0.8

0.6

0.4

0.2

-0.5 -0.4 -0.3 -0.2 -0.1 0 0.1 0.2 0.3 0.4 0.5
Angle (radians)

Membership Functions of Input Angular Velocity

Fig. 3. Plant and controller block diagram.


NL Z PL
NS 1 PS

The input variables NL, NS, Z, PS and PL for the inputs 0.8
angle and angular velocity represent the membership functions
0.6
of Negative Large, Negative Small, Zero, Positive Small and
Positive Large respectively. While the input variables N, Z and 0.4

P for the inputs position and velocity represent the membership 0.2
functions Negative, Zero and Positive respectively.
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1

Angular Velocity (rad/s)

Membership Functions of Input Position and Velocity

N P
1

0.8

0.6

0.4

Fig. 4. Fuzzy control process. 0.2

-3 -2 -1 0 1 2 3
For this particular problem, an output window that consists Position (m), Velocity (m/s)
of 13 fuzzy singletons is used. Each fuzzy singleton is a linear
function that defines the output of the system as given in (7). Fig. 5. Membership functions of inputs.

Output force, F = K 1θ + K 2θ + K 3 x + K 4 x + K 5 (7)

where K5 is a constant.
Fig. 6 shows the membership functions of the output force
while Table 1 represents the function of each membership
function defined in Fig. 6. The variables N1 to N6 represent a
negative force while variables P8 to P13 represent a positive
force and Z7 represents zero force
Values of gains K1 to K5 in Table 1 are obtained through
tuning of the input and output membership functions based on
the assumptions as follows: Fig. 6. Output membership functions.
• Output force is non linear. At larger angle, output
force is larger. Table 2 on the other hand defines the relationship between
• Influence of input θ towards output > Influence of θ the input variables and the output variable which is the required
force to balance the pendulum.
> Influence of x and x .
The rule base is constructed based on the assumptions as
• Constant K5 is required for the fine tuning of the follows. Considering in terms of the inputs angle or angular
output. velocity,
• A lower overshoot response and shorter settling time • The larger the –ve input, the larger the –ve force.
is desired. • The larger the +ve input, the larger the +ve force.

3
• At zero input, the force depends on the magnitude of • The addition of θ i and θi as well as the subtraction of
the other three inputs.
xi and x i in the calculation of Fi correspond to the
TABLE 1 direction of the inputs with respect to the direction of
OUTPUT FORCE & INPUT GAINS
F as explained above.
• The subtraction of the value 1 from θi shows that the
influence of θ i is greater than the influence of θi
towards the required force.
• The addition of the value 3 to xi and x i is necessary
based on how the weighting values are assigned.
The weighting values area signed based (7) in such a way
that:
• The higher the weighting values of inputs angle and
angular velocity, the larger the force in the positive
TABLE 2 direction.
RULE BASE • The higher the weighting values of inputs position and
velocity, the larger the force in the negative direction.

For example, given the conditions as follow:


• The falling angle of the pendulum is large in the
positive direction.
• The pendulum is falling slowly (small angular
velocity) in the negative direction.
• The cart is moving in the negative direction at the
negative position.

∴ Fi = 5 + (2 − 1) + (−1 + 3) + (−1 + 3)
= 10 (Refer to Table 2)

IV. SIMULATION

The inverted pendulum and fuzzy controller systems


modeled are then implemented and simulated in the Matlab
Considering in terms of the inputs position or velocity, environment using Simulink and the Fuzzy Logic Toolbox.
• The larger the +ve input, the larger the –ve force. The fuzzy logic controller modeled was first implemented
• The larger the –ve input, the larger the +ve force. using the graphical user interface in the fuzzy logic toolbox.
As the fuzzy logic toolbox is designed to work flawlessly with
• At zero input, the force depends on the magnitude if
Simulink, the system is then embedded directly into simulation.
the other three inputs.
Fig. 7 shows the fuzzy logic control system of the inverted
Therefore, by assigning the weighting values of 1 to 5
pendulum system. In this system, a step response is used as the
respectively to NL, NS, Z, PS, and PL for inputs angle and
reference position. The system works base on the concept that
angular velocity and weighting values of 1 to 3 respectively to
at a smaller step reference, the force required to move the
N, Z and P for inputs position and velocity, the rule base is
pendulum to that reference position is smaller and vice versa.
determined using the formula,
This force is known as the disturbance force or the reference
force as mentioned earlier which will be imparted to the
F = θ + (θ − 1) + ( − x + 3) + ( − x + 3) (8)
inverted pendulum system.
Due to this disturbance force, the pendulum will be
where F denotes the values 1 to 13 as represented in the output displaced from its balance state. The fuzzy logic controller at
membership functions in Fig. 6 while θ , θ, x, x denotes the the feedback path will then try to balance the pendulum by
weighting values of the respective inputs corresponding to the evaluating the current state of the angle and the angular
membership functions. velocity of the pendulum and the current position and the
Equation (8) is derived in such a way that: velocity of the cart to produce the appropriate force and
direction to balance the pendulum back to its upright position.

4
The fuzzy control system here was first implemented, tuned inputs angle and position and the output control force with pole
and optimized using the fuzzy logic toolbox before being mass of 0.1kg, cart mass of 1.0kg, pole length of 1.0m, input
implemented into the fuzzy logic controller. step reference of 1.0 and acceleration due to gravity of 9.8ms-2.
The inverted pendulum plant on the other hand consists of Due to the step response, the actual simulation of the system
several masks layer that defines the whole inverted pendulum only starts at t=1s. In other words, the simulation of the system
system. Due to this, the physical specifications that define the only starts when the disturbance force is applied to the system.
pole length, pole mass, cart mass and the acceleration due to Fig. 9 shows that the cart is able to reach its desired position
gravity, g can be modified to test the system and controller’s in about 6s while balancing the pendulum. The desired
performance at different conditions. position here represents the reference position of the system
In order to reduce the system’s computational time, the 225 which is 1 step in this case.
rule based designed previously are optimized and reduced to 16 Fig. 8 on the other hand shows that with a step response of 1,
rule base. The optimization process is simplified as the a disturbance force of about 3N in the opposite direction is
Sugeno-type inference is used in this fuzzy logic controller. applied to the system. Therefore, in order for the cart to reach
The optimization process involves the reduction of the its desired or reference position in the positive direction and at
number of membership functions of all the inputs to two the same time balancing the pendulum at the shortest time, a
membership functions and also the reduction of the 225 rules to negative disturbance force is applied to the system. When a
16 only as discussed earlier. Table 3 shows the newly negative force is applied, the pendulum will be displaced to the
optimized rule base. positive direction due to the inertia of the pendulum.
Due to this, the fuzzy logic controller will apply the
TABLE 3 appropriate force in the positive direction to balance the
OPTIMIZED RULE BASE
pendulum. This explains the force and the angle response at
the start of the simulation and the very small negative
displacement of the cart’s position as shown in Fig. 8. The
response also shows that the falling angle of the pendulum
requires 6.5s to return to its upright position of zero angle.
Fig. 10 shows the simulation of the optimized system. The
only difference between the previous and the optimized system
is that the optimized system takes an extra time of 0.5s to
balance the pole to its upright position.

B. Fuzzy Control vs. Conventional PID Control


Fig. 11 and Fig. 12 show two sets of results comparing the
application of fuzzy control and conventional control (PID
controller) techniques to the inverted pendulum problem
simulation. For the same system parameters here, the PID
controller proportional gain, Kp, derivative gain, Kd and
integral gain, Ki are found to be 9, 14, and 0.06 respectively.
The first two graph show that the fuzzy logic controller gives a
smaller overshoot and shorter settling time. In the second set,
the mass of the cart is changed without modifying the
Fig. 7. Simulink model of inverted pendulum problem with fuzzy logic control. controllers. Fig. 14 shows that the conventional controller
totally failed to balance the pendulum as it was designed for
V. RESULTS AND DISCUSSION the nominal value of cart mass. On the other hand, the fuzzy
logic controller exhibited small performance degradation due
This section discusses the simulation development results to this parameter change as shown in Fig. 13. This proves that
and compares the fuzzy logic controller performance at fuzzy logic is not based on the mathematical model of the
different physical conditions. The optimized simulation results inverted pendulum and more robust to mass variations.
are also compared with the previous results to show that there
is only a very slight degradation of performance in the
controller when the rule base of the system is reduced and
tuned to reduce the computational time of the controller.
Besides that, the sensors are also tested to show the
relationship between the falling angle of the pendulum and the
speed of the motors.

A. Simulation Results
The Simulink model in Fig. 8 is simulated with relative
tolerance of 0.001s. Fig. 8 and 9 present the simulation for the Fig. 8. Falling angle versus force imparted response.

5
Fig. 9. Desired position versus cart position response.
Fig. 14. Falling angle response for conventional PID control (Mass changed).

VI. CONCLUSIONS

In this paper, an optimized fuzzy logic controller has been


implemented in the Matlab environment, using the Fuzzy
Logic Toolbox and Simulink. It has been used to control an
inverted pendulum system. The study has identified some of
the potential benefit of using fuzzy logic controllers. In
comparison with the modern control theory, fuzzy logic is
Fig. 10. Optimized falling angle versus force imparted response.
simpler to implement as it eliminates the complicated
mathematical modeling process and uses a set of control rules
instead. The achieved results showed that proposed fuzzy logic
controller is more robust to parameter variations when
compared to the PID controller.

REFERENCES

[1] M. A. Lee and H. Takagi, “Integrating design stages of fuzzy systems


using genetic algorithms”, IEEE Transaction of Fuzzy System, pp. 612-
617, 1993.
[2] H. Wang, K. Tanaka, and M. F. Griffin, “An approach to fuzzy control
of non-linear systems: Stability and design issues,” IEEE Transaction of
Fuzzy Systems, vol. 4, pp. 14-23, 1996.
Fig. 11. Falling angle response for fuzzy control.
[3] J. Tang, and H. Shoaee, “A comparative study of fuzzy logic and
classical control with EPICS,” Continuous Accelerator Facility, Newport
News.
[4] S. Mori, H. Nishihara and K. Furuta, “Control of unstable mechanical
system control of pendulum,” Int. J. Contr., vol. 23, no. 5, pp. 673-692,
1976.
[5] T. Yamakawa, “Stabilization of an inverted pendulum by a high speed
fuzzy logic controller hardware system,” Fuzzy Sets Systems, vol. 32, pp.
161-180, 1989.
[6] J. Lam, “Control of an inverted pendulum,” http://www-
ccec.ece.ucsb.edu/people/smith/student_projects/Johnny_Lam_report_23
8.pdf.
[7] C. Yu, and Li Xu, “Development of inverted pendulum system and fuzzy
control based on MATLAB,” Fifth World Congress on Intelligent
Fig. 12. Falling angle response for conventional PID control. Control and Automation, WCICA 2004, vol. 3, pp. 2467-2471, 15-19
June 2004.
[8] Q. Sun; Z. Sun; Z. Zhao, and H. Li, “Fuzzy control of a double inverted
pendulum using two closed loops,” Fifth World Congress on Intelligent
Control and Automation, 2004. WCICA 2004, vol. 3, pp. 2519-2522, 15-
19 June 2004.
[9] H. Marzi, “Multi-Input Fuzzy control of an inverted pendulum using an
armature controlled DC motor,” Robotica (2005), Cambridge University
Press Volume 23, pp. 785-788 Issue 06, November 2005.
[10] M. I. El-Hawwry, A.L. Elshafei, H. M. Emara, and H. A. Abdel Fattah,
“Adaptive fuzzy control of the inverted pendulum problem,” IEEE
Transaction on Control System Technology, vol. 14, no. 6, pp. 1135-
1144, November 2006.
[11] B. Friedland, Control System Design, 2nd ed., McGraw Hill, 1986.

Fig. 13. Falling angle response for fuzzy control (Mass changed).

View publication stats

You might also like