You are on page 1of 71

# FEEDBACK LINEARIZATION, SLIDING MODE AND

## SWING UP CONTROL FOR THE INVERTED

PENDULUM ON A CART

## A Dissertation Submitted to the University of Manchester

for the Degree of Master of Science (MSc) in the Faculty of
Engineering and Physical Sciences

2015

ASUK AMBA J.
School of Electrical and Electronic Engineering

LIST OF TABLES ......................................................................................................................... 4
LIST OF FIGURES ....................................................................................................................... 5
LIST OF ABBREVIATIONS ........................................................................................................... 7
DECLARATION .......................................................................................................................... 8
ABSTRACT .............................................................................................................................. 10
CHAPTER 1: INTRODUCTION .................................................................................................. 11
1.1 BACKGROUND ......................................................................................................................... 11
1.2 OBJECTIVES ............................................................................................................................ 13
1.3 ORGANIZATION OF THESIS ...................................................................................................... 13
CHAPTER 2: LITERATURE REVIEW ........................................................................................... 14
CHAPTER 3: MODELLING OF INVERTED PENDULUM ................................................................ 17
3.1 MATHEMATICAL MODEL OF THE IP02 INVERTED PENDULUM(IP) SYSTEM FROM QUANSER
...................................................................................................................................................... 17
3.2 STATE SPACE EQUATION OF NONLINEAR INVERTED PENDULUM (IP) SYSTEM...................... 22
3.3 MODEL VALIDATION AND NATURAL DYNAMICS ................................................................... 22
3.4 JACOBIAN LINEARIZATION OF NONLINEAR INVERTED PENDULUM SYSTEM ........................ 23
3.5 ANALYSIS OF LINEAR SYSTEM IN THE UPRIGHT EQUILIBRIUM ............................................... 24
CHAPTER 4: CONTROLLER DESIGN AND SIMULATION RESULTS ................................................ 25
4.1 FEEDBACK LINEARIZATION ...................................................................................................... 25
4.1.1 INPUT-STATE LINEARIZATION .......................................................................................... 25
4.1.2 INPUT-STATE LINEARIZATION OF THE INVERTED PENDULUM ....................................... 26
4.1.3 APPROXIMATE FEEDBACK LINEARIZATION ...................................................................... 29
4.1.4 APPROXIMATE FEEDBACK LINEARIZATION OF THE INVERTED PENDULUM .................... 29
4.2 SLIDING MODE CONTROL....................................................................................................... 31
4.2.1 SLIDING SURFACE DESIGN ............................................................................................... 32
4.2.2 SLIDING CONTROL DESIGN............................................................................................... 32
4.2.3 DEALING WITH CHATTERING .......................................................................................... 33
4.2.4 SLIDING MODE CONTROL DESIGN FOR THE APPROXIMATELY LINEARIZED INVERTED
PENDULUM(FL/SMC) ................................................................................................................ 33
4.2.5 TUNING AND SIMULATION OF FEEDBACK LINEARISATION WITH SLIDING MODE
CONTROLLER ............................................................................................................................. 34
2

## 4.3 INPUT-OUTPUT LINEARIZATION.............................................................................................. 36

4.3.1 INPUT-OUTPUT LINEARIZATION OF THE INVERTED PENDULUM..................................... 37
4.3.2 INPUT TO OUTPUT(ANGLE) LINEARIZATION WITH INTERNAL DYNAMICS STABILIZING
CONTROL(FL/ZDC) ..................................................................................................................... 39
4.3.3 TUNING AND SIMULATION OF INPUT-OUTPUT(ANGLE) LINEARIZATION WITH ZERO
DYNAMICS CONTROLLER .......................................................................................................... 41
4.4 LINEAR QUADRATIC REGULATOR(LQR) .................................................................................. 43
4.4.1 DESIGN , TUNING AND SIMULATION OF LQR CONTROLLER FOR THE INVERTED
PENDULUM ............................................................................................................................... 44
4.5 PROPORTIONAL, INTEGRAL AND DERIVATIVE(PID) CONTROL................................................ 46
4.5.1 TUNING AND SIMULATION OF PID CONTROLLER ............................................................ 47
4.6 SWING UP CONTROL OF INVERTED PENDULUM .................................................................... 49
4.6.1 SWING UP BY POSITION VELOCITY(PV) CONTROL ......................................................... 49
4.6.2 TUNING AND SIMULATION OF PV CONTROL SWING UP ................................................. 49
4.6.3 SWING UP BY ENERGY CONTROL USING PASSIVITY OF PENDULUM .............................. 51
4.6.4 TUNING AND SIMULATION OF PASSIVITY BASED ENERGY SWING UP CONTROL ............ 53
4.7 ANALYSIS AND DISCUSSION OF RESULTS ................................................................................ 55
4.7.1 COMPARISON OF PERFORMANCE ................................................................................... 55
4.7.2 COMPARISON OF ROBUSTNESS ....................................................................................... 56
4.7.2 COMPARISON OF SWING UP CONTROLLERS ................................................................... 58
CHAPTER 5: CONCLUSION AND RECOMMENDATION .............................................................. 59
5.1 CONCLUSION ........................................................................................................................... 59
5.2 RECOMMENDATION ............................................................................................................... 59
REFERENCES ........................................................................................................................... 60
APPENDICES........................................................................................................................... 62
APPENDIX A: SIMULINK DIAGRAM .............................................................................................. 62
APPENDIX B: MATLAB CODES ...................................................................................................... 69
TOTAL WORD COUNT: 14,937

LIST OF TABLES
Table 3.1: Parameters of the inverted pendulum from Quanser...................................................17
Table 3.2: D.C Motor Parameters...................................................................................................19
Table 4.1: Tuning of sliding mode controller..................................................................................35
Table 4.2: Tuning of LQR control parameters.................................................................................44
Table 4.3: Comparison of performance of stabilizing controllers...................................................55
Table 4.4: Comparison of robustness of stabilizing controllers......................................................57

LIST OF FIGURES
Figure 1.1: Quanser IP02 Inverted Pendulum on a Cart...................................................................11
Figure 1.2: Applications of Inverted Pendulum...............................................................................13
Figure 3.1 : Modelling of inverted pendulum...................................................................................17
Figure 3.2: Modelling of the d.c motor.............................................................................................19
Figure 3.3: Impulse response of nonlinear pendulum model...........................................................22
Figure 3.4: Properties of linear IP model at upright equilibrium......................................................24
Figure 4.1: Approximate Feedback linearization with Sliding Mode Control(Power Law)..............35
Figure 4.2: Tracking , noise & disturbance rejection of Approx. Feedback Lin. with SMC................36
Figure 4.3: Input-Output Linearization with pendulum angle as output..........................................38
Figure 4.4: Input-output Linearization with cart as output and stable zero dynamics(pendulum)..39
Figure 4.5:Input-Output(Angle) Linearization and Internal dynamics(cart) stabilizing control

...42

## Figure 4.6:Tracking, disturbance and Noise suppression of FL/ZDC.................................................42

Figure 4.7: LQR simulation with

and

................................................................45

## Figure 4.8:Tracking. disturbance rejection with noise of LQR control..............................................45

Figure 4.9: Two loop PID controller for inverted pendulum.............................................................46
Figure 4.10: PID controller tracking 0.3m cart distance from initial angle of 0.2rads

............48

## Figure 4.11: Tracking and disturbance rejection of PID with noise..................................................48

Figure 4.12: Swing up, tracking and stabilization of pendulum with PV and FL/SMC......................50
Figure 4.13: Swing up, Tracking and stabilization of PV control with noise and disturbance..........50
Figure 4.14: Swing up using Energy and Passivity of pendulum......................................................55
Figure 4.15:Swing up and Tracking with disturbance and noise of Passivity-Energy Control..........55
Figure 4.16: LQR with maximum noise power of 0.7 and disturbance of 0.2...................................57
Figure 4.17: PID maximum noise of 0.1 and disturbance of 0.2.......................................................57
Figure 4.18:FL/SMC with maximum noise of 1.4 and disturbance of 0.2.........................................58
Figure 4.19: FL/ZDC with maximum noise of 0.3 and disturbance of 0.2........................................58

## Figure A1.1: Simulink Diagram of Non-Linear Natural Dynamics with Actuator............................62

Figure A1.2:Top level diagram of physical model of IP with SimScape..........................................62
Figure A1.3: Physical model of inverted pendulum plant with SimScape.....................................63
Figure A2.1: Top level diagram of system with LQR control..........................................................63
Figure A2.2: LQR control design.....................................................................................................63
Figure A3.1: Top level diagram of approximate linearization with sliding mode control..............64
Figure A3.2: Approximate feedback linearization function block..................................................64
Figure A4.1: Top level diagram of input-output linearization with zero dynamics control...........64
Figure A4.2: Input-Output(angle) linearization with virtual control..............................................65
Figure A4.3: Zero dynamics stabilizing function block...................................................................65
Figure A5: Convert Radians to degree...........................................................................................65
Figure A6.1: Top level diagram of two loop PID............................................................................66
Figure A6.2: PID control.................................................................................................................66
Figure A7.1: Top level diagram of PV swing up control.................................................................67
Figure A7.2: PV control using pendulum angle and pendulum velocity.......................................67
Figure A7.3: State feedback Control of Cart for PV swing up.......................................................67
Figure A8 Passivity based energy swing up function block..........................................................68
Figure A9.1: Switching function for swing up control..................................................................68
Figure A9.2: Integral of Squared Error.........................................................................................68
Figure A9.3: Calculate Mean Absolute Control Action................................................................69
Figure A9.4: State Generator.......................................................................................................69

LIST OF ABBREVIATIONS

LQR

SMC

## Sliding Mode Control

IP

Inverted Pendulum

FL/ZDC

PV

## Position Velocity Control

P.O

Percentage Overshoot

PID

SIMO

ISE

MACA

## Mean Absolute Control Action

SSE

Modulus of vector
Horizontal Component of vector quantity
Vertical Component of vector quantity

DECLARATION

I, AMBA ASUK J., hereby declare that no part of the work referred to in this
dissertation has been submitted in support of an application for another degree or
qualification of this or any other university or other institute of learning.

...........................................................

## Signed: AMBA ASUK J.

1. The author of this dissertation (including any appendices and/or schedules to this
dissertation) owns certain copyright or related rights in it (the Copyright) and he has given
The University of Manchester certain rights to use such Copyright, including for
2. Copies of this dissertation, either in full or in extracts and whether in hard or electronic
copy, may be made only in accordance with the Copyright, Designs and Patents Act 1988
(as amended) and regulations issued under it or, where appropriate, in accordance with
licensing agreements which the University has entered into. This page must form part of
3. The ownership of certain Copyright, patents, designs, trademarks and other intellectual
property (the Intellectual Property) and any reproductions of copyright works in the
dissertation, for example graphs and tables (Reproductions), which may be described in
this dissertation, may not be owned by the author and may be owned by third parties.
Such Intellectual Property and Reproductions cannot and must not be made available for
use without the prior written permission of the owner(s) of the relevant Intellectual
Property and/or Reproductions.
4. Further information on the conditions under which disclosure, publication and
commercialisation of this dissertation, the Copyright and any Intellectual Property and/or
Reproductions described in it may take place is available in the University IP policy (see
http://documents.manchester.ac.uk/display.aspx?DocID=487), in any relevant Dissertation
restriction declarations deposited in the University Library, The University Librarys
regulations (see http://www.manchester.ac.uk/library/aboutus//regulations) and in the
Universitys Guidance for the presentation of Dissertations.

ABSTRACT

Under-actuated systems such as the inverted pendulum on a cart have more degrees of freedom
than actuation, such systems find ready applications in modern robotics and technology. The
design and simulation of stabilizing and swing up controllers for an inverted pendulum is the
major objective of this thesis.
Linear control techniques such as the Linear Quadratic Regulator (LQR) that optimizes the control
effort/state, and the error driven Proportional Integral Derivative (PID) control are designed using
a linearized Lagrangian model of the pendulum. Also, transforming the nonlinear state space
equations via feedback linearization enables the design of nonlinear controllers using techniques
such as sliding mode control(SMC), Lyapunov stability theory and singular perturbation theory.
Furthermore, the energy of the pendulum as well as its angle and velocity are used to design
swing up controllers using principles of energy control, passivity and position- velocity (PV)
control.
The results obtained show that all the designed controllers can stabilize the pendulum with LQR
and Approximate Linearization/SMC giving superior performance and robustness. Passivity based
swing up is found superior in performance and robustness to PV control.
The controllers designed have been subject to all the constraints and conditions peculiar to the
real system and found to be satisfactory. However, practical implementation of these controllers
is highly recommended.

10

CHAPTER 1: INTRODUCTION
1.1 BACKGROUND
The inverted pendulum on a cart is a popular benchmark problem for researchers in control
systems and automation[1]. The control of an inverted pendulum is analogous to balancing a
broomstick on the index finger with the control motion constrained to a single dimension of
space. The control of an inverted pendulum is difficult due to certain properties it possesses. It is
a nonlinear system which is unstable in the upright position. Also, it is an underactuated system
due to the lack of direct control over some direction it needs to be steered. The control
techniques for such underactuated systems find ready applications in modern automation,
robotics and fault tolerant control[2].
The IP02 Single Inverted Pendulum(SIP) from Quanser Inc. is the physical pendulum model being
considered in this thesis. The IP02 consists of a linear servo base unit with a pendulum attached
to it as can be seen from Fig. 1.1.

## Figure 1.1 Quanser IP02 Inverted Pendulum on a Cart

Technically, the IP02 is the base of the pendulum containing the motor driven cart. The cart
measures about a metre in length while the pendulum measures about two third of a metre
across[3]. Encoders provide measurements of two states of the system which are the cart
distance and the pendulum angle. To obtain the other states therefore would require an observer
being used or a differentiator. Gears in the motor couple the rotation of the motor into linear
motion in the cart. The motor driving the cart is specified to handle a maximum of 15volts[3].
From a control theoretic viewpoint, the inverted pendulum is a non-minimum phase system as it
has unstable zeroes. This implies the system initially steers in an opposite direction relative to the
control sense. More so, the non-minimum phase of the system makes it possess an unstable zero
dynamics and therefore difficult to use input-output feedback linearization techniques.
11

Furthermore, it is stated in [4] that the inverted pendulum is not globally controllable especially
when moving from the downward stable position, to the upright unstable position. This is
because its controllability matrix losses rank when it crosses the horizontal at

. This makes it a

difficult problem to swing up the pendulum using active control from any single controller.
In this project, feedback linearization and techniques from sliding mode, LQR and PID control are
used for the stabilization(about upright equilibrium) and tracking (along the cart) of the inverted
pendulum. Also, swing up controls are designed using position velocity control and passivity
based energy control.
Feedback linearization is a control strategy that changes the state space coordinates of a non
linear system into linear coordinates using transformation functions called a diffeomorphism [5].
Because feedback linearization is model based, the system is modelled precisely to capture
significant details about the systems dynamics. The technique of approximate linearization is then
applied to deal with the lack of involutivity in the system which makes it difficult to perform the
classical input-state linearization. Furthermore, sliding mode control is then used to design a
controller for the approximately linearized system.
Sliding mode control is a nonlinear robust control strategy[6]. The robust nature of sliding mode
control arises due to the invariance a system acquires when "sliding" on a chosen switching
surface[7]. The surface is a dynamic switching condition for the discontinuous control action that
must be applied to any system to make it a variable structure system.
Input -output linearization is also used to control the inverted pendulum. However, to deal with
the unstable internal dynamics, the system is made singularly perturbed. With a high gain
controller used in the input -output linearization, the system becomes singularly perturbed with
respect to the zero dynamics[8]. This implies the dynamics under input -output linearization
control has a fast transient and therefore the zero dynamics can be treated as an independent
system. A Lyapunov function based on the states affected by the zero dynamics is used to derive a
stabilizing controller for the zero(internal) dynamics.
Linear controllers such as LQR and PID, which make use of the linearized model in the control
design are also implemented for the cart -pendulum. The PID is designed using pole placement to
tune its parameters. The LQR controller is designed by solving the quadratic optimization problem
using the solution of the resulting Ricatti equation. A comparison is also made between the
performance of the linear controllers to the nonlinear controllers designed.

12

This project also implements swing up controls using position-velocity(PV) control and energy
based passivity control. PV control uses the angle and the velocity of the pendulum, scaled by
suitable gains to determine the reference to feed to an independent cart controller in order to
swing up the pendulum. Energy based passivity control exploits the dissipative nature of the
pendulum and by virtue of controlling the total energy and the cart , the pendulum is made to
converge in its homoclinic orbit in order to swing it up[4]. Other swing up strategies exist which
use direct pendulum energy control [9].
The motivation for the selection of this project results from the enormous applications of the
techniques involved in controlling this system to other practical systems such as segway robots,
under-actuated systems, fault control and a lot more practical systems as shown in Fig. 1.1 below.

## Figure 1.2 Applications of Inverted Pendulum Control

1.2 OBJECTIVES
The objectives of this project includes:

The derivation and validation of a mathematical model for the IP02 inverted pendulum

The design and simulation of controllers for the inverted pendulum based on techniques
such as approximate feedback linearization, input-output feedback linearization, PID
control, LQR control and PV swing up and Passivity based energy control

## 1.3 ORGANIZATION OF THESIS

This thesis is organized into six chapters. Chapter 1 is the introduction. Chapter 2 is a review of
literature. Modelling and analysis of the dynamics of the inverted pendulum is done in chapter 3.
Chapter 4 contains the controller design, simulation and results . Chapter 5 is conclusion.

13

## CHAPTER 2: LITERATURE REVIEW

The objective of control is to make systems behave in a desired way [10]. According to [11],
control is everywhere and remains a vital aspect of modern science and technology. The inverted
pendulum has since the 1950s been an interesting benchmark control problem in both research
and academia[1]. The inverted pendulum control problem is interesting and challenging due to its
unique characteristics as enumerated below:

It is nonlinear [12]

## It is non-minimum phase with an unstable zero dynamics [4]

Its relative degree and controllability are not well defined [4]

## It is underactuated with more degrees of freedom than control inputs [4]

It is a single input multiple output system and therefore has coupled dynamics

It has constraints on the size of the control action and the states [14]

## It is highly sensitive to external disturbance [15]

The inverted pendulum on a cart consists of a swinging pole pivoted on a movable cart. The
pendulum swings freely about its point of pivot on the cart with no direct actuation while the cart
is directly actuated to move horizontally [4]. The inverted pendulum has two physical equilibrium
points:- the upright vertical position which is unstable and the downward pendant position which
is stable [13] . The linear inverted pendulum on a cart is one among other forms of inverted
pendulum systems such as:- the acrobot [16,17], the pendubot [16,4,18],the furuta pendulum
[4,19] and the reaction wheel pendulum [4,20]
According to [1], the principal control problem for the inverted pendulum on a cart, involves
swinging up the pendulum from the downward stable position to the unstable upright position,
and then balancing the pendulum at the upright position and further moving the cart to a
specified reference position. The control of the inverted pendulum was first tackled by Roberge
in 1960 , and then by Schaefer and Canon in 1966 [1]. Since then, several control techniques have
been studied with applications to the control of an inverted pendulum [1].
An attempt on the use of feedback linearization was done in [21] and it was proven that the
inverted pendulum is not full state linearizable. According to [4], the relative degree of the cart
pendulum is not constant and the controllability distribution does not have a constant rank since
the system loses controllability as it swings past the horizontal. This makes the application of
14

feedback linearization techniques to the inverted pendulum difficult. In [22], the technique of
approximate feedback linearization was proposed to deal with the difficulties associated with
non-involutive systems like the inverted pendulum. This involved the use of an output function
that gives the maximum relative degree and then ignoring all terms in the diffeomorphism that
makes the system non-involutive within a chosen region. The method was successfully applied in
the control of a ball and beam in [16] and then in the control of an inverted pendulum in [23]. [23]
cascaded sliding mode control with the approximate feedback linearization and implemented the
controller in the physical plant with very satisfactory performance obtained. In [24], similar
approximation techniques as in [25], are used to generate transformations needed to successfully
change the state space coordinates of the nonlinear inverted pendulum and a feedback law is
designed using a constructive backward process to both swing up and stabilize the inverted
pendulum. The performance obtained was satisfactory with a wide domain of attraction. In
[26],various sliding mode control algorithms are compared

in the

control of an inverted

pendulum after transforming the system state space using approximate feedback linearization.
Second order sliding mode control with super twisting reaching law was found to give the best
results with respect to stability, transient performance ,chattering reduction and robustness. In
[8], input-output linearization was used to control the cart inverted pendulum with the pendulum
angle used as output and integrator back-stepping control used to stabilize the unstable internal
dynamics. Stability analysis was done in the above to analyse the stability of the system using
singular perturbation theory and simulations done with good results obtained. [27] designed a
single global controller for both swing up and stabilization of the inverted pendulum using input
output linearization with respect to the pendulum angle and a mechanism to deal with the
singularity that occurs in the control action when the pendulum crosses the horizontal. Also, the
unstable internal dynamics associated with the cart was stabilized using Lyapunov stability
theory. Satisfactory results were obtained using the above methods.
A robust adaptive back stepping controller is designed in [28] for the cart inverted pendulum
using a Lyapunov based approach and a robust adaptive control law defined to deal with
modelling uncertainties. The control algorithm above exhibited a stable performance in the
presence of unknown parameters of the inverted pendulum and had a large domain of attraction
to the equilibrium position.
Linear controllers have been applied with great success in the stabilization and tracking control of
the inverted pendulum as discussed in [1].In [29], a comparison is made between a conventional
PID controller and an LQR controller for the stabilization of a rotary inverted pendulum. LQR is
15

shown to give better performance and robustness than the PID controller. An LQR controller is
designed in [30] for the cart inverted pendulum by first modelling the system and then solving the
quadratic optimization control problem. Good results were obtained both from the simulation
and experiment demonstrating the

## robustness of LQR control. Other stabilizing control

techniques such as neural networks and fuzzy control have been implemented for the inverted
pendulum as discussed in [31-33].
The swing up control of the inverted pendulum is a more difficult and interesting control
problem. It is hard to use a single continuous controller to swing up the pendulum as most
controllers generate a singularity when crossing the horizontal [4] and are usually destabilizing
with respect to the pendulum angle .It was discovered in [9], that controlling the energy rather
than the position and velocity of the pendulum can make it easier to swing up the pendulum. An
energy based approached was therefore proposed by [9] where the sum of the kinetic and
potential energy of the pendulum were used to derive the precise acceleration to give the cart
such that the pendulum gains energy corresponding to the upright position. Energy based swing
up was also demonstrated by [18] but this time, the passivity property of the pendulum was
exploited to design the control law by using a Lyapunov function of the energy, cart position and
cart velocity. The major idea used by [18] was to control the cart movements such that the
pendulum converges in its homoclinic orbit where its passivity properties would naturally drive it
to the upright position. Other ideas in the swing up control of an inverted pendulum involve the
use of the angular position and velocity of the pendulum both scaled by suitable gains, to
calculate the reference position to give to an independent cart controller[34].The design of a
reference signal for the cart movement profile that would result in the pendulum swinging up is
also a common approach to swinging up a pendulum[35]. It must be noted that the swing up
strategies discussed above are all hybrid approaches as they involve the use of two different
controllers and suitably switching between both in order to swing up and stabilize the pendulum.
The hybrid solution to swinging up the pendulum is the most common in the literature for reasons
mentioned earlier. The swing-up control of an inverted pendulum using a single continuous
controller is a much harder problem.
The control problem of an inverted pendulum has been widely researched as evident in the
previous paragraphs, not just for its theoretical importance but also because it is under-actuated,
and the control of such systems are readily applied in the design of robots, airplanes, systems
under fault, hovercraft amongst others [16,4,2].

16

## CHAPTER 3: MODELLING OF INVERTED PENDULUM

Modelling and simulation of the dynamics of the inverted pendulum is done in this chapter.

## SYSTEM FROM QUANSER[16,36]

The inverted pendulum is a Single Input Multiple Output (SIMO) system as it has a one input and
two outputs. The IP02 Linear Inverted Pendulum from Quanser Inc is considered in the modelling
of the system. Table 3.1 shows the parameters of the inverted pendulum to be modelled.
SYMBOL PARAMETER

VALUE

Metre(m)

## Vertical displacement of pendulum

Metre(m)

Displacement of Cart

Metre(m)

Pendulum Angle

## Length of pendulum from pivot to centre of mass

Mass of cart
Mass of pendulum
Pendulum's Moment of Inertia
Equivalent coefficient of dry friction on cart surface
Viscous damping coefficient of pendulum axis
Cart driving force

Newton(N)

Gravitational acceleration

## Figure 3.1 Modelling of inverted pendulum

17

The modelling approach used for the inverted pendulum is based on the Euler-Lagrange
equation. The Lagrangian of the system is formed by subtracting the potential energy of the
system from the kinetic energy.
First, the kinematic equations of the system are derived below. From Fig. 3.1.
,

,
where

=Origin,

,

; Let

. Then

(3.1)

## Kinetic Energy of System,

;
(3.2)
;

From [3], the Euler Lagrange equation of motion for mechanical systems is given by:
(3.3)
where

Lagrangian of system

Resultant Force/Torque.

But
But
and
(3.4)

## From (3.1) & (3.2),

18

and

(3.5)
;
=Resultant force on cart

## = Resultant Torque on Pendulum

The actuator providing

(3.6)

(3.7)

## Figure 3.2 Modelling of d.c motor

From Figure 3.2 with reference to the parameters of the D.C motor in Table 3.2 and using
Kirchoff's Voltage Law; Let

(KVL);

0.18

## (Assumed for simplicity of model)

=
The pinion converts the applied gear torque into a linear force(F) with the torque
But

19

SYMBOL

PARAMETER

VALUES

Armature Current

Amperes(A)

## Armature Coil Resistance

Armature Coil Inductance
Back E.M.F

Volts(v)

## Back E.M.F Constant

Angular Speed of motor

## Planetary Gearbox ratio

Motor efficiency
Torque Constant of Motor
Motor Torque

Nm

Nm

(3.8)

With

and

, (3.8) becomes
(3.9)

## Substituting (3.9) in (3.6) gives :

Let

and

Therefore,

(3.10)

Substituting (3.4), (3.5) and (3.10) in the Euler-Lagrange equation in (3.3) gives:
(3.11)
20

## Collecting like terms in (3.11) gives:

But

(3.12)

Putting (3.12) in (3.11) gives the Equation of motion of the pendulum as:
+

(3.13)

## In compact robotic form, the equation of motion can be written as:

(3.14)
Where
However, substituting all variables into (3.14) gives (3.15).
+

(3.15)

Simplifying (3.15) gives the equation of motion of the IP as shown in (3.16) & (3.17) respectively:
(3.16)
(3.17)
Making

## Putting (3.18) in (3.16) and making

(3.18)
the subject yields equation (3.19) below

+
.
Making

(3.19)
the subject in (3.17) gives;

## Putting (3.20) in (3.16) and making

(3.20)
the subject yields (3.21) below

(3.21)
21

Equations (3.19) and (3.21) are therefore the differential equations for the inverted pendulum
with actuator dynamics.

## 3.2 STATE SPACE EQUATION OF NONLINEAR INVERTED PENDULUM (IP)

SYSTEM
To express the differential equation of the IP derived in state space, the following state variables
are defined for the system:
Let

.
,

The state space representation of the inverted pendulum with actuator is therefore
,

(3.22) ; where

(3.23)

and

(3.24)

## 3.3 MODEL VALIDATION AND NATURAL DYNAMICS

To validate the model obtained in the previous section, a simulation is done in MATLAB/SIMULINK
with the nonlinear plant as shown in Fig. A1.1-A1.3(Appendix A). The nonlinear system is given an
impulse and allowed to naturally evolve over time. From Fig. 3.3, it is observed that the pendulum
and cart, start from an initial angle of

and

## respectively. The cart moves back and

forth within a small displacement from the origin until it comes to rest after about

seconds.

The pendulum falls off from the upright position downwards in an anti-clockwise direction and
keeps swinging back and forth about the downward vertical (

with decreasing

amplitude until it comes to rest in the downward vertical position after 30 seconds. The
pendulum is unstable in the upright position as it moves away from it while it is stable in the
downward position as it converges to it. This behaviour is as expected of a physical inverted
pendulum plant with friction in both the cart and pendulum. This therefore validates the
mathematical model of the system developed.

22

3.4

## JACOBIAN LINEARIZATION OF NONLINEAR INVERTED PENDULUM

SYSTEM[12]
A Jacobian linearization of the system about the equilibrium point(s) is required in order to probe
the nature(stability, poles e.t.c) of the system about its equilibrium points. Jacobian linearization
uses the Taylor series expansion to approximate the nonlinear state space equations with linear
ones in the vicinity of the operating/equilibrium point. Let the linearized plant have the state
space equation :

## Control action at equilibrium . Where

Output at equilibrium

(3.26)

The equilibrium points are infinitely many but only two physical equilibrium points are relevant:
The upright vertical position with

## with all angles measured in radians.

Linearization about the upright vertical equilibrium :

The Linearized system about the upright equilibrium is represented in state space in thus
;

(3.28)
23

and

## 3.5 ANALYSIS OF LINEAR SYSTEM IN THE UPRIGHT EQUILIBRIUM

The linearized system around the upright equilibrium position

has state-space

equation as shown in 3.28. The transfer matrix of the system is shown in (3.29) below:

(3.29)

The poles of the plant around the upright equilibrium are computed by finding the eigenvalues of
the matrix

. The plant is fourth order, SIMO and is found to have the four poles at
and

. The poles obtained above indicate that the plant is unstable in the

upright equilibrium point. This further reinforces the confidence in the model obtained as the
actual system is expected to be unstable in the upright position. From (3.29), the plant has the
following zeros:

and

## for the pendulum. From these zeros,

it is clear that the system is non-minimum phase as it has zeros in the closed right half plane. Also,
the transfer matrix in (3.29) shows that the cart has an integrator. Figure 3.4 shows a plot of the
properties of the linear system around the upright equilibrium.

Figure 3.4: Properties of linear model about upright equilibrium for the inverted pendulum

24

## CHAPTER 4: CONTROLLER DESIGN AND SIMULATION RESULTS

This chapter contains details regarding the design and simulation of different control algorithms
for the stabilization, tracking and swing up of the inverted pendulum. The design goals for the
controllers is such that the constraints in the actual system are met and are as listed below:

## Rise time of less than 5s for the tracking cart reference

Settling time of less than 10s for both cart and pendulum

maximum
from origin

## 4.1 FEEDBACK LINEARIZATION

Feedback linearization has a very different meaning from Jacobian linearization and seeks as an
objective to algebraically transform a nonlinear system dynamics into a linear dynamics by means
of state feedback and a nonlinear coordinate transformation based on a differential geometric
analysis of the system [5]. Feedback linearization is one of the key tools of nonlinear design
developed during the last few decades [37]. Because feedback linearization is strongly dependent
on a good model of the system, it is not a robust control design method hence the need to
combine it with more robust control techniques to deal with modelling uncertainties or spend a
great deal of effort and time to obtain accurate models of the system. Feedback linearization
usually follows two procedures :-Input-state linearization and input-output linearization.
4.1.1 INPUT-STATE LINEARIZATION [2]
Input -state linearization aims at transforming a nonlinear system of the form
(4.1)
into the system

(4.2)

25

where

and

using a diffeomorphism (a transformation matrix consisting of the output and its derivatives),
. The form of the system in (4.2) is the canonical form of a controllable linear system
also called the Brunovsky form. If the diffeomorphism

## can be found, then with the

control law
,

(4.3)

the original nonlinear system (4.1) can be transformed into the linear controllable system of form
(4.2), where

## , that allows a system to be input-state

linearizable depends on the system meeting the conditions of theorem 4.1 below:
Theorem 4.1 [2]: The system (4.1) is input-state linearizable in a domain D if and only if
1. The rank of the controllability matrix
2. The distribution

## is equal to n for all

is involute in D. where

The first condition of theorem 4.1 is one of controllability which is a relevant requirement for the
control of any system. This is necessary if the input is to have any effect on the states being
controlled. The second condition of theorem 4.1 must be satisfied if a solution of the form
for an output that fully linearizes the system states is to exist in the partial differential
equation (4.4) below
[7] (4.4)
The diffeormorphism

## is obtained by repeated differentiation of the output

obtained from the solution of equation (4.4) up to the order of the system and is used for the
nonlinear to linear state space coordinate transformations.
4.1.2 INPUT-STATE LINEARIZATION OF THE INVERTED PENDULUM[14,31]
To simplify and reduce the complexity of design we make the following assumptions:

## equivalent viscous damping coefficient

, is assumed zero
is assumed zero.

26

Applying the assumptions above in the IP system of (4.5) gives the system in (4.6)

(4.5)

(4.6)

Now to further reduce the complexity of the analysis of the system in (4.6) above, according to
the method in [23], a transformation in the system input is done thus :
(4.7)
where

## is the transformed input to the system.

Substituting (4.7) in (4.6) yields the simplified state space equation for the system as shown in
(4.8)

(4.8)

Letting

## , then the state space equation of the inverted pendulum is represented as in

(4.9) below

(4.9)

where

and

To determine if a diffeormorphism,

## system around the upright equilibrium position (

to theorem (4.1) for controllability and involutivity.
27

## , we test the system according

Controllability test:

To check the controllability of the system, we compute the rank of the matrix

Because

## is full rank, the system is controllable.

Involutivity Test:
Testing for involutivity, the span(
If the span

) of the set

is created.

is singular, then its elements are linear combinations of one another thereby

making it involutive.
The span of the system is thus computed:

Span

28

## =Determinant of span matrix

, Hence

is full rank

and therefore the system is not involutive. This implies that the inverted pendulum system fails
to meet the conditions for input-state linearization and therefore cannot be full state linearized.
4.1.3 APPROXIMATE FEEDBACK LINEARIZATION [2]
The relative degree of a system with respect to a given output
the output has to be differentiated for the control input

## ,is the number of times

to appear in the equation. The

involutivity condition in theorem (4.1) would not be satisfied if the relative degree of the
nonlinear system is less than its order [37]. For the inverted pendulum, this is clearly the case. For
systems of this nature, input-state linearization is usually not possible. However, Kokotovic et. al ,
developed an algorithm of approximate feedback linearization to deal with systems of this nature
in [22]. The idea lies in the fact that certain terms in the diffeomorphism

of the

nonlinear system in (4.1) make the relative degree " " of the system with respect to the output
to be less than the order " " of the system. Neglecting these terms in

would

make the linearized system have a relative degree equal to the order of the nonlinear system and
therefore input-state linearizable. Such a relative degree is called a robust relative degree. The
tasks therefore in approximate linearization is to find the output function

that can

maximize the relative degree of the system such that when approximations are done, the system
would have a robust relative degree equal to its order [37].
4.1.4 APPROXIMATE FEEDBACK LINEARIZATION OF THE INVERTED PENDULUM
To apply the algorithm of approximate feedback linearization to the inverted pendulum,a solution
is attempted to the partial differential equation
where
and a robust relative degree is sought with respect to the output
make the relative degree less than 4 in the diffeomorphism

29

## by ignoring the terms that

.

(4.10)
From [38], the solution to first order partial differential equations of the form in (4.11)
(4.11)

is

(4.12)

Comparing (4.10) with (4.11) and making substitutions in (4.12) gives the solution to (4.10) as
.
With the output

(4.13)

## as obtained in (4.13), we proceed to find the diffeomorphism

as follows:
(4.14)
(4.15)

(4.16)
(4.17)

(4.18)

The diffeomorphism

## The appearance of the input

in the diffeomorphism

## , makes it impossible to do a full state

. This is not surprising as the

## differential equation solved to obtain the output was non-involutive. To do an approximate

feedback linearization, we ignore the coefficient (

) of the input,

in the

diffeomorphism as it is approximately zero when the system is close to the equilibrium point
30

## Wherever this approximation is valid, a suitable controller can be designed for

nonlinear system and drive the output

to stabilize the

## to 0. However, far from the equilibrium

, the

approximation made to obtain the state transformations become invalid and the system losses
relative degree. This implies the diffeomorphism obtained with the defined output is a local
diffeomorphism. Defining the state variables for the approximately linearized system as
,

in

(4.19)

## 4.2 SLIDING MODE CONTROL[2, 7 and 39]

The phenomenon of sliding modes was discovered by researchers like Anosov, Tzypkin and
Emel'yanov studying variable structure systems(VSS) [2]. VSS are systems having a discontinuity in
the right hand side of the differential equations describing their dynamics. That is:
(4.20)
VSS were discovered to have properties independent of the dynamics of the original systems in
the structure when switched at high frequency between the structures following a dynamic
switching condition called the switching surface. When this occurs, the VSS is said to be in a
sliding mode. The basic idea behind sliding mode control is to deliberately introduce sliding
modes into a system by making it variable structure using a discontinuous control action[39]. The
discontinuity in the control action is created by switching the control law
condition of a pre-specified switching surface

based on the

## . The control law is designed such that the

system is driven towards the chosen surface and into a sliding mode on the surface in finite time.
In sliding mode, the system inherits the dynamics of the switching surface and becomes invariant
to any external disturbance occurring in the same direction as the control input. The control
design effort in sliding mode control consists therefore in the design of the switching surface so
the system when on the surface has the desired dynamics(i.e. the surface dynamics) and the
31

design of a discontinuous control that will drive the system to the surface and keep it there upon
intersection [7]. The system does not actually slide on the surface when in sliding mode but
switches at high frequency around the vicinity of the surface. This high frequency switching of the
system on the surface leads to the problem of chattering. Chattering is a disadvantage in the
application of sliding mode control as it can lead to damages in the actuator of physical systems if
left unchecked.
4.2.1 SLIDING SURFACE DESIGN
The sliding surface is designed to have a reduced order from the system and a desired dynamics.
The switching surface is linear time invariant and exponentially stable. The switching surface is
defined based on the error between the system states and the reference value of the states if a
tracking control is desired.
state and

where

where

reference of

## can be defined according to [6] as:

(4.21)
where

is a tuning parameter that set certain desired properties in the dynamics of the surface

## like the time constant of the surface.

4.2.2 SLIDING CONTROL DESIGN
The design of the sliding control action

## is based on the stability theory due to Lyapunov. The

sliding mode control action is designed such that the distance from the surface goes to zero in
finite time. A Lyapunov function based on the distance from the surface

is defined thus:
(4.22)

The control action is designed such that the derivative of the Lyapunov function

is negative

definite. This according to the stability theory of Lyapunov is necessary if the distance from the
surface

is to approach zero and therefore drive the system states to the surface,

(4.22),

. For

to be negative definite,

and

.From

## must be of opposite signs. This is a

fundamental condition for the system to reach the sliding surface and therefore the existence of a
sliding mode with any designed discontinuous control action

## [39]. Various laws exist that meet

this reaching condition and they are called the reaching laws. Common reaching laws include the
following: [40]

32

with

and

## drives the switching variable towards the switching surface at

a constant rate, .

with

or

## which drives the switching variable to the

surface exponentially.

## Power rate reaching law having the form

with

or
and drives the switching

variable very fast when far from the surface but slower when close to the surface thereby
reducing chattering.
With a chosen reaching law , designing the sliding mode control action involves evaluating

and

equating it to the reaching law. The control action can be obtained by solving the resulting
equation for

## 4.2.3 DEALING WITH CHATTERING [41]

As stated earlier, chattering is a common phenomena that plagues sliding mode control. To
reduce chattering , continuous functions such as saturation and relay functions that approximate
the discontinuous sign function are used, that is,

## 4.2.4 SLIDING MODE CONTROL DESIGN FOR THE APPROXIMATELY LINEARIZED

INVERTED PENDULUM(FL/SMC)
Consider now the approximately linearized inverted pendulum system (4.19) of section 4.1.4.
Let

## and the surface is defined thus:

(4.24)

Evaluating the error derivatives in (4.24) for a constant reference yields the surface equation as
(4.25)
To design the control action, an exponential reaching law is chosen.
Thus

(4.26)

## Evaluating from (4.25) we obtain

(4.27)

33

Equating (4.26) and (4.27) and solving for the control action , we obtain the sliding mode control
action as in (4.28)
(4.28)
The control action applied to the plant is therefore according to the transformations done in
section 4.1.3 computed thus:
and

(4.29)

To reduce chattering in the control law of (4.29) above, the following modifications are made:(1) A power reaching law,
(2)

is replaced by

## The control action

.

is thus computed:
(4.30)

## 4.2.5 TUNING AND SIMULATION OF FEEDBACK LINEARISATION WITH SLIDING MODE

CONTROLLER
The controller designed above is implemented in MATLAB/Simulink as shown in Figs A3.1A3.2(Appendix A). In tuning the controller, the Integral of Square Error(ISE) and Mean Absolute
Control Action(MACA) are used as indices to judge the relative performance of each parameter
chosen. Knowing that
value of

and

on the surface.

is first set at

## chosen to reduce chattering. Further

changes are then made to the parameters using the performances indices as guide as shown in
Table 4.1

34

## Table 4.1: Tuning of sliding mode controller

CONTROL PARAMETERS

PERFORMANCE INDICES

COMMENT
ISE is low but MACA is high
and results in chattering.
ISE and MACA both low. Good
transient

performance

and

## control action. Low chattering.

Poorer Control and transient

and

## are therefore selected . Figure 4.1

shows an output from the approximately linearized system tracking a cart reference of 0.3m and
balancing the pendulum at zero degrees(upper equilibrium) from an initial position of
(0.2rads) using the parameters selected above.

Figure 4.1 Approximate feedback linearization with sliding mode control(Power Law)
From Fig. 4.1 above, it is observed that the controller satisfies the design goals. The cart has a
rise time of about 2s and a settling time of 3s.The pendulum balances in about 3.3secs. No steady
state error or overshoot is observed. The control action is below
less than

## and cart displacement is

, both satisfying the physical constraints on the system. It is also observed that

the maximum angular displacement that can be given to the system and still obtain satisfactory
35

## from the balance

point. Figure 4.2 demonstrates the tracking ability of the controller in the presence of white noise
and disturbance. The noise power is about 0.02units and the a disturbance of 0.2 on both outputs
occurs at 10s, 20s and 35s. It can be observed from figure 4.5 that the controller has good tracking
and good recovery from disturbance even in the presence of noise. The control action and cart
distance remain within the constraints even with noise and disturbance being present.

Figure 4.2: Tracking, Noise and Disturbance Rejection of Approximate feedback linearization
with SMC(Power Law)

## 4.3 INPUT-OUTPUT LINEARIZATION [7,42]

Given the system (4.31) below
(4.31)

is the desired output from the physical system. The aim of input-output linearization (4.31) is to
obtain a state feedback control law " " , that linearizes the map between the system output " "
and a certain virtual control input " " through the state transformation

constituted of

the output and its derivatives with respect to time up to the order " ", where " " is the relative
degree of the input-output linearized system. If r is less than the order " " of the nonlinear
system, then the nonlinear system is only partially feedback linearized and therefore consists of a
feedback linearized system controllable by the virtual linear control " " and an
36

uncontrollable(with respect to input " ") internal dynamics of order "n-r " as shown in (4.32)
below.

(4.32)

,(Internal dynamics)
Output:

From (4.32), it is seen that the virtual control input " " only affects the feedback linearized
system hence the internal dynamics is uncontrollable by the virtual control. The internal dynamics
must therefore be stable for the nonlinear system to be stabilizable by the feedback linearized
virtual control " ". However, for an unstable internal dynamics, an input-state linearization must
be done if possible or a way to deal with the unstable zero dynamics designed for input output
linearization to be applied. Input-output linearization becomes input- state linearization if the
relative degree is equal to the order of the system.
4.3.1 INPUT-OUTPUT LINEARIZATION OF THE INVERTED PENDULUM
Given the inverted pendulum system

(4.33)

## To design an input-output(angle) linearization control for the output

differentiate

repeatedly until

in (4.33) above, we

. Where

.
37

and

is:-

(4.34)

order

## and therefore an internal dynamics of

exists. To analyze the stability of the internal dynamics is computationally intensive and

therefore the zero dynamics would be analyzed instead. The zero dynamics occurs when the
linearized states
,

## . The zero dynamics is therefore given as:

It can be seen that the zero dynamics has two poles at the origin and is therefore unstable. A
simulation of this controller is shown to confirm the instability of the zero dynamics as shown in
figure 4.2 below.

Figure 4.3: Input-Output Linearization with Pendulum angle as output and unstable zero
dynamics(cart)
As a result of the unstable zero dynamics in the cart above, another input-output linearization will
be attempted with the cart as output.
Let

. Where

,
. Where

38

and

. The

## exists. Analysis of the zero dynamics gives the system:-

(4.35)
From (4.35), it is hard to tell the stability of the zero dynamics, hence a simulation is done with
the cart set to track a reference of 1meter and the results shown below:

Figure 4.4: Input-Output Linearization with Cart as Output and stable zero dynamics (pendulum)
From Figure 4.3, it can be inferred that the zero dynamics with the cart distance as the output of
linearization is stable but oscillatory.
4.3.2 INPUT

## TO OUTPUT(ANGLE) LINEARIZATION WITH INTERNAL DYNAMICS

STABILIZING CONTROL(FL/ZDC)
In this section, a controller is proposed to stabilize the unstable internal dynamics associated with
the system obtained after performing an input-output linearisation with respect to the pendulum
angle. The controller is based on the theorem due to Lyapunov and the idea of singularly
perturbed systems as done in [8,27]. Two controllers are therefore designed and combined to
39

control the system. The first controller is the input-output(angle) linearization controller in eqn.
(4.34) designed with angle as output. The second controller is the proposed Lyapunov based
controller. By setting the controller gains such that the system exhibits two -time scale
behaviour(fast dynamics for pendulum and slow dynamics for cart) [27], the system is made
singularly perturbed. The two dynamics of the singularly perturbed system can therefore be
independently stabilized by both controllers based on the principle of singular perturbation
theory .
Theorem 4.2 (Lyapunov theorem for local stability)[37]: Consider the system (43). If in
containing the equilibrium point

with

## continuous first order derivatives such that

is positive definite in

is negative definite in D,

## Then the equilibrium point

is stable

According to the theorem of Lyapunov, a stable system has a Lyapunov function that is positive
definite with a derivative that is negative (semi) definite . In order to design a stabilizing control
for the zero dynamics, a new control input

(4.34) as below:
(4.33)
where

(4.36)

To design

such that
with

## cart reference position, and

. where
cart reference velocity

40

and
and

But

. Therefore,

(4.37)

where

(4.38)

## from (4.36), the control action

where
The total control action

is derived thus:

(section 4.3.1 )

(4.39)

## applied to the nonlinear plant is therefore the sum of the input to

angle linearization control and the zero dynamics control as shown in (4.40) below:
(4.40)
However, it is realized that doing the summation in (4.40) above, eliminates
control for the feedback linearized output

(4.41)

## 4.3.3 TUNING AND SIMULATION OF INPUT-OUTPUT(ANGLE) LINEARIZATION WITH

ZERO DYNAMICS CONTROLLER
Figures A4.1-A4.3(Appendix A) show the MATLAB/Simulink implementation of the controller.
Tuning the controller above involves selecting the poles
control

and

. The parameters

## determine the rate

of convergence to zero of the states in the internal dynamics. After trying various values, the
parameters for the controller are fixed by placing poles at
and

and

chosen as

and

and

making

## respectively. Figure 4.4 presents

a simulation of the system with this control law tracking a cart reference of 0.3m from an initial
stabilizes the pendulum after

## . From Figure 4.5, it can be inferred that the controller

and tracks the cart after
41

without

## which meets the

constraint on the input. The cart also stays within the constraints of the cart length i.e.
and both pendulum and cart have zero steady state error. Further investigation revealed that the
maximum angular displacement that can be given to the system and still obtain satisfactory
control meeting all constraints is about

## . Also, ignoring the constraints in the

system shows that the controller is almost globally attractive. It can stabilize the pendulum from
any arbitrary initial position except at

and

where

, as

Figure 4.6 demonstrates the tracking ability of the controller in the presence of noise and
disturbance. The noise power is about 0.02 and a disturbance of 0.2 on both outputs occurs at
10s, 20s and 35s. It can be observed from figure 4.6 that the controller track the reference
satisfactorily and has good recovery from disturbance even in the presence of noise. The control
action and cart distance remain within the physical constraints even with the addition of noise
and disturbance.

Figure 4.5: Input-Output(angle) Lin. and internal dynamics (cart) stabilizing control

42

## 4.4 LINEAR QUADRATIC REGULATOR(LQR) [44,45,43]

The linear quadratic regulator(LQR) is an optimal control strategy that seeks the best possible
control solution for a system by minimizing a quadratic cost function subject to the constraint of
stabilizing the system being controlled [2]. The cost functional is a quadratic function of the
control input,

## and the desired states to be optimized,

as in (4.42) below.

, where
and

[44]

(4.42)

The optimization of the cost functional in (4.42) is subject to the constraint of stabilizing the
Linear Time Invariant(LTI) system

. Where

is stabilizable and

## is observable according to definition (4.2) .

Definition 4.2: The pair

## and the pair (A,C) is detectable if there exist

such that

such that

is Hurwitz

is Hurwitz.

The design of an LQR controller consists first in checking the linear system for controllability and
observability. It was calculated that the controllability matrix
observability matrix

and the

## of the linear inverted pendulum system around the

upright equilibrium position both had full rank, hence the linear system is controllable and
observable. The next step in the design of LQR controller consists in the selection of the weights
and

43

## [45]. The Ricatti

equation resulting from the optimization problem of a linear quadratic regulator is shown in
(4.43) and must be solved to obtain a positive definite solution ,
control action

(4.43)

where

(4.44)

## According to [45], LQR has good stability margin

and

sensitivity properties. If the states of a system are not readily available, LQR is combined with a
state estimator such as a Kalman filter. This is now called an LQG(Linear Quadratic Gaussian)
control. In this thesis, the pendulum states are assumed noiseless and available, hence the choice
of LQR control. Also an integrator is not used with the LQR because the cart has a type 1 transfer
function and therefore has an integrator.
4.4.1 DESIGN , TUNING AND SIMULATION OF LQR CONTROLLER FOR THE INVERTED
PENDULUM
The LQR controller implementation in MATLAB/Simulink is shown in Fig. A2.1-A2.2(Appendix A)
The MATLAB command

## positive definite and symmetric matrices

and

and

as

[45],

. The matrices ,

for the system linearised around the upright equilibrium position as defined in section 3.2

are used . Table 4.2 gives a succession of values tuned before settling at the chosen value of .
Table 4.2: Tuning of LQR control parameters.
CONTROL PARAMETERS

PERFORMANCE INDICES

COMMENT
Poor performance, takes long
to

stabilize

system.

Also

## control action not optimized.

Improved
performance(transient)

and

## judicious use of control action.

Transient
control

performance
action

and

optimization

poorer.

Figure 4.7 shows a simulation of the nonlinear system with the designed LQR control above
applied with initial angle of

44

## Figure 4.7: LQR Simulation with

From Fig. 4.7, the settling time is

.
for both the cart distance and pendulum angle. The rise time

## and satisfies the input constraint. The

cart displacement is also within the constraints of the system. There is no overshoot observed in
the cart and the steady state error is zero for both the cart and pendulum.
Figure 4.8 shows the tracking ability of the controller in the presence of white noise with a power
of 0.02 and disturbance of 0.2 on both outputs(cart and pendulum). The disturbance occurs at
10s, 20s and 35s. It is observed from figure 4.8 that the controller has good tracking and good
recovery from disturbance even in the presence of noise which is always present in actual
systems. The control action and cart distance remain within the constraints even in the presence
of noise and disturbance.

45

## 4.5 PROPORTIONAL, INTEGRAL AND DERIVATIVE(PID) CONTROL[46]

PID control is one of the most widely used control method today with wide applications in
industrial processes [46]. PID controller consists basically of three parts: The proportional control
which drives the corrective action based on the error, the integral control which removes steady
state error and the derivative control which dampens oscillation and ensures stability of control.
The classic PID controller is the three term controller shown in (4.45) which contains the three PID
components mentioned above.
, where

error,

and

## derivative gains respectively.

(4.45)

In this thesis, a PID controller is designed to stabilize the inverted pendulum in the upright
vertical equilibrium .The design of the PID controller for the inverted pendulum uses two PID
control blocks to close the loops from each output

Note:-

angle

to system input,

input

transfer

to system

## Desired cart position.

From Figure 4.9 , it is seen that the control action to the plant , is given as:
(4.46)
But

and

(4.47)
, Collecting terms in , and making

46

## the subject we get;

(4.48) Substituting

and

functions

## respectively in (4.48) yields the closed loop transfer

and

which clearly shows that the characteristic equation for both the cart and pendulum is ;
(4.49)
But

and

and
.

Substituting

## into (4.49) and

simplifying the equation yields the characteristic equation of the closed loop system in (4.50)

(4.50)
Using the method of pole placement, the PID gains are designed by assigning the closed loop
system the desired poles

## . The desired characteristic equation is

thus:

(4.51)

Expanding, (4.51), collecting like terms and comparing the coefficients to (4.50), gives the system
of equations needed to solve to design the PID gains.
4.5.1 TUNING AND SIMULATION OF PID CONTROLLER
Figure A6.1-A6.2 (Appendix A) show the MATLAB/Simulink implementation of the PID controller.
The PID gains are calculated by placing the poles of the closed loop system at
. The above poles are chosen to give a settling time of at most 10second
using less aggressive control action. Using faster poles were observed to make the control too
aggressive and therefore violate the constraints within the system. Figure 4.10 shows the
simulation result. A settling time of 9seconds and 4seconds is obtained for the pendulum and
cart respectively which is not optimal and therefore suggest the use of much faster poles. The rise
time was below 2seconds for both cart and pendulum. The cart had no steady state error but an
overshoot of

## is present. This high overshoot suggest an increase in the derivative gain of

cart PID controller. The reference of 0.3m in the cart is tracked satisfactorily and the pendulum
can be stabilized from an initial angle of at most

## . With all constraints ignored,

the PID can stabilize the system for all initial angles less than or equal to

47

Figure 4.10: Plot of the PID controller tracking 0.3m cart distance from an angle of 0.2rads

## Figure 4.11: Tracking and disturbance rejection of PID with noise

From figure 4.11, it can be deduced that the tracking of PID in the presence of noise and
disturbance is very poor in the cart. The angle however is well controlled even with noise. This
could be as a result of non optimal tuning of the PID parameters as well as a fundamental
limitation of PID controller with regard to the inverted pendulum system.
48

## 4.6 SWING UP CONTROL OF INVERTED PENDULUM

The objective in swing up control is to move the pendulum from the downward position to the
unstable upright position by moving the cart horizontally. As noted in chapter two, several
techniques have been applied in the solution of this problem with the most common methods
being the energy control, the passivity based control or the use of the position and velocity of
the pendulum to determine how the cart should be moved such that the pendulum gains enough
momentum to swing up[34]. The position and velocity control (PV) approach as well as the
passivity control methods are both demonstrated in this section.
4.6.1 SWING UP BY POSITION VELOCITY(PV) CONTROL [34]
PV control uses the pendulum angle and angular velocity to generate the reference cart positions
to be used by an independent controller designed to steer the cart to any desired position. A state
feedback control for the cart position is designed which controls the cart using its position and
velocity

## . A PV controller is then designed using the pendulum angle and velocity

and the output from PV controller fed as reference to the cart controller as shown in

with the gains

and

## with the gains

and

chosen to drive the pendulum away from the pendant position using the smallest displacement of
the cart as possible.

## 4.6.2 TUNING AND SIMULATION OF PV CONTROL SWING UP

The complete Simulink/MATLAB design for the controller is shown in Appendix A(Figs A7.1-A7.3).
The gains

and

are chosen using a trial and error approach but keeping in mind that larger

values would generate bigger reference values for the cart and therefore violate the constraint on
cart length. Tuning the parameters for almost equal values of the ratios
guarantee swing up as long as

exceeds

and

exceeds

and

was found to

## . Also a dynamic saturation is

included in the output of the PV controller to restrict the range of values it calculates to the
maximum and minimum cart distance of
mode controller designed in section 4.2.4 at

## . After swing up, control is switched to the sliding

. The wide domain of attraction

of the

sliding mode controller is exploited here as the PV controller can only swing the pendulum to

without violating the constraints on the cart length. The feedback linearized controller

with zero dynamics control(FL/ZDC) was also used to stabilize the pendulum successfully. Figure
49

4.12 shows the response of the pendulum using controller with parameters set at
,

and

## with a cart reference of 0.3m to track after swing up. From

Figure 4.12, it is observed that swing up occurs after about 40 seconds and the sliding mode
controller stabilizes the pendulum in about 1second. The control voltage and cart variation are
both within the constraints of the system. The peak variation of the cart distance is observed to
lie between

and

## while the control action varies between

Figure 4.12 :Swing Up, Tracking and Stabilization of pendulum with PV and FL/SMC

Figure 4.13:Swing Up, Tracking and Stabilization of PV control with noise and disturbance
50

Figure 4.13 shows the PV controller can resist disturbance(at 10s,20s,35s,70s,80s,90s) of about
0.2 in both output with small noise also added and all system constraints met. This shows it is
robust. Chattering on the controller due to the discontinuous nature of sliding mode control is
observed but it is small and can be ignored.
4.6.3 SWING UP BY ENERGY CONTROL USING PASSIVITY OF PENDULUM [18,4]
This method of swinging up the pendulum exploits the fact that the pendulum is a dissipative
system. According to [4], this means there is no internal creation of energy within the system and
so the storage energy function
the available storage energy

## of the system at any time is less than or equal to the sum of

at the initial time plus the total energy

supplied to

## captures this idea mathematically.

[4] (4.52).

The dissipative nature of the inverted pendulum makes it possess a trajectory where the total
energy of the system is zero. Such a trajectory is a homoclinic orbit that joins the saddle
equilibrium point(upright position) to itself. The swing up control tasks therefore lies in designing
the control action to take the system to this homoclinic orbit by using an appropriate Lyapunov
function candidate[18].
To apply this technique, the system in the form of (3.13) is shown in (4.53) for convenience.
(4.53)
Ignoring the inertia

## negligible, the equation of motion in (4.53) now reads thus:

(4.54)
where

To check the passivity of the system, we evaluate the derivative of the total energy of the system
and check if it satisfies the mathematical condition for passivity in (4.52). Note that
symmetric and has a determinant
making

is

## . Also it can be observed that :

(4.55)

An important result to be used later when establishing the passivity of the pendulum.
51

(4.56)
where

(4.57)

But

(4.58)

Hence,

(4.59)

(4.60)

## Putting (4.60) in (4.59) and simplifying, we obtain

(4.61)
Substituting (4.55) in (4.61) we get
(4.62)
Integrating (4.62) on both sides we get:
(4.63)
Assuming at time

## the pendulum swings from an angle of

, then

, and
(4.64)

Equation (4.64) establishes the passivity property of the inverted pendulum. The homoclinic orbit
of the pendulum can therefore be computed as the trajectory corresponding to zero energy and
zero velocity of cart. i.e.

and

## (4.57) gives the homoclinic orbit as:

.

(4.65)

Our goal now is to design a controller that is attracted to the homoclinic orbit above. Consider
now, the Lyapunov function candidate

:
(4.66)

52

We defined

## can therefore be designed to make

negative definite.

;
Recall that
Putting

in

;
we obtain
(4.67)

## But from (4.54)

(4.68)
Computing (4.68) with substituted values we obtain
(4.69)
Putting (4.69) in (4.67) :
(4.70)
We desire

(4.71)

## action designed as,

and

(4.72)

From (4.72), it can be seen that for this control law to be valid, the denominator must be non
zero, this means
parameters

,

## 4.6.4 TUNING AND SIMULATION OF PASSIVITY BASED ENERGY SWING UP CONTROL

The controller designed above was implemented in MATLAB/Simulink as shown in Figure A8.1
(Appendix A). The parameters for the controller were selected as
,

,
while

,
is chosen to

## is selected to limit the variation on the cart length needed for

53

swing up to occur. From Fig. 4.14, the pendulum swings constantly at increasing amplitudes from
an original position of

until it reaches

## where the switchover to a linear

stabilizing LQR controller is done. It can be observed from Fig. 4.14 that the swing up occurs after

seconds and the LQR controller stabilizes the pendulum in less than 1 second. The energy

of the pendulum can be seen from Fig. 4.14 to approach zero from a value of

after

4seconds. The control action used is within the constraints of the system and lies between
The cart distance varies between

## which satisfies the constraint on cart length. This swing

up strategy was observed to have a wide domain of attraction as it could swing the pendulum up

## of the vertical equilibrium position while meeting all system constraints.

This controller can therefore be combined with any stabilizing controller in a hybrid control
structure to swing up the inverted pendulum.
Figure 4.15 shows the performance of the swing up controller in the presence of noise(noise
power: 0.004units) and disturbances. It is evident from the figure that the controller maintains
good swing up and tracking performance while rejecting disturbance and noise. The effect the
noise had on the controller was to delay the swing up time from 4seconds to 6seconds and to
reduce the domain of attraction of the swing up controller from

if all constraints

within the system must be met. The control action lies within the constrained value of

## Figure 4.14: Swing Up using Energy and Passivity of Pendulum

54

Figure 4.15: Swing Up and tracking with disturbance and noise of Passivity -Energy control

## 4.7 ANALYSIS AND DISCUSSION OF RESULTS

This section discusses the results obtained above with a focus on how the controllers compare to
each other in terms of performance and robustness.
4.7.1 COMPARISON OF PERFORMANCE

The indices for comparing the performance of the controllers above include:- The Rise Time
The Settling time

## , Integral Square Error(ISE), Mean Absolute Control Action (MACA), Steady

State Error(SSE) and Percent Overshoot(P.O). Table 4.3 shows a comparison of the performance
of the stabilizing controllers.
Table 4.3: Comparison of Performance of stabilizing controllers
Controller
PID
LQR
FL/SMC

2s
2
2s

FL/ZDC

2s

MACA
0.3563

ISE
0.8953
0.8281

P.O
33.3%
0%
0%

SSE
0
0
0

0.2499
0.0855

0.7854

0%

From Table 4.3, we see that LQR ,FL/SMC and FL/ZDC have better performance in all indices while
PID is the poorest. All the designed controllers have no steady state error. PID has P.O of 33.3%.
LQR, FL/ZDC and FL/SMC have no overshoot in their response. In terms of the control action,
FL/ZDC uses the least control action to stabilize the pendulum. LQR and FL/SMC have better
transient speed than FL/ZDC and PID. However, FL/ZDC produced much smoother transient phase
55

and eliminates large error faster and therefore has the best ISE and MACA. It can be observed
that the nonlinear controllers(FL/SMC and FL/ZDC) use less control energy in stabilizing the
system compared to the linear controllers(PID and LQR). The plots showing these properties are
shown in the sections where the simulation for the controllers are presented.
4.7.2 COMPARISON OF ROBUSTNESS
Robustness analysis for the controllers is done based on the following criteria:

## Maximum power of white noise the controller can tolerate.

Maximum basin of initial conditions where the controller is attractive to the equilibrium
upright position with and without consideration for system constraints

## Maximum variation in model parameter(length) that the controller can tolerate.

Table 4.4 compares the robustness of the controllers. Figures 4.16 to 4.19 show the plots of the
worst case output noise the controllers can tolerate. From table 4.4, it can be deduced that Sliding
Mode Control has the most tolerance for noise as can be seen from figure 4.18. This is due to the
invariance of the controller to disturbance when on the surface. LQR which is also a robust
controller has the next best tolerance for noise as evident in table 4.4 and figure 4.16. All the
controllers can withstand about the same level of disturbance. PID is however found to be the
most robust controller to parametric variation. This is because its design is less heavily dependent
on the model of the system but rather on the error in the measured outputs. The Feedback
Linearized controller with a compensator for the unstable zero dynamics has the largest basin of
attraction because it is based on an almost global linearization of the system. It is however poor in
robustness to noise compared to LQR and FL/SMC. This is because its accuracy depends on the
measured states since it is a completely model based controller.
Conclusively, it can be said that LQR is a fantastic controller especially where the states are
available. However, the use of an estimator like the Kalman filter is known to reduce the
robustness of LQR. Sliding mode control(SMC) on the other hand is a very good controller for
stabilizing a pendulum with good robust properties. However, the use of a feedback linearized
system with the SMC reduces the robustness of SMC. Being a nonlinear controller, it has a wider
domain of attraction to the equilibrium point. Furthermore, stabilizing the zero dynamics of the
input-output linearized system proved to allow the control of the non-minimum phase system
using input-output linearization which would have otherwise been impossible.

56

Figure 4.16: LQR with maximum noise power of 0.7 and disturbance of 0.2
Table 4.4: Comparison of robustness of stabilizing controllers
Controlle
r
PID
LQR
FL/SMC
FL/ZDC

Max. Output
Disturbance

Max. Noise
Power

Basin of
Attraction
(Constrained

Unconstrain
ed Basin of
Attraction

0.1
0.7
1.4
0.3

## Figure 4.17:PID maximum noise of 0.1 and disturbance of 0.2

57

Max. Parameter
Variation
Tolerated

Figure 4.18: FL/SMC with max noise power of 1.4 and disturbance of 0.2

Figure 4.19:FL/ZDC with maximum noise power of 0.3 and disturbance of 0.2
4.7.2 COMPARISON OF SWING UP CONTROLLERS
It is observed that swing up by passivity based energy control shows superior performance to
swing up by Position Velocity control. The passivity based control swings up the pendulum in just
about 4seconds compared to the PV control which takes about 39seconds to swing . The region
of attraction of the energy based swing up is much wider
to

to

## than that of PV control

and therefore can be used with stabilising controllers having a smaller domain of

attraction. Also, the disturbance and noise rejection of the energy based controller is much better
than that of the PV controller. However, the PV controller is easier to design but more difficult to
tune.
58

## CHAPTER 5: CONCLUSION AND RECOMMENDATION

5.1 CONCLUSION
The design of stabilizing and swing up controllers for the linear Inverted Pendulum(IP) using
techniques from Feedback Linearization, Sliding Mode Control, Lyapunov stability theory,
Singular Perturbation theory, PID control, LQR control, PV control and Passivity based Energy
control have been undertaken in this thesis. A modelling of the physical pendulum system from
Quanser Inc. have been done and shown to be consistent with the behaviour of the real system.
The controllers designed have been simulated on the computer using Simulink/MATLAB at
conditions set up to be as close to the real plant as possible. All the controllers have been found
to meet the design goals with acceptable performance. Sliding mode control(SMC) and LQR have
been found to be the most robust controllers in terms of disturbance and noise rejection. SMC
and LQR were also found to have the best performance. The non-linear controllers designed are
based on SMC and feedback linearization and have been found to have wider basins of attraction
to the upright equilibrium and better use of control energy when close to the equilibrium point
than their linear counterparts.
A novel way of stabilizing the unstable zero dynamics associated with the feedback linearization
of the non minimum phase inverted pendulum system have been proposed and demonstrated to
be stabilizing. The transient performance of the cart was observed to be a little degraded using
the above approach. This is because a slow cart dynamics is a fundamental requirement for
making the system singularly perturbed.
Swinging up the pendulum using a passivity based energy approach was found to be superior in
performance and robustness compared to the direct use of the pendulum's angle and velocity.

5.2 RECOMMENDATION
To improve on the work done and carry out further investigations, the following
recommendations are suggested:

## Implementation of the controllers designed in real time on an actual inverted pendulum.

Improve and extend the techniques used in this thesis to more complicated underactuated systems such as the double inverted pendulum on a cart.

Design linear and nonlinear observers/estimators to generate all the states of the system
rather than assume the availability of all states.

59

REFERENCES
[1]

[2]
[3]
[4]
[5]
[6]
[7]
[8]

[9]
[10]
[11]
[12]
[13]
[14]

[15]
[16]
[17]
[18]
[19]
[20]
[21]
[22]

## Boubaker, O., The inverted pendulum: A fundamental benchmark in control

theory and robotics, Education and e-Learning Innovations (ICEELI), 2012 International
Conference on, vol., no., pp.1, 6, 1-3 July 2012
A. Choukchon-Braham, B. Cherki, M. Djemai, K. Busawon, Analysis and Control of
Underactuated Mechanical Systems , Springer, Switzerland, 2014
Quanser Inc. "IP02 Linear Inverted Pendulum and Linear Pendulum Gantry Experiments
User Manual", 2013
Isabelle Fantoni and Rogelio Lozano , Nonlinear Control for Underactuated Mechanical
Freddy Garces, Victor M. Becerra, Kevin Warwick et all, Strategies for Feedback
Linearization , Springer, London, 2003
J. E. Slotine, W. Li Applied Nonlinear Control Prentice Hall, 1991
William S. levine, The Control handbook, Control System Advanced Methods , CRC Press,
New York, 2011
J. Khalil, C. Monia "Cascade control for nonlinear non-minimum phase system based on
backstepping approach and input output linearization" , International Journal of Control,
Energy and Electrical Engineering (CEEE), Vol 1, pp 43-49.
K. J. Astrom, K. Furuta, "Swinging Up a pendulum by Energy Control", Automatica, Vol 36,
2000, pp 287-295.
J. Schaefer, R. Canon, On the control of unstable mechanical systems , Proceedings of
the third Automatic and Remote Control, vol 3, pp. 12 -24, 1966.
IEEE Control Systems, The Impact of Control Technology: Overview, Success Stories, and
Research Challenges , 2nd Edition,2011.
K. Ogata, Modern Control Engineering , Prentice Hall, 1997.
Springer, London, 2012, pp 237-242.
C. Tao, J. S. Taur, T. W. Hsieh and C. Tsai, Design of a fuzzy controller with fuzzy swing up
and parallel distributed pole assignment schemes for an inverted pendulum and cart
system, |Control Systems Technology, IEEE Transactions on, Vol. 16, 2008, pp. 12771288.
S. Brock, Practical Approach to Fuzzy Control of Inverted Pendulum, in Industrial
Technology, 2003, IEEE International Conference on, 2003, pp. 31-35.
Xin Xin, Yannian Liu, Control Design and Analysis for Underactuated Robotic Systems ,
M. W. Sponge, The swing up and control problem for the Acrobot , IEEE Control Systems
Magazine, vol 15, pp 72-79, 1995.
I. fantoni, R. Lozano, M. W. Sponge, Energy based Control of the Pendubot , IEEE
Transactions on Automatic Control, vol 45, pp. 725-729, 2000.
J. A. Acosta, Furuta's pendulum; "A conservative nonlinear model for the theory and
practice , Mechanical problems in Engineering, 2010.
D. J Block, K. J Astrom, and M. W Sponge, The Reaction Wheel pendulum , Published by
San
Rafael: Morgan and Claypool, 2007.
B. Jakubczyk and W. respondek, On the linearization of control systems, Bull. Acad.
Polon. Sc. Math, 28:517-522, 1980.
J. Hauser, S. Sastry, P. Kokotovic, Nonlinear Control via approximate input-output
Linearization , IEEE Trans. Autom. Control 37(3), 1992, pp 392-398.

60

[23]

## C. Aguilar, R. Hirschorn, Stabilization of an inverted pendulum, Report on Summer

NSERC Research project Queens University at Kingston, Dept of Mathematics and Statics,
Summer 2002.
[24]
D. Ingram, S.S Willson, Ph. Mullhaupt , D. Bovin Stabilization of the cart pendulum system
through approximate manifold decomposition., Research Gate, Jan. 2011.
[25]
J. Hauser, S. Sastry, P. Kokotovic, Nonlinear Control via approximate input-output
Linearization , IEEE Trans. Autom. Control 37(3), 1992, pp 392-398.
[26]
S. Mahjoub, F.Mnif and N. Derbel, Second Order Sliding Mode Control Applied to an
Inverted Pendulum ,Sciences and Techniques of Automatic Control and Computer
Engineering(STA), Sousse, 2013.
[27]
B. Srinivasan, P. Huguenin, K. Guemghar, and D. Bonvin A Global Stabilization Strategy
for
an Inverted Pendulum, IFAC World Congress , Spain, 2002.
[28]
Shubhobrata Rudra and Ranjit Kumar Barai "Robust Adaptive Backstepping Control of
Inverted Pendulum on Cart System" International Journal of Control and Automation
Vol. 5, No. 1, March, 2012.
[29]
Jose, A. Augustine, C. Shinu, M. M and K. Chacko. Performance Study of PID Controller
and LQR Technique for Inverted Pendulum, World Journal of Engineering and Technology,
Vol. 3, 2015, pp. 76-81.
[30]
Xu Cao, Nian Feng Li, Robust Controller Design for Inverted pendulum, Advanced
Material Research vol. 631-632, 2013, pp. 1342-1347.
[31]
H. T. Cho and S. Jung, Neural Network position tracking control of an inverted pendulum
and XY table robot, Intelligent Robots and Systems, 2003.(IROS 2003), Proceedings,
IEEE/RSJ International Conference on, 2003, pp. 1210-1215.
[32]
C. Tao, J. S. Taur, T. W. Hsieh and C. Tsai, Design of a fuzzy controller with fuzzy swing up
and parallel distributed pole assignment schemes for an inverted pendulum and cart
system, |Control Systems Technology, IEEE Transactions on, Vol. 16, 2008, pp. 12771288.
[33]
S. Brock, Practical Approach to Fuzzy Control of Inverted Pendulum, in Industrial
Technology, 2003, IEEE International Conference on, 2003, pp. 31-35.
[34]
Quanser Consulting, IP02 Self Erecting Inverted Pendulum User's Guide, Quanser
Consulting Inc, 1996.
[35]
Vinodh K. E, Jovitha J., "Stabilizing Controller Design for Self Erecting Single Inverted
Pendulum using Robust LQR" , Australian Journal of Basic and Applied Sciences, 7(7),2013
494-504.
[36]
Vinodh Kumar E., Jovitha Jerome "Robust LQR Controller Design for Stabilizing and
Trajectory Tracking of Inverted Pendulum", International Conference On DESIGN AND
MANUFACTURING, IConDM 2013, Procedia Engineering, Vol 64, 2013, pp 169-178.
[37]
A. Isidori, Nonlinear Control Systems: an introduction , Springer, Berlin, New York, 2
edition, 1989.
[38]
A.D Polyanin, V.F Zaitsav, A. Moussiaux, Handbook of first order Differential Equations ,
Taylor & Francis, 2002.
[39]
Vadim I. Utkin, Sliding modes in Control and Optimization ,Springer, 1992.
[40]
J. Liu, X. Wang Advanced Sliding Mode Control for Mechanical Systems, Springer , 2012.
[41]
W. Peruquette, J. P. Barbot Sliding Mode Control in engineeringMarcel Dekker,2002.
[42]
Ding, Z., Nonlinear and Adaptive Control Systems,, IET Press, London, 2013.
[43]
James Ron Leigh, Control Theory: A Guided Tour, IET Press, 2012.
[44]
B.D.O Anderson and J.B.Moore, Optimal Control Theory: Linear Quadratic Methods,
PrenticeHall,1989.
[45]
Raymond T. Stefani et. al, Design of Feedback Control Systems, Oxford University Press,
2002.
[46]
Karl. J. Astrom, Tore Hagglund PID controllers, Instrument Society of America, 1995
61

APPENDICES

62

## FIGURE A2.2: LQR CONTROL DESIGN

63

FIG A3.1: TOP LEVEL DIAGRAM OF APPROXIMATE LINEARIZATION WITH SLIDING MODE CONTROL

## FIG A3.2 APPROXIMATE FEEDBACK LINEARIZATION FUNCTION BLOCK

FIG A4.1 TOP LEVEL DIAGRAM OF INPUT OUTPUT LINEARIZATION WITH ZERO DYNAMICS
CONTROL
64

65

66

67

68

## APPENDIX B: MATLAB CODES

B1: NATURAL DYNAMICS
function [x2dot,x4dot] = fcn(x1,x2,x3,x4,u,n)
%#codegen
%%
%PARAMETERS
%%
L = 0.3302; M = 0.94; m = 0.23; J = 0.00788; Beq = 5.4; Bp = 0.0024;
g = 9.81; Rm = 2.6; Kt = 0.00767; Ng = 1; Kg = 3.71; Nm = 1;
Km = 0.00767; rmp = 0.00635;
a1=J+m*L^2; a2=J*m*L+m^2*L^3; a3=m^2*L^2*g; a4=M*m*L^2+(M+m)*J;
a5=(M+m)*m*g*L;
K1=(Ng*Kg*Nm*Kt)/(rmp*Rm); K2=(Ng*Kg^2*Nm*Kt*Km)/(rmp^2*Rm);
%%
%NONLINEAR DYNAMICS WITH ACTUATOR
%%
D=m^2*L^2*(sin(x3))^2+a4;
69

f2=(-a1*Beq*x2-m*L*Bp*x4*cos(x3)-a2*x4^2*sin(x3)+a3*sin(x3)*cos(x3)a1*K2*x2)/D;
g2=a1*K1/D;
f4=(-(M+m)*Bp*x4-m^2*L^2*x4^2*sin(x3)*cos(x3)m*L*Beq*x2*cos(x3)+a5*sin(x3)-K2*m*L*x2*cos(x3))/D;
g4=K1*m*L*cos(x3)/D;
x2dot=f2+g2*u+n;
x4dot=f4+g4*u+n;

## B2: APPROXIMATE LINEARIZATION WITH SLIDING MODE CONTROL

function [U,s] = fcn(x1,x2,x3,x4,ebs,P1,Q1,x1d,lambda)
%%
%APPROXIMATE FEEDBACK LINEARISATION
%%
eqn1=(-6*sin(x3)/(cos(x3))^4+sin(x3)/(cos(x3))^2)*L*x4^4;
eqn2=-6*g*x4^2*sin(x3)/(cos(x3))^3;
eqn3=(-2*g*sin(x3)/(cos(x3))^3+g*sin(x3)/cos(x3))*3*x4^2;
eqn4=(-2*g/(cos(x3))^2+2*g)*g*sin(x3)/L;
fe=eqn1+eqn2+eqn3+eqn4;
ge=-6*x4^2/(cos(x3))^2+3*x4^2-3*g/(L*cos(x3))+2*g*cos(x3)/L;
y1=(x1-x1d)-L*log((1+sin(x3))/cos(x3));
y2=x2-L*x4/cos(x3);
y3=-tan(x3)*(g+L*x4^2/cos(x3));
y4=(-2/(cos(x3))^3+1/cos(x3))*L*x4^3+(-3*g/(cos(x3))^2+2*g)*x4;
%%
%SLIDING MODE CONTROL
%%
s=y4+3*lambda*y3+3*lambda^2*y2+lambda^3*y1;%SURFACE
sgn_s=s/(abs(s)+ebs); %CONTINUOUS APPROXIMATION OF DISCONTINUOUS SIGN
FUNCTION
w_exp=P1*s+Q1*sgn_s-((fe+3*lambda*y4+3*lambda^2*y3+lambda^3*y2)/ge);
%EXPONENETIAL LAW
w_pow=P1*(abs(s)^Q1)*(sgn_s)((fe+3*lambda*y4+3*lambda^2*y3+lambda^3*y2)/ge); %POWER LAW
%w=w_exp; %choose exponential law
w=w_pow; %choose power law
v=w/K1;
U=(M+m*(sin(x3))^2)*v-((m*g*sin(x3)*cos(x3)-m*L*x4^2*sin(x3)(K2+Beq)*x2)/K1);

## B3:INPUT-OUTPUT(ANGLE) LINEARIZATION WITH ZERO DYNAMICS CONTROL

%%INPUT-TO-OUTPUT(ANGLE)FEEDBACK LINEARIZATION
function u2 = fcn(x1,x2,x3,x4,v1)
%%
%LINEARIZING EQUATIONS
%%
D=m^2*L^2*(sin(x3))^2+a4;
f2=(-a1*Beq*x2-m*L*Bp*x4*cos(x3)-a2*x4^2*sin(x3)+a3*sin(x3)*cos(x3)a1*K2*x2)/D;
g2=a1*K1/D;
f4=(-(M+m)*Bp*x4-m^2*L^2*x4^2*sin(x3)*cos(x3)m*L*Beq*x2*cos(x3)+a5*sin(x3)-K2*m*L*x2*cos(x3))/D;
g4=K1*m*L*cos(x3)/D;
u2=(v1-f4)/g4;
%%
%ZERO DYNAMICS CONTROL BASED ON LYAPUNOV STABILITY THEORY
function V3 = fcn(x1, x2, x3, xref, x4, v1,c1,c2,c3)
70

%%
a5=(M+m)*m*g*L;
%ZERO DYNAMICS STABILIZING EQUATIONS
K1=(Ng*Kg*Nm*Kt)/(rmp*Rm); K2=(Ng*Kg^2*Nm*Kt*Km)/(rmp^2*Rm);
D=m^2*L^2*(sin(x3))^2+a4;
f2=(-a1*Beq*x2-m*L*Bp*x4*cos(x3)-a2*x4^2*sin(x3)+a3*sin(x3)*cos(x3)a1*K2*x2)/D;
g2=a1*K1/D;
f4=(-(M+m)*Bp*x4-m^2*L^2*x4^2*sin(x3)*cos(x3)m*L*Beq*x2*cos(x3)+a5*sin(x3)-K2*m*L*x2*cos(x3))/D;
g4=K1*m*L*cos(x3)/D;
e=x1-xref;
V3=((-c1*e-c3*x2-c2*f2)*g4-c2*g2*(v1-f4))/(c2*g2*g4); %ZERO DYNAMICS
STABILIZING CONTROL ACTION

## B4:PASSIVITY BASED ENERGY SWING UP FUNCTION

function [u,E]= fcn(ke,kx, kd,kv,x1,x2,x3,x4)
%PASSIVITY SWING UP EQUATIONS
c1=Beq+K2;
q=[x1;x3]; %STATES
qdot=[x2;x4];
Mq=[(M+m) -m*L*cos(x3);-m*L*cos(x3) m*L^2];%MASS-INERTIA MATRIX
E=0.5*(qdot)'*Mq*qdot+m*g*L*(cos(x3)-1);% ENERGY OF INVERTED PENDULUM
p1=(kv*c1)/(M+(m*(sin(x3))^2));
p2=(kv*m*sin(x3)*(L*x4^2-g*cos(x3)))/(M+(m*(sin(x3))^2));
p3=kv/(M+(m*(sin(x3))^2));
Num=(-kd+ke*E*c1+p1)*x2-kx*x1+p2;
Den=ke*E+p3;
w=Num/Den;
u=w/K1; %SWING UP CONTROL ACTION

71