Backstepping Control and Transformation of Multi-Input Multi-Outp
Backstepping Control and Transformation of Multi-Input Multi-Outp
ScholarWorks@UARK
8-2019
Part of the Controls and Control Theory Commons, and the Power and Energy Commons
Recommended Citation
Alharbi, Khalid Salim D., "Backstepping Control and Transformation of Multi-Input Multi-Output Affine
Nonlinear Systems into a Strict Feedback Form" (2019). Theses and Dissertations. 3372.
https://scholarworks.uark.edu/etd/3372
This Dissertation is brought to you for free and open access by ScholarWorks@UARK. It has been accepted for
inclusion in Theses and Dissertations by an authorized administrator of ScholarWorks@UARK. For more information,
please contact [email protected].
Backstepping Control and Transformation of Multi-Input Multi-Output Affine Nonlinear
Systems into a Strict Feedback Form
by
August 2019
University of Arkansas
This research would not have been achieved without the moral support and continuous
motivation of my family, research adviser, advisory committee members, and mentors. I am
grateful to my parents, my wife and my children Leen, Salem, Heyam, Nawaf and Jurie who
have always trusted and encouraged me towards achieving my dreams. I would like to thank
them all for their patience for five years until the moment of writing this dissertation. A
special thanks to my academic adviser Prof. Roy McCann the director of power systems
control laboratory, associate director of the national center for reliable electric power and
professor of the electrical engineering department at University of Arkansas. Prof. McCann
has spared no effort in assisting me and his other students to be on the right track towards
our goals. His door was always open for all of us at any time we ran into any kind of
difficulties. I would also like to thank the members of my esteemed dissertation committee,
Prof. Jingxian Wu, Prof. Yue Zhao, and Prof. Mark E. Arnold for their useful comments
and time reading this dissertation. I also sincerely thank Prof. Raúl Ordóñez professor of
electrical and computer engineering department at University of Dayton who first taught
me nonlinear control design methods. I also thank my employer, Royal Commission for
Jubail and Yanbu-Saudi Arabia for the unprecedented financial support and I do not forget
Saudi Cultural Mission to the United States for administering my scholarship to University
of Arkansas.
DEDICATION
To my parents, my wife and my children Leen, Salem, Heyam, Nawaf and Jurie.
TABLE OF CONTENTS
1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 Motivation and Contribution of The Dissertation . . . . . . . . . . . . . . . 2
1.3 Dissertation Outline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
5 Backstepping Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
5.1 Integrator Backstepping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
5.2 Backstepping for Systems with a Chain of Integrators . . . . . . . . . . . . . 74
5.2.1 Step:1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
5.2.2 Step:2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
5.2.3 Step:3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
5.3 Backstepping for Systems in Strict Feedback Form . . . . . . . . . . . . . . . 83
5.3.1 Step:1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
5.3.2 Step:2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
5.3.3 Step:3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
5.4 Backstepping Control Algorithm for Systems in Strict Feedback Form . . . . 86
5.4.1 Step:1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
5.4.2 Step:2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
5.4.3 Step:n-1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
5.4.4 Step:n . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
8 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
LIST OF FIGURES
Figure 7.1: Direct-drive SPMSG based wind energy conversion system with boost
converter. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
Figure 7.2: States stabilization using backstepping control after transformation into
SFBF. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
Figure 7.3: Closed-loop block diagram for transformation into strict feedback form
and backstepping control of WECC 3-machine system. . . . . . . . . . . 144
Figure 7.4: WECC 3-machine system states. . . . . . . . . . . . . . . . . . . . . . . 146
Figure 7.5: WECC 3-machine system rotor angular differences. . . . . . . . . . . . . 146
Figure 7.6: WECC 3-machine system rotor angles. . . . . . . . . . . . . . . . . . . . 147
Figure 7.7: WECC 3-machine system rotor angular velocities. . . . . . . . . . . . . . 147
LIST OF TABLES
1.1 Overview
It has always been a primary goal for engineers and scholars of control theory to
find the most effective approaches and control methods to provide desired and best stability
properties. However, in some cases, a good and reliable method may exist but for one reason
or another is not suitable for the intended system and vise versa. Therefore, it is sometimes
very helpful to modify the intended system or transform it into an equivalent form that
meets the control method requirements [1]. Feedback linearization control, for instance, has
been considered a successful approach in solving many control problems by transforming
dynamical nonlinear models into athor equivalent canonical forms that are simpler than the
original forms [2–8]. However, it still has some shortcomings and restrictions [9]. Exact
feedback linearization known as input-state feedback linearization is based on the cancella-
tion of system’s nonlinearities regardless of the importance of some of those nonlinearities to
the system stability, that is other than the certain structural property required to perform
such cancellation [10]. Input-output feedback linearization on the other hand accounts in
many cases just to part of the closed-loop dynamics. The other part, which is the internal
dynamics, is considered unobservable and the stability of this internal dynamics is essentially
required for the input-output feedback linearization effectiveness and this is not the case in
many real systems [9]. It is noteworthy to mention that input-state feedback linearization
is simply an exceptional case of input-output feedback linearizable systems when successive
differentiation of output function turns out equal relative degree and system’s order [11].
Furthermore, ordinary proportional-integral control has been widely adopted in controlling
energy conversion systems and although it is applicable and easy to design, it ignores the
transient states of the system and deals with the average steady-state model in the neigh-
borhood of equilibrium points which makes dynamic response relatively slow. Moreover,
it is difficult to tune PI control parameters [12]. Fortunately, the preceding imperfection
of feedback linearization and PI controllers can be avoided and overcome using some other
advanced nonlinear control approaches such as backstepping control method that is based on
the Lyapunov theorem of stability. This is owing to that backstepping concentrates on con-
struction of Lyapunov function whose derivative can be negative by a verity of control laws
1
rather than one specific control law form. Thus, backstepping as a design approach is more
flexible in avoiding the cancellation of useful nonlinearities [13]. Since it was developed in
1990, the backstepping control approach has been used in many control design applications.
In [14] it was used to stabilize nonlinear spacecraft attitude considering the disturbances and
delay due to the actuator based on the delay compensation method [15]. [16] based on [17]
develops a controller for one-dimensional unstable heat equation through solving the kernel
partial differential equation to transform the partial differential system into an exponential
stable target system. A position controller was designed in [18] for an unmanned aerial
vehicle with four rotors using adaptive backstepping and adding integral action as proposed
in [19] in association with a linear PID controller for stabilizing attitude angle. Adaptive and
non-adaptive indirect backstepping controller designs based on making an assumption of the
virtual control functions was developed in [20] to track the output voltage of a dc-dc boost
converter. Making the same assumptions and considering the effect of parasitic elements,
an adaptive backstepping controller was designed in [21] to track the output voltage of a
dc-dc boost converter. In [22], coping with the uncertainty of input voltage, inductance,
capacitance, load resistance, and undesirable overestimation when choosing update laws was
achieved by combining input-output linearization and backstepping methodology to design
a dynamical adaptive controller for PWM power converters. Defining new state variables
was the approach to transform a mismatched nonlinear dynamic system in [23] into strict
feedback form such that the backstepping control method can be applied. In this research,
the coordinate transformation of feedback linearizable systems based on the Lie derivative
of the system outputs is proposed for multi-input multi-output systems. This method is
an extension to the transformation process of single-input single-output systems proposed
in [24].
2
unlike feedback linearization methods both input-output and input-state linearization that
require precise structural property and often cancel useful nonlinearities. For example, to
stabilize z ∗ = 0 for the system given in [25] as
ż = a cos z − bz 3 + cu (1.1)
ż = −kz (1.3)
as will be explained later in chapter five. This is actually illogical control law because in
addition to a cos z it cancels −bz 3 which is helpful for stabilization at z = 0 especially for
large values of z. Moreover, the existence of bz 3 in (1.2) will enlarge the value of u which
is harmful and may result in non-robustness. On the other hand, flexibility in choosing a
control law to make a derivative of Lyapunov function negative helps to avoid such harmful
cancellation. For instance, choosing the control law
1
u= (−a cos z − kz) (1.5)
c
satisfies (5.2) such that
V̇ ≤ −W (z) = − kz 2 + bz 4
(1.6)
and makes u grows linearly with |z|. From this perspective, simplifying the process of
transforming MIMO affine nonlinear systems into the required strict feedback form will add
a very good tool to control engineers’ toolbox.
This dissertation has seven chapters beyond the introduction (Chapter 1). Chapter 2
discusses briefly the mathematical tools that will be needed for understanding control meth-
ods covered in this dissertation and will also be useful when explaining the transformation
3
process into the strict feedback form. Topics that will be explained are the gradient of a
scalar function, Jacobian matrix, coordinate transformation of linear and nonlinear systems,
derived mapping, Lie derivative and Lie brackets of vector fields, affine nonlinear system,
some function properties, Frobenius theorem, the notion of relative degree and lastly condi-
tions required for a nonlinear system to be exactly feedback linearizable.
Chapter 3 explains the common nonlinear feedback control methods input-state and
input-output feedback linearization where most of the math tools from chapter 2 as well as
Frobenius theorem and feedback linearizability conditions will be applied. These methods are
considered a good beginning to understand systems mapping and transformation. When a
clear output function exists input-output feedback linearization for both single-input single-
output and multi-input multi-output nonlinear systems is discussed. On the other hand,
input-state feedback linearization is presented for both single-input single-output and multi-
input multi-output nonlinear systems when a clear output function may or may not be given.
In chapter 4, the dissertation concentrates on discussing Sontag’s formula and Lya-
punov theorem of stability which is considered one of the widely used methods to prove the
stability of nonlinear systems. However, the interest will be in the part of this theorem where
the behavior of mathematically designed function known as Lyapunov function candidate is
studied to examine the stability of closed loop systems.
Chapter 5 converses about integrator backstepping theorem and presents a detailed
systematic procedure to produce stabilizing controllers for nonlinear systems with a chain of
integrators and also for systems in the strict feedback form.
Chapter 6 introduces a simple example to clarify the difference between static and
dynamic control design methods and also explains both simple adaptive regulation and sim-
ple adaptive tracking controllers designs. Moreover, it introduces adaptive backstepping for
second-order matched systems when the control input is in the same equation as the un-
known parameter and then extended matching systems when the unknown parameter is one
integrator before the control input. The disadvantage of increasing the number of parameter
estimates due to overestimation in previous approaches is solved in the last section through
mathematically overestimation reduction.
In chapter 7, the dissertation explains step by step procedure on how to transform
single-input single-output and multi-input multi-output affine nonlinear systems into equiv-
alent strict feedback form. The conclusion summarizes the research results and overall work
of this dissertation and also addresses a few suggestions for future work.
4
2 Preliminary Mathematical Knowledge
The purpose of this chapter is to explain briefly the math tools and theorems that
will frequently be used for understanding the common nonlinear methods covered in this dis-
sertation and will also be very useful when using backstepping approach and transformation
into the strict feedback form. The topics that will be explained are the gradient of a scalar
function, Jacobian matrix, the coordinate transformation of linear and nonlinear systems,
derived mapping, Lie derivative and Lie brackets of vector fields, affine nonlinear system,
some function properties, Frobenius theorem, the notion of relative degree and in the last
section of this chapter conditions required to feedback linearize nonlinear systems.
2.1 Gradient
h (z) (2.1)
Example 2.1
is obtained as:
h i
∇h (z) = ∂h ∂h ∂h
∂z1 ∂z2 ∂z3
(2.5)
h i
= 2z1 + z2 z1 1 M
5
2.2 Jacobian Matrix
Example 2.2
is obtained as:
∂f1 ∂f1 ∂f1
∂z1 ∂z2 ∂z3
−a 0 0
∂f2 ∂f2 ∂f2
∇f (z) =
∂z1 ∂z2 ∂z3
= −cz3 −b −cz1 M
(2.10)
∂f3 ∂f3 ∂f3
∂z1 ∂z2 ∂z3
αz2 αz1 0
ż = Az + Bu
(2.11)
y = Cz + Du
6
where z ∈ Rn , u ∈ Rr , and y ∈ Rm are state vector, control input and output vector
respectively. A, B, C, and D are matrices of corresponding dimensions. Introducing a new
vector x through the transformation
Tz = x (2.12)
where T is a non-singular matrix of n × n dimension such that
T −1 x = z (2.13)
then the system (2.11) can be transformed into the following system of x coordinates [28]
ẋ = T AT −1 x + T Bu
(2.14)
y = CT −1 x + Du
Definition 2.1 If a transformation x = T (z) is smooth and its inverse z = T −1 (x) exists
and be smooth as well, then it is called a diffeomorphism.
Lemma 2.1 Considering the coordinate transformation (2.16), one can write
dT (z) ∂T dz
ẋ = = (2.17)
dz ∂z dt
Thus, systems of the form (2.15) can be re-written as
∂T (z) ∂T (z)
f z = T −1 (x) + g z = T −1 (x) u
ẋ =
∂z ∂z (2.18)
y = h z = T −1 (x)
7
2.4 Derived Mapping
∂T −1 (x)
T −1 . (f (x)) = f (x = T (z)) (2.22)
∂x
𝑇. (𝑓 𝑧 )
𝑧 𝑠𝑝𝑎𝑐𝑒 𝑥 𝑠𝑝𝑎𝑐𝑒
𝑓(𝑧) 𝑓(𝑥)
𝑇 −1 . (𝑓 𝑥 )
8
Example 2.3
9
2.5 Lie Derivative
Definition 2.3 Consider a smooth scalar function h (z) and a smooth vector field f (z).
A new scalar function known as Lie derivative of h (z) with respect to f (z) designated by
Lf h (z) is defined by:
Lie bracket is another useful mathematical tool in this research and it was discussed
in [31,32] as differentiating a vector field along another vector field according to the following
definition.
Definition 2.4 Consider the vector fields f (z) and g (z) on Rn . The derivative of g (z)
along f (z) results in another vector field known as Lie bracket of f (z) and g (z) and desig-
nated by [f, g] or commonly as adf g and is defined as:
10
Accordingly, one can recursively define repeated Lie brackets as follows:
ad0f g = g
(2.33)
adkf g = f, adfk−1 g , k ≥ 1.
Example 2.4
ż = f (z) + g (z) u
where:
−az1 1
f (z) =
−bz2 + k − cz1 z3
, g (z) =
0
(2.34)
θz1 z2 0
The first and second Lie brackets can be calculated as follows:
0 0 0 −az1 −a 0 0 1
adf g = [f, g] =
0 0 0 −bz2 + k − cz1 z3 − −cz3 −b −cz1 0
0 0 0 θz1 z2 θz2 θz1 0 0
0 −a a
0 − −cz3 = cz3
=
0 θz2 −θz2
(2.35)
0 0 0 −az1 −a 0 0 a
ad2f g 0 0 c −bz2 + k − cz1 z3 − −cz3 −b −cz1 cz3
= [f, adf g] =
0 −θ 0 θz1 z2 θz2 θz1 0 −θz2
0 −a2
= cθz1 z2 − −acz3 − bcz3 + cθz1 z2
bθz2 − kθ + cθz1 z3 aθz2 + cθz1 z3
a2
=
acz3 + bcz3 M
(2.36)
bθz2 − aθz2 − kθ
11
2.7 Affine Nonlinear System
In nonlinear control theory, most of today’s systems have the general form (2.15) for
SISO systems and the following general form for MIMO systems
ż1 f1 (z) g11 (z) g21 (z) gm1 (z)
ż2 f (z)
2
g (z)
12
g (z)
22
g (z)
m2
= . + u1 + u2 + · · · + um
.. .. .. .. ..
.
.
.
.
żn fn (z) g1n (z) g2n (z) gmn (z)
(2.37)
y1 h1 (z)
y2 h (z)
2
=
.. ..
.
.
ym hm (z)
whose short form can be written as
m
X
żn = f (z) + gi (z) ui
i=1 (2.38)
yi = hi (z) , i = 1, . . . , m
where z ∈ Rn , u ∈ Rm , and y ∈ Rm are state variables, control inputs, and system out-
puts respectively. Such nonlinear systems with nonlinear state vectors and linear control
input/inputs are called affine nonlinear systems in nonlinear control theories [33, 34].
One of the important things that readers will frequently encounter in this research is
some functions’ properties explained in a well known nonlinear control textbook by Khalil
[10]. As what so-called Lyapunov function denoted by V (z) will frequently be utilized, then
if:
12
2.9 Frobenius Theorem
This theorem is needed when discussing the conditions required for feedback lineariza-
tion of nonlinear systems. It was explained in detail in [35–37]. Consider a function h (z)
and a function qij (z) where i = 1, 2, . . . , m; j = 1, 2, . . . , n and m < n such that:
q11 (z) q21 (z) . . . qm1 (z)
h i q12 (z) q22 (z) . . . qm2 (z)
∂h(z) ∂h(z)
. . . ∂h(z) (2.39)
∂z1 ∂z2 ∂zn
.
.. .
.. .
.. .
..
q1n (z) q2n (z) . . . qmn (z)
in (2.39) has rank m at point z = z ∗ , then there are n − m scalar functions around z ∗
representing the solutions of (2.40) if and only if the rank of the matrix
h i
q1 (z) q2 (z) . . . qm (z) [qi , qj ] (2.42)
equals m as well for all z around z ∗ where [qi , qj ] is the Lie bracket of any two columns in
(2.41) such that the jacobian matrix
∂h1 (z) ∂h1 (z) ∂h1 (z)
∂z1 ∂z2
... ∂zn
∂h2 (z) ∂h2 (z) ∂h2 (z)
∂z1 ∂z2
... ∂zn
(2.43)
.. .. .. ..
. . . .
∂hn−m (z) ∂hn−m (z) ∂hn−m (z)
∂z1 ∂z2
... ∂zn
13
Theorem 2.1 Given the partial differential equations set
∂h (z) h i
q1 (z) q2 (z) . . . qm (z) =0
∂z n×m
There exist h1 (z) , h2 (z) , . . . , hn−m (z) satisfying the given set of equations and the set of
vectors in the Jacobian matrix
∂h (z)
∇h =
∂z
are linearly independent if and only if the set of vector fields
h i
q1 (z) q2 (z) . . . qm (z)
is involutive. ♦
ż = f (z) + g (z) u
y = h (z)
It is well known that this system is of a relative degree ρ if one needs to differentiate y = h (z)
ρ times until u the control input appears for the first time and does not vanish for every
z ⊂ D ⊂ Rn .
Example 2.5
ż1 = z22 + 5u
ż2 = z1 + z3
(2.44)
ż3 = −z1 z2 + z1
y = z2
ẏ = ż2
(2.45)
= z1 + z3
14
Differentiating it one more time results in
ÿ = ż1 + ż3
(2.46)
= z1 − z1 z2 + z22 + 5u
Now, one can see that the control input u showed up in ÿ. Thus, one can say that this
system is of a relative degree ρ = 2 in R3 . M
As explained in Khalil’s [10], if f (z), g (z) and h (z) are smooth enough in the domain
D ⊂ Rn , then the first derivative of the output y = h (z) in terms of Lie derivative is:
∂h
ẏ = [f (z) + g (z) u]
∂z
def
= Lf h (z) + Lg h (z) u
∂ (Lf h) ∂ (Lf h)
where L2f h (z) , ∂z
f (z) and Lg Lf h (z) , ∂z
g (z) are Lie derivative of Lf h (z) along
f (z) and Lie derivative of Lf h (z) along g (z) respectively. Again, if Lg Lf h (z) = 0, then the
second derivative of y will be ÿ = L2f h (z) which is also independent of input u. Continuing
like this, if h (z) satisfies:
Lg Li−1
f h (z) = 0, i = 1, . . . , ρ − 1
Lg Lρ−1
f h (z) 6= 0, ∀ z ⊂ D ⊂ Rn
then one can say that the system is of a relative degree ρ and
That is the input appears for the first time in the ρth derivative of the output. In brief, the
next definition summarizes the relative degree notion for SISO nonlinear systems
Definition 2.5 A SISO affine nonlinear system of the general form (2.15)
ż = f (z) + g (z) u
y = h (z)
15
with smooth enough f (z), g (z), and h (z) in the domain D ⊂ Rn , has a relative degree ρ if
h (z) satisfies:
Lg Li−1
f h (z) = 0, i = 1, . . . , ρ − 1 (2.47a)
Lg Lρ−1
f h (z) 6= 0, ∀ z ⊂ D ⊂ Rn (2.47b)
so that
y (ρ) = Lρf h (z) + Lg Lρ−1
f h (z) u. (2.48)
The analysis used so far for the relative degree of SISO affine nonlinear systems can be
expanded to find the relative degree of MIMO affine nonlinear systems as explained in [29].
Consider MIMO affine nonlinear system given in (2.38) as
If f (z), gi (z), and hi (z) are smooth enough in the domain D ⊂ Rn , then:
1st derivative
(1) ∂h1
y1 = [f (z) + g1 (z) u1 + g2 (z) u2 + . . . + gm (z) um ]
∂z
def
= Lf h1 (z) + Lg1 h1 (z) u1 + Lg2 h1 (z) u2 + . . . + Lgm h1 (z) um
If
Lg1 h1 (z) = Lg2 h1 (z) = . . . = Lgm h1 (z) = 0
then
(1)
y1 = Lf h1 (z)
16
2nd derivative
(2) ∂ (Lf h1 )
y1 = [f (z) + g1 (z) u1 + g2 (z) u2 + . . . + gm (z) um ]
∂z
def 2
= Lf h1 (z) + Lg1 Lf h1 (z) u1 + Lg2 Lf h1 (z) u2 + . . . + Lgm Lf h1 (z) um
If
Lg1 Lf h1 (z) = Lg2 Lf h1 (z) = . . . = Lgm Lf h1 (z) = 0
then
(2)
y1 = L2f h1 (z)
∂ Lρf1 −2 h1
(ρ −1)
y1 1 = [f (z) + g1 (z) u1 + g2 (z) u2 + . . . + gm (z) um ]
∂z
def ρ1 −1
= Lf h1 (z) + Lg1 Lρf1 −2 h1 (z) u1 + Lg2 Lρf1 −2 h1 (z) u2 + . . . + Lgm Lρf1 −2 h1 (z) um
If
Lg1 Lρf1 −2 h1 (z) = Lg2 Lρf1 −2 h1 (z) = . . . = Lgm Lρf1 −2 h1 (z) = 0
then
(ρ1 −1)
y1 = Lρf1 −1 h1 (z)
(ρ1)th derivative
ρ1 −1
(ρ ) ∂ Lf h1
y1 1 = [f (z) + g1 (z) u1 + g2 (z) u2 + . . . + gm (z) um ]
∂z
def ρ1
= Lf h1 (z) + Lg1 Lρf1 −1 h1 (z) u1 + Lg2 Lρf1 −1 h1 (z) u2 + . . . + Lgm Lρf1 −1 h1 (z) um
If at least one
Lgi Lρf1 −1 h1 (z) 6= 0, i = 1, 2, . . . , m.
then MIMO affine nonlinear system (2.38) has a sub-relative degree ρ1 corresponding to
output function y1 = h1 (z).
17
Considering output function y2 = h2 (z)
1st derivative
(1) ∂h2
y2 = [f (z) + g1 (z) u1 + g2 (z) u2 + . . . + gm (z) um ]
∂z
def
= Lf h2 (z) + Lg1 h2 (z) u1 + Lg2 h2 (z) u2 + . . . + Lgm h2 (z) um
If
Lg1 h2 (z) = Lg2 h2 (z) = . . . = Lgm h2 (z) = 0
then
(1)
y2 = Lf h2 (z)
2nd derivative
(2) ∂ (Lf h2 )
y2 = [f (z) + g1 (z) u1 + g2 (z) u2 + . . . + gm (z) um ]
∂z
def 2
= Lf h2 (z) + Lg1 Lf h2 (z) u1 + Lg2 Lf h2 (z) u2 + . . . + Lgm Lf h2 (z) um
If
Lg1 Lf h2 (z) = Lg2 Lf h2 (z) = . . . = Lgm Lf h2 (z) = 0
then
(2)
y2 = L2f h2 (z)
∂ Lρf2 −2 h2
(ρ −1)
y2 2 = [f (z) + g1 (z) u1 + g2 (z) u2 + . . . + gm (z) um ]
∂z
def ρ2 −1
= Lf h2 (z) + Lg1 Lρf2 −2 h2 (z) u1 + Lg2 Lρf2 −2 h2 (z) u2 + . . . + Lgm Lρf2 −2 h2 (z) um
18
If
Lg1 Lρf2 −2 h2 (z) = Lg2 Lρf2 −2 h2 (z) = . . . = Lgm Lρf2 −2 h2 (z) = 0
then
(ρ2 −1)
y2 = Lρf2 −1 h2 (z)
ρ2 −1
(ρ ) ∂ Lf h2
y2 2 = [f (z) + g1 (z) u1 + g2 (z) u2 + . . . + gm (z) um ]
∂z
def ρ2
= Lf h2 (z) + Lg1 Lρf2 −1 h2 (z) u1 + Lg2 Lρf2 −1 h2 (z) u2 + . . . + Lgm Lρf2 −1 h2 (z) um
If at least one
Lgi Lρf2 −1 h2 (z) 6= 0, i = 1, 2, . . . , m.
then MIMO affine nonlinear system (2.38) has a sub-relative degree ρ2 corresponding to
output function y2 = h2 (z). Continuing like this
1st derivative
(1) ∂hm−1
ym−1 = [f (z) + g1 (z) u1 + g2 (z) u2 + . . . + gm (z) um ]
∂z
def
= Lf hm−1 (z) + Lg1 hm−1 (z) u1 + Lg2 hm−1 (z) u2 + . . . + Lgm hm−1 (z) um
If
Lg1 hm−1 (z) = Lg2 hm−1 (z) = . . . = Lgm hm−1 (z) = 0
then
(1)
ym−1 = Lf hm−1 (z)
19
2nd derivative
th
(ρm−1 − 1) derivative
ρ −2
∂ Lfm−1 hm−1
(ρ
m−1 −1)
ym−1 = [f (z) + g1 (z) u1 + g2 (z) u2 + . . . + gm (z) um ]
∂z
def ρm−1 −1 ρ −2 ρ −2
= Lf hm−1 (z) + Lg1 Lfm−1 hm−1 (z) u1 + Lg2 Lfm−1 hm−1 (z) u2 + . . . +
ρ −2
Lgm Lfm−1 hm−1 (z) um
If
ρ −2 ρ −2 ρ −2
Lg1 Lfm−1 hm−1 (z) = Lg2 Lfm−1 hm−1 (z) = . . . = Lgm Lfm−1 hm−1 (z) = 0
then
(ρ
m−1 −1) ρ −1
ym−1 = Lfm−1 hm−1 (z)
ρ −1
∂ Lfm−1 hm−1
(ρ
m−1 )
ym−1 = [f (z) + g1 (z) u1 + g2 (z) u2 + . . . + gm (z) um ]
∂z
def ρ ρ −1 ρ −1
= Lfm−1 hm−1 (z) + Lg1 Lfm−1 hm−1 (z) u1 + Lg2 Lfm−1 hm−1 (z) u2 + . . . +
ρ −1
Lgm Lfm−1 hm−1 (z) um
If at least one
ρ −1
Lgi Lfm−1 hm−1 (z) 6= 0, i = 1, 2, . . . , m.
then MIMO affine nonlinear system (2.38) has a sub-relative degree ρm−1 corresponding to
output function ym−1 = hm−1 (z).
20
Considering output function ym = hm (z)
1st derivative
(1) ∂hm
ym = [f (z) + g1 (z) u1 + g2 (z) u2 + . . . + gm (z) um ]
∂z
def
= Lf hm (z) + Lg1 hm (z) u1 + Lg2 hm (z) u2 + . . . + Lgm hm (z) um
If
Lg1 hm (z) = Lg2 hm (z) = . . . = Lgm hm (z) = 0
then
(1)
ym = Lf hm (z)
2nd derivative
(2) ∂ (Lf hm )
ym = [f (z) + g1 (z) u1 + g2 (z) u2 + . . . + gm (z) um ]
∂z
def 2
= Lf hm (z) + Lg1 Lf hm (z) u1 + Lg2 Lf hm (z) u2 + . . . + Lgm Lf hm (z) um
If
Lg1 Lf hm (z) = Lg2 Lf hm (z) = . . . = Lgm Lf hm (z) = 0
then
(2)
ym = L2f hm (z)
∂ Lρfm −2 hm
(ρm −1)
ym = [f (z) + g1 (z) u1 + g2 (z) u2 + . . . + gm (z) um ]
∂z
def ρm −1
= Lf hm (z) + Lg1 Lρfm −2 hm (z) u1 + Lg2 Lρfm −2 hm (z) u2 + . . . +
Lgm Lρfm −2 hm (z) um
21
If
Lg1 Lρfm −2 hm (z) = Lg2 Lρfm −2 hm (z) = . . . = Lgm Lρfm −2 hm (z) = 0
then
(ρm −1)
ym = Lρfm −1 hm (z)
(ρm)th derivative
ρm −1
(ρm )
∂ Lf hm
ym = [f (z) + g1 (z) u1 + g2 (z) u2 + . . . + gm (z) um ]
∂z
def ρm
= Lf hm (z) + Lg1 Lρfm −1 hm (z) u1 + Lg2 Lρfm −1 hm (z) u2 + . . . +
Lgm Lρfm −1 hm (z) um
If at least one
Lgi Lρfm −1 hm (z) 6= 0, i = 1, 2, . . . , m.
then MIMO affine nonlinear system (2.38) has a sub-relative degree ρm corresponding to
output function ym = hm (z) and hence if the matrix
Lg1 Lρf1 −1 h1 (z) Lg2 Lρf1 −1 h1 (z) . . . Lgm Lρf1 −1 h1 (z)
L Lρ2 −1 h (z) L Lρ2 −1 h (z) . . . L Lρ2 −1 h (z)
g1 f 2 g2 f 2 gm f 2
.
.. .
.. .
.. .
..
Lg1 Lρfm −1 hm (z) Lg2 Lρfm −1 hm (z) . . . Lgm Lρfm −1 hm (z)
is non-singular at z = z ∗ , then MIMO affine nonlinear system of the form (2.38) is of a vector
relative degree
ρ = {ρ1 , ρ2 , ρ3 , . . . , ρm }
The following definition summarizes the relative degree notion for MIMO affine nonlinear
systems.
Definition 2.6 A MIMO affine nonlinear system of the general form (2.38)
22
1.
Lg1 Lkf hi (z) = Lg2 Lkf hi (z) = . . . = Lgm Lkf hi (z) = 0, k = 0, 1, . . . , ρi − 2. (2.50)
so that m
(ρi )
X
yi = Lρfi hi (z) + Lgj Lρfi −1 hi (z) uj (2.52)
j=1
and for the given MIMO system
Example 2.6
In this example, obtaining a MIMO system’s relative degree will be shown by considering
the mathematical model for the proton exchange membrane fuel cell discussed in [38]. The
multi-input single-output dynamic model was first derived and then using the extended
system approach discussed in [9] and [39] to introduce extra states and outputs, the model
was converted into what so-called square MIMO system where the number of control inputs
equals the number of system outputs.
Electrical current
𝒆− 𝒆−
𝒆− 𝒆−
Fuel Air
inlet inlet
𝑯𝟐 𝒆− 𝒆−
𝑯+ 𝑶𝟐
Electrolyte
Cathode
Anode
𝑯𝟐 𝑶
Excess fuel Excess air
outlet and water
outlet
23
UA R◦ T R◦ T
ẋ1 x
Va 1 Va
0 2F Va
ẋ UA R◦ T R◦ T
2
x
Vc 2
0
= − + u1 + Vc u2 − 4F Vc
u3 (2.54a)
ẋ3 0 0
1 0
ẋ4 0 0 0 1
y1 h1 (x) VF C
y2 = h2 (x) = x3 (2.54b)
y3 h3 (x) x4
State Parameter
x1 PH 2
x2 PO2
x3 y2
x4 y3
Input Parameter
u1 vH2(in)
u2 vO2(in)
u3 i
24
Table 2.3: PEMFC outputs legend.
Output Parameter
y1 VF C
y2 x3
y3 x4
Parameter Definition
1st derivative
(1) ∂h1
y1 = [f (x) + g1 (x) u1 + g2 (x) u2 + g3 (x) u3 ]
∂x
def
= Lf h1 (x) + Lg1 h1 (x) u1 + Lg2 h1 (x) u2 + Lg3 h1 (z) u3
25
This yields
− UVA
a
x1
UA
h
(4.3×10−5 )T (7.6×10−5 )T
i − Vc x2
Lf h1 (x) = R◦ T R◦ T
2F x1
+ x1 4F x2
+ x2
0 0
0
0
R◦ T UA R◦ T UA
+ 4.3 × 10−5 T + 7.6 × 10−5 T
=− −
2F Va 4F Vc
R◦ T
Va
h i 0
Lg1 h1 (x) u1 = R◦ T (4.3×10−5 )T R◦ T (7.6×10−5 )T
u
2F x1
+ x1 4F x2
+ x2
0 0
0 1
0
R◦ T R◦ T
+ 4.3 × 10−5 T
= u1
2F Va x1
0
h i R◦ T
Lg2 h1 (x) u2 = R◦ T (4.3×10−5 )T R◦ T (7.6×10−5 )T Vc
u2
2F x1
+ x1 4F x2
+ x2
0 0 1
0
R◦ T R◦ T
+ 7.6 × 10−5 T
= u2
4F Vc x2
R◦ T
− 2F Va
R◦ T
h
(4.3×10−5 )T (7.6×10−5 )T
i − 4F Vc
Lg3 h1 (x) u3 = R◦ T R◦ T
u3
2F x1
+ x1 4F x2
+ x2
0 0
0
−1
R◦ T R◦ T R◦ T R◦ T
+ 4.3 × 10−5 T + 7.6 × 10−5 T
=− − u3
2F 2F Va x1 4F 4F Vc x2
Thus
and hence the system (2.54) has sub-relative degree ρ1 = 1 corresponding to y1 = h1 (x) =
VF C . The same way,
26
Considering output function y2 = h2 (x) = x3
1st derivative
(1) ∂h2
y2 = [f (x) + g1 (x) u1 + g2 (x) u2 + g3 (x) u3 ]
∂x
def
= Lf h2 (x) + Lg1 h2 (x) u1 + Lg2 h2 (x) u2 + Lg3 h2 (z) u3
This yields
− UVA
a
x1
h i − UA x
2
Lf h2 (x) = 0 0 1 0 Vc =0
0
0
R◦ T
Va
h i 0
Lg1 h2 (x) u1 = 0 0 1 0 u1 = 0
0
0
0
h i R◦ T
Vc
Lg2 h2 (x) u2 = 0 0 1 0 u2 = u2
1
0
R◦ T
−
2F Va
h i − R◦ T
Lg3 h2 (z) u3 = 0 0 1 0 4F Vc u3 = 0
0
−1
Thus
Lρf2 h2 (x) = Lf h2 (x)
Lg1 Lρf2 −1 h2 (x) u1 = Lg1 L0f h2 (x) u1
Lg2 Lρf2 −1 h2 (x) u2 = Lg2 L0f h2 (x) u2
Lg3 Lρf2 −1 h2 (x) u3 = Lg3 L0f h2 (x) u3
and hence the system (2.54) has sub-relative degree ρ2 = 1 corresponding to y2 = h2 (x) = x3 .
Similarly,
27
Considering output function y3 = h3 (x) = x4
1st derivative
(1) ∂h3
y3 = [f (x) + g1 (x) u1 + g2 (x) u2 + g3 (x) u3 ]
∂x
def
= Lf h3 (x) + Lg1 h3 (x) u1 + Lg2 h3 (x) u2 + Lg3 h3 (z) u3
This yields
− UVA
a
x1
h i − UA x
2
Lf h2 (x) = 0 0 0 1 Vc =0
0
0
R◦ T
Va
h i 0
Lg1 h2 (x) u1 = 0 0 0 1 u1 = 0
0
0
0
h i R◦ T
Lg2 h2 (x) u2 = 0 0 0 1 Vc u2 = u2
1
0
R◦ T
− 2F Va
h i − R◦ T
Lg3 h2 (z) u3 = 0 0 0 1 4F Vc u3 = −u3
0
−1
Thus
Lρf2 h2 (x) = Lf h2 (x)
Lg1 Lρf3 −1 h3 (x) u1 = Lg1 L0f h3 (x) u1
Lg2 Lρf3 −1 h3 (x) u2 = Lg2 L0f h3 (x) u2
Lg3 Lρf3 −1 h2 (x) u3 = Lg3 L0f h3 (x) u3
and hence the system (2.54) has sub-relative degree ρ3 = 1 corresponding to the output
function y3 = h3 (x) = x4 . Accordingly, the proton exchange membrane fuel cell system is
of a vector relative degree ρ = {ρ1 , ρ2 , ρ3 } = {1, 1, 1}. 4
28
2.11 Conditions for Feedback Linearization
ż = f (z) + g (z) u
where z ∈ Rn and u ∈ R are respectively system’s states and control input. If there exists
an output function say φ (z) that satisfies
such that the relative degree of the system equals to its order ρ = n and the Jacobian
∂φ(z) ∂φ(z) ∂φ(z)
∂z1 ∂z2
. . . ∂zn
∂ (Lf φ(z)) ∂ (Lf φ(z)) ∂ (Lf φ(z))
∂T (z) ∂z1 ∂z2
... ∂zn
= . . . .
(2.57)
∂z
.
. .
. . . .
.
∂ (Lfn−1 φ(z)) ∂ (Lfn−1 φ(z)) ∂ (Ln−1 φ(z))
f
∂z1 ∂z2
. . . ∂zn
is non-singular at z ∗ , then the given SISO affine nonlinear system with smooth f (z) and
g (z) is exactly feedback linearizable in the neighborhood of z ∗ . This is summarized in [29]
in the following lemma
ż = f (z) + g (z) u
To obtain the output function φ (z), one needs to solve (2.56) but first has to confirm its
existence. Here, the use of Forbenius theorem comes to play. It was previously proved in [43]
that the Lie derivative of φ (z) along the Lie bracket of the two vectors f (z) and g (z) is
defined as
L[f,g] φ (z) = Ladf g φ (z) = Lf Lg φ (z) − Lg Lf φ (z) (2.58)
29
Proof 2.1
∂ Lg(z) φ (z)
Lf (z) Lg(z) φ (z) = f (z)
∂z
and
∂ Lg(z) φ (z) ∂ ∂φ (z)
= g (z)
∂z ∂z ∂z
2
T ∂ φ (z) ∂φ (z) ∂g (z)
= g (z) +
∂z 2 ∂z ∂z
Thus
∂ 2 φ (z) ∂φ (z) ∂g (z)
Lf (z) Lg(z) φ (z) = g (z)T f (z) + f (z)
∂z 2 ∂z ∂z
Similarly
∂ 2 φ (z) ∂φ (z) ∂f (z)
Lg(z) Lf (z) φ (z) = f (z)T 2
g (z) + g (z)
∂z ∂z ∂z
Hence
∂φ (z) ∂g (z) ∂f (z)
Lf (z) Lg(z) φ (z) − Lg(z) Lf (z) φ (z) = f (z) − g (z)
∂z ∂z ∂z
∂φ (z)
= [f, g]
∂z
= L[f,g] φ (z)
Consequently, according to detailed proof in [29] and [36] the partial differential equation
(2.56) can be re-written as
in which (2.59a) is the partial differential equations set that according to Lie derivative
definition can be written as
∂φ (z)
g (z) adf g (z) ad2f g (z) . . . adfn−2 g (z) = 0
(2.60)
∂z
From [40], and in comparison with Frobenius theorem discussed in section 2.9, the following
theorem can be deduced.
ż = f (z) + g (z) u
with smooth enough f (z) and g (z), an output function φ (z) that results in the system’s
relative degree ρ = n must exist if and only if
30
1. The vector fields g (z) , adf g (z) , . . . , adfn−1 g (z) are linearly independent, that is the
where:
ad0f g (z) = g (z)
ad1f g (z) = [f, g]
ad2f g (z) = [f, [f, g]] (2.61)
..
.
adif g (z) = f, adfi−1 g (z) , i = 1, 2, . . .
stand for the successive Lie brackets of the two vector fields f (z) and g (z). However, testing
involutivity of a set of vector fields {v1 , v2 , . . . , vn } is accomplished by testing whether:
rank (v1 (z) , v2 (z) , . . . , vn (z)) = rank (v1 (z) , v2 (z) , . . . , vn (z) , [vi , vj ] (z)) ∀ z & ∀ i, j.
(2.62)
This means that the new vector field [vi , vj ] (z) is linearly dependent with the other n vector
fields and still in the same span and does not create a new direction [29].
Example 2.7
Considering the nonlinear system given in nonlinear control notes by Prof. Raúl Ordóñez:
such that
sin (z1 + z3 ) + |z2 − z32 | 2
f (z) =
2z1 z3 + z3
, g (z) =
0
z1 0
To check whether this system is exactly feedback linearizable or not, one needs to apply the
conditions for exact feedback linearizability of nonlinear systems. Starting with finding the
two Lie brackets adf g (z) and ad2f g (z)
∂g (z) ∂f (z)
adf g (z) = f (z) − g (z)
∂z ∂z
31
0 0 0 sin (z1 + z3 ) + |z2 − z32 |
=
0 0 0
2z 1 z3 + z3
0 0 0 z1
z −z 2 z2 −z32
cos z1 cos z3 − sin z1 sin z3 |z22 −z32 | − sin z1 sin z3 + cos z1 cos z3 − |z2 −z32 |
2z3
3
−
2z 3 0 2z1 + 1
1 0 0
2 0 2 cos z1 cos z3 − 2 sin z1 sin z3
× 0 = 0 −
4z 3
0 0 2
−2 cos z1 cos z3 + 2 sin z1 sin z3
=
−4z 3
−2
32
α−β
=
(2 cos z1 cos z3 − 2 sin z1 sin z3 ) 2z3 + 2
2 cos z1 cos z3 − 2 sin z1 sin z3
where
where
One can easily find that the rank of the matrix (2.64) is 3. Therefore, the first condition for
exact feedback linearization was achieved. Next, testing the system for the second condition
33
where involutivity of the vector set {g (z) , adf g (z)} is investigated through finding the Lie
bracket
∂ (adf g (z)) ∂g (z)
[g (z) , adf g (z)] = g (z) − adf g (z)
∂z ∂z
2 sin z1 cos z3 + 2 cos z1 sin z3 0 2 cos z1 sin z3 + 2 sin z1 cos z3 2
=
0 0 −4 0
0 0 0 0
0 0 0 −2 cos z1 cos z3 + 2 sin z1 sin z3
−
0 0 0
−4z3
0 0 0 −2
4 sin z1 cos z3 + 4 cos z1 sin z3
=
0
0
is 2 ∀ z. Therefore, the vector set {g (z) , adf g (z)} is involutive and hence the second
condition was achieved as well. Thus, the system (2.63) is exactly feedback linearizable and
there exists an output φ (z) such that the relative degree of the system is ρ = n = 3. M
Exact feedback linearizability for MIMO affine nonlinear systems was also studied previously
in [36] and [44–48]. Consider the MIMO system of the form given in (2.38) without an output
as m
X
żn = f (z) + gi (z) ui
i=1
n m
where z ∈ R and u ∈ R are respectively states of the system and control inputs. Similar to
what has been done for SISO systems, if there exist m output functions φ1 (z) , φ2 (z) , ..., φm (z)
that satisfy
Lg1 Lkf φi (z) = Lg2 Lkf φi (z) = . . . = Lgm Lkf φi (z) = 0 (2.65)
k = 0, 1, . . . , ρi − 2 ∀ i = 1, 2, . . . , m.
34
and at least one element is not zero in the row vector
h i
ρi −1 ρi −1 ρi −1
Lg1 Lf φi (z) Lg2 Lf φi (z) . . . Lgm Lf φi (z) , i = 1, 2, . . . , m (2.66)
such that the system has a vector relative degree ρ = {ρ1 , ρ2 , . . . , ρm−1 , ρm } in which ρ1 +
ρ2 + . . . + ρm−1 + ρm = ρ = n where n is the system’s order, and the following two matrices
are non-singular at z ∗
Lg1 Lρf1 −1 φ1 (z) Lg2 Lρf1 −1 φ1 (z) ... Lgm Lρf1 −1 φ1 (z)
L Lρ2 −1 φ (z) L Lρ2 −1 φ (z) . . . L Lρ2 −1 φ (z)
g1 f 2 g2 f 2 gm f 2
. . . .
(2.67)
.. .. .. ..
ρm −1 ρm −1 ρm −1
Lg1 Lf φm (z) Lg2 Lf φm (z) . . . Lgm Lf φm (z)
∂φ1 (z) ∂φ1 (z) ∂φ1 (z)
∂z1 ∂z2
... ∂zn
∂ (Lf φ1 (z)) ∂ (Lf φ1 (z)) ∂ (Lf φ1 (z))
∂z1 ∂z2
... ∂zn
.. .. .. ..
. . . .
ρ −1 ρ −1 ρ1 −1
∂ (Lf1 φ1 (z)) ∂ (Lf1 φ1 (z)) ∂ (Lf φ1 (z))
∂z1 ∂z2
... ∂zn
∂T (z)
.. .. .. ..
∂z
=
. . . .
(2.68)
∂φm (z) ∂φm (z) ∂φm (z)
∂z1 ∂z2
... ∂zn
∂ (Lf φm (z)) ∂ (Lf φm (z)) ∂ (Lf φm (z))
∂z1 ∂z2
... ∂zn
.. .. ... ..
. . .
∂ (Lρfm −1 φm (z)) ∂ (Lρfm −1 φm (z)) ∂ (Lρfm −1 φm (z))
∂z1 ∂z2
... ∂zn
then the given MIMO affine nonlinear system with smooth enough f (z) and gi (z) is exactly
feedback linearizable in the neighborhood of z ∗ . This is summarized in [29] in the following
lemma
35
is exactly feedback linearizable around z ∗ if there exist m output functions φ1 (z) , φ2 (z) , . . . , φm (z)
such that (2.70) has a vector relative degree ρ = {ρ1 , ρ2 , . . . , ρm−1 , ρm } in which ρ1 + ρ2 +
. . . + ρm−1 + ρm = ρ = n where n is the order of the system. ♦
In the same way as SISO systems, if one can solve the set of partial differential equations
(2.65), then it might be possible to find the set of output functions φ1 (z) , φ2 (z) , . . . , φm (z)
that guarantee the non-singularity of the matrices (2.67) and (2.68). However, what con-
ditions guarantee the existence of φi in case of MIMO systems. Neglecting the proof, the
dissertation presents those conditions in the next theorem as explained in Isidori’s [36].
Theorem 2.3 If G (z) has rank m at z ∗ , then MIMO affine nonlinear system of the form
(2.70)
żn = f (z) + G (z) U
is exactly feedback linearizable in the neighborhood of z ∗ if and only if for the distribution:
Another useful study that provides an algorithm to explicitly compute the transformation
mapping is presented in [49].
36
3 Common Nonlinear Control Methods
37
3.1 Input-Output Feedback Linearization for SISO Systems
When a controller is designed for a certain nonlinear system, states are all assumed
to be measured and available for the design of control law. However, this is not always
the case in practice, and instead, in most cases only the output of the system is available.
Input-output feedback linearization can be used to create a relation between the system’s
input and output and design a feedback control law that cancels the system’s nonlinearities.
To explain this approach, the system given in (2.15) as
ż = f (z) + g (z) u
y = h (z)
If this is achievable, then it is possible to coordinate transform the system into its normal
form through the diffeomorphism
T (z) h (z)
1
T2 (z) Lf h (z)
.. ..
.
.
Tρ−1 (z)
Lρ−2
f h (z)
Lρ−1
x Tρ (z)
f h (z)
. . . = T (z) =
....... = ......... , x ∈ Rρ and q ∈ Rn−ρ (3.3)
q T (z)
ρ+1
Tρ+1 (z)
Tρ+2 (z) Tρ+2 (z)
.. ..
.
.
Tn−1 (z) Tn−1 (z)
Tn (z) Tn (z)
38
such that, when differentiating the first element in (3.3), one will obtain
If ρ > 1, then from the analysis of a relative degree for SISO systems and definition 2.5 it is
known that
Lg h (z) = 0 (3.5)
Continuing doing the same for the next ρ − 2 elements in (3.3) results in
ẋ3 = x4
..
.
(3.10)
ẋρ−1 = xρ
ẋρ = Lρf h (z) + Lg Lρ−1
f h (z) u
Also, the elements Tρ+1 , Tρ+2 , . . . , Tn−1 , Tn can be found such that
∂Tρ+i
g (z) = Lg Tρ+i (z) = 0, i = 1, 2, . . . , n − ρ. (3.11)
∂z
39
Thus, for the last n − ρ in (3.3)
dTρ+1 (z) ∂Tρ+1 (z) dz
q̇ρ+1 = = ·
dt ∂z dt
∂Tρ+1 (z) (3.12)
= [f (z) + g (z) u]
∂z
= Lf Tρ+1 (z) + Lg Tρ+1 (z) u
Similarly,
dTρ+2 (z) ∂Tρ+2 (z) dz
q̇ρ+2 = = ·
dt ∂z dt
∂Tρ+2 (z) (3.14)
= [f (z) + g (z) u]
∂z
= Lf Tρ+2 (z) + Lg Tρ+2 (z) u
Lg Tρ+2 (z) = 0
Continuing doing the same for the rest of the elements in (3.3) yields
40
that linearizes xρ can stabilize the external input-output dynamics hence the whole system
can be stabilized such that
v = −k1 x1 − k2 x2 . . . − kρ xρ (3.18)
where linear optimal control design with quadratic performance index [50] can be
used to design k1 , k2 , . . . , kρ such that A − Bk is stable. However, if the system’s internal
dynamics are unstable, the system is called a non-minimum-phase system and it would
be useless to input-output feedback linearize it because the system’s internal dynamics are
not observable. From the previous analysis, the transformation of the SISO affine nonlinear
system into its normal form can be summarized in the following theorem as explained in [10]
and [36].
Theorem 3.1 If a SISO affine nonlinear system of the general form (2.15)
ż = f (z) + g (z) u
y = h (z)
is input-output linearizable and has a relative degree ρ < n, then one can choose the diffeo-
morphism
T1 (z) h (z)
T2 (z) Lf h (z)
.. ..
.
.
Tρ−1 (z)
Lρ−2
f h (z)
Lρ−1
x
Tρ (z)
f h (z)
. . . = T (z) = ....... = ......... , x ∈ Rρ and q ∈ Rn−ρ
q
Tρ+1 (z)
Tρ+1 (z)
Tρ+2 (z)
Tρ+2 (z)
.. ..
.
.
Tn−1 (z)
Tn−1 (z)
Tn (z) Tn (z)
(3.19)
where
∂Tρ+i
g (z) = Lg Tρ+i (z) = 0, i = 1, 2, . . . , n − ρ. (3.20)
∂z
41
to put the system in the following normal form.
ẋ1 = x2
ẋ2 = x3
External dynamics ..
.
ẋ = Lρ h (T −1 (x, q)) + L Lρ−1 h (T −1 (x, q)) u.
(3.21)
ρ f g f
n
Internal dynamics q̇ρ+i = Lf Tρ+i (T −1 (x, q)) , i = 1, 2, . . . , n − ρ.
n
Output y = h (T −1 (x, q))
v = −k1 x1 − k2 x2 . . . − kρ xρ ♦ (3.23)
On the other hand, if the system (2.15) is of a relative degree ρ that equals the order n of
the system (ρ = n), then there will be no internal dynamics and the system is by default
minimum-phase and the transformation matrix according to the proof below will turn
out to be
T1 (z) h (z)
T (z) L h (z)
2 f
h i T (z) L2 h (z)
3 f
x = T (z) = = , x ∈ Rn (3.24)
.
.. ..
.
n−2
Tn−1 (z) Lf h (z)
Tn (z) Lfn−1 h (z)
Proof 3.1
When the system’s relative degree ρ equals the system’s order n, then the successive deriva-
tive of h (z) the output function of the system is obtained as follows
y = h (z)
y (1) = Lf h (z) + Lg L0f h (z) u
42
y (2) = L2f h (z) + Lg Lf h (z) u
y (3) = L3f h (z) + Lg L2f h (z) u (3.25)
..
.
y (n−1) = Lfn−1 h (z) + Lg Ln−2
f h (z) u
y (n) = Lnf h (z) + Lg Ln−1
f h (z) u
As ρ = n, then in imitation of relative degree analysis for SISO affine nonlinear system and
definition 2.5, one can say that
y = h (z)
y (1) = Lf h (z)
y (2) = L2f h (z)
y (3) = L3f h (z) (3.27)
..
.
y (n−1) = Ln−1
f h (z)
y (n) = Lnf h (z) + Lg Ln−1
f h (z) u
Let
y = x1
y (1) = x2
y (2) = x3
.. (3.28)
.
y (n−2) = xn−1
y (n−1) = xn
This yields
ẋ1 = y (1) = x2
43
ẋ2 = y (2) = x3
..
. (3.29)
ẋn−1 = y (n−1) = xn
ẋn = y (n)
ẋ1 = x2
ẋ2 = x3
..
.
(3.30)
ẋn−1 = xn
ẋn = Lnf h T −1 (x) + Lg Ln−1 h T −1 (x) u
f
y = h T −1 (x) = x1
It is clear now that equations ẋ1 to ẋn−1 are linear and the only nonlinear one is ẋn that can
be linearized by
1 n −1
u= −Lf h T (x) + v (3.31)
Lg Ln−1
f h (T −1 (x))
where
v = −k1 x1 − k2 x2 . . . − kn xn (3.32)
Again, linear optimal control design with quadratic performance index [50] can be used to
design k1 , k2 , . . . , kn such that A − Bk is stable.
Example 3.1
44
It was explained earlier that this system is of a relative degree ρ = 2 in R3 and hence to
find a diffeomorphism that coordinate transform the system into its normal form, one would
have external dynamics with x ∈ R2 and internal dynamics with q ∈ R1 such that
x1 T1 (z)
x Tρ (z)
2
= T (z) =
.. .......
q1 Tρ+1 (z)
(3.34)
T1 (z) h (z) z2
T (z) L h (z) z +z
2 f 1 3
= = =
..... ....... ......
T3 (z) T3 (z) T3 (z)
∂T3
g (z) = 0
∂z
5
0 ⇒ 5 × ∂T3 = 0
h i
⇒ ∂T3 ∂T3 ∂T3
∂z1 ∂z2 ∂z3 ∂z1
0
This means that T3 is independent of z1 , that is to say that T3 = T3 (z2 , z3 ). One can try
T3 = z3 . This yields
x1 T1 (z) z2
x T (z) z +z
2 2 1 3
= = (3.35)
... ..... ......
q1 T3 (z) z3
∂T (z)
whose Jacobian matrix ∂z
is easily found non-singular and thus its inverse can by some
algebra be obtained as
z1 x2 − q 1
z x
2 1
T −1 (x, q) = = (3.36)
... ......
z3 q1
45
Therefore, (3.35) according to definition 2.1 is a diffeomorphism. Taking its derivative with
respect to time
ẋ1 = ż2
= z1 + z3
= x2 − q 1 + q 1
= x2
ẋ2 = ż1 + ż3
= z22 + 5u − z1 z2 + z1
= x21 + 5u − (x2 − q1 ) x1 + x2 − q1
q̇1 = ż3
= −z1 z2 + z1
= (−x2 + q1 ) x1 + x2 − q1
Looking at the system’s internal dynamics and setting x = 0 to examine the zero dynamics
stability yields
q̇1 = (0 + q1 ) 0 + 0 − q1
= −q1
Thus, q1∗ is exponentially stable and in this case, the following controller can be implemented
1
(x2 − q1 ) x1 − x2 + q1 − x21 − k1 x1 − k2 x2 ,
u= k1 , k2 > 0 (3.38)
5
This results in x1 → 0, x2 → 0 and q1 → 0 and also u is bounded. M
46
3.2 Input-Output Feedback Linearization for MIMO Systems
ρ = {ρ1 , ρ2 , . . . , ρm−1 , ρm }
such that
ρ1 + ρ2 + . . . + ρm−1 + ρm = ρ
then (2.50), (2.51) and (2.52) are true and at this point, one can write the input-output
equation
(ρ1 )
y1 Lρf1 h1 (z) Lg1 Lρf1 −1 h1 (z) Lg2 Lρf1 −1 h1 (z) ... Lgm Lρf1 −1 h1 (z) u1
y (ρ2 ) Lρf2 h2 (z) L Lρ2 −1 h (z) L Lρ2 −1 h (z) . . . L Lρ2 −1 h (z) u
2 g1 f 2 g2 f 2 gm f 2 2
..
= ..
+ .. .. .. .. .
..
. . . . . .
(ρm−1 ) ρm−1 ρ m −2 ρ m −2 ρ m −2
ym−1 L
f hm−1 (z)
Lg1 L hm (z) Lg2 Lf hm (z) . . . Lgm Lf hm (z) um−1
f
(ρ ) ρm −1 ρm −1 ρm −1
ym m Lρfm hm (z) Lg1 Lf hm (z) Lg2 Lf hm (z) . . . Lgm Lf hm (z) um
(3.39)
which in a short form is re-written as
This is known as a static case. However, if B−1 (z) doesn’t exist, then it might be possible
to make it work by using the dynamic feedback linearization [51]. Furthermore, if a system
47
of the form (2.38) is input-output linearizable and has a vector relative degree ρ < n, then
it is possible to transform it into its normal form using the diffeomorphism
x1,1 T1,1 (z) h1 (z)
x1,2
T1,2 (z)
Lf h1 (z)
x1,3
T1,3 (z)
L2f h1 (z)
.. .. ..
.
.
.
Lρf1 −2 h1 (z)
x1,ρ1 −1
T1,ρ1 −1 (z)
x1,ρ1 T1,ρ1 (z) Lρf1 −1 h1 (z)
...
...
...
x2,1
T2,1 (z)
h2 (z)
x2,2
T2,2 (z)
Lf h2 (z)
x2,3 T2,3 (z) L2f h2 (z)
.. .. ..
. . .
x2,ρ2 −1
T2,ρ2 −1 (z)
Lρf2 −2 h2 (z)
Lρf2 −1 h2 (z)
x2,ρ2
T2,ρ2 (z)
... ... ...
.. .. ..
. = T (z) =
. =
. ,
x ∈ Rρ and q ∈ Rn−ρ (3.42)
... ... ...
xm,1
Tm,1 (z)
hm (z)
xm,2
Tm,2 (z)
Lf hm (z)
L2f hm (z)
xm,3 Tm,3 (z)
.. .. ..
. . .
xm,ρm −1 Tm,ρm −1 (z) Lρfm −2 hm (z)
xm,ρm
Tm,ρm (z)
Lρfm −1 hm (z)
.......
..........
............
qρ+1 Tρ+1 (z) Tρ+1 (z)
qρ+2 Tρ+2 (z) Tρ+2 (z)
qρ+3
Tρ+3 (z)
Tρ+3 (z)
.. .. ..
.
.
.
qn−1
Tn−1 (z)
Tn−1 (z)
qn Tn (z) Tn (z)
such that, when differentiating the first element in (3.42), one would obtain
48
If ρ1 > 1, then from the analysis of a relative degree for MIMO systems and definition 2.6,
it is known that
Lg1 h1 (z) = Lg2 h1 (z) = . . . = Lgm h1 (z) = 0 (3.44)
Continuing doing the same for the next ρ1 − 2 elements in (3.42) results in
ẋ1,3 = x1,4
..
.
ẋ1,ρ1 −1 = x1,ρ1
ẋ1,ρ1 = Lρf1 h1 (z) + Lg1 Lρf1 −1 h1 (z) u1 + Lg2 Lρf1 −1 h1 (z) u2 + . . . + Lgm Lρf1 −1 h1 (z) um
(3.49)
where according to definition 2.6 at least one element is not zero in the row vector
h i
g1 Lρf1 −1 h1 (z) g2 Lρf1 −1 h1 (z) . . . gm Lρf1 −1 h1 (z)
ẋ2,1 = x2,2
ẋ2,2 = x2,3
ẋ2,3 = x2,4
49
..
.
ẋ2,ρ2 −1 = x2,ρ2
ẋ2,ρ2 = Lρf2 h2 (z) + Lg1 Lρf2 −1 h2 (z) u1 + Lg2 Lρf2 −1 h2 (z) u2 + . . . + Lgm Lρf2 −1 h2 (z) um
...
..
.
...
ẋm,1 = xm,2
ẋm,2 = xm,3
ẋm,3 = xm,4
..
.
ẋm,ρm −1 = xm,ρm
ẋm,ρm = Lρfm hm (z) + Lg1 Lρfm −1 hm (z) u1 + Lg2 Lρfm −1 hm (z) u2 + . . . + Lgm Lρfm −1 hm (z) um
(3.50)
Furthermore, it’s proved in [36] that if the vector fields set {g1 (z) , g2 (z) , . . . , gm (z)} is
involutive, then Tρ+1 , Tρ+2 , . . . , Tn−1 , Tn can be found such that
∂Tρ+i
gj (z) = Lgj Tρ+i (z) = 0, i = 1, 2, . . . , n − ρ for every j = 1, 2, . . . , m. (3.51)
∂z
Thus, for the last n − ρ in (3.42)
50
Similarly,
dTρ+2 (z) ∂Tρ+2 (z) dz
q̇ρ+2 = = ·
dt ∂z dt
∂Tρ+2 (z)
= [f (z) + g1 (z) u1 + g2 (z) u2 + . . . + gm (z) um ]
∂z
= Lf Tρ+2 (z) + Lg1 Tρ+2 (z) u1 + Lg2 Tρ+2 (z) u2 + . . . + Lgm Tρ+2 (z) um
(3.54)
Continuing doing the same for the rest of the elements in (3.42) yields
It is worth noting here that the condition of involutivity to find the last n − ρ elements in
the transformation matrix was not mentioned in the case of the SISO system because it has
just one vector g (z) and thus the condition is always satisfied. From the previous analysis,
it’s clear that the system is transformed into two parts known as external dynamics x and
internal dynamics q exactly like what has been done in the SISO system transformation. It
is also clear from (3.45), (3.48), (3.49) and (3.50) that xi,j where j = 1, 2, . . . , ρi−1 for every
i = 1, 2, . . . , m are all linear and only xi,ρi is nonlinear. Thus, one can write the equation
ẋ1,ρ1 Lρf1 h1 (z) Lg1 Lρf1 −1 h1 (z) Lg2 Lρf1 −1 h1 (z) ... Lgm Lρf1 −1 h1 (z) u1
ẋ Lρ2 h (z) L Lρ2 −1 h (z) L Lρ2 −1 h (z) . . . L Lρ2 −1 h (z) u2
2,ρ2 f 2 g1 f 2 g2 f 2 gm f 2
+ Lg Lρ3 −1 h3 (z) Lg Lρ3 −1 h3 (z) . . . Lg Lρ3 −1 h3 (z)
ρ3
ẋ3,ρ = L h3 (z) u3
3 f 1 f 2 f m f
. .. .. .. .. .. ..
..
.
. . . .
.
ρm ρm −1 ρm −1 ρm −1
ẋm,ρm Lf hm (z) Lg1 Lf hm (z) Lg2 Lf hm (z) . . . Lgm Lf hm (z) um
(3.57)
which in a short form is re-written as
x = A (z) + B (z) u
ẋ (3.58)
51
Accordingly, if B (z) is non-singular, then (3.58) can be linearized by
where
v1 −k1,1 x1,1 − k1,2 x1,2 − . . . − k1,ρ1 x1,ρ1
v2 −k2,1 x2,1 − k2,2 x2,2 − . . . − k2,ρ2 x2,ρ2
v=
.. =
..
(3.60)
.
.
vm −km,1 xm,1 − km,2 xm,2 − . . . − km,ρm xm,ρm
and k1,1 , . . . , k1,ρ1 , k2,1 , . . . , k2,ρ2 , . . . , km,1 , . . . , km,ρm is designed such that A − Bk is stable.
From the previous analysis the coordinate transformation of MIMO affine nonlinear system
into its normal form can be summarized in the following theorem as explained in [29] and [36].
52
where if {g1 (z) , g2 (z) , . . . , gm (z)} is involutive, then Tρ+1 , Tρ+2 , . . . , Tn−1 , Tn can be found
such that
∂Tρ+i
gj (z) = Lgj Tρ+i (z) = 0, i = 1, 2, . . . , n − ρ for every j = 1, 2, . . . , m. (3.62)
∂z
to put the system in the normal form
ẋ1,1 = x1,2
ẋ1,2 = x1,3
..
.
ẋ1,ρ1 = Lρf1 h1 T −1 (x, q) + Lg1 Lρf1 −1 h1 T −1 (x, q) u1 + . . . + Lgm Lρfm −1 h1 T −1 (x, q) um
...
..
.
...
ẋm,1 = xm,2
ẋm,2 = xm,3
.. (3.63)
.
ẋm,ρm = Lρfm hm T −1 (x, q) + Lg1 Lρfm −1 hm T −1 (x, q) u1 + . . . + Lgm Lρfm −1 hm T −1 (x, q) um
..
.
q̇n = Lf Tn T −1 (x, q)
y1 = h1 T −1 (x, q)
..
.
ym = hm T −1 (x, q)
such that
Lρf1 h1 (T −1 (x, q)) Lg1 Lρf1 −1 h1 (T −1 (x, q)) Lg2 Lρf1 −1 h1 (T −1 (x, q)) ... Lgm Lρf1 −1 h1 (T −1 (x, q))
ρ
L 2 h (T −1 (x, q)) L Lρ2 −1 h (T −1 (x, q)) L Lρ2 −1 h (T −1 (x, q)) . . . L Lρ2 −1 h (T −1 (x, q))
f 2 g1 f 2 g2 f 2 gm f 2
A= B=
.. .. .. .. ..
.
. . . .
ρm ρm −1 ρm −1 ρm −1
Lf hm (T −1 (x, q)) Lg1 Lf −1
hm (T (x, q)) Lg2 Lf −1
hm (T (x, q)) . . . Lgm Lf hm (T −1 (x, q))
53
and
v1 −k1,1 x1,1 − k1,2 x1,2 − . . . − k1,ρ1 x1,ρ1
v2 −k2,1 x2,1 − k2,2 x2,2 − . . . − k2,ρ2 x2,ρ2
v= = ♦ (3.65)
.. ..
.
.
vm −km,1 xm,1 − km,2 xm,2 − . . . − km,ρm xm,ρm
On the other hand, if the system (2.38) is of a vector relative degree
ρ = {ρ1 , ρ3 , . . . , ρm−1 , ρm }
such that
ρ1 + ρ2 + . . . + ρm−1 + ρm = ρ = n
where n is the order of the system, then there will be no internal dynamics and the trans-
formation matrix (3.42) turns out to be
x1,1 T1,1 (z) h1 (z)
x1,2 T1,2 (z) Lf h1 (z)
L2f h1 (z)
x1,3 T1,3 (z)
.. .. ..
.
.
.
x1,ρ1 −1 T1,ρ1 −1 (z) Lρf1 −2 h1 (z)
x
1,ρ1
T (z)
1,ρ1
Lρf1 −1 h1 (z)
... ... ...
x2,1 T2,1 (z) h2 (z)
x2,2 T2,2 (z) Lf h2 (z)
x
2,3
T (z)
2,3
L2f h2 (z)
.. .. ..
. . .
= T (z) = = , x ∈ Rn (3.66)
Lρf2 −2 h2
x2,ρ −1 T2,ρ −1 (z) (z)
2 2
Lρf2 −1 h2
x2,ρ2 T2,ρ2 (z) (z)
... ... ...
.. .. ..
. . .
... ... ...
xm,1 Tm,1 (z) hm (z)
xm,2 Tm,2 (z) Lf hm (z)
xm,3 Tm,3 (z) L2f hm (z)
.. .. ..
. . .
x
m,ρm −1
T
m,ρm −1 (z)
Lρfm −2 hm (z)
xm,ρm Tm,ρm (z) Lρfm −1 hm (z)
54
Thus, MIMO affine nonlinear system of the general form (3.38) and a vector relative degree
ρ = n in its normal form will be
ẋ1,1 = x1,2
ẋ1,2 = x1,3
ẋ1,3 = x1,4
..
.
ẋ1,ρ1 −1 = x1,ρ1
ẋ1,ρ1 = Lρf1 h1 (z) + Lg1 Lρf1 −1 h1 (z) u1 + Lg2 Lρf1 −1 h1 (z) u2 + . . . + Lgm Lρf1 −1 h1 (z) um
...
ẋ2,1 = x2,2
ẋ2,2 = x2,3
ẋ2,3 = x2,4
..
.
ẋ2,ρ2 −1 = x2,ρ2
ẋ2,ρ2 = Lρf2 h2 (z) + Lg1 Lρf2 −1 h2 (z) u1 + Lg2 Lρf2 −1 h2 (z) u2 + . . . + Lgm Lρf2 −1 h2 (z) um
...
..
.
...
ẋm,1 = xm,2
ẋm,2 = xm,3
ẋm,3 = xm,4
..
.
ẋm,ρm −1 = xm,ρm
ẋm,ρm = Lρfm hm (z) + Lg1 Lρfm −1 hm (z) u1 + Lg2 Lρfm −1 hm (z) u2 + . . . + Lgm Lρfm −1 hm (z) um
y1 = h1 (z)
y2 = h2 (z)
..
.
ym = hm (z)
(3.67)
55
3.3 Input-State Feedback Linearization for SISO Systems
ż = f (z) + g (z) u
is a diffeomorphism, then (2.15) can be transformed into the following controllable canonical
form:
ẋ1 = x2
ẋ2 = x3
.. (3.68)
.
ẋn−1 = xn
ẋn = v
This is equivalent to (3.30) that results from input-output feedback linearization when ρ = n
where
v = Lnf h T −1 (x) + Lg Lfn−1 h T −1 (x) u
(3.69)
56
The question is how to find the transformation matrix (2.16). Obviously, (3.68) in a matrix
form is re-written as
ẋ1 0 1 0 ... 0 x1 0
ẋ 0 0 1 ...
x 0 0
2 2
. .. .. .. . .
. .. ..
.. = ..
. . . . . + . [α (x) + β (x) u] (3.72)
ẋn−1 0 0 0 ... 1
xn−1 0
ẋn 0 0 0 ... 0 xn 1
by considering (2.16) and equating (2.17) and (3.73), one can get:
∂T
f (z) = Ax + Bα (x)
∂z
0 1 0 ... 0 T (z) 0
1
0 0 1 ... 0 T (z)
2 0
.. .. .. . . .. .
..
..
=
. . . . .
+
. α (x)
0 0 0 ... 1 Tn−1 (z)
0
0 0 0 ... 0 Tn (z) 1
(3.74)
T2 (z) 0 T2 (z)
T (z) 0 T (z)
3 3
.
..
.
+ ..
.
..
=
=
Tn−1 (z) 0 Tn−1 (z)
0 α (x) α (x)
57
From the previous analysis, one can conclude that T (z) should satisfy:
∂Ti
g (z) = 0 , i = 1, . . . , n − 1. (3.76)
∂z
∂Tn
g (z) = β (x) 6= 0. (3.77)
∂z
such that:
∂Ti
Ti+1 = f (z) i = 1, . . . , n − 1. (3.78)
∂z
and then:
∂Tn ∂Tn
f T −1 (x) .
α (x) = f (z) = (3.79)
∂z ∂z
∂Tn ∂Tn
g T −1 (x) .
β (x) = g (z) = (3.80)
∂z ∂z
Example 3.2
where
sin (z1 + z3 ) + |z2 − z32 | 2
f (z) =
2z1 z3 + z3
, g (z) =
0
z1 0
It was proved in example 2.7 that this system is feedback linearizable. In this example sta-
bilizing its states through the input-state feedback linearization will be explained. However,
this system is not in its controllable canonical form. Therefore, to transform it into the
controllable canonical form, one has first to use the conditions (3.76) through (3.78) and
then apply feedback linearization. To put the system in the controllable canonical form, one
needs to find x = T (z) that satisfies:
∂T1 ∂T1
1. ∂z
g (z) = 0 4. T2 = ∂z
f (z)
∂T2 ∂T2
2. ∂z
g (z) = 0 5. T3 = ∂z
f (z)
∂T3
3. ∂z
g (z) 6= 0
Starting with writing out all conditions in more details:
58
2
∂T1 h
∂T1 ∂T1 ∂T1 0 = 2 ∂T1 = 0
i
1. g (z) = ∂z1 ∂z2 ∂z3
⇒ T1 = T1 (z2 , z3 )
∂z ∂z1
0
∂T2 i 2
0 = 2 ∂T2 = 0
h
2. g (z) = ∂T2 ∂T2 ∂T2 ⇒ T2 = T2 (z2 , z3 )
∂z ∂z1 ∂z2 ∂z3 ∂z1
0
∂T3 i 2
0 = 2 ∂T3 6= 0
h
3. g (z) = ∂T3 ∂T3 ∂T3
∂z ∂z1 ∂z2 ∂z3 ∂z1
0
2
h i sin (z1 + z3 ) + |z2 − z3 |
∂T1 ∂T1 ∂T1 ∂T1
4. T2 = ∂z
f (z) = ∂z1 ∂z2 ∂z3
2z1 z3 + z3
z1
∂T1
From condition 1, it is known that ∂z1
= 0. Hence:
∂T1 ∂T1
T2 = (2z1 z3 + z3 ) + z1
∂z2 ∂z3
2
h i sin (z1 + z3 ) + |z2 − z3 |
∂T2 ∂T2 ∂T2 ∂T2
5. T3 = ∂z
f (z) = ∂z1 ∂z2 ∂z3
2z1 z3 + z3
z1
∂T2
From condition 2, it is known that ∂z1
= 0. Hence:
∂T2 ∂T2
T3 = (2z1 z3 + z3 ) + z1
∂z2 ∂z3
From condition 3, one can try T3 = z1 . Hence:
∂T3
g (z) = 2 6= 0.
∂z1
So, condition 3 is satisfied. Substituting T3 in condition 5 results in:
∂T2 ∂T2
z1 = (2z1 z3 + z3 ) + z1
∂z2 ∂z3
∂T2 ∂T2
If one lets T2 = z3 , then ∂z2
= 0 and ∂z3
= 1 and hence:
59
Then, condition 5 as well as condition 2 are satisfied. Substituting T2 in condition 4 yields:
∂T1 ∂T1
z3 = (2z1 z3 + z3 ) + z1
∂z2 ∂z3
∂T1 ∂T1
The only way to make both sides of this equation equal is to make ∂z2
= 1 and ∂z3
= −2z3 .
This will result in:
T1 = z2 − z32
and hence condition 4 will turn out to be:
z3 = (1) (2z1 z3 + z3 ) + (−2z3 ) z1
= 2z1 z3 + z3 − 2z1 z3 = z3
Hence, condition 4 as well as condition 1 are satisfied. From the previous analysis, one can
deduce that:
x1 T1 (z) z2 − z32
x = T (z) ⇒
x2 = T2 (z) = z3
(3.81)
x3 T3 (z) z1
∂T (z)
whose Jacobian matrix ∂z
is non-singular and hence its inverse can easily be obtained as:
z1 T1−1 (x) x3
z = T −1 (x) ⇒
−1 = x1 + x2
z2 = T2 (x) 2 (3.82)
z3 T3−1 (x) x2
According to definition 2.1, T (z) is a diffeomorphism. To verify this work, one can consider
the transformation matrix (3.81) and find the derivative in time for each row element.
60
Thus, it can be linearized via the state feedback
1
u= [−α (x) + v]
β (x)
(3.84)
1
= [− sin (x2 + x3 ) − |x1 | + v]
2
to obtain the linear state equation
ẋ = Ax + Bv
ẋ1 0 1 0 x1 0
(3.85)
ẋ2 = 0 0 1 x2 + 0 v
ẋ3 0 0 0 x3 1
Linear optimal control design with quadratic performance index [50] can be used to design
h ih iT
v = − k1 k2 k3 x1 x2 x3 such that A − Bk is stable. So, the overall state
feedback is:
1
u (x, v) = [− sin (x2 + x3 ) − |x1 | − k1 x1 − k2 x2 − k3 x3 ] (3.86)
2
In terms of the original states z1 , z2 , and z3 , this controller is corresponding to the original
input:
1
− sin (z3 + z1 ) − |z2 − z32 | − k1 z2 − z32 − k2 z3 − k3 z1 M
u (z, v) = (3.87)
2
Fig. 3.1 shows the block diagram representing the closed-loop system with input-state lin-
earization in the inner-loop and dynamic stabilization in the outer-loop.
𝑧∗ - 𝑣 = −𝑘 𝑇 𝑧 𝑢(𝑧, 𝑣) 𝑧 = 𝑓 𝑧 + 𝑔(𝑧) 𝑧
𝑥
𝑥 = 𝑇(𝑧)
𝑺𝒕𝒂𝒃𝒊𝒍𝒊𝒛𝒂𝒕𝒊𝒐𝒏 𝒍𝒐𝒐𝒑
61
Another easier approach to find the transformation matrix and get the system in its control-
lable canonical form known as Brunovsky normal form is to find the output function φ (z)
that is the solution to the partial differential equations set
h ih i
∂φ(z) ∂φ(z) ∂φ(z)
∂z1 ∂z2
... ∂zn
g (z) adf g (z) . . .adfn−2 g (z) =0 (3.88a)
h i
∂φ(z)
∂z1
∂φ(z)
∂z2
. . . ∂φ(z)
∂zn
adn−1
f g 6= 0 (3.88b)
Substituting for g (z), adf g (z) and adfn−1 g from (2.64) yields
h i 2 −2 cos z1 cos z3 + 2 sin z1 sin z3
∂φ(z) ∂φ(z) ∂φ(z)
0 −4z3 =0 (3.90a)
∂z1 ∂z2 ∂z3
0 −2
h i α−β
∂φ(z) ∂φ(z) ∂φ(z)
6 0
(2 cos z1 cos z3 − 2 sin z1 sin z3 ) 2z3 + 2 = (3.90b)
∂z1 ∂z2 ∂z3
2 cos z1 cos z3 − 2 sin z1 sin z3
Hence, from (3.90a), the following set of partial differential equations is obtained
∂φ (z)
2 =0 (3.91)
∂z1
∂φ (z) ∂φ (z) ∂φ (z)
(−2 cos z1 cos z3 + 2 sin z1 sin z3 ) − 4 z3 − 2 =0 (3.92)
∂z1 ∂z2 ∂z3
from which it is easy to find the output function candidate as
62
Hence, it is a valid output function and the transformation matrix can be obtained as
x1 h (z)
x2 = Lf h (z) (3.95)
x3 L2f h (z)
where
sin (z1 + z3 ) + |z2 − z32 |
∂h (z) h
∂h(z) ∂h(z) ∂h(z)
i
Lf h (z) = f (z) = ∂z1 ∂z2 ∂z3
2z1 z3 + z3
∂z
z1
(3.96)
h i sin (z1 + z3 ) + |z2 − z32 |
= 0 1 −2z3
2z1 z3 + z3 = z3
z1
sin (z1 + z3 ) + |z2 − z32 |
∂ (Lf h (z)) h i
f (z) = ∂ (Lf h(z)) ∂ (Lf h(z)) ∂ (Lf h(z))
L2f h (z) = 2z1 z3 + z3
∂z ∂z1 ∂z2 ∂z3
z1
2
h i sin (z1 + z3 ) + |z2 − z3 |
= 0 0 1 2z1 z3 + z3 = z1
z1
(3.97)
This results in the following transformation matrix
x1 h (z) z2 − 2z32
x2 = Lf h (z) = z3 (3.98)
x3 L2f h (z) z1
which is equivalent to the diffeomorphism (3.81) found in the first approach. Similar to what
has been done in the first approach, one can get z = T −1 (x) and then easily put the system
in its Brunovsky normal form and design the control function. M
A more detailed algorithm to find the output function φ (z) to transform the SISO nonlinear
system of the form (2.15) into its Brunovsky normal form without solving partial differential
equation (3.88) is explained in [29].
63
3.4 Input-State Feedback Linearization for MIMO Systems
64
is a diffeomorphism, such that (3.99) can be coordinate transformed into the following con-
trollable canonical form:
ẋ1,1 = x1,2
ẋ1,2 = x1,3
ẋ1,3 = x1,4
..
.
ẋ1,ρ1 −1 = x1,ρ1
ẋ1,ρ1 = v1
...
ẋ2,1 = x2,2
ẋ2,2 = x2,3
ẋ2,3 = x2,4
..
.
(3.101)
ẋ2,ρ2 −1 = x2,ρ2
ẋ2,ρ2 = v2
...
..
.
...
ẋm,1 = xm,2
ẋm,2 = xm,3
ẋm,3 = xm,4
..
.
ẋm,ρm −1 = xm,ρm
ẋm,ρm = vm
The form (3.101) is equivalent to that in (3.67) which results from input-output feedback
linearization when ρ = n where
v1 Lρf1 h1 (z) Lg1 Lρf1 −1 h1 (z) Lg2 Lρf1 −1 h1 (z) ... Lgm Lρf1 −1 h1 (z) u1
ρ
v2 L 2 h (z) L Lρ2 −1 h (z) L Lρ2 −1 h (z) . . . L Lρ2 −1 h (z) u2
f 2 g1 f 2 g2 f 2 gm f 2
= +
.. .. .. .. .. .. ..
.
.
. . . .
.
ρm ρm −1 ρm −1 ρm −1
vm Lf hm (z) Lg1 Lf hm (z) Lg2 Lf hm (z) . . . Lgm Lf hm (z) um
m×1 m×1 m×m m×1
(3.102)
65
Equation (3.102) is written in a short form as
in which
α1 (x) β11 (x) β12 (x) . . . β1m (x)
α (x) β (x) β (x) . . . β (x)
2 21 22 2m
α (x) = β (x) =
.. .
.. .
.. .
.. ..
.
.
αm (x) βm1 (x) βm2 (x) . . . βmm (x)
m×1 m×m
The question is how to find the state transformation matrix (3.100). Obviously, (3.101) in a
matrix form can be re-written as
ẋ1,1 0 1 0 ... 0 x1,1 0
ẋ1,2 0 0 1 ... 0 x1,2 0
ẋ1,3 0 0 0 ... 0 x1,3 0
..
.. .. .. . . .. 0 ... 0
..
.. 0 ... 0
. . . . . . . .
ẋ1,ρ1 −1 0 0 0 ... 1 x1,ρ1 −1 0
ẋ 0 0 0 ... 0 x 1
1,ρ1 1,ρ1
ẋ2,1 0 1 0 ... 0 x2,1 0
ẋ2,2 0 0 1 ... 0 x2,2 0
ẋ2,3
0 0 0 ... 0
x2,3
0
0 0 0 0
..
.. .. .. . . .. ...
..
.. ...
. = . . . . . . + . [α (x) + β (x) u]m×1
ẋ 0 0 0 ... 1 x 0
2,ρ2 −1 2,ρ2 −1
ẋ2,ρ 0 0 0 ... 0 x2,ρ 1
2 2
.. .. .. ..
0 0 0 0 0 0
.
.
.
.
ẋm,1 0 1 0 ... 0 xm,1 0
ẋm,2 0 0 1 ... 0 xm,2 0
ẋm,3 0 0 0 ... 0 xm,3 0
..
0 0 ... .. .. .. . . ..
..
0 0 ... ..
.
. . . . .
.
.
ẋm,ρ −1 0 0 0 ... 1 xm,ρ −1 0
m m
ẋm,ρm 0 0 0 ... 0 xm,ρm 1
n×1 n×n n×1 n×m
(3.105)
whose short form is
From (3.100),
∂T (z)
ẋ = [f (z) + G (z) U ] (3.107)
∂z
66
By equating (3.106) with (3.107), one can get:
∂T (z)
f (z) = Ax + Bα (x)
∂z
0 1 0 ... 0 T1,1 0
0 0 1 ... 0
T1,2
0
0 0 0 ... 0 T1,3 0
.. .. .. . . .. 0 ... 0
..
.. 0 ... 0
. . . . . . .
0 0 0 ... 1 T1,ρ1 −1 0
0 0 0 ... 0
T
1,ρ1
1
0 1 0 ... 0
T2,1
0
0 0 1 ... 0
T2,2
0
0 0 0 ... 0
T2,3
0
0 0 0 0
.. .. .. . . .. ...
..
.. ...
= . . . . . . + . α (x)m×1
0 0 0 ... 1
T
2,ρ2 −1
0
0 0 0 ... 0
T2,ρ
2
1
.. .. ..
0 0 0 0 0 0
.
.
.
0 1 0 ... 0
Tm,1
0
0 0 1 ... 0 Tm,2 0
0 0 0 ... 0 Tm,3 0
0 0 ... .. .. .. . . ..
..
0 0 ... ..
. . . . .
.
.
0 0 0 ... 1
Tm,ρ −1
m
0
0 0 0 ... 0 Tm,ρm 1
n×n n×1 n×m
T1,2 0 T1,2
T1,3 0 T1,3
T1,4 0 T1,4
.. .. ..
.
.
.
T1,ρ1 −1 0 T1,ρ1 −1
0 α (x)
1
α1 (x)
T2,2 0 T2,2
T2,3 0 T2,3
T2,4
0
T2,4
.. .. ..
= . + . = .
T 0 T2,ρ2 −1
2,ρ2 −1
0 α2 (x)
α2 (x)
.. .. ..
.
.
.
Tm,2 0 Tm,2
Tm,3 0 Tm,3
Tm,4 0 Tm,4
.. .. ..
.
.
.
Tm,ρ −1 0 Tm,ρm −1
m
0 αm (x) αm (x)
(3.108)
67
and can also get:
∂T (z)
G (z) = Bβ (x)
∂z
0 0 0 0
0 0 0 0
0 0 0 0
.. 0 ... 0
.. .. ... ..
. . . .
0 0 0 0
1 β β12 β1m
11
0
0
0 0
0
0
0 0
0
0 0 0
0
.. ... 0
.
.. ... ..
(3.109)
= . β (x)m×m = .. . .
0
0
0 0
1
β21
β22 β2m
.. . .. .. ..
0 0 0 ..
.
. . .
0
0
0 0
0 0 0 0
0 0 0 0
0 0
... .. .
.. .. ... ..
.
. .
0
0
0 0
1 βm1 βm2 βmm
n×m n×m
From the previous analysis, one can conclude that T (z) should satisfy:
∂Ti,j (z) h i
G (z) = 0 0 . . . 0 , i = 1, 2, . . . , m ∀ j = 1, . . . , ρi − 1. (3.110)
∂z
∂Ti,ρi (z) h i
G (z) = βi1 βi2 . . . βim , i = 1, 2, . . . , m. (3.111)
∂z
h i
where at least on element in βi1 βi2 . . . βim is not zero. Such that:
∂Ti,j
Ti,j+1 = f (z) , i = 1, 2, . . . , m ∀ j = 1, . . . , ρi − 1. (3.112)
∂z
and then:
∂Ti,ρi ∂Ti,ρi
f T −1 (x) .
αi (x) = f (z) = (3.113)
∂z ∂z
h i ∂T ∂Ti,ρi
i,ρi
G T −1 (x) .
βi1 βi2 . . . βim = G (z) = (3.114)
∂z ∂z
The analysis that has been done so far for the MIMO state feedback linearization is enough
to understand the concept. However, it may not be easy to apply the conditions (3.110)-
(3.114) to find the transformation matrix (3.100). This is going to be beyond our research
scope. The reader is referred to [29] and [36] for more step-by-step details on how to find
the transformation matrix (3.100).
68
4 Lyapunov Based Control Design
One of the most widely used methods in control theory to prove the stability of non-
linear systems besides input-output stability is the Lyapunov theorem of stability [52]. The
interest in this research is in the part of this theorem where a closed-loop system’s stability
is examined by studying the behavior of a function known as the Lyapunov function. This
function is designed mathematically to provide an easy way to measure control objectives
such that nonlinear systems stability can be tested through a scalar differential equation [13].
is considered where z ∈ Rn , and the control input u ∈ R. The goal is to derive a feedback
control function u = α (z) such that
will have equilibrium points that are globally asymptotically stable at the origin. According
to Lyapunov, to achieve this goal, one needs to find a smooth, positive definite and radially
unbounded function V (z) known as Lyapunov function such that its derivative along the
solution of (4.1) satisfies:
∂V (z)
V̇ (z) = [f (z) + g (z) α (z)] ≤ −W (z) (4.3)
∂z
where W (z) is positive definite. If a good choice of V (z) is made and (4.3) is satisfied,
then the control law α (z) results in globally asymptotically stable equilibrium points of
(4.1) [53–56].
Example 4.1
ż = −a cos z − bz 3 + cu
69
Choosing the smooth, positive definite and radially unbounded Lyapunov function
1
V (z) = z 2 (4.4)
2
and differentiating it in time yields
V̇ = z ż
(4.5)
= −az cos z − bz 4 + czu
which is negative definite. Thus, (4.6) will stabilize the equilibrium at the origin. M
If a nonlinear system has the form (4.1) with f (0) = 0 and a smooth, positive definite
and radially unbounded Lyapunov function exists, then another way to choose a stabilizing
control function is through using what so-called Sontag’s formula [57, 58].
q
2 4
∂V
f (z)+ ( ∂V f (z)) +( ∂V g(z))
− ∂z ∂z ∂z
, f or ∂V g (z) 6= 0
( ∂V
∂z
g(z)) ∂z
u = α(z) = (4.8)
, f or ∂V
0 ∂z
g (z) = 0
Example 4.2
Reconsider the scalar nonlinear system (1.1), to use Sontag’s formula (4.8) to find the
stabilizing function u, one needs first to fulfill that f (0) = 0. This can easily be done by
assuming that
1
u= (a cos z + α) (4.9)
c
Thus, the new system will be
ż = −bz 3 + α (4.10)
70
with f (z) = −bz 3 and g(z) = 1. Using the same Lyapunov function (4.4) and differentiating
it in time results in
V̇ = −bz 4 + zα (4.11)
∂V
Based on (4.4) and (4.10), ∂z
g = az 6= 0. Thus, the stabilization function can be obtained
using Sontag’s formula as follows
q 2 4
∂V ∂V ∂V
∂z
f+ ∂z
f + ∂z
g
α=− ∂V
∂z
g
q
−bz + (−bz 4 )2 + z 4
4 (4.12)
=−
z
√
= bz 3 − z b2 z 4 + 1
71
5 Backstepping Control
𝑢𝑓 𝑞 𝑧
𝑔(𝑧) +
𝑓(𝑧)
Assuming that a state feedback control function q = u1 (z) that stabilizes ż is known where
u1 (0) = 0. That is to say, there is a positive definite, radially unbounded Lyapunov function
V1 (z) so that when using u1 (z):
∂V1 (z)
V̇1 (z) = [f (z) + g (z) u1 (z)] ≤ −W (z) (5.2)
∂z
where W (z) is positive definite. Accordingly, if one can make q equals u1 (z), then the
desired behavior can be achieved. Defining the error variable
x = q − u1 (z) (5.3)
72
results in introducing the virtual control function u1 (z) as shown in Fig. 5.2. That yields:
𝑢𝑓 𝑞 𝑥 𝑧
+ 𝑔(𝑧) +
−𝑢1 (𝑧)
𝑓 𝑧 + 𝑔(𝑧)𝑢1 (𝑧)
The preceding steps will transform system (5.1) into the following system, which includes
backstepping of the virtual control function u1 (z) as shown in Fig. 5.3.
ż = f (z) + g (z) u1 (z) + g (z) x
(5.6)
ẋ = u − u̇ (z)
f 1
𝑢𝑓 𝑥 𝑧
+ 𝑔(𝑧) +
73
The augmented Lyapunov function for the system (5.6) is given by:
1
V (z, x) = V1 (z) + x2 (5.7)
2
and its derivative with respect to time along the solution of system (5.6) is computed as:
∂V (z)
V̇ (z, x) = [f (z) + g (z) u1 (z) + g (z) x] + xẋ
∂z (5.8)
∂V (z) ∂V (z) ∂V (z)
= f (z) + g (z) u1 (z) + g (z) x + xuf − xu̇1 (z)
∂z ∂z ∂z
Choosing:
∂V (z)
uf = − g (z) + u̇1 (z) − kx , k > 0 (5.9)
∂z
yields:
∂V (z)
V̇ (z, x) = [f (z) + g (z) u1 (z)] − kx2 ≤ −W (z) − kx2 (5.10)
∂z
This proves according to Lyapunov theorem of stability that (z, x) = (0, 0) is globally asymp-
totically stable and as x = q − u1 (z) and u1 (0) = 0, (z, q) = (0, 0) is globally asymptotically
stable as well.
𝑢𝑓 𝑞𝑛 𝑞3 𝑞2 𝑞1 𝑧
𝑔(𝑧) +
𝑓(𝑧)
74
Consider the system shown in Fig. 5.4 and given by the general form
ż = f (z) + g (z) q1
q̇1 = q2
q̇2 = q3
.. (5.11)
.
q̇n−1 = qn
q̇n = uf
Backstepping can be used to stabilize systems with a chain of integrators by the successive
repetition of the design procedure used for the second-order system (5.1). For more clari-
fication, deriving a control function for the following third-order system will be considered.
5.2.1 Step:1
One can start the design by considering the first subsystem consisting of equation (5.12a):
n
ż = f (z) + g (z) q1 (5.13)
Let q1 be a virtual control function and assume that there is a feedback control function
u1 (z) = q1 with u1 (0) = 0 that stabilizes (5.13). There also exist V1 (z), a corresponding
positive definite and radially unbounded Lyapunov function such that when using u1 (z):
∂V1 (z)
V̇1 (z) = [f (z) + g (z) u1 (z)] ≤ −W1 (z) (5.14)
∂z
where W1 (z) is positive definite. With this assumption, one can proceed to derive the
stabilizing function for the whole system using backstepping as follows.
5.2.2 Step:2
Consider the second subsystem consisting of the two equations (5.12a) and (5.12b):
ż = f (z) + g (z) q1
(5.15)
q̇ = q
1 2
75
Let q2 be the virtual control function and assume that there is a control function u2 (z, q1 ) =
q2 that stabilizes (5.15). Define the error parameter representing the difference between the
first virtual function q1 and the proposed control function u1 (z) as:
x1 = q1 − u1 (z) (5.16)
76
5.2.3 Step:3
It is time now to derive the control function that stabilizes the whole system. Considering
the third subsystem consisting of equations (5.12a), (5.12b) and (5.12c)
ż = f (z) + g (z) q1
q̇1 = q2 (5.24)
q̇ = u
2 f
where uf is the control input. In step:2, q2 was the virtual control function, and its pro-
posed value with Lyapunov function V2 (z, x1 ) was u2 (z, q1 ). Defining the error parameter
representing the difference between the second virtual control function q2 and the proposed
function u2 (z, q1 ) as:
x2 = q2 − u2 (z, q1 ) (5.25)
This, in turn, will change the second equation in (5.24) equivalently to:
ż = f (z) + g (z) q1
q̇1 = u2 (z, q1 ) + x2 (5.28)
ẋ2 = uf − u̇2
The augmented Lyapunov function for this system can be given by:
1
V (z, x1 , x2 ) = V2 (z, x1 ) + x22
2 (5.29)
1 2 1 2
= V1 (z) + x1 + x2
2 2
Differentiating (5.29) in time results in:
77
Substituting (5.22) in (5.30) yields:
∂V1 (z)
V̇ (z, x1 , x2 ) = [f (z) + g (z) u1 (z)] − k1 x21 + x1 x2 + x2 uf − x2 u̇2 (z, q1 ) (5.31)
∂z
To guarantee that (5.31) is negative definite, uf can be chosen to be:
which means according to Lyapunov that the origin of the third-order system (5.12) is
globally asymptotically stable with control law (5.32). For more clarification in this regard,
the following example of a third-order system is considered:
Example 5.1
ż = z 2 + q1 (5.34a)
q̇1 = q2 (5.34b)
q̇2 = uf (5.34c)
y = q1 (5.34d)
This system has a relative degree of 2 because ÿ = uf . It also has an internal dynamic with
state z. However, this internal dynamic is not stable because:
The instability of the internal system dynamic means that the equilibrium point z ∗ = 0 at
the origin is not stable and hence the system (5.34) can not be stabilized using feedback
linearization method. Fortunately, the backstepping design approach can solve this problem
in three steps.
Step:1
78
Let q1 be a virtual control function and assume that there is a feedback control function
u1 (z) = q1 that stabilizes (5.36). Also, assume a positive definite and radially unbounded
Lyapunov function is given by:
1
V1 (z) = z 2 (5.37)
2
such that when using u1 (z):
V̇1 (z) ≤ −W (z) (5.38)
where W (z) is positive definite. Taking the derivative in time of (5.37) results in:
V̇1 = z ż
= z z 2 + u1 (z)
(5.39)
= z 3 + zu1 (z)
ż = z 3 + z −z − z 2
= z3 − z2 − z3
(5.41)
= −z 2
≤ −W (z)
At this point, one can proceed to the second step towards deriving the stabilizing state
feedback law for (5.34) using backstepping approach.
Step:2
Consider the second subsystem represented by the set of equations (5.34a) and (5.34b):
ż = z 2 + q1
(5.42)
q̇ = q
1 2
x1 = q1 − u1 (z) (5.43)
79
Differentiating (5.43) in time yields:
= z + 2z 2
which means that the origin (z, x1 ) = (0, 0) is globally asymptotically stable and hence
(z, q1 ) = (0, 0) is also globally asymptotically stable.
80
Step:3
In the third step, the subsystem consisting of the set of equations (5.34a), (5.34b) and (5.34c)
is considered:
ż = z 2 + q1
q̇1 = q2 (5.52)
q̇ = u
2 f
x2 = q2 − u2 (z, q1 ) (5.53)
such that from (5.40), (5.43), (5.47) and (5.50), u2 (z, q1 ) can further be calculated as:
As a result of (5.53), the second equation in the subsystem (5.52) turns out to be:
81
The augmented Lyapunov function is chosen as:
1 1
V (z, x1 , x2 ) = V1 (z) + x21 + x22 (5.59)
2 2
The derivative in time of (5.59) is calculated as follows:
V̇ (z, x1 , x2 ) = V̇1 (z) + x1 ẋ1 + x2 ẋ2
(5.60)
= −z 2 + x1 [q2 − u̇1 (z)] + x2 [uf − u̇2 (z, q1 )]
Substitute for q2 from (5.53)
To make (5.62) negative definite according to Lyapunov theorem, one can choose uf as:
TIME RESPONSE
2.5
1.5
1
z,q 1& q 2
0.5
-0.5
-1
-1.5
-2
0 2 4 6 8 10
Time (sec)
82
It can be concluded that according to the Lyapunov theorem of stability, the origin (z, q1 , q2 ) =
(0, 0, 0) as simulation results show in Fig. 5.5 is globally asymptotically stable. M
where z ∈ Rn is the states of the system and uf ∈ R is the control input. The notion of
integrator backstepping can be expanded to be suitable for such systems. To clarify how
control function is designed through backstepping for systems of strict feedback form, the
following third-order example is considered.
ż1 = f1 (z1 ) + g1 (z1 ) z2
ż2 = f2 (z1 , z2 ) + g2 (z1 , z2 ) z3 (5.66)
ż = f (z , z , z ) + g (z , z , z ) u
3 3 1 2 3 3 1 2 3 f
5.3.1 Step:1
Let z2 be a virtual control function and assume that a control function u1 (z1 ) that stabi-
lizes ż1 is known. Besides, assume that there is a positive definite and radially unbounded
Lyapunov function V1 (z1 ) such that when using u1 (z1 ):
∂V
V̇1 (z1 ) = [f1 (z1 ) + g1 (z1 ) u1 ] ≤ −W1 (5.68)
∂z1
83
5.3.2 Step:2
Now, let z3 be the virtual control function and the desired stabilizing function be u2 . From
step:1, one can introduce the error parameter that represents the difference between the
virtual control function z2 and the desired control function u1 (z1 ) as follows:
x1 = z2 − u1 (z1 ) (5.70)
Differentiating it in time and substituting for z2 = u1 + x1 and the virtual control input z3
with the desired stabilizing function u2 , the set of subsystems ż1 and ż2 in new coordinates
will be:
ż1 = f1 (z1 ) + g1 (z1 ) [u1 + x1 ]
= f1 (z1 ) + g1 (z1 ) u1 + g1 (z1 ) x1
(5.71)
ẋ1 = ż2 − u̇1
= f2 (z1 , z2 ) + g2 (z1 , z2 ) u2 − u̇1
Choosing the Lyapunov function:
1
V2 (z1 , x1 ) = V1 + x21
2 (5.72)
1 2 1 2
= z1 + x1
2 2
Differentiating V2 in time yields:
V̇2 = z1 ż1 + x1 ẋ1
= z1 [f1 + g1 u1 + g1 x1 ] + x1 [f2 + g2 u2 − u̇1 ]
(5.73)
= z1 [f1 + g1 u1 ] + x1 [f2 + g2 u2 − u̇1 + z1 g1 ]
≤ −W1 + x1 [f2 + g2 u2 − u̇1 + z1 g1 ]
Choosing u2 (z1 , x1 ):
1
u2 (z1 , x1 ) = [−f2 + u̇1 − z1 g1 − k1 x1 ] (5.74)
g2
Substituting for u2 (z1 , x1 ) in V̇2 results in:
V̇2 ≤ −W1 − k1 x21
(5.75)
≤ −W2
84
5.3.3 Step:3
In the last step, the set of subsystems ż1 , ż2 and ż3 will be considered.
ż1 = f1 (z1 ) + g1 (z1 ) z2
ż2 = f2 (z1 , z2 ) + g2 (z1 , z2 ) z3 (5.76)
ż = f (z , z , z ) + g (z , z , z ) u
3 3 1 2 3 3 1 2 3 f
Now, uf is the control input for the whole system. From step:2, one can introduce the
error parameter that represents the difference between the virtual control function z3 and
the desired control function u2 (z1 , x1 ) as follows:
x2 = z3 − u2 (z1 , x1 ) (5.77)
Differentiating it in time and substituting for z3 = u2 + x2 , the set of subsystems ż1 , ż2 and
ż3 in new coordinates will be:
85
Choosing uf
1
uf = [−f3 + u̇2 − g2 x1 − k2 x2 ] (5.82)
g3
Substituting for uf in V̇3 results in:
5.4.1 Step:1
x2 = z2 − u1 (5.84)
where z2 is the virtual control signal, and u1 is the proposed stabilizing function. Choose:
1
u1 = (−f1 (z1 ) − k1 x1 ) , k1 > 0 (5.85)
g1 (z1 )
Taking the derivative in time of x1 yields:
ẋ1 = f1 (z1 ) + g1 (z1 ) [x2 + u1 ]
(5.86)
= f1 (z1 ) + g1 (z1 ) x2 + g1 (z1 ) u1
Substituting for the value of u1 results in:
86
5.4.2 Step:2
x3 = z3 − u2 (5.90)
where z3 is the virtual control signal, and u2 is the proposed stabilizing function. Choose:
1
u2 = [−f2 (z1 , z2 ) + u̇1 − k2 x2 − g1 (z1 ) x1 ] , k2 > 0 (5.91)
g2 (z1 , z2 )
Taking the derivative in time of the error variable x2 results in:
5.4.3 Step:n-1
xn = zn − un−1 (5.96)
where zn is the virtual control signal, and un−1 is the proposed stabilizing function. Choose:
1
un−1 = gn−1 (z1 ,...,zn−1 )
[−fn−1 (z1 , . . . , zn−1 ) + u̇n−2 − kn−1 xn−1 − gn−2 (z1 , . . . , zn−2 ) xn−2 ], kn−1 > 0
(5.97)
87
Taking the derivative in time of the error variable xn−1 results in:
ẋn−1 = −kn−1 xn−1 − gn−2 (z1 , . . . , zn−2 ) xn−2 + gn−1 (z1 , . . . , zn−1 ) xn (5.99)
+ gn−1 (z1 , . . . , zn−1 ) xn−1 xn − gn−2 (z1 , . . . , zn−2 ) xn−2 xn−1 (5.101)
n−1
X
=− ci x2i + gn−1 (z1 , . . . , zn−1 ) xn−1 xn
i=1
5.4.4 Step:n
Choose:
1
uf = [−fn (z1 , . . . , zn ) + u̇n−1 − kn xn − gn−1 (z1 , . . . , zn−1 ) xn−1 ], kn > 0
gn (z1 , . . . , zn )
(5.103)
Consider the augmented Lyapunov function:
1
Vn (x1 , . . . , xn ) = Vn−1 (x1 , . . . , xn−1 ) + x2n
2
1 Xn (5.104)
= x2
2 i=1 i
88
Differentiating it in time:
n
X
V̇n (x1 , . . . , xn ) = − ki x2i (5.105)
i=1
which is negative definite and hence one can deduce that the origin [x1 , . . . , xn ] is globally
asymptotically stable. Furthermore, as it has been assumed that xi = zi −ui−1 and ui−1 (0) =
0, then [z1 , . . . , zn ], the origin of the system is globally asymptotically stable as well.
89
6 Adaptive Backstepping Control
This section introduces an illustrative example to clarify the difference between static,
which is non-adaptive and dynamic, which is adaptive control design methods. Consider the
scalar nonlinear system given by:
where the parameter θ is an unknown constant. The goal is to regulate z (t) → 0 or in other
words to make z = 0 into a stable equilibrium point. Assume that there is a positive definite
and radially unbounded Lyapunov function:
1
V (z) = z 2 (6.2)
2
If θ were known, then the controller:
1
u= [−θf (z) − kz] , k>0 (6.3)
g (z)
V̇ = −kz 2 (6.4)
However, θ is unknown, and hence, the controller (6.3) is irrational. This problem of uncer-
tainty of θ can be solved by replacing θ by an estimate θ̂ so that (6.3) becomes:
1 h i
u= −θ̂f (z) − kz , k > 0 (6.5)
g (z)
= θ̃f (z) − kz
where θ̃ represents the error parameter for the difference between the actual unknown value θ
and its estimate θ̂. Using the same Lyapunov function given in (6.2) would not help to design
90
a suitable controller because its derivative would contain an indefinite term that would not
be easy to get rid of, as shown below:
V̇ = z ż
= z θ̃f (z) − kz
(6.7)
= θ̃zf (z) −kz 2
| {z }
Indef inite
A solution to this problem was proposed in [13] where (6.2) is augmented by a quadratic
term of θ̃ as follows
1 1
V z, θ̃ = z 2 + θ̃2 (6.8)
2 2γ
where γ is an adaptation gain. Thus, the controller dynamic will contain an update law for
˙
the estimate θ̂ and then with a proper choice of θ̂, the indefinite term can be canceled. The
derivative of (6.8) is obtained as:
1
V̇ = z ż + θ̃θ̃˙
γ
1
= z θ̃f (z) − kz + θ̃θ̃˙
γ (6.9)
1˙
= −kz 2 + θ̃[zf (z) + θ̃]
γ
| {z }
˙
The term above the brace is still indefinite. However as θ̃˙ = −θ̂, then (6.9) turns out to be:
2 1˙
V̇ = −kz + θ̃ zf (z) − θ̂ (6.10)
γ
Choosing the update law:
˙
θ̂ = γzf (z) (6.11)
yields:
V̇ = −kz 2 ≤ 0 (6.12)
h iT h iT
Hence, z θ̃ = 0 0 is stable, and the resulting adaptive system is:
n
nonlinear system ⇒ ż = θf (z) + g (z) u
h i
u = 1 −θ̂f (z) − kz
(6.13)
g(z)
adaptive controller ⇒
θ̂˙ = γzf (z)
91
−𝑘 𝜃 𝑓(𝑧)
𝜃 𝑢 𝑧
𝑓(𝑧) 𝛾 𝑓(𝑧)
𝜃 𝜃 𝑧
𝑓(𝑧)
−𝜃
−𝑘
𝛾 𝜃
𝑓(𝑧)
Figure 6.2: Equivalent block diagram for the system represented in Fig. 6.1
92
6.2 Simple Adaptive Tracking Control
Reconsider the scalar nonlinear system given in (6.1). The goal now is to track a
reference r (t). Therefore, one can start by defining the tracking error parameter:
e=z−r (6.15)
ė = ż − ṙ (6.16)
Considering the estimate θ̂ of the unknown constant parameter θ, the control law
1 h i
u= −θ̂f (z) + ṙ − ke (6.18)
g (z)
will try to regulate e → 0. To see if that will work, one can use the Lyapunov function
1 1
V e, θ̃ = e2 + θ̃2 (6.19)
2 2γ
whose derivative in time is obtained as
1
V̇ = eė + θ̃θ̃˙ (6.20)
γ
Substituting (6.17) and (6.18) into (6.20) yields
i 1
˙
h
V̇ = e θf (z) − θ̂f (z) + ṙ − ke − ṙ − θ̃θ̂
γ
i 1
˙
h
= e θ − θ̂ f (z) − ke − θ̃θ̂
γ
i 1 (6.21)
˙
h
= e θ̃f (z) − ke − θ̃θ̂
γ
1 ˙
= −ke2 + eθ̃f (z) − θ̃θ̂
γ
Choosing the adaptation law
˙
θ̂ = γf (z) e (6.22)
93
6.3 Adaptive Backstepping for Second Order Matched System
In sections 6.1 and 6.2, the controller design was straightforward. This simplicity
of the design is because the unknown parameters appeared in the same equations with the
control function. This section will explain how this is considered an advantage by considering
the following second-order system.
Assuming that θ is known and following procedure of section 5.3 or 5.4, the non-adaptive
controller can be designed by first considering subsystem (6.24a) and assuming that z2 is
a virtual control input whose desired value will be denoted by u1 . Let x1 = z1 so that ẋ1
equals (6.24a). Choosing the Lyapunov function
1
V1 (x1 ) = x21 (6.25)
2
whose derivative in time is obtained as
V̇1 = x1 ẋ1
(6.26)
= x1 [f1 (z1 ) + g1 (z1 ) z2 ]
and choosing
1
z2 = u1 = [−f1 (z1 ) − k1 x1 ] (6.27)
g1 (z1 )
would make (6.26) become
V̇1 = x1 ẋ1
1
= x1 f1 (z1 ) + g1 (z1 ) [−f1 (z1 ) − k1 x1 ]
g1 (z1 ) (6.28)
= x1 [f1 (z1 ) − f1 (z1 ) − k1 x1 ]
= −k1 x21 ≤ −W1 ≤ 0
The control function u1 is not the valid one but instead is the desired control function.
Therefore, an error parameter that represents the difference between the virtual control
function z2 and the desired control function u1 can be defined as
x2 = z2 − u1 (6.29)
94
Taking its derivative in time and using (6.24b)
From (6.27), (6.29) and (6.30), the system (6.24) in new coordinates will be
Choosing uf as
1
uf = [−k2 x2 − g1 (z1 ) x1 − θf2 (z) + u̇1 ] (6.34)
g2 (z)
yields
95
where θ̃ is the difference between the unknown parameter θ and its estimate θ̂. Augmenting
(6.32) with a quadratic term of θ̃ results in the following Lyapunov function
1 1 1
V3 x1 , x2 , θ̃ = x21 + x22 + θ̃2 (6.38)
2 2 2γ
whose derivative in time is
1
V̇3 = x1 ẋ1 + x2 ẋ2 + θ̃θ̃˙
γ
i 1
= x1 [−k1 x1 + g1 (z1 ) x2 ] + x2 θ̃f2 (z) − k2 x2 − g1 (z1 ) x1 + θ̃θ̃˙
h
(6.39)
γ
1 ˙
= −k1 x21 − k2 x22 + θ̃f2 (z) x2 − θ̃θ̂
γ
To eliminate the indefinite term, one can choose the update law
˙
θ̂ = γf2 (z) x2 (6.40)
Fig. 6.3 and Fig. 6.4 are the block diagrams for systems (6.42) and (6.43) respectively.
96
𝑃𝑙𝑎𝑛𝑡
𝜃
−𝑘1
𝑓2 (⋅)
𝑥2 𝑥1
−𝑢1 𝑔1 (⋅)
𝑢𝑓 −𝑘2
𝑢1 𝑔1 (⋅)
𝜃
𝑓2 (⋅) 𝛾 𝑓2 (⋅)
𝐴𝑑𝑎𝑝𝑡𝑖𝑣𝑒 𝐶𝑜𝑛𝑡𝑟𝑜𝑙𝑙𝑒𝑟
Figure 6.3: Block diagram for system (6.42)
𝑃𝑙𝑎𝑛𝑡
−𝑘1
𝑔1 (⋅)
𝜃 𝑥2 𝑥1
𝜃 𝑓2 (⋅) 𝑔1 (⋅)
−𝜃
−𝑘2
𝜃
𝛾 𝑓2 (⋅)
𝐴𝑑𝑎𝑝𝑡𝑖𝑣𝑒 𝐶𝑜𝑛𝑡𝑟𝑜𝑙𝑙𝑒𝑟
Figure 6.4: Block diagram for system (6.43)
97
6.4 Adaptive Backstepping for Second Order Extended Matching System
Extended matching is a case where the unknown parameter is one integrator separated
from the control input. This section considers the following second-order system with the
unknown constant parameter θ being one integrator before the control input uf .
Again, assuming that θ is known, then using the concept of integrator backstepping and
procedure of section 5.3 or 5.4 would stabilize the system as follows. Let z2 be a virtual
control input to the subsystem (6.44a) and denote its desired value as u1 . Let x1 = z1 so
that ẋ1 equals (6.44a). Choosing the following Lyapunov function for subsystem (6.44a)
1
V1 (x1 ) = x21 (6.45)
2
Differentiating it in time as
V̇1 = x1 ẋ1
(6.46)
= x1 [θf1 (z1 ) + g1 (z1 ) z2 ]
V̇1 = x1 ẋ1
1
= x1 θf1 (z1 ) + g1 (z1 ) [−θf1 (z1 ) − k1 x1 ]
g1 (z1 )
= x1 [θf1 (z1 ) − θf1 (z1 ) − k1 x1 ] (6.48)
= −k1 x21
≤ −W1
≤0
Now, as u1 (x1 , θ) is not a valid control function but the desired one, the following error
parameter can be defined
x2 = z2 − u1 (x1 , θ) (6.49)
98
The derivative of this error parameter is obtained as
Considering (6.47), (6.49) and (6.50) will modify the system (6.44) to be
This is the objective of the Lyapunov theorem for the control function to stabilize the system.
However, as θ is unknown, the aforementioned method can not be implemented. Fortunately,
one can still use the notion of integrator backstepping to design the adaptive controller for
extended matching systems problems. Back to the same system given in (6.44), as it is of
order two, two steps are needed to design the control function.
99
Step:1
Starting with the subsystem (6.44a), assume that z2 is the virtual control input whose desired
value is denoted by u1 . Let x1 = z1 and x2 = z2 − u1 . Also, assume that θ̂1 is an estimate
for the unknown parameter θ. Based on these assumptions, the adaptive version of the
controller (6.47) will be
1 h i
z2 = u1 x1 , θ̂1 = −θ̂1 f1 (z1 ) − k1 x1 (6.56)
g1 (z1 )
Taking the derivative of x1 in time and substituting for z2 = u1 + x2
100
Step:2
Differentiating the error parameter x2 , for the difference between the virtual control function
z2 and the desired control function u1
where
∂u ∂u1 ˙
1
u̇1 x1 , θ̂1 = ẋ1 + θ̂1 (6.64)
∂x1 ∂ θ̂1
Substituting (6.44b) and (6.64) into (6.63) yields
∂u1 ∂u1 ˙
ẋ2 = f2 (z) + g2 (z) uf − ẋ1 − θ̂1 (6.65)
∂x1 ∂ θ̂1
Substituting (6.44a) and (6.61) into (6.65) yields
∂u1 ∂u1
ẋ2 = f2 (z) + g2 (z) uf − [θf1 (z1 ) + g1 (z1 ) z2 ] − γf1 (z1 ) x1
∂x1 ∂ θ̂1
(6.66)
∂u1 ∂u1 ∂u1
= f2 (z) + g2 (z) uf − θf1 (z1 ) − g1 (z1 ) z2 − γf1 (z1 ) x1
∂x1 ∂x1 ∂ θ̂1
Now, one can choose the Lyapunov function and design uf that makes its derivative negative.
1
V2 x1 , x2 , θ̃1 = V1 + x22 (6.67)
2
Differentiating it in time yields
V̇2 = V̇1 + x2 ẋ2
∂u1 ∂u1 ∂u1
= −k1 x21
+ g1 (z1 ) x1 x2 + x2 f2 (z) + g2 (z) uf − θf1 (z1 ) − g1 (z1 ) z2 − γf1 (z1 ) x1
∂x1 ∂x1 ∂ θ̂1
2 ∂u1 ∂u1 ∂u1
= −k1 x1 + x2 g1 (z1 ) x1 + f2 (z) + g2 (z) uf − θf1 (z1 ) − g1 (z1 ) z2 − γf1 (z1 ) x1
∂x1 ∂x1 ∂ θ̂1
(6.68)
Choosing uf that may cancel indefinite terms in V̇2 , and for the unknown parameter θ we
will see if using the first estimate θ̂1 instead of θ can help.
1 ∂u1 ∂u1 ∂u1
uf = −g1 (z1 ) x1 − f2 (z) + θ̂1 f1 (z1 ) + g1 (z1 ) z2 + γf1 (z1 ) x1 − k2 x2
g2 (z) ∂x1 ∂x1 ∂ θ̂1
(6.69)
This uf will renders (6.68) become
∂u1 ∂u1
V̇2 = −k1 x21 − k2 x22 + θ̂1 f1 (z1 ) x2 − θf1 (z1 ) x2
∂x1 ∂x1
∂u
1
= −k1 x21 − k2 x22 − θ − θ̂1 f1 (z1 ) x2 (6.70)
∂x1
∂u1
= −k1 x21 − k2 x22 − θ̃1 f1 (z1 ) x2
∂x1
101
It is very clear that using the first estimate θ̂1 does not help in canceling the indefinite term
θ̃1 in (6.70). As a solution to this problem, one can replace θ̂1 in (6.69) with a new estimate
θ̂2 so that
1 ∂u1 ∂u1 ∂u1
uf = −g1 (z1 ) x1 − f2 (z) + θ̂2 f1 (z1 ) + g1 (z1 ) z2 + γf1 (z1 ) x1 − k2 x2
g2 (z) ∂x1 ∂x1 ∂ θ̂1
(6.71)
Based on the preceding, (6.66) will change to
∂u
1
ẋ2 = −g1 (z1 ) x1 − k2 x2 − θ − θ̂2 f1 (z1 )
∂x1
(6.72)
∂u1
= −g1 (z1 ) x1 − k2 x2 − θ̃2 f1 (z1 )
∂x1
where θ̃2 represents the difference between the unknown parameter θ and the second estimate
θ̂2 . This change in ẋ2 with the existence of the error parameter θ̃2 results in need to use the
following Lyapunov function
1 1
V2 x1 , x2 , θ̃1 , θ̃2 = V1 + x22 + θ̃22 (6.73)
2 2γ
whose derivative is obtained as
1
V̇2 = V̇1 + x2 ẋ2 + θ̃θ̃˙2
γ
∂u1 1 ˙
= −k1 x21
+ g1 (z1 ) x1 x2 + x2 −g1 (z1 ) x1 − k2 x2 − θ̃2 f1 (z1 ) − θ̃θ̂2
∂x1 γ
(6.74)
∂u1 1 ˙
= −k1 x21 + g1 (z1 ) x1 x2 − g1 (z1 ) x1 x2 − k2 x22 − θ̃2 f1 (z1 ) x2 − θ̃2 θ̂2
∂x1 γ
∂u1 1˙
= −k1 x21 − k2 x22 − θ̃2 f1 (z1 ) x2 + θ̂2
∂x1 γ
This result fulfills Lyapunov theorem of stability, and from (6.58) and (6.61) along with
(6.72) and (6.75) the resulting closed-loop system will be
102
ẋ1 = θ̃1 f1 (z1 ) − k1 x1 + g1 (z1 ) x2
∂u1
ẋ2 = −g1 (z1 ) x1 − k2 x2 − θ̃2 f1 (z1 )
∂x1
(6.77)
θ̃˙1 = −γf1 (z1 ) x1
∂u1
θ̃˙2 = γ f1 (z1 ) x2
∂x1
Although the method discussed in section 6.4 is useful to some extent, it still has a
disadvantage of increasing the number of parameter estimates due to overestimation which
in turn increases the order of resulting adaptive controller. This section illustrates how over-
estimation can be reduced by slightly modifying the previous procedure [60]. Reconsidering
system (6.44), two steps are needed for controller design as follows.
Step:1
Starting again with the subsystem (6.44a) where z2 is the virtual control input whose desired
value is u1 . Similarly, let x1 = z1 and x2 = z2 −u1 . Assume that θ̂ instead of θ̂1 is the estimate
for the unknown parameter θ to indicate that only one estimate of the unknown parameter
is used in this design procedure. Based on these assumptions
1 h i
z2 = u1 x1 , θ̂ = −θ̂f1 (z1 ) − k1 x1 (6.78)
g1 (z1 )
Taking the derivative of x1 in time and substituting for z2 = u1 + x2
103
Choosing the following Lyapunov function
1 1
V1 x1 , θ̃ = x21 + θ̃2 (6.81)
2 2γ
where γ is the adaptation gain and differentiating it in time yields
1
V̇1 = x1 ẋ1 + θ̃θ̃˙
γ
i 1
˙
h
= x1 θ̃f1 (z1 ) − k1 x1 + g1 (z1 ) x2 − θ̃θ̂ (6.82)
γ
1 ˙
= θ̃f1 (z1 ) x1 − k1 x21 + g1 (z1 ) x1 x2 − θ̃θ̂
γ
Unlike step 1 in section 6.4, choosing the adaptation law will be postponed to the next step.
Step:2
where
∂u ∂u1 ˙
1
u̇1 x1 , θ̂ = ẋ1 + θ̂ (6.84)
∂x1 ∂ θ̂
Substituting (6.44b) and (6.84) into (6.83) yields
∂u1 ∂u1 ˙
ẋ2 = f2 (z) + g2 (z) uf − ẋ1 − θ̂ (6.85)
∂x1 ∂ θ̂
Substituting (6.44a) into (6.85) yields
∂u1 ∂u1 ˙
ẋ2 = f2 (z) + g2 (z) uf − [θf1 (z1 ) + g1 (z1 ) z2 ] − θ̂
∂x1 ∂ θ̂ (6.86)
∂u1 ∂u1 ∂u1 ˙
= f2 (z) + g2 (z) uf − θf1 (z1 ) − g1 (z1 ) z2 − θ̂
∂x1 ∂x1 ∂ θ̂
As the error parameter θ̃ = θ − θ̂, then one can say that the unknown parameter θ = θ̃ + θ̂.
Thus,
∂u ∂u1 ∂u1 ˙
1
ẋ2 = f2 (z) + g2 (z) uf − θ̃ + θ̂ f1 (z1 ) − g1 (z1 ) z2 − θ̂
∂x1 ∂x1 ∂ θ̂ (6.87)
∂u1 ∂u1 ∂u1 ∂u1 ˙
= f2 (z) + g2 (z) uf − θ̃ f1 (z1 ) − θ̂ f1 (z1 ) − g1 (z1 ) z2 − θ̂
∂x1 ∂x1 ∂x1 ∂ θ̂
104
Now, choosing the Lyapunov function
1
V2 x1 , x2 , θ̃ = V1 + x22
2
1 2 1 2 1 (6.88)
= x1 + x2 + θ̃2
2 2 2γ
It is clear that this Lyapunov function still has the parameter estimate θ̂ that design proce-
dure started with, unlike overestimation design procedure where Lyapunov function (6.73)
had θ̂2 instead. Differentiating (6.88) in time yields
This result also fulfills the Lyapunov theorem of stability. However, overestimation was
avoided here. From (6.80) and (6.87) along with (6.91) and (6.92) the resulting closed-loop
105
system will be
106
7 Transformation of Affine Nonlinear Systems into Strict Feedback Form
ż = f (z) + g (z) u
y = h (z)
with z ∈ Rn , u ∈ R and y ∈ R are state variables, control input, and system output
respectively. It is clear from section 2.10 and definition 2.5 that if this system has a relative
degree ρ that is less than n the order of the system (ρ < n), then
Lg Li−1
f h (z) = 0, i = 1, . . . , ρ − 1
Lg Lρ−1
f h (z) 6= 0, ∀ z ⊂ D ⊂ Rn
However, according to proof 3.1 when the system’s relative degree ρ equals to n the order of
the system (ρ = n), then
Lg Li−1
f h (z) = 0, i = 1, . . . , n − 1
Lg Ln−1
f h (z) 6= 0, ∀ z ⊂ D ⊂ Rn
107
and if f (z), g (z) and h (z) are smooth enough in the domain D ⊂ Rn , then a diffeomorphism
x1 T1 (z) h (z)
x
2
T (z)
2 −h (z) + Lf h (z)
x T (z) 2
3 3 L f h (z) + L f h (z)
= T (z) = = , x ∈ Rn (7.2)
. .. ..
..
.
.
n−2 n−3 n−2
xn−1 Tn−1 (z) (−1) Lf h (z) + Lf h (z)
xn Tn (z) (−1)n−1 Ln−2
f h (z) + Ln−1
f h (z)
where:
L−1
f h (z) = 0 (7.3)
where ⊗ stands for values other than zero. For more clarification in this regard and without
loss of generality the transformation process will be proved for a system of fourth-order for
108
which a local transformation matrix can easily be obtained from (7.2) as
x1 T1 (z) h (z)
x T (z) −h (z) + L h (z)
2 2 f
= = (7.7)
x3 T3 (z) Lf h (z) + L2 h (z)
f
2 3
x4 T4 (z) −Lf h (z) + Lf h (z)
with a state feedback control law:
1
u= [−L4f h (z) + v] (7.8)
Lg L3f h (z)
easily obtained from (7.5).
Proof 7.1 (Transforming a 4 th order SISO nonlinear system into strict feedback form)
109
It is well known that Lg Lf h (z) = 0. Moreover, considering first, second and third elements
in the transformation matrix (7.7), (7.11) turns out to be
ẋ2 = − (x1 + x2 ) + L2f h (z)
= − (x1 + x2 ) + x3 − Lf h (z)
(7.12)
= − (x1 + x2 ) + x3 − (x1 + x2 )
= −2 (x1 + x2 ) + x3
Considering fourth row element in (7.7): x4 = T4 (z) = −L2f h (z) + L3f h (z)
110
It is already known that Lg L3f h (z) 6= 0. Thus, substituting the state feedback (7.8) in (7.15)
yields
From (7.10), (7.12), (7.14) and (7.16) the SISO affine nonlinear system of fourth-order in its
strict feedback form will be
ẋ1 = x1 + x2
ẋ2 = −2 (x1 + x2 ) + x3
(7.17)
ẋ3 = 2 (x3 − (x1 + x2 )) + x4
ẋ4 = −x4 − x3 + x2 + x1 + v
𝑖 𝐿 𝐷
A Diode Bridge
Voltage Source
Rectifier
GRID
Inverter
+ 𝐶
−
Boost Converter
Figure 7.1: Direct-drive SPMSG based wind energy conversion system with boost converter.
111
such that
k1 x1 + k2 x2 sinx3 + k3 k7
f (x) = k x
4 1 sinx 3 + k x
5 2 + k
6 , g (x) =
0 , h (x) = x3
x2 0
The variables x1 , x2 , x3 and u are the current of the dc-link inductor, electrical speed of gen-
erator rotor, electrical angle of generator rotor, the duty ratio of the switching signal respec-
tively. The reader is referred to [12] for the values of k1 −k7 . The two conditions for feedback
linearizability discussed in section 2.11, and the relative degree of this system model have
already been tested and fulfilled in [12] where the vector fields [g (x) , adf g (x) , ad2 f g (x)]
are linearly independent and the set {g (x) , adf g (x)} is involutive and the relative degree of
the system is 3. Consequently, this system is feedback linearizable, and according to (7.2),
the diffeomorphism:
z1 h (x)
z2 = −h (x) + Lf h (x)
2
z3 Lf h (x) + Lf h (x)
(7.19)
x3
= −x3 + x2
x2 + k4 x1 sinx3 + k5 x2 + k6
can transform the system into its strict feedback form. Considering that the system’s relative
degree equals to its dimension (ρ = n = 3), then Lg Lkf h (z) = 0 ∀ k < 2 and hence taking
the derivative in time of z1 , z2 and z3 yields:
∂h
ż1 = [f (x) + g (x) u]
∂x
= Lf h (x) + Lg h (x) u
= Lf h (x)
= h (x) + z2
= z1 + z2 (7.20)
∂Lf h (x)
ż2 = −Lf h (x) + [f (x) + g (x) u]
∂x
= −Lf h (x) + L2f h (x) + Lg Lf h (x) u
112
= −Lf h (x) + L2f h (x)
= − (z1 + z2 ) + z3 − z2 − z1
= −2z1 − 2z2 + z3 (7.21)
∂L2f h (x)
ż3 = L2f h (x) + [f (x) + g (x) u]
∂x
= L2f h (x) + L3f h (x) + Lg L2f h (x) u (7.22)
Choosing:
1
u= [−L3f h (x) + v] (7.23)
Lg L2f h (x)
yields
ż3 = −z 1 − z2 + z3 + v (7.24)
To design a stabilizing control function, the procedure in section 5.4 is applied as follows:
Step:1
x2 = z2 − u1 (z1 ) (7.26)
Choose:
u1 (z1 ) = −z1 − k1 x1 , k1 > 0 (7.27)
113
Differentiating it in time results in:
Step:2
x3 = z3 − u2 (z1 , z2 ) (7.31)
Choose:
u2 (z1 , z2 ) = 2z1 + 2z2 + u̇1 (z1 ) − k2 x2 − x1 , k2 > 0 (7.32)
Step:3
114
= −z 1 − z2 + z3 + v − u̇2 (z1 , z2 ) (7.37)
Choose:
v = z1 + z2 − z3 + u̇2 (z1 , z2 ) − k3 x3 − x2 , k3 > 0 (7.38)
Substituting for v:
ẋ3 = −k3 x3 + x2 (7.39)
which is negative definite and thus the origin [x1 , x2 , x3 ] is globally asymptotically stable
and based on the assumption that xi = zi − ui−1 and ui−1 (0) = 0 , [z1 , z2 , z3 ] the origin of
the system is globally asymptotically stable as well. k1 = 3.70, k2 = 5.12 and k3 = 2.35 were
calculated using optimal control method and quadratic performance index [50]. Simulation
results in Fig.7.2 show the stability of the system using the proposed stabilizing controller. M
TIME RESPONSE
6
Z1(0) = -2
Z2(0)=4
5 Z3(0)=6
4
SYSTEM STATES
Z1, Z2 & Z3
-1
-2
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
Time, s
115
TIME RESPONSE
10
SYSTEM STATES
Z1, Z2 & Z3
-5
-10
-15
-20
Z1(0) = 2
-25
Z2(0)=4
Z3(0)=8
-30
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
Time, s
15
SYSTEM STATES
Z1, Z2 & Z3
10
-5
-10
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
Time, s
Figure 7.2: States stabilization using backstepping control after transformation into SFBF.
Despite the fact that nonlinear systems can indirectly be transformed into a strict feedback
form using some assumptions that may simplify the transformation process, the preceding
approach is considered the direct approach to get the system in its equivalent strict feedback
form through feedback and transformation.
116
7.3 Transformation of MIMO Nonlinear Systems into Strict Feedback Form
The main contribution of this research is to extend the concept and procedure of
transforming SISO affine nonlinear system into strict feedback form to transform MIMO
affine nonlinear system into its equivalent strict feedback form given by the general form [52]
...
ẋ2,1 = f2,1 (x2,1 ) + g2,1 (x2,1 ) x2,2
ẋ2,2 = f2,2 (x2,1 , x2,2 ) + g2,2 (x2,1 , x2,2 ) x2,3
..
.
ẋ2,ρ2 −1 = f2,ρ2 −1 (x2,1 , . . . , x2,ρ2 −1 ) + g2,ρ2 −1 (x2,1 , . . . , x2,ρ2 −1 ) x2,ρ2
m
X
i
ẋ2,ρ2 = f2,ρ2 (x2,1 , . . . , x2,ρ2 ) + g2,ρ 2
(x2,1 , . . . , x2,ρ2 ) ui
i=1
...
..
.
...
ẋm−1,1 = fm−1,1 (xm−1,1 ) + gm−1,1 (xm−1,1 ) xm−1,2
ẋm−1,2 = fm−1,2 (xm−1,1 , xm−1,2 ) + gm−1,2 (xm−1,1 , xm−1,2 ) xm−1,3
...
ẋm−1,ρm−1 −1 = fm−1,ρm−1 −1 xm−1,1 , . . . , xm−1,ρm−1 −1 + gm−1,ρm−1 −1 xm−1,1 , . . . , xm−1,ρm−1 −1 xm−1,ρm−1
m
X i
ẋm−1,ρm−1 = fm−1,ρm−1 xm−1,1 , . . . , xm−1,ρm−1 + gm−1,ρ m−1
xm−1,1 , . . . , xm−1,ρm−1 ui
i=1
...
ẋm,1 = fm,1 (xm,1 ) + gm,1 (xm,1 ) xm,2
ẋm,2 = fm,2 (xm,1 , xm,2 ) + gm,2 (xm,1 , xm,2 ) xm,3
..
.
ẋm,ρm −1 = fm,ρm −1 (xm,1 , . . . , xm,ρm −1 ) + gm,ρm −1 (xm,1 , . . . , xm,ρm −1 ) xm,ρm
m
X
i
ẋm,ρm = fm,ρm (xm,1 , . . . , xm,ρm ) + gm,ρ m
(xm,1 , . . . , xm,ρm ) ui
i=1
(7.42)
117
where x ∈ Rn is the states of the system and u ∈ Rm is the control inputs, such that if
1 2 m−1 m
g1,ρ1 g1,ρ1 ... g1,ρ1 g1,ρ1
1 2 m−1 m
g2,ρ 2
g2,ρ 2
. . . g 2,ρ 2
g2,ρ 2
.
.. .
.. .
.. .
..
G (x) = . . .
(7.43)
1 2 m−1 m
gm−1,ρ gm−1,ρ . . . gm−1,ρ gm−1,ρ
m−1 m−1 m−1 m−1
1 2 m−1 m
gm,ρ m
gm,ρ m
... gm,ρ m
gm,ρ m
will render
V̇ = −2kV (7.49)
118
Thus, the equilibrium point e = 0 is exponentially stable. Considering again the affine
nonlinear system given in (2.38) as
m
X
żn = f (z) + gi (z) ui
i=1
yi = hi (z) , i = 1, . . . , m
with z ∈ Rn , u ∈ Rm and y ∈ Rm are state variables, control inputs, and system outputs
respectively. It is clear from relative degree analysis for MIMO systems and definition 2.6 in
section 2.10 that if this system has a vector relative degree ρ = {ρ1 , ρ2 , . . . , ρm } , then
Lg1 Lkf hi (z) = Lg2 Lkf hi (z) = . . . = Lgm Lkf hi (z) = 0, k = 0, 1, . . . , ρi − 2. (7.50)
119
can transform MIMO affine nonlinear system of the form (2.38) into its equivalent strict
feedback form (7.42). For more clarification in this regard and without loss of generality the
transformation process will be proved for a system of fifth-order with two inputs and two
outputs. That is, the system to be discussed is of the form
ż = f (z) + g1 (z) u1 + g2 (z) u2
y1 = h1 (z) (7.53)
y2 = h2 (z)
Assuming that this system has sub-relative degrees ρ1 = 2 and ρ2 = 3 such that its relative
degree is ρ = ρ1 + ρ2 = 5 = n where n, as was mentioned earlier, is the order of the
system. Then, the transformation matrix that transforms the system into its equivalent
strict feedback form can easily be obtained from (7.52) as
x1,1 T1,1 (z) h1 (z)
x1,2 T1,2 (z) −h1 (z) + Lf h1 (z)
... ... ...
= T (z) = = , x ∈ R5 (7.54)
x2,1 T2,1 (z) h2 (z)
x T (z) −h (z) + L h (z)
2,2 2,2 2 f 2
x2,3 T2,3 (z) Lf h2 (z) + L2f h2 (z)
Proof 7.2 (Transforming a 5 th order MIMO nonlinear system into strict feedback form)
ẋ1,1 = Lf h1 (z)
= h1 (z) + x1,2 (7.56)
= x1,1 + x1,2
120
Considering second row element in (7.54): x1,2 = T1,2 (z) = −h1 (z) + Lf h1 (z)
It is also clear from (7.50) and (7.51) that as ρ2 = 3, then Lg1 Lkf h2 (z) = Lg2 Lkf h2 (z) =
h i
0 ∀ k < 2 and at least one element is not zero in the row vector Lg1 Lf h2 (z) Lg2 Lf h2 (z) .
2 2
Thus, considering third and fourth elements in (7.54), (7.58) turns out to be
ẋ2,1 = Lf h2 (z)
= h2 (z) + x2,2 (7.59)
= x2,1 + x2,2
Considering fourth row element in (7.54): x2,2 = T2,2 (z) = −h2 (z) + Lf h2 (z)
121
Thus, considering third, fourth and fifth elements in (7.54), (7.60) turns out to be
Considering fifth row element in (7.54): x2,3 = T2,3 (z) = Lf h2 (z) + L2f h2 (z)
dT2,3 (z) d
ẋ2,3 = = x2,3 − (x2,1 + x2,2 ) + L2f h2 (z)
dt dt
∂ dz
= x2,3 − (x2,1 + x2,2 ) + L2f h2 (z) ·
∂z dt (7.62)
∂
= x2,3 − (x2,1 + x2,2 ) + L2f h2 (z) [f (z) + g1 (z) u1 + g2 (z) u2 ]
∂z
= x2,3 − (x2,1 + x2,2 ) + L3f h2 (z) + Lg1 L2f h2 (z) u1 + Lg2 L2f h2 (z) u2
So far, from the previous analysis, particularly (7.56), (7.57), (7.59), (7.61) and (7.62), the
system (7.53) has been transformed into the following form
To illustrate and clarify what has been theoretically explained so far on the transformation of
the multi-input multi-output system into equivalent strict feedback form, the next example
considers the mathematical model for permanent magnet synchronous generator-based wind
energy system discussed in [61] where a single MIMO controller was designed such that wind
energy battery storage system can operate when the grid is connected or not without the
need to switch between two different controllers. The feedback linearizability conditions
discussed in section 2.11 and theorem 2.3 are assumed to be fulfilled for this system because
the exact feedback linearization controller has been successfully designed in [61].
122
Example 7.1
dids Rs Lq 1
=− ids + ωr iqs + uds
dt Ld Ld Ld
diqs Ld Rs λr 1
= − ωr ids − iqs − ωr + uqs
dt Lq Lq Lq Lq
2 2
dωr P 3P 3P
= Tm − λr iqs + (Ld − Lq ) ids iqs
dt J 2J 2J
didi 1 1
= ωg iqi − udl + udi
dt Lf Lf
diqi 1 1
= −ωg idi − uql + uqi
dt Lf Lf
dilb 1 1
= ubat − Dudc
dt Lb Lb
dEdc 3
= udc isdc − udi idi + Pbat
dt 2
dĩds
= ids − i∗ds
dt
dω̃r
= ωr − ωr∗
dt
dũdl
= udl − u∗dl
dt (7.64)
dũql
= uql − u∗ql
dt
dẼdc ∗
= Edc − Edc
dt
dĩlb
= ilb − i∗lb
dt
...
Z
y1 = ĩds = (ids − i∗ds ) dδ
Z
y2 = ω̃r = (ωr − ωr∗ ) dδ
Z
y3 = ũdl = (udl − u∗dl ) dδ
Z
uql − u∗ql dδ
y4 = ũql =
Z
∗
y5 = Ẽdc = (Edc − Edc ) dδ
Z
y6 = ĩlb = (ilb − i∗lb ) dδ
123
Table 7.1: Wind energy system parameters definitions.
Parameter Definition
ĩds Integral of the difference between ids and its reference of i∗ds
ω̃r Integral of the difference between ωr and its reference of ωr∗
ũdl Integral of the difference between udl and its reference of u∗dl
ũql Integral of the difference between uql and its reference of u∗ql
∗
Ẽdc Integral of the difference between Edc and its reference of Edc
ĩlb Integral of the difference between ilb and its reference of i∗lb
124
Table 7.2: Wind energy system states legend.
State Parameter
x1 ids
x2 iqs
x3 ωr
x4 idi
x5 iqi
x6 ilb
x7 Edc
x8 ĩds
x9 ω̃r
x10 ũdl
x11 ũql
x12 Ẽdc
x13 ĩlb
Input Parameter
u1 uds
u2 uqs
u3 udi
u4 uqi
u5 Pbat
u6 D
Output Parameter
y1 ĩds
y2 ω̃r
y3 ũdl
y4 ũql
y5 Ẽdc
y6 ĩlb
125
Denoting system’s states, inputs, and outputs according to Tables 7.2, 7.3 and 7.4, and
considering the values of udl and uql from Table 7.1, as well as assuming that Ld = Lq , will
make the system (7.64) become
Rs Lq 1
ẋ1 = − x1 + x2 x3 + u1
Ld Ld Ld
Ld Rs λr 1
ẋ2 = − x1 x3 − x2 − x3 + u2
Lq Lq Lq Lq
2
P 3P
ẋ3 = Tm − λr x2
J 2J
Rth Lf ωg + Lth ωg 1 1
ẋ4 =− x4 + x5 − Ethd + u3
Lf Lf Lf Lf
Lth ωg − Lf ωg Rth 1 1
ẋ5 = x4 − x5 − Ethq + u4
Lf Lf Lf Lf
ubat udc
ẋ6 = − u6
Lb Lb
3
ẋ7 = udc isdc − x4 u3 + u5
2
∗
ẋ8 = x1 − x1
ẋ9 = x3 − x∗3
ẋ10 = Rth x4 − ωg Lth x5 + Ethd − u∗dl
(7.65)
ẋ11 = −ωg Lth x4 + Rth x5 + Ethq − u∗ql
ẋ12 = x7 − x∗7
ẋ13 = x6 − x∗6
...
Z
y 1 = x8 = (x1 − x∗1 ) dx
Z
y 2 = x9 = (x3 − x∗3 ) dx
Z
y3 = x10 = (Rth x4 − ωg Lth x5 + Ethd − u∗dl ) dx
Z
−ωg Lth x4 + Rth x5 + Ethq − u∗ql dx
y4 = x11 =
Z
y5 = x12 = (x7 − x∗7 ) dx
Z
y6 = x13 = (x6 − x∗6 ) dx
126
It was previously found in [61] that the aforementioned mathematical model for the perma-
nent magnet synchronous generator-based wind energy system is of a vector relative degree
and also
ρ1 + ρ2 + ρ3 + ρ4 + ρ5 + ρ6 = 13 = n (7.67)
Thus, a transformation matrix that can be used to transform (7.65) into its equivalent strict
feedback form can be obtained from (7.52) as
z1,1 T1,1 (x) y1 x8
−x8 + x1 − x∗1
z1,2
T1,2 (x)
−y1 + Lf y1
... ... ... ...
z2,1 T2,1 (x) y2 x9
z2,2
T2,2 (x)
−y2 + Lf y2
−x9 + x3 − x∗3
2
z2,3
T2,3 (x)
Lf y2 + L2f y2
x3 − x∗3 + PJ Tm − 3P λx
2J r 2
... ... ... ...
z3,1 T3,1 (x) y3 x10
z3,2
T3,2 (x) −y3 + Lf y3 −x10 + Rth x4 − ωg Lth x5 + Ethd − u∗dl
= T (x) = = = , z ∈ R13
...
...
...
...
z4,1
T4,1 (x)
y4
x11
z4,2 T4,2 (x) −y4 + Lf y4 −x11 − ωg Lth x4 + Rth x5 + Ethq − u∗ql
...
...
...
...
z5,1
T5,1 (x)
y5
x12
−x12 + x7 − x∗7
z5,2
T5,2 (x)
−y5 + Lf y5
... ... ... ...
z6,1
T6,1 (x)
y6
x13
z6,2 T6,2 (x) −y6 + Lf y6 −x13 + x6 − x∗6
(7.68)
The determinant of the Jacobian matrix of (7.68) is computed as
−3P 2 −L2th ωg2 + Rth
2
d (∇T (x)) = (7.69)
2J
127
which is nonzero, and hence, the Jacobian ∇T (x) is non-singular, and the inverse x = T −1 (z)
exists and is computed as
x1 x∗1 + z1,1 + z1,2
2
x2
3J 2 λr P 2
(P Tm + Jz2,1 + Jz2,2 + Jz2,3 )
∗
x3
x3 + z2,1 + z2,2
1 ∗ ∗
Rth udl + Rth z3,1 + Rth z3,2 − Ethd Rth − Ethd Lth ωg + Lth ωg uql + Lth ωg z4,1 + Lth ωg z4,2
x4
2
−L2th ωg2 +Rth
1
Rth u∗ql + Rth z4,1 + Rth z4,2 − Ethd Rth − Ethd Lth ωg + Lth ωg u∗dl + Lth ωg z3,1 + Lth ωg z3,2
x5
2
L2th ωg2 +Rth
x6 x∗6 + z6,1 + z6,1
−1
x7 = T (z) = ∗
x7 + z5,1 + z5,1
x8
z1,1
x9
z2,1
x10
z3,1
x11
z4,1
x12
z5,1
x13 z6,1
(7.70)
According to definition 2.1, the transformation matrix (7.68) is a diffeomorphism. From
(7.65), f (x) and gi (x) where i = 1, 2, . . . , 6 are obtained as
Lq
−R s
Ld 1
x + xx
Ld 2 3
− LLdq x1 x3 − R s
Lq 2
x − Lλrq x3
P 2
Tm − 3P
J 2J
λr x2
L ω +L ω
− RLth x + f g th g
x5 − L1f Ethd
4
Lf
f
Lth ωg −Lf ωg
x4 − RLth x5 − L1f Ethq
Lf
f
ubat
Lb
f (x) =
udc isdc
(7.71)
x1 − x∗1
x3 − x∗3
Rth x4 − ωg Lth x5 + Ethd − u∗dl
−ωg Lth x4 + Rth x5 + Ethq − u∗ql
x7 − x∗7
x6 − x∗6
128
1
Ld
0 0 0 0 0
1 0
0
Lq
0
0
0
0 0 0 0 0 0
1
0
0
L
f
0
0
0
1
0 0 0 0 0
Lf
udc
0
0
0
0
0
Lb
g1 (x) = g2 (x) = g3 (x) = 3 g4 (x) = g5 (x) = g6 (x) =
0 0 − 2 x4 0 1 0
0
0
0
0
0
0
0 0 0
0 0 0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0 0 0 0 0 0
(7.72)
Considering (7.71) and (7.72), each element in the transformation matrix (7.68) is differen-
tiated in time as follows
1)
dT1,1 (x) dy1 ∂y1
ż1,1 = = = [f (x) + g1 (x) u1 + · · · + g6 (x) u6 ]
dt dt ∂x
= Lf y1 ⇒ x1 − x∗1
(7.73)
= y1 + z1,2
= z1,1 + z1,2
2)
dT1,2 (x) ∂Lf y1
ż1,2 = = −Lf y1 + [f (x) + g1 (x) u1 + · · · + g6 (x) u6 ]
dt ∂x
= − (z1,1 + z1,2 ) + L2f y1 + Lg1 Lf y1 u1 + · · · + Lg6 Lf y1 u6
1 (7.74)
= −z1,1 − z1,2 + L2f y1 + u1
Ld
Rs Lq 1
= −z1,1 − z1,2 − x1 + x2 x3 + u1
Ld Ld Ld
3)
dT2,1 (x) dy2 ∂y2
ż2,1 = = = [f (x) + g1 (x) u1 + · · · + g6 (x) u6 ]
dt dt ∂x
= Lf y2 ⇒ x3 − x∗3
(7.75)
= y2 + z2,2
= z2,1 + z2,2
129
4)
5)
6)
dT3,1 (x) dy3 ∂y3
ż3,1 = = = [f (x) + g1 (x) u1 + · · · + g6 (x) u6 ]
dt dt ∂x
= Lf y3 ⇒ Rth x4 − ωg Lth x5 + Ethd − u∗dl
(7.78)
= y3 + z3,2
= z3,1 + z3,2
7)
130
8)
dT4,1 (x) dy4 ∂y4
ż4,1 = = = [f (x) + g1 (x) u1 + · · · + g6 (x) u6 ]
dt dt ∂x
= Lf y4 ⇒ −ωg Lth x4 + Rth x5 + Ethq − u∗ql
(7.80)
= y4 + z4,2
= z4,1 + z4,2
9)
dT4,2 (x) ∂Lf y4
ż4,2 = = −Lf y4 + [f (x) + g1 (x) u1 + · · · + g6 (x) u6 ]
dt ∂x
= − (z4,1 + z4,2 ) + L2f y4 + Lg1 Lf y4 u1 + · · · + Lg6 Lf y4 u6
ωg Lth Rth
= −z4,1 − z4,2 + L2f y4 − u3 + u4
Lf Lf
2Rth Lth ωg − Lf Rth ωg Rth
= −z4,1 − z4,2 + x4 − Ethd
Lf Lf
2
Rth + Lf Lth ωg2 + L2th ωg2
Lth ωg ωg Lth Rth
− x5 + Ethd − u3 + u4
Lf Lf Lf Lf
(7.81)
10)
dT5,1 (x) dy5 ∂y5
ż5,1 = = = [f (x) + g1 (x) u1 + · · · + g6 (x) u6 ]
dt dt ∂x
= Lf y5 ⇒ x7 − x∗7
(7.82)
= y5 + z5,2
= z5,1 + z5,2
11)
dT5,2 (x) ∂Lf y5
ż5,2 = = −Lf y5 + [f (x) + g1 (x) u1 + · · · + g6 (x) u6 ]
dt ∂x
= − (z5,1 + z5,2 ) + udc isdc + Lg1 Lf y5 u1 + · · · + Lg6 Lf y5 u6 (7.83)
3
= −z5,1 − z5,2 + udc isdc − x4 u3 + u5
2
12)
dT6,1 (x) dy6 ∂y6
ż6,1 = = = [f (x) + g1 (x) u1 + · · · + g6 (x) u6 ]
dt dt ∂x
= Lf y6 ⇒ x6 − x∗6
(7.84)
= y6 + z6,2
= z6,1 + z6,2
131
13)
dT6,2 (x) ∂Lf y6
ż6,2 = = −Lf y6 + [f (x) + g1 (x) u1 + · · · + g6 (x) u6 ]
dt ∂x
ubat
= − (z6,1 + z6,2 ) + + Lg1 Lf y6 u1 + · · · + Lg6 Lf y6 u6 (7.85)
Lb
ubat udc
= −z6,1 − z6,2 + + u6
Lb Lb
From (7.73) - (7.85), the permanent magnet synchronous generator-based wind energy system
(7.65) in its strict feedback form will be
132
It is easy to substitute for x values from (7.70). If the matrix
1
0 0 0 0 0
Ld 2
0 − 3P λ 0 0 0 0
2JLq r
0 0 Rth
Lf
− ωgLLfth 0 0
(7.87)
− ωgLLfth
Rth
0 0 0 0
Lf
− 32 x4
0 0 0 1 0
0 0 0 0 0 uLdcb
One of the features that distinguishes the electric utility industry is the way that
participants are interconnected. The purpose of substations and transmission lines is to
deliver energy to customers upon demand. Currently, electricity of a large scale cannot be
stored. That is, the amount of electricity provided to customers must always be balanced
by generators and power sources [62]. Therefore, if the design and operation of a large scale
power system is not coordinated, then there might be outages and other disruptions [63].
Avoiding this situation becomes more important as communities become more dependent on
electrical infrastructure. As examples, this includes electrical power for telecommunications
and computer networks; hospitals and healthcare equipment; wastewater treatment facili-
ties and municipal water pumping stations; fuel distribution pipelines such as natural gas;
transportation systems such as electric rail, vehicle traffic signaling and air traffic control
centers. Throughout history, there have been severe power outages across North America.
In the summer of 2003, a severe power outage occurred in the Northeast US impacting 50
million customers for almost 30 hours [64]. Consequently, the Federal Power Act was passed
in 2005 to develop standards that would increase the reliability of the electric grid. More-
over, this act resulted in the establishment of the Electric Reliability Organization (ERO).
This mission was delegated to the North American Electric Reliability Corporation (NERC).
NERC subsequently assigned some of this authority to regional entities. Western Electricity
Coordinating Council (WECC) is one of those entities [65,66]. In this research, a novel stabi-
lization approach of the WECC 3-machine system using backstepping control methodology
133
based on the Lyapunov theorem of stability is proposed as a means to improve system sta-
bility. This is achieved by injecting power into the system from large-scale battery sources.
The coordinates of the feedback linearizable WECC 3-machine system is transformed based
on the Lie derivative of the system outputs. In the literature, the WECC 3-machine system
was considered in several previous studies. In [67], a case study of the WECC 3-machine
system was considered to illustrate an approach for vulnerability analysis proposed for coor-
dinated variable structure switching. This is a class of cyber-physical reconfiguration attacks
in which the system is destabilized when the opponent applies a switching sequence to the
target circuit components. However, this approach was based on the linearized model of the
system. In [68], a reduced-order model for synchronous generator dynamics was developed
and then used with a balancing authority area dynamic model in which to design a dynamic
automatic generation control. The idea was demonstrated on the WECC 3-Machine system.
A comparison study in [69] showed a satisfactory response from applying power oscillation
damping (POD) function versus that of a power system stabilizer (PSS) on the WECC 3-
machine system with PV. In [62], local feedback and global control were used to investigate
the stability of the power grid network. The results in this case were not feasible for im-
plementation. The WECC 3-machine system was also a case study in [70] where screening
stability and remedial action tool were proposed. The approach depends on the Lyapunov
functions to select a suitable remedial action that stabilizes the power system. Consider
the classical model for Western System Coordinating Council (WECC) 3-Machine system
appearing in [71]
134
where
h iT
x= ω1 δ̂2 ω2 δ̂3 ω3
h iT
u= TBAT 1 TBAT 2 TBAT 3
h iT
y= ω1 δ̂2 δ̂3
Parameter Definition
1 0 0
0 0 0
g1 (x) =
0
g2 (x) =
1
g3 (x) =
0
(7.90)
0 0 0
0 0 1
135
Starting by finding the systems relative degree through differentiating each output until at
least one input appears.
y 1 = x1
(1)
y1 = ẋ1 (7.91)
= C12 sin(x2 ) − D12 cos(x2 ) + C13 sin(x4 ) − D13 cos(x4 ) − P1 + u1
y 2 = x2
(1)
y2 = ẋ2
= x3 − x1
(7.92)
(2)
y2 = ẋ3 − ẋ1
= −C21 sin(x2 ) − D21 cos(x2 ) − C23 sin(x2 − x4 ) − D23 cos(x2 − x4 ) − P2 + u2
− C12 sin(x2 ) + D12 cos(x2 ) − C13 sin(x4 ) + D13 cos(x4 ) + P1 − u1
y3 = x4
(1)
y3 = ẋ4
= x5 − x1
(7.93)
(2)
y3 = ẋ5 − ẋ1
= −C31 sin(x4 ) − D31 cos(x4 ) − C32 sin(x4 − x2 ) − D32 cos(x4 − x2 ) − P3 + u3
− C12 sin(x2 ) + D12 cos(x2 ) − C13 sin(x4 ) + D13 cos(x4 ) + P1 − u1
Thus, the system (7.88) has sub-relative degree ρ3 = 2 corresponding to output y3 . From
(7.91)-(7.93), system (7.88) has a vector relative degree ρ = {ρ1 , ρ2 , ρ3 } also ρ1 + ρ2 + ρ3 =
1 + 2 + 2 = 5 = n which is the system’s dimension. Hence, the transformation matrix that
may transform the system (7.88) into its strict feedback form can easily be obtained from
(7.52) as
z1,1 y1 x1
z y2 x2
2,1
z2,2 = T (x) = −y2 + Lf y2 = −x2 + x3 − x1 (7.94)
z3,1 y3 x4
z3,2 −y3 + Lf y3 −x4 + x5 − x1
136
The determinant of the Jacobian matrix of (7.94) is easily computed as
1)
∂y1
ż1,1 = [f (x) + g1 (x) u1 + g2 (x) u2 + g3 (x) u3 ]
∂x
= Lf y1 + Lg1 y1 u1 (7.97)
2)
∂y2
ż2,1 = [f (x) + g1 (x) u1 + g2 (x) u2 + g3 (x) u3 ]
∂x
= Lf y2
(7.98)
= x3 − x1
= z2,1 + z2,2
3)
∂ (Lf y2 )
ż2,2 = − (z2,1 + z2,2 ) + [f (x) + g1 (x) u1 + g2 (x) u2 + g3 (x) u3 ]
∂x
= −z2,1 − z2,2 + L2f y2 + Lg1 Lf y2 u1 + Lg2 Lf y2 u2 + Lg3 Lf y2 u3
= −z2,1 − z2,2 − C12 sin(z2,1 ) + D12 cos(z2,1 ) − C13 sin(z3,1 ) + D13 cos(z3,1 ) + P1
− C21 sin(z2,1 ) − D21 cos(z2,1 ) − C23 sin(z2,1 − z3,1 ) − D23 cos(z2,1 − z3,1 ) − P2
− u1 + u2
= −z2,1 − z2,2 − (C12 + C21 ) sin(z2,1 ) + (D12 − D21 ) cos(z2,1 ) − C13 sin(z3,1 )
+ D13 cos(z3,1 ) + P1 − C23 sin(z2,1 − z3,1 ) − D23 cos(z2,1 − z3,1 ) − P2 − u1 + u2
(7.99)
137
4)
∂y3
ż3,1 = [f (x) + g1 (x) u1 + g2 (x) u2 + g3 (x) u3 ]
∂x
= Lf y3
(7.100)
= x5 − x1
= z3,1 + z3,2
5)
∂ (Lf y3 )
ż3,2 = − (z3,1 + z3,2 ) + [f (x) + g1 (x) u1 + g2 (x) u2 + g3 (x) u3 ]
∂x
= −z3,1 − z3,2 + L2f y3 + Lg1 Lf y3 u1 + Lg2 Lf y3 u2 + Lg3 Lf y3 u3
= −z3,1 − z3,2 − C12 sin(z2,1 ) + D12 cos(z2,1 ) − C13 sin(z3,1 ) + D13 cos(z3,1 ) + P1
− C31 sin(z3,1 ) − D31 cos(z3,1 ) − C32 sin(z3,1 − z2,1 ) − D32 cos(z3,1 − z2,1 ) − P3
− u1 + u3
= −z3,1 − z3,2 − C12 sin(z2,1 ) + D12 cos(z2,1 ) − (C13 + C31 ) sin(z3,1 )
+ (D13 − D31 ) cos(z3,1 ) + P1 − C32 sin(z3,1 − z2,1 ) − D32 cos(z3,1 − z2,1 )
− P3 − u1 + u3
(7.101)
From (7.97)-(7.101) the system (7.88) in its strict feedback form will be
138
It is clear from (7.102) that
1 2 3
g1,ρ 1
g1,ρ 1
g1,ρ 1
G (x) = 1 2 3
g g
2,ρ2 2,ρ2 2,ρ2 g
1 2 3
g3,ρ 3
g3,ρ 3
g3,ρ 3
(7.103)
1 0 0
= −1 1 0
−1 0 1
is non-singular. Thus, to design a stabilizing control function, the procedure in section 5.4
is applied to each subsystem in (7.102) as follows:
Sub-system z 1,1
Step:1
ė1,1 = ż1,1
(7.104)
= C12 sin(z2,1 ) − D12 cos(z2,1 ) + C13 sin(z3,1 ) − D13 cos(z3,1 ) − P1 + u1
u1 = −C12 sin(z2,1 ) + D12 cos(z2,1 ) − C13 sin(z3,1 ) + D13 cos(z3,1 ) + P1 − k1,1 e1,1 , k1,1 > 0
(7.107)
yields:
V̇1,1 (e1,1 ) = −k1,1 e21,1 (7.108)
139
Sub-system z 2,i
Step:1
Let z2,2 be a virtual control input whose desired value is denoted by α1 . Let e2,1 = z2,1 . Take
its derivative in time
ė2,1 = ż2,1
(7.109)
= z2,1 + z2,2
Choose the Lyapunov function:
1
V2,1 (e2,1 ) = e22,1 (7.110)
2
Differentiating it in time results in:
V̇2,1 (e2,1 ) = e2,1 ė2,1
(7.111)
= e2,1 [z2,1 + z2,2 ]
Choosing:
z2,2 = α1 = −z2,1 − k2,1 e2,1 , k2,1 > 0 (7.112)
yields:
V̇2,1 (e2,1 ) = −k2,1 e22,1 (7.113)
Step:2
The stabilizing function z2,2 in step 1 is not the valid function but instead is the desired one.
Therefore, one can define the error parameter
140
Choose the augmented Lyapunov function:
1 1
V2,2 (e2,1 , e2,2 ) = e22,1 + e22,2 (7.117)
2 2
Differentiating it in time results in:
V̇2,2 (e2,1 , e2,2 ) = −k2,1 e22,1 + e2,2 e2,1 − z2,1 − z2,2 − (C12 + C21 ) sin(z2,1 )
Choosing:
Sub-system z 3,i
Step:1
Let z3,2 be a virtual control input whose desired value is denoted by α2 . Let e3,1 = z3,1 . Take
its derivative in time
ė3,1 = ż3,1
(7.122)
= z3,1 + z3,2
Choose the Lyapunov function as:
1
V3,1 (e3,1 ) = e23,1 (7.123)
2
141
Differentiating it in time results in:
V̇3,1 (e3,1 ) = e3,1 ė3,1
(7.124)
= e3,1 [z3,1 + z3,2 ]
Choosing:
z3,2 = α2 = −z3,1 − k3,1 e3,1 , k3,1 > 0 (7.125)
yields:
V̇3,1 (e3,1 ) = −k3,1 e23,1 (7.126)
Step:2
The stabilizing function z3,2 in step 1 is not the valid function but instead is the desired one.
Therefore, one can define the error parameter
142
Substituting for α2 from (7.125) yields
V̇3,2 (e3,1 , e3,2 ) = −k3,1 e23,1 + e3,2 e3,1 − z3,1 − z3,2 − C12 sin(z2,1 ) + D12 cos(z2,1 )
From (7.103), (7.107), (7.120) and (7.133), the overall stabilizing function is given by:
−1
1 0 0
uz =
−1 1 0
−1 0 1
−C12 sin(z2,1 ) + D12 cos(z2,1 ) − C13 sin(z3,1 ) + D13 cos(z3,1 ) + P1 − k1,1 e1,1
−e2,1 + z2,1 + z2,2 + (C12 + C21 ) sin(z2,1 ) − (D12 − D21 ) cos(z2,1 ) + C13 sin(z3,1 ) − D13 cos(z3,1 ) − P1 + C23 sin(z2,1 − z3,1 )
× +D23 cos(z2,1 − z3,1 ) + P2 − k2,2 e2,2 + α̇1
−e3,1 + z3,1 + z3,2 + C12 sin(z2,1 ) − D12 cos(z2,1 ) + (C13 + C31 ) sin(z3,1 ) − (D13 − D31 ) cos(z3,1 ) − P1 + C32 sin(z3,1 − z2,1 )
+D32 cos(z3,1 − z2,1 ) + P3 − k3,2 e3,2 + α̇2
(7.135)
Using the transformation matrix (7.94), the stabilizing function (7.135) can be transformed
back to the following stabilizing function in the original system’s coordinates
−1
1 0 0
ux =
−1 1 0
−1 0 1
−C12 sin(x2 ) + D12 cos(x2 ) − C13 sin(x4 ) + D13 cos(x4 ) + P1 − k1,1 x1
−x2 + x3 − x1 + (C12 + C21 ) sin(x2 ) − (D12 − D21 ) cos(x2 ) + C13 sin(x4 ) − D13 cos(x4 ) − P1 + C23 sin(x2 − x4 )
× +D23 cos(x2 − x4 ) + P2 − k2,2 (−x2 + k3 − x1 − α1 ) + α̇1
−x4 + x5 − x1 + C12 sin(x2 ) − D12 cos(x2 ) + (C13 + C31 ) sin(x4 ) − (D13 − D31 ) cos(x4 ) − P1 + C32 sin(x4 − x2 )
+D32 cos(x4 − x2 ) + P3 − k3,2 (−x4 + x5 − x1 − α2 ) + α̇2
(7.136)
143
where
α1 = −x2 − k2,1 x2
α̇1 = −x3 + x1 − k2,1 (x3 − x1 )
(7.137)
α2 = −x4 − k3,1 x4
α̇2 = −x5 + x1 − k3,1 (x5 − x1 )
A comparison between the system’s response to random initial conditions in both open-loop
and closed-loop is given using Matlab/Simulink. The WECC 3-machine system (7.88) of
parameters obtained from [71] and listed in Table 7.6 was put in a closed-loop configuration
with the stabilizing function (7.136) as illustrated in the block diagram in Fig. 7.3. The
linear optimal control design with quadratic performance index [50] was used to design gain
values as k1,1 = 0.5774, k2,1 = 2.2188, k2,2 = 1.4023, k3,1 = 2.2188 and k3,2 = 1.4023.
𝑥1 𝑧1,1
WECC IN
WECC 𝑥2 𝑧2,1
𝑥3 STRICT 𝑧2,2
SYSTEM 𝑻 𝒙
𝑥4 FEEDBACK 𝑧3,1
(7.88) (7.94)
𝑥5 FORM 𝑧3,2
(7.102)
𝒖𝒙 𝑻 𝒙
𝒖𝒛 BACKSTEPPING
(7.94) (7.135) CONTROL
(7.136)
(7.104) - (7.134)
Figure 7.3: Closed-loop block diagram for transformation into strict feedback form and
backstepping control of WECC 3-machine system.
144
Table 7.6: WECC 3-machine system Parameters values.
E1 1.054 P1 D11
E2 1.050 P2 D22
E3 1.017 P3 D33
Fig. 7.4 - Fig. 7.7 show system states, rotor angular differences, rotor angles and velocities
respectively in both open-loop and closed-loop situations. Simulation results show the effec-
tiveness of backstepping approach in stabilizing the system. Fig. 7.4a shows the stabilization
of the system’s states ω1 , δ̂2 , ω2 , δ̂3 , ω3 in closed-loop configuration whereas Fig. 7.4b shows
the system’s response for the same initial conditions in open-loop configuration. Rotor angu-
lar differences δ̂1 , δ̂2 , δ̂3 in closed-loop configuration are shown in Fig. 7.5a and in open-loop
in Fig. 7.5b. Fig. 7.6a shows the stabilization of the rotors angles (δ1 , δ2 , δ3 ) in closed-loop
and Fig. 7.6b shows the instability in open-loop. Finally, Fig. 7.7a shows the stability of the
rotor angular velocities (ω1 , ω2 , ω3 ) in closed-loop configuration and Fig. 7.7b shows their
instability when no controller is applied.
145
20 250
15 200
10 150
5 100
0 50
-5 0
0 5 10 15 0 5 10 15
10 250
200
5
150
100
0
50
-5 0
0 5 10 15 0 5 10 15
(a) Rotor angular differences in closed-loop. (b) Rotor angular differences in open-loop.
146
10 300
250
5 200
150
0 100
50
-5 0
0 5 10 15 0 5 10 15
20 30
25
15
20
10
15
5
10
0
5
-5 0
0 5 10 15 0 5 10 15
(a) Rotor angular velocities in closed-loop. (b) Rotor angular velocities in open-loop.
147
8 Conclusion
148
Bibliography
[1] R. Su, L. Hunt, and G. Meyer, “Canonical forms for nonlinear systems,” National
Aeronautics and Space Administration,NASA TM-81323, 1983.
[2] M. Mohammadzahei, H. Ziaiefar, M. Ghodsi, and I. B. Bahadur, “Yaw control of an
unmanned helicopter with feedback linearization,” in 2019 1st International Conference
on Unmanned Vehicle Systems-Oman (UVS), Feb 2019, pp. 1–5.
[3] Z. Li, Q. Hao, F. Gao, L. Wu, and M. Guan, “Nonlinear decoupling control of two-
terminal mmc-hvdc based on feedback linearization,” IEEE Transactions on Power
Delivery, vol. 34, no. 1, pp. 376–386, Feb 2019.
[4] A. Accetta, F. Alonge, M. Cirrincione, F. DIppolito, M. Pucci, R. Rabbeni, and A. Sfer-
lazza, “Robust control for high performance induction motor drives based on partial
state-feedback linearization,” IEEE Transactions on Industry Applications, vol. 55,
no. 1, pp. 490–503, Jan 2019.
[5] A. Akbarimajd, M. Olyaee, B. Sobhani, and H. Shayeghi, “Nonlinear multi-agent op-
timal load frequency control based on feedback linearization of wind turbines,” IEEE
Transactions on Sustainable Energy, vol. 10, no. 1, pp. 66–74, Jan 2019.
[6] L. Deori, S. Garatti, and M. Prandini, “4-d flight trajectory tracking: A receding horizon
approach integrating feedback linearization and scenario optimization,” IEEE Transac-
tions on Control Systems Technology, vol. 27, no. 3, pp. 981–996, May 2019.
[7] S. Arora, P. Balsara, and D. Bhatia, “Input output linearization of a boost converter
with mixed load (constant voltage load and constant power load),” IEEE Transactions
on Power Electronics, vol. 34, no. 1, pp. 815–825, Jan 2019.
[8] G. Lou, W. Gu, W. Sheng, X. Song, and F. Gao, “Distributed model predictive sec-
ondary voltage control of islanded microgrids with feedback linearization,” IEEE Access,
vol. 6, pp. 50 169–50 178, 2018.
[9] J.-J. E. Slotine, W. Li et al., Applied nonlinear control. Prentice hall Englewood Cliffs,
NJ, 1991, vol. 199, no. 1.
[10] H. Khalil, Nonlinear Systems, ser. Pearson Education. Prentice Hall, 2002.
[11] D. Cheng, X. Hu, and T. Shen, Analysis and Design of Nonlinear Control Systems.
Springer Berlin Heidelberg, 2011.
[12] C. Xia, Q. Geng, X. Gu, T. Shi, and Z. Song, “Input–output feedback linearization
and speed control of a surface permanent-magnet synchronous wind generator with the
boost-chopper converter,” IEEE Transactions on Industrial Electronics, vol. 59, no. 9,
pp. 3489–3500, 2012.
149
[13] M. Krstić, I. Kanellakopoulos, and P. Kokotović, Nonlinear and adaptive control design,
ser. Adaptive and learning systems for signal processing, communications, and control.
Wiley, 1995.
[15] M. Krstic, Delay compensation for nonlinear, adaptive, and PDE systems. Springer,
2009.
[16] M. Izadi, J. Abdollahi, and S. Dubljevic, “Backstepping control of pdes with time-
varying domain,” in 2014 American Control Conference, June 2014, pp. 380–385.
[18] Y. Fan, Y. Cao, and T. Li, “Adaptive integral backstepping control for trajectory track-
ing of a quadrotor,” in 2017 4th International Conference on Information, Cybernetics
and Computational Social Systems (ICCSS), July 2017, pp. 619–624.
[19] W. Jasim and D. Gu, “Integral backstepping controller for quadrotor path tracking,” in
2015 International Conference on Advanced Robotics (ICAR), July 2015, pp. 593–598.
[20] H. El Fadil and F. Giri, “Backstepping based control of pwm dc-dc boost power con-
verters,” in 2007 IEEE International Symposium on Industrial Electronics, June 2007,
pp. 395–400.
[21] K. S. Alharbi and R. A. McCann, “Adaptive backstepping control of pwm dc-dc boost
power converter considering parasitic elements effect,” in 2018 Clemson University
Power Systems Conference (PSC), Sep. 2018, pp. 1–6.
[24] T. T. Tran, “Nonlinear flight control design using backstepping methodology,” Ph.D.
dissertation, Old Dominion University, 2016.
[25] S. Rudra, R. Barai, and M. Maitra, Block Backstepping Design of Nonlinear State
Feedback Control Law for Underactuated Mechanical Systems. Springer Singapore,
2016.
150
[26] C. Weatherburn, Differential Geometry of Three Dimensions. Cambridge University
Press, 2016, no. v. 2.
[28] C. Chen, P. Chen, and K. (Firm), Linear System Theory and Design, ser. Oxford series
in electrical and computer engineering. Oxford University Press, 1999.
[29] Q. Lu, Y. Sun, and S. Mei, Nonlinear Control Systems and Power System Dynamics,
ser. The International Series on Asian Studies in Computer and Information Science.
Springer US, 2013.
[30] K. Hangos, J. Bokor, and G. Szederkényi, Analysis and Control of Nonlinear Process
Systems, ser. Advanced Textbooks in Control and Signal Processing. Springer London,
2006.
[31] R. W. Brockett, “Nonlinear systems and differential geometry,” Proceedings of the IEEE,
vol. 64, no. 1, pp. 61–72, Jan 1976.
[33] Yingjuan Yang, “Observer design for a class of multi-input multi-output affine nonlinear
systems,” in 2010 Chinese Control and Decision Conference, May 2010, pp. 962–965.
[34] A. Isidori, Lectures in Feedback Design for Multivariable Systems, ser. Advanced Text-
books in Control and Signal Processing. Springer International Publishing, 2016.
[35] A. Arutyunov, D. Karamzin, and F. Pereira, Optimal Impulsive Control: The Extension
Approach, ser. Lecture Notes in Control and Information Sciences. Springer Interna-
tional Publishing, 2018.
[36] A. Isidori, Nonlinear Control Systems, ser. Communications and Control Engineering.
Springer London, 2013.
[37] M. Rios-Bolivar, “Adaptive backstepping and sliding mode control of uncertain nonlin-
ear systems.” Ph.D. dissertation, University of Sheffield, 1997.
[38] L.-Y. Chang and H.-C. Chen, “Linearization and input-output decoupling for nonlinear
control of proton exchange membrane fuel cells,” Energies, vol. 7, no. 2, pp. 591–606,
2014.
[40] R. Su, “On the linear equivalents of nonlinear systems,” Systems and Control Letters,
vol. 2, no. 1, pp. 48 – 52, 1982.
151
[41] L. Hunt and R. Su, “On the linear equivalents of nonlinear time-varying systems,”
International Symposium on Mathematical Theory of Networks and Systems, vol. 4, pp.
119 – 123, 1981.
[42] L. Hunt, , and G. Meyer, “Global transformations of nonlinear systems,” IEEE Trans-
actions on Automatic Control, vol. 28, no. 1, pp. 24–31, January 1983.
[43] H. Kwatny and G. Blankenship, Nonlinear Control and Analytical Mechanics: A Com-
putational Approach, ser. Control Engineering. Birkhäuser Boston, 2000.
[44] B. Jakubczyk, “On linearization of control systems,” Bull. Acad. Polonaise Sci. Ser.
Sci. Math, vol. 28, pp. 517–522, 1980.
[45] D. Cheng, T.-J. Tarn, and A. Isidori, “Global external linearization of nonlinear systems
via feedback,” IEEE Transactions on Automatic Control, vol. 30, no. 8, pp. 808–811,
August 1985.
[47] A. Krener, “On the equivalence of control systems and the linearization of nonlinear
systems,” SIAM Journal on Control, vol. 11, no. 4, pp. 670–676, 1973.
[48] L. Hunt, R. Su, and G. Meyer, “Design for multi-input nonlinear systems, differential
geometric control theory,” R. Brockett, R. Mllman, H. Sussmann eds, pp. 268–298,
1983.
[49] I. A. Tall, “Multi-input control systems: Explicit feedback linearization,” in 49th IEEE
Conference on Decision and Control (CDC), Dec 2010, pp. 5378–5383.
[50] K. Ogata and Y. Yang, Modern control engineering. Prentice hall India, 2002, vol. 4.
[51] S. Sastry and M. Bodson, Adaptive Control: Stability, Convergence and Robustness, ser.
Dover Books on Electrical Engineering Series. Dover Publications, 2011.
[52] J. Spooner, M. Maggiore, R. Ordóñez, and K. Passino, Stable Adaptive Control and
Estimation for Nonlinear Systems: Neural and Fuzzy Approximator Techniques, ser.
Adaptive and Cognitive Dynamic Systems: Signal Processing, Learning, Communica-
tions and Control. Wiley, 2004.
152
[56] V. Lakshmikantham, S. Leela, and A. Martynyuk, Stability Analysis of Nonlinear Sys-
tems, ser. Systems & Control: Foundations & Applications. Springer International
Publishing, 2015.
[58] Y. Lin and E. D. Sontag, “Control-lyapunov universal formulas for restricted inputs,”
To appear in ControlTheory and Advanced Technology, vol. 10, no. 4, 1995.
[59] H. Márquez, Nonlinear Control Systems: Analysis and Design. Wiley, 2003.
[61] B. Housseini, A. F. Okou, and R. Beguenane, “Robust nonlinear controller design for on-
grid/off-grid wind energy battery-storage system,” IEEE Transactions on Smart Grid,
vol. 9, no. 6, pp. 5588–5598, Nov 2018.
[63] M. Elkins, “California western energy: Western electricity coordinating council (wecc),”
https://stanford.app.box.com/s/zphcboy8atacw0bhkq2lfgc0xvt3rdlv, 2019, accessed 18
June 2019.
[64] G. Patsakis, D. Rajan, I. Aravena, J. Rios, and S. Oren, “Optimal black start allocation
for power system restoration,” IEEE Transactions on Power Systems, vol. 33, no. 6, pp.
6766–6776, Nov 2018.
153
[70] J. Mitra, M. Benidris, N. Nguyen, and S. Deb, “A visualization tool for real-time dy-
namic contingency screening and remedial actions,” IEEE Transactions on Industry
Applications, vol. 53, no. 4, pp. 3268–3278, July 2017.
[71] P. Sauer and M. Pai, Power System Dynamics and Stability. Stipes Publishing L.L.C.,
2006.
154