Robust Trajectory Tracking and Payload Delivery of a Quadrotor Under Multiple
State Constraints

Thesis submitted in partial fulfillment
of the requirements for the degree of

Master of Science
in
Electronics and Communication Engineering by Research

by

SOURISH GANGULY
2019702015
<EMAIL_ADDRESS>
ROBOTICS RESEARCH CENTER
International Institute of Information Technology
Hyderabad - 500 032, INDIA
OCTOBER 2021

Copyright © Sourish Ganguly, 2021
All Rights Reserved

International Institute of Information Technology
Hyderabad, India
CERTIFICATE

It is certified that the work contained in this thesis, titled “Robust
Trajectory Tracking and Payload Delivery of a Quadrotor Under Multiple State
Constraints” by Sourish Ganguly, has been carried out under my supervision and
is not submitted elsewhere for a degree.

|
---|---
Date |  Advisor: Dr. Spandan Roy

To MY PARENTS

## Acknowledgments

First and foremost, I wish to express my sincerest gratitude to my advisor,
Dr. Spandan Roy, for his endless support throughout my years of research at
IIIT, Hyderabad. Because of his guidance, I have been able to vastly improve
my outlook towards tackling challenging problems. He has always been extremely
kind and approachable whenever I had any doubts regarding the subject matter.
In this two years, I have greatly enjoyed learning and re-learning intricacies
of control theory, as he has always mentored me in such a way where I could
have space to think independently and confidently. My progress and growth as a
researcher is because of his constant encouragement.

Secondly, I want to thank the Robotics Research Center (RRC). I wish to thank
every senior and every research scholar who never made me forget how exciting
research life is. Their positive attitude towards tackling problem statements
constantly gave me strength to progress.

I feel immensely privileged to have been a part of IIIT Hyderabad. I have made
great friends here who have always been a source of indispensable support. The
seniors have always been extremely kind, and I have learnt a great deal from
them. I have thoroughly enjoyed every second of my time here, and I will try
my best to carry its core values and principles for the rest of my life.

I wish to thank all my professors throughout my journey as an engineering
student who always been extremely supportive of my decision to pursue a career
in research, and my school teachers who, even to this day, encourage me to
keep pushing towards my goals.

I cannot thank my family enough for supporting my dreams. My journey to
research would have never reached its destination had it not been for the
unfathomable amount of faith my family has in me. Throughout my ups and downs,
my mother has always been my strongest pillar, reminding me of my strength and
my potential. I have always been inspired by my father’s determination and
focus, and he has greatly helped me in developing self-discipline and
composure.

Lastly, I want to thank all my friends who have been there for me through
countless years of us growing up together. I have always found their presence
during times of difficulty, and, whenever I have felt unsure, they have
cheered me on and helped me restore faith in myself. I am extremely fortunate
to have them by my side.

## Abstract

With quadrotors becoming immensely popular in applications such as relief
operations, infrastructure maintenance etc., a key control design challenge
arises when the quadrotor has to manoeuvre through constrained spaces during
various operational scenarios: for example, inspecting a pipeline within
predefined velocity and space, dropping relief material at a precise location
under tight spaces etc., under the face of parametric uncertainties and
external disturbances. To tackle such scenarios, a controller needs to ensure
a predefined tracking accuracy so as not to violate the constraints while
simultaneously tackling uncertainties and disturbances. However, state-of-the-
art controllers dealing with constrained system motion are either not
applicable for an underactuated system like quadrotor, or cannot tackle system
uncertainties under full state constraints. This work attempts to fill such a
gap in literature by designing Barrier Lyapunov Function (BLF) based robust
controllers to satisfy multiple state-constraints while simultaneously
negotiating parametric uncertainties and external disturbances. The
superiority of the BLF control method over a typical unconstrained controller
is demonstrated, followed by a robust control design to satisfy position and
orientation constraints on quadrotor dynamics. Finally, full state-constraints
on a quadrotor(i.e., constraints on the position, orientation, linear velocity
and angular velocity) are satisfied with robust control. For each control
design, the closed-loop system stability is studied analytically and the
efficacy of the design is validated extensively either via realistic
simulation scenarios or via experiments performed on a real quadrotor.

## Contents

Chapter Page

toc

## List of Figures

Figure Page

lof

## List of Tables

Table Page

lot

##  Chapter 1 Introduction

Quadrotors have become increasingly popular in the research and the commercial
domain, owing to their simple mechanical structure, vertical take-off and
landing ability, and energy efficiency. They are relatively inexpensive and
simple in implementation in the domain of Unmanned Aerial Vehicles (UAV), and
so, the recent years saw a rapid growth and applicability in various domains.
For example, quadrotors are extensively used nowadays in agricultural
applications [1, 2], surveillance operations [3, 4], wildlife and forest
monitoring [5, 6], search and rescue operations [7, 8, 9], etc. However, the
inherent underactuated nature of a quadrotor poses considerable challenge to
the Control researchers [10, 11, 12]. Additionally, quadrotors have fast-
changing dynamics which imposes practical constraints on the control design in
constrained spaces and under parametric uncertainties [13, 14]. Therefore, a
desirable objective is to develop control framework to tackle uncertainties
while allowing a quadrotor to manoeuvre in various operational scenarios.

In the following sections of this introductory chapter, the motivation for
this thesis is discussed, followed by a brief overview of the relevant
fundamental principles and methods involved in constructing this work. Then, a
brief section on the contribution of this thesis is provided, followed by the
overall organization of the thesis chapters.

###  1.1 Motivation

####  1.1.1 Quadrotors in rescue operations and payload transportation

Out of the several applications of UAVs, the chief motivation behind this
thesis is the increasing usage of quadrotors in critical missions such as
rescue and relief operations and efficient package delivery during disaster
management where it has to face several key challenges during autonomous
manoeuvring. To illustrate, consider the following scenario:

Figure 1.1: A scenario where the quadrotor has to autonomously manoeuvre
through a narrow opening in an emergency operation

Fig. 1.1 describes a scenario where a quadrotor (top view) is commanded to
follow a trajectory that proceeds through a narrow opening that leads to an
emergency area. In this situation:

  * •

The quadrotor has to successfully manoeuvre through the narrow space. It might
also encounter other physically constrained areas such as open windows,
pipelines, etc.

  * •

If the quadrotor is carrying a payload whose exact mass is not completely
known (for example: ration supply), it has to deliver it to the designated
spot with high precision.

This scenario demands the quadrotor to operate under strict physical
constraints which limit exercising free movement at any instant. To
illustrate, the quadrotor in Fig. 1.1 passing through the narrow opening
cannot deviate more than the distance between the boundary wall and the edge
of a quadrotor frame, measured when the centre of the quadrotor frame lies on
the desired trajectory. Similar constraints in the other directions also apply
(which are not decipherable from the diagram) where the quadrotor needs to
always maintain a tracking error less than what would result in collision with
the boundary walls. Additionally, while dropping the payload at the target,
the quadrotor cannot deviate from the allowable bounds of the target. To
summarize, constraint handling is critical not only to the payload delivery
operation, but to the safety of the quadrotor itself.

These critical operations have been explored in various works: vision based
SLAM technology is employed in [15] for autonomous navigation of a quadrotor;
the work [16] details optimal trajectory generation of a quadrotor where the
payload has a constraint on its swing angle. Controlling the quadrotor under
such critical scenarios having space constraints requires precise tracking
with predefined accuracy, which becomes even more challenging if the knowledge
on the system dynamic parameters are limited (such as the variability in the
payload mass and center-of-mass (COM)) and there are significant external
disturbances (such as wind gust, etc). In the following section, related works
and contributions regarding the above issues are explored.

####  1.1.2 Related works and challenges

It is known that the states of a plant undergo transients. Some of the key
parameters of these transients include the rise-time, settling time,
overshoot, etc. These parameters are usually controlled via tuning of the
user-defined control gains. In purely theoretical systems, where the system
parameters are completely known, tuning is a definitive approach to mitigate
undesirable transients. Research has progressed to robust and adaptive control
solutions which rely on tuning to ensure user-specific desirable performance
of a stable system. However, it is shown in [17, 18] that, in absence of any
dedicated design parameter that can explicitly impose a restriction on the
maximum deviation of the state from its desired quantity, conventional robust
or adaptive control solutions require extensive tuning to approach towards any
user-specified performance limit. In other words, tuning requires extensive
trial runs in scenarios where physical constraints become key challenges to
the tracking problem. This defeats the purpose of the quadrotor having a
relatively quicker response to an emergency situation. This even becomes more
challenging in the face of various uncertainties, such as limited knowledge on
dynamic parameters and payload. Therefore, to ensure manoeuvring of a
quadrotor under limited space with a predefined accuracy, one has to look
beyond the state-of-the-art robust [19, 20, 21, 22, 23] and adaptive [24, 25,
26, 27, 28, 29, 30] control solutions.

Usually, there are two popular approaches towards tackling such constraint
handling problems:

  * •

Barrier Lyapunov function (BLF) based solutions [17, 31, 32, 33], and

  * •

Model Predictive Control (MPC) method [18, 34, 35]

However, being computationally intensive, MPC is more suitable for slowly-
varying dynamics; whereas, a quadrotor has fast-changing dynamics. Further,
MPC is mostly applied via system discretization, while a continuous-time
system representation is more practical [18]. To illustrate, it is shown in
[36] that the Adaptive MPC requires the Recursive Least Square method for
parameter estimation on a discrete state-space model. This requires high
computational complexity, compared to the computationally light approach in
this thesis.

Then, the question arises whether the existing BLF-based solutions can be
applied to quadrotor. Most of the BLF-based controllers have been carried out
on fully actuated systems (cf. [17, 31, 33]); a few recent works on quadrotors
using BLF cannot deal with system uncertainty and external disturbances (cf.
[32, 37]). Furthermore, as previously discussed, a quadrotor system is
underactuated by nature, which indeed poses a great challenge to impose
multiple state-constraints through the BLF method.

In view of the above discussions and to the best of the author’s knowledge, a
control solution for uncertain quadrotor systems under single or multiple
state-constraints is still missing at large.

###  1.2 Contribution of this thesis

Based on the issues faced as described in the above discussion, this thesis
attempts to fill a gap in literature by providing major contributions toward
the following directions:

  * •

A BLF-based robust controller for a quadrotor system is formulated which obeys
state-constraints on position and orientation on all six degrees-of-freedom
(DoFs). The controller design imposes user-specific constraints on the
position and the orientation, and eventually, on all the controlled states
(i.e., position, orientation, linear and angular velocity). Additionally, the
controller can tackle parametric uncertainties and external disturbances.
Compared to [32], constraints are imposed on all the available DoFs, thereby
making the control problem more practical.

  * •

The closed-loop stability is verified analytically, and the performance of the
formulated designs are extensively validated via various realistic simulation
scenarios, and via experiments performed on a real quadrotor. The results
obtained are compared with the state-of-the-art, to validate the efficacy of
the proposed design.

###  1.3 Background

####  1.3.1 Choosing Euler-Lagrange Systems

Before proceeding towards a controller design, it is essential to model the
dynamics of the plant. Since controllable plants are diverse, a challenge is
to choose a representation of the dynamics that, to a great degree of
accuracy, serves as an appropriate model to formulate a controller from. In
other words, choosing a generalized representation of system dynamics for a
large class of real-life systems eliminates the concern of having to search
for different classes of plants for each designed controller. This is where
the Euler-Lagrange (EL) representation comes to play. The EL representation is
an extremely popular method for system modeling as it covers an enormous range
of real-world system dynamics, including underwater vehicles, robotic
manipulators, electrical circuits, aerial vehicles and marine vehicle [38, 39,
40, 41, 42, 43]. This work chooses the EL representation because it
appropriately models the dynamics of a quadrotor (discussed later in Chapter
3, Section 3.2). A brief overview of the Euler-Lagrange representation is
given below, followed by the generalized EL dynamics that have been followed
in the thesis.

The EL equations can be defined as a set of second order Ordinary Differential
Equations which are solved by minimizing the integral of a smooth function
$\mathcal{L}(t,\mathbf{q}(t),\dot{\mathbf{q}}(t))\in\mathbb{R}$, known as the
Lagrangian, where $\mathbf{q}(t),\dot{\mathbf{q}}(t)\in\mathbb{R}^{n}$ are the
generalized coordinates and the corresponding velocities in a defined
configuration. The EL equations evolve by implementing Hamilton’s Principle
and following fundamental principles in calculus of variations [44].

Let a scalar, known as the action-functional, be defined as:

$\displaystyle\Gamma$
$\displaystyle\triangleq\int_{t_{i}}^{t_{f}}\mathcal{L}(t,\mathbf{q}(t),\dot{\mathbf{q}}(t))dt$
(1.1)

where $\mathbf{q}(t_{i})$ and $\mathbf{q}(t_{f})$ are the states at the start-
point and the end-point respectively of the path taken by the physical system
defined by the Lagrangian. Hamilton’s Principle states that the path must have
stationary action [44], which ultimately leads to the popularly known form of
the Euler Lagrange equations:

$\displaystyle\frac{\partial\mathcal{L}(t,\mathbf{q}(t),\dot{\mathbf{q}}(t))}{\partial\mathbf{q}(t)}-\frac{d}{dt}\left(\frac{\partial\mathcal{L}(t,\mathbf{q}(t),\dot{\mathbf{q}}(t))}{\partial\mathbf{\dot{q}}(t)}\right)$
$\displaystyle=0$ (1.2)

In mechanical systems, the introduction of non-conservative forces like
control input, friction, drag, and other external disturbances modifies (1.2)
to the following form, as elaborated in [45]:

$\displaystyle\frac{d}{dt}\left(\frac{\partial\mathcal{L}}{\partial\mathbf{\dot{q}}}\right)-\frac{\partial\mathcal{L}}{\partial\mathbf{q}}$
$\displaystyle=\boldsymbol{\tau}+\mathbf{d_{s}}-\mathbf{h}(\mathbf{q},{\dot{\mathbf{q}}})$
(1.3)

where $\boldsymbol{\tau}\in\mathbb{R}^{n}$ is the control input,
$\mathbf{d_{s}}\in\mathbb{R}^{n}$ consist of the external disturbances, and
$\mathbf{h(q,}\dot{\mathbf{q}})\in\mathbb{R}^{n}$ represent frictional forces.

Eventually, for the purpose of this thesis, the following generalized Euler-
Lagrange dynamics of $n$ DoFs is considered:

$\displaystyle\mathbf{M(q)}\ddot{\mathbf{q}}+\mathbf{C}(\mathbf{q},\dot{\mathbf{q}})\dot{\mathbf{q}}+\mathbf{g(q)}+\mathbf{f}(\dot{\mathbf{q}})+\mathbf{d_{s}}$
$\displaystyle=\boldsymbol{\tau}$ (1.4)

where $\mathbf{M(q)}\in\mathbb{R}^{n\times n}$ the inertia matrix,
$\mathbf{C(q},\dot{\mathbf{q}})\dot{\mathbf{q}}\in\mathbb{R}^{n\times n}$
consists of Coriolis and centripetal terms, $\mathbf{g(q)}\in\mathbb{R}^{n}$
consists of gravitational terms, and
$\mathbf{f}(\dot{\mathbf{q}})\in\mathbb{R}^{n}$ consists of frictional terms.
The rest of the symbols have been already defined as they carry the same
meanings.

The above equation has some essential properties (cf. [45]) which are heavily
exploited in control design:

  * •

The generalized inertia matrix, $\mathbf{M(q)}$, is uniformly positive
definite

  * •

The term, $(\dot{\mathbf{M}}\mathbf{(q)}-2\mathbf{C(q},\dot{\mathbf{q}}))$ is
skew-symmetric.

Other properties, such as the boundedness of the gravitational term, the
disturbances, the inertial and the Coriolis matrices are discussed in detail
in Chapters 3 and 4.

####  1.3.2 The Barrier Lyapunov Function Approach

In state-space analysis of a linear system, the stability is analysed
generally via analysing the properties of the state-transition matrix [46].
However, for highly nonlinear systems where linearization techniques are not
appropriate for stability analysis, the Lyapunov Direct Method [47] is used.
It is a powerful tool for stability analysis of a non-linear control system
where one chooses a Lyapunov functional and utilizes it to analyse the
behavior of the system at the equilibrium.

To illustrate, a generalized non-linear autonomous system is considered:

$\displaystyle\dot{\mathbf{x}}(t)=\mathbf{f}(\mathbf{x}(t))$ (1.5)

where
$\mathbf{x}\in\mathbb{R}^{n},~{}\mathbf{f}:\mathbb{R}^{n}\xrightarrow{}\mathbb{R}^{n}$.
Without losing generality, let the equilibrium be at $\mathbf{x}=\mathbf{0}$
(i.e., $\mathbf{f(0)=0}~{}\forall t\geq
t_{0},~{}\text{where}~{}t_{0}~{}\text{is the time at the initial condition of
the states})$.

To proceed with the stability analysis, a generalized energy-like scalar
functional $V=V(\mathbf{x})$, called the Lyapunov functional, is chosen.
According to the Lyapunov stability criterion, the system is stable at
$\mathbf{x=0}$ if:

  * •

$V(\mathbf{x})$ is positive-definite; i.e., $V>0~{}\forall\mathbf{x}\neq
0~{}\text{and}~{}V(\mathbf{0})=0$; and

  * •

$\dot{V}=\nabla V(\mathbf{x})^{\mathsf{T}}\mathbf{f}(\mathbf{x})$ is negative
semi-definite. For asymptotic stability, $\dot{V}$ must be negative definite.

Figure 1.2: A symmetrical Barrier Lyapunov Function pertaining to state
$x\in\mathbb{R}$, with $k_{b}=5$

Barrier Lyapunov Functions [17] are a special class of Lyapunov functions,
where $V(\mathbf{x})$ is defined on the region $\mathcal{D}$ which contains
the origin, such that the function is continuous and differentiable at all
points in $\mathcal{D}$, and as $V\rightarrow\infty$, $x_{i}$ approach the
boundary of $\mathcal{D}$, provided that $x_{i}(0)\in\mathcal{D}$; where
$i=1,~{}2,~{}3,...,~{}n$.

Following the above definition, the following Barrier Lyapunov function on the
system (1.5) with $n=1$ can be constructed:

$\displaystyle V=\frac{\displaystyle 1}{\displaystyle
2}\log{\left(\frac{\displaystyle k_{b}^{2}}{\displaystyle
k_{b}^{2}-x^{2}}\right)}$ (1.6)

where the scalar $k_{b}\in\mathbb{R}^{+}$. It can be inferred from the above
equation that the domain of $V$ is positive definite for
$x\in(-k_{b},~{}k_{b})$. It will be shown in the subsequent chapters that if
$|x(0)|<|k_{b}|$, $x$ will never reach $k_{b}$, and
$-k_{b}<x(t)<k_{b}~{}\forall t\geq 0$. The nature of the function is
illustrated in Fig. 1.2, which shows a symmetrical Barrier Lyapunov Function
(i.e., the constraints are symmetrical about the y-axis), where $k_{b}=5$.
These properties make it suitable for constraint handling control problems,
and hence, its properties have been extensively utilized in this thesis.

###  1.4 Thesis Organization

The thesis is organized as follows:

  * •

Chapter 2 elaborates on the implementation and the effectiveness of the
Barrier Lyapunov Function on multi-DoF EL dynamics to provide an explanation
as to why it is superior to conventional ‘unconstrained’ control schemes which
depend on tuning to control overshoot in the transient response. The control
design is discussed, followed by the stability analysis and a simulation
scenario of a two DoF robotic manipulator.

  * •

Chapter 3 introduces the robust control design formulated for a quadrotor
under spatial constraints. The dynamics of the quadrotor are provided,
followed by the control solution. This is followed by the stability analysis.
Eventually, two simulation scenarios are provided, and the results are
discussed.

  * •

Chapter 4 extends the work of Chapter 3 by implementing full state-constraints
on the quadrotor along with robust control. Similar to Chapter 3, the control
solution is followed by the stability analysis. Finally, comparative
experimental results are provided, followed by discussion of the results.

  * •

Chapter 5 concludes the thesis and briefly discusses possible future work.

##  Chapter 2 Barrier Lyapunov Function (BLF) based Control Design: an
Overview

###  2.1 Introduction

The imposition of user-specified constraints on the output states impacts the
transient performance of the system under control, by specifying the maximum
allowable deviation of the constrained states from its desirable quantity.
This chapter focuses on the design of a Barrier Lyapunov Function based
controller (cf. [17]) on an n-DoF Euler-Lagrange system, and validates the
effectiveness of the control design through simulation of a 2-DoF robotic
manipulator. The results are compared with conventional PID control to
emphasize why extensive tuning is required for specified performance limits,
whereas the BLF controller provides explicit control parameters that bar the
states from violating the imposed constraints. This chapter serves as an
overview of the efficacy of constrained trajectory tracking control, and
serves as an inspiration for the control designs formulated for a quadrotor in
Chapters 3 and 4.

The rest of this chapter is organized in the following manner: Section 2.2
provides the system dynamics for the control design, Section 2.3 provides the
control problem, Section 2.4 shows the control solution, Section 2.5
elaborates on the stability analysis for the symmetrical BLF scenario, Section
2.6 elaborates on the stability analysis for asymmetrical BLF scenario,
Section 2.7 contains the simulation results and analysis, and finally, Section
2.8 concludes the chapter.

This chapter uses the following notations:
$\operatorname{diag}{\\{\cdot\cdot\cdot\\}}$ and $\mathbf{I}$ represent a
diagonal and an identity matrix respectively.

###  2.2 System Dynamics

This chapter follows the EL dynamics equation (1.4) defined in Chapter 1.
Rewriting the equation, we get:

$\displaystyle\mathbf{M(q)}\ddot{\mathbf{q}}+\mathbf{H}(\mathbf{q},\dot{\mathbf{q}})=\boldsymbol{\tau}$
(2.1)

where
$\mathbf{H}(\mathbf{q},\dot{\mathbf{q}})\triangleq\mathbf{C}(\mathbf{q},\dot{\mathbf{q}})\dot{\mathbf{q}}+\mathbf{g(q)}+\mathbf{f}(\dot{\mathbf{q}})+\mathbf{d_{s}}$.
The symbols and their meanings are already defined in Chapter 1.

Defining the states $\mathbf{x_{1}=q}$, and $\mathbf{x_{2}}=\dot{\mathbf{q}}$,
the equation (2.1) is rewritten as:

$\displaystyle\dot{\mathbf{x}}_{\mathbf{1}}$ $\displaystyle=\mathbf{x_{2}}$
(2.2) $\displaystyle\dot{\mathbf{x}}_{\mathbf{2}}$
$\displaystyle=\mathbf{-M}^{-1}\mathbf{(x_{1})H(x_{1},x_{2})}+\mathbf{M}^{-1}\mathbf{(x_{1})}\boldsymbol{\tau}$
(2.3)

###  2.3 Control problem

Under the assumption that the desired trajectories to be tracked,
$\mathbf{q_{d}}$, are sufficiently smooth and bounded, the control objective
is defined as tracking under position constraints. In this chapter, both
symmetrical and asymmetrical constraints are imposed on the system.
Mathematically, if
$\mathbf{z_{1}}=[z_{11},~{}z_{12},...~{}z_{1n}]$ are position tracking errors,
the objective is to design a control method that ensures that:

  * •

$|z_{1i}(t)|<|k_{b_{i}}|$ $\forall i$ (where $k_{b_{i}}$ are user-defined
scalars) for the symmetrical constraint scenario, and

  * •

$-k_{a_{i}}<z_{1i}(t)<k_{b_{i}}$ $\forall i$ (where $k_{a_{i}}$ and
$k_{b_{i}}$ are user-defined scalars) for the asymmetrical constraint
scenario.

###  2.4 Control solution

The following terms are defined:

$\displaystyle\mathbf{z_{1}}$ $\displaystyle=\mathbf{x_{1}-q_{d}}$ (2.4)
$\displaystyle\mathbf{z_{2}}$
$\displaystyle=\mathbf{x_{2}-\boldsymbol{\alpha}}$ (2.5)

where $\mathbf{z_{1}}$ is the tracking error, $\mathbf{z_{2}}$ is an auxiliary
error variable, and $\boldsymbol{\alpha}$ is an auxiliary control variable
defined subsequently.

The control input for the symmetrical constraint scenario is given as:

$\displaystyle\boldsymbol{\tau}$ $\displaystyle=\mathbf{Mu_{sym}+H}$ (2.6a)
$\displaystyle\boldsymbol{\alpha_{1}}$
$\displaystyle=-\mathbf{D_{1}}^{-1}\mathbf{K_{1}z_{1}}+\dot{\mathbf{q}}_{\mathbf{d}}$
(2.6b) $\displaystyle\mathbf{u_{sym}}$
$\displaystyle=\dot{\boldsymbol{\alpha}}_{\mathbf{1}}-\mathbf{K_{2}z_{2}}-\mathbf{D_{1}z_{1}}$
(2.6c)

where $\mathbf{K_{2}}~{}\text{and}~{}\mathbf{K_{2}}\in\mathbb{R}^{n\times n}$
are user-defined positive definite matrices and
$\mathbf{D_{1}}\triangleq\operatorname{diag}\Bigg{\\{}{\frac{\displaystyle
1}{\displaystyle k_{b_{1}}^{2}-z_{11}^{2}},\frac{\displaystyle
1}{\displaystyle k_{b_{2}}^{2}-z_{12}^{2}},\cdot\cdot\cdot,\frac{\displaystyle
1}{\displaystyle k_{b_{n}}^{2}-z_{1n}^{2}}}\Bigg{\\}}$. Similarly, the control
input for the asymmetrical constraint scenario is given as:

$\displaystyle\boldsymbol{\tau}$ $\displaystyle=\mathbf{Mu_{asy}+H}$ (2.7a)
$\displaystyle\boldsymbol{\alpha_{2}}$
$\displaystyle=-\mathbf{D_{2}}^{-1}\mathbf{K_{1}z_{1}}+\dot{\mathbf{q}}_{\mathbf{d}}$
(2.7b) $\displaystyle\mathbf{u_{asy}}$
$\displaystyle=\dot{\boldsymbol{\alpha}}_{\mathbf{2}}-\mathbf{K_{2}z_{2}}-\mathbf{D_{2}z_{1}}$
(2.7c)

where
$\mathbf{D_{2}}\triangleq\operatorname{diag}\Bigg{\\{}{\frac{\displaystyle
r_{1}}{\displaystyle k_{b_{1}}^{2}-z_{11}^{2}},\frac{\displaystyle
r_{2}}{\displaystyle
k_{b_{2}}^{2}-z_{12}^{2}},\cdot\cdot\cdot,\frac{\displaystyle
r_{n}}{\displaystyle
k_{b_{n}}^{2}-z_{1n}^{2}}}\Bigg{\\}}+\operatorname{diag}\Bigg{\\{}{\frac{\displaystyle
1-r_{1}}{\displaystyle k_{b_{1}}^{2}-z_{11}^{2}},\frac{\displaystyle
1-r_{2}}{\displaystyle
k_{b_{2}}^{2}-z_{12}^{2}},\cdot\cdot\cdot,\frac{\displaystyle
1-r_{n}}{\displaystyle k_{b_{n}}^{2}-z_{1n}^{2}}}\Bigg{\\}}$.

The value $r_{i}$ is formulated as:

$r_{i}=\begin{cases}1&z_{1i}>0\\\ 0&z_{1i}\leq 0\end{cases}$

In the following stability analysis, it is proven that the trajectories never
violate the constraints and they remain bounded $\forall t\geq 0$.

###  2.5 Stability analysis for the symmetrical BLF scenario

######  Theorem 1.

Under the initial conditions $|z_{1i}(0)|<k_{b_{i}}$ and using the control law
(2.6), the tracking error trajectories $z_{1i}$ remain bounded by the
constraints $k_{b_{i}}$ as $|z_{1i}|<k_{b_{i}}$ with $i=1,2,3,...,n$ $\forall
t>0$.

###### Proof.

The BLF candidate for this case is designed as follows:

$\displaystyle V_{1}$
$\displaystyle=\sum_{i=1}^{n}\frac{1}{2}\log{\left(\frac{k_{b_{i}}^{2}}{k_{b_{i}}^{2}-z_{1i}^{2}}\right)}+\frac{1}{2}\mathbf{z_{2}}^{\mathbf{T}}\mathbf{z_{2}}.$
(2.8)

From the time-derivative of (2.8) and applying the control input equations in
(2.6), we get:

$\displaystyle\dot{V}_{1}$
$\displaystyle=\mathbf{z_{1}^{T}}\mathbf{D_{1}}\dot{\mathbf{z}}_{\mathbf{1}}+\mathbf{z_{2}^{T}}\dot{\mathbf{z}}_{\mathbf{2}}$
$\displaystyle=\mathbf{z_{1}^{T}}\mathbf{D_{1}}(\mathbf{z_{2}}+\boldsymbol{\alpha}-\dot{\mathbf{q}}_{\mathbf{d}})+\mathbf{z_{2}^{T}}\dot{\mathbf{z}}_{\mathbf{2}}$
$\displaystyle=-\sum_{i=1}^{2}\mathbf{z_{i}^{T}K_{i}z_{i}}<0.$ (2.9)

As $\mathbf{K_{i}}$ is user-defined positive definite matrix, the trajectories
remain bounded from (2.9) and consequently, the constraints are never
violated. ∎

###  2.6 Stability analysis for the Asymmetrical BLF scenario

######  Theorem 2.

Under the initial conditions $-k_{a_{i}}<z_{1i}(0)<k_{b_{i}}$ and using the
control law (2.7), the tracking error trajectories $z_{1i}$ remain bounded by
the constraints $k_{a_{i}}$ and $k_{b_{i}}$ as
$-k_{a_{i}}<z_{1i}(t)<k_{b_{i}}$ for $i=1,2,3,...,n$ $\forall t>0$.

###### Proof.

In this case, the Lyapunov function candidate is designed as:

$\displaystyle
V_{1}=\sum_{i=1}^{n}\frac{1}{2}r_{i}{\log{\left(\frac{k_{b_{i}}^{2}}{k_{b}^{2}-z_{1i}^{2}}\right)}}+\sum_{i=1}^{n}\frac{1}{2}(1-r_{i})\log{\left(\frac{k_{a_{i}}^{2}}{k_{a_{i}}^{2}-z_{1i}^{2}}\right)}+\frac{1}{2}\mathbf{z_{2}}^{T}\mathbf{z_{2}}.$
(2.10)

From the time-derivative of (2.10) and the control input equations (2.7),
similar calculations as in the symmetrical constraints case follow, which
proves that the trajectories remain bounded and the constraints are not
violated.

∎

###  2.7 Simulation and Results

Figure 2.1: Trajectory tracking error comparison by employing symmetrical
constraints with SBLF candidate vs unconstrained trajectory error Figure 2.2:
Trajectory error with asymmetrical constraints Figure 2.3: Trajectory error
with different user defined parameters employed on the asymmetrical
constraints case vs unconstrained case.

Simulation has been carried out on a 2-DoF system [48], having the following
parameters that comply with the system dynamics of (1.4):

$\mathbf{M}=\begin{bmatrix}M_{11}&M_{12}\\\ M_{21}&M_{22}\end{bmatrix}$, and
$\mathbf{q}=\begin{bmatrix}q_{1}\\\ q_{2}\end{bmatrix}$ , where
$M_{11}=(m_{1}+m_{2})l_{1}^{2}+m_{2}l_{2}(l{2}+2l_{1}\cos{(q_{2}}))$,
$M_{12}=m_{2}l_{2}(l{2}+l_{1}\cos{(q_{2})})$, and $M_{22}=m_{2}l_{2}^{2}$

$\mathbf{C}=\begin{bmatrix}-m{2}l_{1}l_{2}\sin{(q_{2})}\dot{q_{2}}&-m{2}l_{1}l_{2}\sin{q_{2}}(\dot{q_{1}}+\dot{q_{2}})\\\
0&m{2}l_{1}l_{2}\sin{(q_{2})}\dot{q_{2}}\end{bmatrix}$

$\mathbf{g}=\begin{bmatrix}m_{1}l_{1}g\cos{(q_{1})}+m_{2}g(l_{2}\cos{(q_{1}+q_{2})}+l_{1}\cos{(q_{1})})\\\
m_{2}gl_{2}\cos{(q_{1}+q_{2})}\end{bmatrix}$,
$\mathbf{f}=\begin{bmatrix}f_{v1}\operatorname{sgn}{(\dot{q_{1}})}\\\
f_{v2}\operatorname{sgn}{(\dot{q_{2}})}\end{bmatrix}$,
$\mathbf{d}=\begin{bmatrix}0.5\sin{(0.5t)}\\\ 0.5\sin{(0.5t)}\end{bmatrix}$,

where the following values are chosen: $m_{1}=$ 10 kg, $m_{2}=$ 5 kg,
$l_{1}$=0.2 m, $l_{2}=$ 0.1 m, $f_{v1}=f_{v2}=$ 0.5, and $g=$ 9.81 m/s2. For
the symmetrical constraint case, the desired trajectory is chosen as
$\mathbf{q_{d}}=\left[\sin(t),\sin(t)\right]^{\mathbf{T}}$,
$\mathbf{k_{b}}=[0.06,0.06]^{\mathbf{T}}$. For the asymmetrical constraint
case, $\mathbf{q_{d}}=\left[\\\ -0.02+\sin(t),\\\
-0.02+\sin(t)\right]^{\mathbf{T}}$. The constraints are selected as
$\mathbf{k_{b}}=[0.1,0.1]^{\mathbf{T}}$, and
$\mathbf{k_{a}}=[0.06,0.06]^{\mathbf{T}}$.

The performance of the BLF controller is compared with the PID controller.
Figure 2.1 shows trajectory tracking error comparison in the symmetrical
constraints case. It can be clearly notices that with PID controller (the red
dotted line), the error violates the user-specified constraints, whereas the
similarly tuned BLF controller (green) never violates them. For comparable
maximum deviation with the BLF controller, the PID controller needs to be re-
tuned, which becomes a major drawback in uncertain scenarios. Similar
performance is observed in Fig. 2.2 by the BLF controller, where the tracking
error obeys asymmetrical constraints. In Fig. 2.3, it is observed that to
further reduce oscillations about zero, the gains $\mathbf{K}_{1}$ and
$\mathbf{K}_{2}$ can be tuned, without having any concern for the overshoot as
the controlled trajectories obey the bounds regardless.

###  2.8 Conclusion

In this chapter, a Barrier Lyapunov Function based controller is designed and
implemented on a multi-DoF EL system. The performance of the controller is
compared with the PID, its ‘unconstrained’ counterpart. The results clearly
show the efficacy of the BLF based control design. The next chapter utilizes
the Barrier Lyapunov approach to tackle the challenging issues faced by a
quadrotor while manoeuvring under spatial constraints with limited knowledge
on the system dynamics.

##  Chapter 3 Robust Manoeuvring of Quadrotor in Constrained Space

###  3.1 Introduction

Nowadays, quadrotors are widely researched for their immense versatility. In
the first chapter, several challenges faced by a quadrotor in relief
operations and ration supply scenarios were discussed, which served as strong
motivation for the thesis. In the previous chapter, the superiority of the BLF
based controller over the conventional PID controller was successfully
demonstrated to emphasize the drawbacks faced in conventional control methods
pertaining to tuning and re-tuning to achieve a desired performance limit.
However, the challenge of formulating such a controller on a quadrotor is two-
fold. Firstly, most of the existing works consider fully actuated system with
complete knowledge of the dynamics, whereas, the quadrotor dynamics is
underactuated, implying that the desired performance under spatial constraints
even with full knowledge of the quadrotor dynamics and under ideal conditions
is difficult. It is shown in [32], that the quadrotor cannot be commanded to
follow any arbitrary trajectory and orientation in space. Secondly, the
presence of dynamic uncertainty and external disturbances complicate the
difficulty even further.

To illustrate, a quadrotor passing through a pipeline structure where it
cannot deviate more than $0.5$ m from its desired path in vertical and
horizontal positions to avoid collision with boundary walls. Now, the presence
of disturbances, such as wind gust, could easily perturb the quadrotor beyond
the maximum allowed deviation, thereby resulting in operational hazard. Even
with conventional robust or adaptive control, as discussed in Chapter 1, it is
time-consuming to tune the control gains to achieve guaranteed user-specified
accuracy.

In view of the challenges faced in works attempting to address the above issue
as described in Chapter 1, and to the best of the author’s knowledge, a
comprehensive control solution for quadrotor in the presence of space
constraints (i.e., under predefined position and attitude accuracy) and under
system uncertainty and external disturbances is still missing at large. Toward
this direction, this chapter has majorly contributed in the following ways:

  * •

A BLF-based robust controller for quadrotor is formulated, which can tackle
uncertain system dynamic parameters, payload and external disturbances, while
obeying constraints imposed by the user on position and attitude.

  * •

Differently from [32], these constraints are imposed on all six degrees-of-
freedom, i.e., on three position and three attitude angles, to make the
control problem more suitable under space constraints.

  * •

The closed-loop stability is analysed analytically, and simulation results
compared to the state-of-the-art confirm the effectiveness of the proposed
scheme in scenarios such as manoeuvring through pipes and hoops and delivering
payloads of different masses.

It is worth remarking that constraint on tracking accuracy being the main
focus, the present work does not consider actuator saturation since it
compromises tracking performance as a trade-off [17, 31, 32, 33] (cf. Remark 4
for further discussion), and this will be taken up as a future work.

The rest of the chapter is organised as follows: Section 3.2 describes the
dynamics of quadrotor and the control problem; Section 3.3 details the
proposed control framework, while corresponding stability analysis is provided
in Section 3.4; comparative simulation results are provided in Section 3.5,
while Section 3.6 provides concluding remarks.

The following notations are commonly used in this and subsequent chapters:
$||\cdot||$ and $\lambda_{\min}(\cdot)$ are 2-norm and minimum eigenvalue of
$(\cdot)$; $\operatorname{sat}(\mathbf{x},k)$ denotes a saturation function
defined as $\operatorname{sat}(\mathbf{x},k)=\mathbf{x}/||\mathbf{x}||$ if
$||\mathbf{x}||\geq k$ and $\operatorname{sat}(\mathbf{x},k)=\mathbf{x}/k$ if
$||\mathbf{x}||<k$; $\operatorname{diag}{\\{\cdot\cdot\cdot\\}}$ and
$\mathbf{I}$ represent a diagonal and an identity matrix respectively.

###  3.2 Quadrotor System Dynamics and Problem Formulation

Figure 3.1: The quadrotor model showing the quadrotor frame (B); the world
frame (W); the position vector $\mathbf{p}(t)$; roll($\phi$), pitch($\theta$)
and yaw($\psi$) angles; the angular velocities of the rotors ($\omega_{i}$);
and the control input $u_{1}$

.

The dynamic model of a quadrotor system via Euler-Lagrange dynamics can be
written as follows [49]:

$\displaystyle m\ddot{\mathbf{p}}+\mathbf{g+d_{p}}$
$\displaystyle=\mathbf{\tau_{p}}$ (3.1)
$\displaystyle\mathbf{J(q)}\ddot{\mathbf{q}}+\mathbf{C(q,}\dot{\mathbf{q}})\dot{\mathbf{q}}+\mathbf{d_{q}}$
$\displaystyle=\mathbf{\tau_{q}}$ (3.2) $\displaystyle\mathbf{\tau_{p}}$
$\displaystyle=\mathbf{R}_{B}^{W}\mathbf{U}$ (3.3)

where $m$ is the total mass of the system;
$\mathbf{p}(t)\triangleq\begin{bmatrix}x(t)&y(t)&z(t)\end{bmatrix}^{T}\in\mathbb{R}^{3}$
is the position of the centre of mass of the quadrotor in the Earth-fixed
frame;
$\mathbf{q}(t)\triangleq\begin{bmatrix}\phi(t)&\theta(t)&\psi(t)\end{bmatrix}^{T}\in\mathbb{R}^{3}$
is the attitude vector consisting of the roll ($\phi$), pitch ($\theta$) and
yaw ($\psi$) angles;
$\mathbf{g}\triangleq\begin{bmatrix}0&0&mg\end{bmatrix}^{T}\in\mathbb{R}^{3}$,
where $g$ is the acceleration due to gravity in the z-direction;
$\mathbf{J(q)}\in\mathbb{R}^{3\times 3}$ is the inertia matrix;
$\mathbf{C(q,\dot{q})}\in\mathbb{R}^{3\times 3}$ is the Coriolis matrix and
the vectors $\mathbf{d_{p}},\mathbf{d_{q}}\in\mathbb{R}^{3}$ represent effect
of external disturbances (e.g., wind, gust);
$\boldsymbol{\tau}_{\mathbf{q}}\triangleq\begin{bmatrix}u_{2}(t)&u_{3}(t)&u_{4}(t)\end{bmatrix}^{T}\in\mathbb{R}^{3}$
denotes the control inputs for roll, pitch and yaw;
$\boldsymbol{\tau}_{\mathbf{p}}(t)\in\mathbb{R}^{3}$ is the generalized
control input for position tracking in Earth-fixed frame, with
$\mathbf{U}(t)\triangleq\begin{bmatrix}0&0&u_{1}(t)\end{bmatrix}^{T}\in\mathbb{R}^{3}$
being the force vector in body-fixed frame and
$\mathbf{R}_{B}^{W}\in\mathbb{R}^{3\times 3}$ being the $Z-Y-X$ Euler angle
rotation matrix describing the rotation from the body-fixed coordinate frame
to the Earth-fixed frame (see Fig. 3.1), given by

$\displaystyle\mathbf{R}_{B}^{W}=\begin{bmatrix}c_{\psi}c_{\theta}&c_{\psi}s_{\theta}s_{\phi}-s_{\psi}c_{\phi}&c_{\psi}s_{\theta}c_{\phi}+s_{\psi}s_{\phi}\\\
s_{\psi}c_{\theta}&s_{\psi}s_{\theta}s_{\phi}+c_{\psi}c_{\phi}&s_{\psi}s_{\theta}c_{\phi}-c_{\psi}s_{\phi}\\\
-s_{\theta}&s_{\phi}c_{\theta}&c_{\theta}c_{\phi}\end{bmatrix},$ (3.4)

where $c_{(\cdot)},s_{(\cdot)}$ and denote $\cos{(\cdot)},\sin{(\cdot)}$
respectively.

####  3.2.1 Standard assumptions for the control design

Before proceeding towards defining the problem and proceeding towards the
controller design, the following assumptions highlight the amount of
uncertainties in the system dynamics (3.1)-(3.2), the choice of nominal values
for the robust control design, and the nature of the trajectories to be
tracked:

######  Assumption 1 (Uncertainties).

The terms $m,\mathbf{J}$ and $\mathbf{C}$ can be segregated as
$m=\bar{m}+\Delta m,~{}\mathbf{J=\bar{J}}+\Delta\mathbf{J}$ and
$\mathbf{C}=\bar{\mathbf{C}}+\Delta\mathbf{C}$ where the segments
$\bar{(\cdot)}$ and $\Delta(\cdot)$ represent known nominal part and uncertain
part of the dynamics, respectively. $\Delta(\cdot)$ and external disturbances
$\mathbf{d_{p}}$ and $\mathbf{d_{q}}$ are not known instantaneously, but their
maximum possible variations are known.

######  Assumption 2 (Choice of nominal values).

The nominal values $\bar{m}$ and $\bar{\mathbf{J}}$ satisfy the following
relations

$\displaystyle|(m^{-1}\bar{m}-1)|\leq
E_{p}<1,~{}||\mathbf{J}^{-1}(\mathbf{q})\bar{\mathbf{J}}(\mathbf{q})-\mathbf{I}||\leq
E_{q}<1.$ (3.5)

######  Remark 1 (Validity of the assumptions).

Assumptions 1-2 are discussed in Chapter 1, and are quite standard in the
literature of robotics [50, 48, 38, 51, 52]. Specifically, Assumption 2
implies that the perturbations cannot be more than $100\%$ of the respective
nominal values, thus giving a guideline to select the nominal values for some
allowable range of perturbation. In practice, information on the maximum
allowable payload/ overall system mass $m$ of a quadrotor is always available.
With this, one can design $\bar{m}$ from (3.5) and consequently design
$\bar{\mathbf{J}}$ (to satisfy (3.5)) and $\bar{\mathbf{C}}$ from their
structures by following [53].

######  Remark 2 (Position and attitude tracking co-design).

The a priori boundedness assumption of the non-actuated $(x,y)$ dynamics
stemming from the reduced-order model (a.k.a collocated) based design (cf.
[24, 27, 54, 55, 56]) results in a conservative approach towards the control
design, as part of the challenge in tackling an underactuated system.
Therefore, in this chapter, the position and attitude tracking co-design
method (cf. [25, 57, 58]) has been followed: this allows to design tracking
controller for all six degrees-of-freedom (DoF) in dynamics (3.1)-(3.2),
rather than tracking only the actuated DoFs $z$ and $(\phi,\theta,\psi)$ as in
the collocated design approach. Note that such design is not decoupled, rather
simultaneous as the dynamics (3.1) and (3.2) are connected via (3.3).

The following standard assumption is considered:

######  Assumption 3 ([25, 57, 53]).

Let
$\mathbf{p_{d}}(t)\triangleq\begin{bmatrix}x_{d}(t)&y_{d}(t)&z_{d}(t)\end{bmatrix}^{T}$
and $\psi_{d}(t)$ be the desired position and yaw trajectories to be tracked,
which are designed to be sufficiently smooth and bounded.

######  Remark 3 (Desired roll and pitch).

In position and attitude tracking co-design, the desired roll ($\phi_{d}$) and
pitch $(\theta_{d}$) trajectories are derived based on the computed position
control input $\tau_{p}$ and the desired yaw trajectory $\psi_{d}$ (cf. [57])
and it is discussed in detail in Section 3.3.2.

####  3.2.2 Control Problem

Manoeuvring under space constraints implies that the quadrotor cannot violate
a specified performance limit, which implies that the desired control
objective becomes tracking under predefined accuracy. Let
$\mathbf{z_{p}}=\\{z_{p1},~{}z_{p2},~{}z_{p3}\\}$ and
$\mathbf{z_{q}}=\\{z_{q1},~{}z_{q2},~{}z_{q3}\\}$ be the tracking errors in
position $(x,y,z)$ and attitude $(\phi,\theta,\psi)$ respectively and,
$k_{pi},k_{qi}$ $i=1,2,3$ be six user-defined scalars. Then, the control
problem is defined as follows:

Under Assumptions 1-2, to design a robust controller to track a desired
trajectory (cf. Assumption 3) such that the tracking accuracy remains within a
user-defined region as $|z_{pi}|<k_{pi},|z_{qi}|<k_{qi}$ with $i=1,2,3$ and
$|z_{pi}(0)|<k_{pi},|z_{qi}(0)|<k_{qi}$ for all time $t>0$.

Initial conditions lying within the constraints
($|z_{pi}(0)|<k_{pi},|z_{qi}(0)|<k_{qi}$) is standard in any control
literature handling constraints, otherwise the control problem becomes ill-
posed and infeasible (cf. [17, 31, 32, 33]). The following section provides a
solution to this control problem.

###  3.3 Proposed Control Solution

Figure 3.2: Block diagram of the control system

The co-design approach relies on simultaneous design of an outer loop
controller for position dynamics (3.1) and of an inner loop controller for
attitude dynamics (3.2). Figure 3.2 shows the overall control framework, while
the detailed design is elaborated in the following subsections.

####  3.3.1 Outer Loop Controller Design

The position tracking error $\mathbf{z_{p}}=\\{z_{p1},~{}z_{p2},~{}z_{p3}\\}$
and an auxiliary error variable $\mathbf{z_{2p}}$ are defined as

$\displaystyle\mathbf{z_{p}}$ $\displaystyle=\mathbf{p-p_{d}},$ (3.6)
$\displaystyle\mathbf{z_{2p}}$
$\displaystyle=\dot{\mathbf{p}}-\mathbf{\alpha_{p}},$ (3.7)

where $\mathbf{\alpha_{p}}$ is an auxiliary control variable. The position
control law is designed as

$\displaystyle\mathbf{\tau_{p}}$
$\displaystyle=\bar{m}\mathbf{\nu_{p}}+\bar{\mathbf{g}},~{}~{}\mathbf{\nu_{p}}=\bar{\mathbf{\nu}}_{\mathbf{p}}+\Delta\mathbf{\nu_{p}},$
(3.8a) $\displaystyle\mathbf{\alpha_{p}}$
$\displaystyle=-\Lambda_{1p}\mathbf{z_{p}}+\dot{\mathbf{p}}_{\mathbf{d}},$
(3.8b) $\displaystyle\bar{\mathbf{\nu}}_{\mathbf{p}}$
$\displaystyle=\dot{\mathbf{\alpha}}_{\mathbf{p}}-\mathbf{D_{p}}\mathbf{z_{p}}-\Lambda_{2p}\mathbf{z_{2p}},$
(3.8c) $\displaystyle\Delta\mathbf{\nu_{p}}$
$\displaystyle=-\rho_{p}\operatorname{sat}(\mathbf{z_{2p}},\epsilon_{p}),$
(3.8d)

where $\bar{\mathbf{g}}=[0~{}0~{}\bar{m}g]^{T}$;
$\Lambda_{1p}=\operatorname{diag}{\\{\gamma_{p_{1}},\gamma_{p_{2}},\gamma_{p_{3}}\\}}$,
where $\gamma_{p_{i}}>0$ are user-defined constants;
$\mathbf{D_{p}}=\operatorname{diag}{\bigg{\\{}\frac{1}{k_{p_{1}}^{2}-z_{p_{1}}^{2}},\frac{\displaystyle
1}{\displaystyle k_{p_{2}}^{2}-z_{p_{2}}^{2}},\frac{\displaystyle
1}{\displaystyle k_{p_{3}}^{2}-z_{p_{3}}^{2}}\bigg{\\}}}$; $\Lambda_{2p}$ is a
user-defined positive definite matrix; $\Delta\mathbf{\nu_{p}}$ is the robust
control input, which tackles the uncertainties via the gain $\rho_{p}$ to be
defined later and $\epsilon_{p}>0$ is a gain used to avoid chattering.

Using (3.1) and (3.8a), the time derivative of (3.7) yields

$\displaystyle\dot{\mathbf{z}}_{2\mathbf{p}}$
$\displaystyle=\ddot{\mathbf{p}}-\dot{\mathbf{\alpha}}_{\mathbf{p}}=m^{-1}(\mathbf{\tau_{p}}-\mathbf{g}-\mathbf{d_{p}})-\dot{\mathbf{\alpha}}_{\mathbf{p}}$
$\displaystyle=\mathbf{\nu_{p}}+E_{p}\mathbf{\nu_{p}}+m^{-1}(\bar{\mathbf{g}}-\mathbf{g}-\mathbf{d_{p}})-\dot{\mathbf{\alpha}}_{\mathbf{p}}$
$\displaystyle=\bar{\nu}_{\mathbf{p}}+\Delta\mathbf{\nu_{p}}+\mathbf{\eta_{p}}-\dot{\mathbf{\alpha}}_{\mathbf{p}}$
(3.9) $\displaystyle\text{where}~{}~{}~{}\mathbf{\eta_{p}}$
$\displaystyle\triangleq(m^{-1}\bar{m}-1)\mathbf{\nu_{p}}+m^{-1}(\bar{\mathbf{g}}-\mathbf{g}-\mathbf{d_{p}})$
(3.10)

is the overall uncertainty in the position dynamics. Having specified the
uncertainty structure, $\rho_{p}$ is to be designed such that
$\rho_{p}\geq||\mathbf{\eta_{p}}||$. Then, using relation (3.5), from (3.10)
we have

$\displaystyle\rho_{p}$ $\displaystyle\geq
E_{p}\|\bar{\mathbf{\nu}}_{\mathbf{p}}\|+E_{p}\rho_{p}+m^{-1}||(\bar{\mathbf{g}}-\mathbf{g}-\mathbf{d_{p}})||$
$\displaystyle\Rightarrow\rho_{p}$ $\displaystyle\geq\frac{\displaystyle
1}{\displaystyle
1-E_{p}}(E_{p}\|\bar{\mathbf{\nu}}_{\mathbf{p}}\|+m^{-1}(||\bar{\mathbf{g}}-\mathbf{g}||+||\mathbf{d_{p}}||).$
(3.11)

Eventually, $\mathbf{U}$ is applied via relation (3.3).

####  3.3.2 Inner Loop Controller Design

To design inner loop controller, the desired roll ($\phi_{d}$) and pitch
($\theta_{d}$) angles are to be generated: first, an intermediate coordinate
frame is defined as (cf. [57]):

$\displaystyle z_{B}$
$\displaystyle=\frac{\mathbf{\tau_{p}}}{||\mathbf{\tau_{p}}||},~{}~{}y_{A}=\begin{bmatrix}-s_{\psi_{d}}&c_{\psi_{d}}&0\end{bmatrix}^{T}$
(3.12a) $\displaystyle x_{B}$ $\displaystyle=\frac{y_{A}\times
z_{B}}{||y_{A}\times z_{B}||},~{}~{}y_{B}=z_{B}\times x_{B}$ (3.12b)

where $y_{A}$ is the $y$-axis of the intermediate coordinate frame $A$,
$x_{B}$, $y_{B}$ and $z_{B}$ are the desired $x$-axis, $y$-axis and $z$-axis
of the body-fixed coordinate frame. The desired yaw angle $\psi_{d}(t)$
computes the axis $y_{A}$ and the the computed intermediate axes in (3.12)
finally determine $\phi_{d}(t)$ and $\theta_{d}(t)$ [57]. These desired
orientation angles finally completely define $\mathbf{R_{d}}$ is the rotation
matrix as in (3.4) evaluated at ($\phi_{d},\theta_{d},\psi_{d}$).

Further, the attitude error can be defined as [57]:

$\displaystyle\mathbf{z_{q}}=\\{z_{q1},z_{q2},z_{q3}\\}$
$\displaystyle={\mathbf{((R_{d})^{T}R_{B}^{W}-(R_{B}^{W})^{T}R_{d})}}^{v}$
(3.13)

where $(.)^{v}$ represents vee map, which converts elements of $SO(3)$ to
$\in{\mathbb{R}^{3}}$ [57]. The auxiliary error variable $\mathbf{z_{2q}}$ is
defined as:

$\displaystyle\mathbf{z_{2q}}$
$\displaystyle=\dot{\mathbf{q}}-\mathbf{\alpha_{q}}$ (3.14)

with $\mathbf{\alpha_{q}}$ being an auxiliary control variable defined
subsequently. The inner loop control law is designed as

$\displaystyle\mathbf{\tau_{q}}$
$\displaystyle=\bar{\mathbf{J}}\mathbf{\nu_{q}}+\bar{\mathbf{C}}\dot{\mathbf{q}},~{}\mathbf{\nu_{q}}=\bar{\mathbf{\nu}}_{\mathbf{q}}+\Delta\mathbf{\nu_{q}},$
(3.15a) $\displaystyle\mathbf{\alpha_{q}}$
$\displaystyle=-\Lambda_{1q}\mathbf{z_{q}}+\dot{\mathbf{q}}_{\mathbf{d}},$
(3.15b) $\displaystyle\bar{\mathbf{\nu}}_{\mathbf{q}}$
$\displaystyle=\mathbf{\dot{\alpha}}_{\mathbf{q}}-\mathbf{D_{q}}\mathbf{z_{q}}-\Lambda_{2q}\mathbf{z_{2q}},$
(3.15c) $\displaystyle\Delta\mathbf{\nu_{q}}$
$\displaystyle=-\rho_{q}\operatorname{sat}(\mathbf{z_{2q}},\epsilon_{q}),$
(3.15d)

where $\mathbf{D_{q}}=\operatorname{diag}{\bigg{\\{}\frac{\displaystyle
1}{\displaystyle k_{q_{1}}^{2}-z_{q_{1}}^{2}},\frac{\displaystyle
1}{\displaystyle k_{q_{2}}^{2}-z_{q_{2}}^{2}},\frac{\displaystyle
1}{\displaystyle k_{q_{3}}^{2}-z_{q_{3}}^{2}}\bigg{\\}}}$;
$\Lambda_{1q}=\operatorname{diag}{\\{\gamma_{q_{1}},\gamma_{q_{2}},\gamma_{q_{3}}\\}}$,
with $\gamma_{q_{i}}>0$ being user-defined constants; $\Lambda_{2q}$ is a
user-defined positive definite matrix; $\Delta\mathbf{\nu_{q}}$ is the robust
control input, which tackles the uncertainties in the attitude dynamics via
the gain $\rho_{q}$ to be defined later and $\epsilon_{q}>0$ is a gain used to
avoid chattering.

Following similar lines to derive (3.9) for the outer loop controller, the
following is achieved using (3.2), (4.15) and (3.15a)

$\displaystyle\dot{\mathbf{z}}_{2\mathbf{q}}$
$\displaystyle=\bar{\nu}_{\mathbf{q}}+\Delta\mathbf{\nu_{q}}+\mathbf{\eta_{q}}-\dot{\mathbf{\alpha}}_{\mathbf{q}}$
(3.16) $\displaystyle\text{where}~{}~{}~{}\mathbf{\eta_{q}}$
$\displaystyle\triangleq(\mathbf{J}^{-1}\bar{\mathbf{J}}-\mathbf{I})\mathbf{\nu_{q}}+\mathbf{J}^{-1}(-\mathbf{d_{q}}-\Delta\mathbf{C}\dot{\mathbf{q}})$
(3.17)

represents the overall uncertainty in the attitude dynamics. Using the above
expression and relation (3.5), the robust control gain is designed to be
$\rho_{q}\geq||\mathbf{\eta_{q}}||$, i.e.,

$\displaystyle\rho_{q}$ $\displaystyle\geq
E_{q}||\bar{\mathbf{\nu}}_{\mathbf{q}}||+E_{q}\rho_{q}+||\mathbf{J}^{-1}(-\mathbf{d_{q}}-\Delta\mathbf{C}\dot{\mathbf{q}})||$
$\displaystyle\rho_{q}$ $\displaystyle\geq\frac{\displaystyle 1}{\displaystyle
1-E_{q}}(E_{q}||\bar{\mathbf{\nu}}_{\mathbf{q}}||+||\mathbf{J}^{-1}||(||\Delta\mathbf{C}||||\dot{\mathbf{q}}||+||\mathbf{d_{q}}||).$
(3.18)

######  Remark 4 (Choice of gains and feasibility).

It may appear from (4.7c) and (3.15c) that the gains $\mathbf{D_{p},D_{q}}$
will become infeasible if ${z_{pi}}=k_{pi}$ and ${z}_{qi}=k_{qi}$ for any
$i=1,2,3$ and $t>0$. However, the subsequent closed-loop stability analysis
will show that ${z_{pi}}<k_{pi}$ and ${z}_{qi}<k_{qi}$ $\forall t>0$ and
infeasibility is avoided under the proposed design. Nevertheless, very small
$k_{pi},k_{qi}$ will render better accuracy albeit with higher control gains
and control input demand. Therefore, these choices should be made according to
application requirements.

###  3.4 Stability Analysis

######  Theorem 3.

Under Assumptions 1-3 and initial conditions
$|z_{pi}(0)|<k_{pi},|z_{qi}(0)|<k_{qi}$ and using the proposed robust control
laws (3.8) and (3.15), the tracking error trajectories $z_{pi},z_{qi}$ remain
bounded by the constraints $k_{pi},k_{qi}$ as
$|z_{pi}|<k_{pi},|z_{qi}|<k_{qi}$ with $i=1,2,3$ $\forall t>0$.

###### Proof.

Closed-loop stability analysis is carried via the following barrier Lyapunov
function (cf. [17] for definition and properties) candidate:

$\displaystyle V$ $\displaystyle=V_{p}+V_{q}$ (3.19)
$\displaystyle\text{where}~{}~{}V_{p}$ $\displaystyle=\frac{\displaystyle
1}{\displaystyle 2}\sum_{i=1}^{3}\log{\left(\frac{\displaystyle
k_{p_{i}}^{2}}{\displaystyle
k_{p_{i}}^{2}-z_{p_{i}}^{2}}\right)}+\frac{\displaystyle 1}{\displaystyle
2}\mathbf{z}^{T}_{\mathbf{2p}}\mathbf{z_{2p}}$ $\displaystyle V_{q}$
$\displaystyle=\frac{\displaystyle 1}{\displaystyle
2}\sum_{i=1}^{3}\log{\left(\frac{\displaystyle k_{q_{i}}^{2}}{\displaystyle
k_{q_{i}}^{2}-z_{q_{i}}^{2}}\right)}+\frac{1}{2}\mathbf{z}^{T}_{\mathbf{2q}}\mathbf{z_{2q}}$

Using (3.7)-(3.9) and (3.14)-(3.16), the time derivative of (3.19) yields

$\displaystyle\dot{V}_{p}$ $\displaystyle=\sum_{i=1}^{3}\frac{\displaystyle
z_{p_{i}}^{T}\dot{z}_{p_{i}}}{\displaystyle
k_{p_{i}}^{2}-z_{p_{i}}^{2}}+\mathbf{z}^{T}_{\mathbf{2p}}\dot{\mathbf{z}}_{\mathbf{2p}}=\mathbf{z}^{T}_{\mathbf{p}}\mathbf{D_{p}}\dot{\mathbf{z}}_{\mathbf{p}}+\mathbf{z}^{T}_{\mathbf{2p}}\dot{\mathbf{z}}_{\mathbf{2p}}$
$\displaystyle=\mathbf{z}^{T}_{\mathbf{p}}\mathbf{D_{p}(z_{2p}}+\alpha_{\mathbf{p}}-\dot{\mathbf{p}}_{\mathbf{d}})+\mathbf{z}^{T}_{\mathbf{2p}}(\bar{\nu}_{\mathbf{p}}+\Delta\nu_{\mathbf{p}}+\eta_{\mathbf{p}}-\dot{\alpha}_{\mathbf{p}})$
$\displaystyle=-\mathbf{z}^{T}_{\mathbf{p}}\Lambda_{1p}\mathbf{D_{p}{z}_{p}}-\mathbf{z}^{T}_{\mathbf{2p}}\Lambda_{2p}\mathbf{{z}_{2p}}+\mathbf{z}^{T}_{\mathbf{2p}}(\Delta\mathbf{{\mathbf{\nu_{p}}+\eta_{p}})},$
(3.20) $\displaystyle\dot{V}_{q}$
$\displaystyle=\sum_{i=1}^{3}\frac{z_{q_{i}}^{T}\dot{z}_{q_{i}}}{k_{q_{i}}^{2}-z_{q_{i}}^{2}}+\mathbf{z}^{T}_{\mathbf{2q}}\dot{\mathbf{z}}_{\mathbf{2q}}=\mathbf{z}^{T}_{\mathbf{q}}\mathbf{D_{q}}\dot{\mathbf{z}}_{\mathbf{q}}+\mathbf{z}^{T}_{\mathbf{2q}}\dot{\mathbf{z}}_{\mathbf{2q}}$
$\displaystyle=\mathbf{z}^{T}_{\mathbf{q}}\mathbf{D_{q}}(\mathbf{z_{2q}}+\mathbf{\alpha_{q}}-\dot{\mathbf{q}}_{\mathbf{d}})+\mathbf{z}^{T}_{\mathbf{2q}}(\bar{\nu}_{\mathbf{q}}+\Delta\mathbf{\nu_{q}+\mathbf{\eta_{q}}}-\dot{\alpha}_{\mathbf{q}})$
$\displaystyle=-\mathbf{z}^{T}_{\mathbf{q}}\Lambda_{1q}\mathbf{D_{q}}{\mathbf{z}}_{\mathbf{q}}-\mathbf{z}^{T}_{\mathbf{2q}}\Lambda_{2q}{\mathbf{z}}_{\mathbf{2q}}+\mathbf{z}^{T}_{\mathbf{2q}}(\Delta\mathbf{{\mathbf{\nu_{q}}+\eta_{q}})}.$
(3.21)

Further simplifications from (3.20)-(3.21) yield

$\displaystyle\dot{V}\leq$
$\displaystyle-\sum_{i=1}^{3}\gamma_{p_{i}}\log{\left(\frac{\displaystyle
k_{p_{i}}^{2}}{\displaystyle
k_{p_{i}}^{2}-z_{p_{i}}^{2}}\right)}-\gamma_{q_{i}}\log{\left(\frac{\displaystyle
k_{q_{i}}^{2}}{\displaystyle k_{q_{i}}^{2}-z_{q_{i}}^{2}}\right)}$
$\displaystyle-\lambda_{\min}(\Lambda_{2p})\|\mathbf{z_{2p}}\|^{2}-\lambda_{\min}(\Lambda_{2q})\|\mathbf{z_{2q}}\|^{2}$
$\displaystyle+\mathbf{z}^{T}_{\mathbf{2p}}(\Delta\mathbf{\nu_{p}+\eta_{p}})+\mathbf{z}^{T}_{\mathbf{2q}}(\Delta\mathbf{\nu_{q}+\eta_{q}}).$
(3.22)

The first two terms in the aforementioned inequality are derived from the fact
that $\log{\left(\frac{\displaystyle k_{x}^{2}}{\displaystyle
k_{x}^{2}-x^{2}}\right)}<\frac{\displaystyle x^{2}}{\displaystyle
k_{x}^{2}-x^{2}}$ within any compact set $\Omega:|x(t)|<k_{x}$ $\forall t\geq
0$ and any $k_{x}\in\mathbb{R}^{+}$ [59].

The definition of $V$ yields

$\displaystyle V$
$\displaystyle\leq\sum_{i=1}^{3}\log{\left(\frac{\displaystyle
k_{p_{i}}^{2}}{\displaystyle
k_{p_{i}}^{2}-z_{p_{i}}^{2}}\right)}+\log{\left(\frac{\displaystyle
k_{q_{i}}^{2}}{\displaystyle
k_{q_{i}}^{2}-z_{q_{i}}^{2}}\right)}+\|\mathbf{z_{2p}}\|^{2}+\|\mathbf{z_{2q}}\|^{2}.$
(3.23)

Using (3.23), from (3.22) we have

$\displaystyle\dot{V}\leq-\varsigma
V+\mathbf{z}^{T}_{\mathbf{2p}}(\Delta\mathbf{\nu_{p}+\eta_{p}})+\mathbf{z}^{T}_{\mathbf{2q}}(\Delta\mathbf{\nu_{q}+\eta_{q}})$
(3.24)

where
$\varsigma\triangleq\min\\{\min\\{\gamma_{p_{i}}\\},\min\\{\gamma_{q_{i}}\\},\lambda_{\min}(\Lambda_{2p}),\lambda_{\min}(\Lambda_{2q})\\}$.
Based on the structures of $\Delta\mathbf{\nu_{p}}$ and
$\Delta\mathbf{\nu_{q}}$ as in (3.8d) and (3.15d), the following four possible
cases can be identified.
Case (i) $\|\mathbf{z_{2p}}\|\geq\epsilon_{p}$ and
$\|\mathbf{z_{2q}}\|\geq\epsilon_{q}$:
Since $\rho_{p}\geq\|\mathbf{\eta_{p}}\|$ and
$\rho_{q}\geq\|\mathbf{\eta_{q}}\|$ by design, (3.24) yields

$\displaystyle\dot{V}$ $\displaystyle\leq-\varsigma
V-\rho_{p}\|\mathbf{z_{2p}}\|+\rho_{p}\|\mathbf{z_{2p}}\|-\rho_{q}\|\mathbf{z_{2q}}\|+\rho_{q}\|\mathbf{z_{2q}}\|$
$\displaystyle\implies\dot{V}$ $\displaystyle\leq-\varsigma V$ (3.25)

Case (ii) $\|\mathbf{z_{2p}}\|\geq\epsilon_{p}$,
$\|\mathbf{z_{2q}}\|<\epsilon_{q}$:

$\displaystyle\dot{V}$ $\displaystyle\leq-\varsigma
V+\|\mathbf{\eta_{q}}\|\|\mathbf{z_{2q}}\|\leq-\varsigma
V+\|\mathbf{\eta_{q}}\|\epsilon_{q}$ (3.26)

Case (iii) $\|\mathbf{z_{2p}}\|<\epsilon_{p}$,
$\|\mathbf{z_{2q}}\|\geq\epsilon_{q}$:

$\displaystyle\dot{V}$ $\displaystyle\leq-\varsigma
V+\|\mathbf{\eta_{p}}\|\|\mathbf{z_{2p}}\|\leq-\varsigma
V+\|\mathbf{\eta_{p}}\|\epsilon_{p}$ (3.27)

Case (iv) $\|\mathbf{z_{2p}}\|<\epsilon_{p}$,
$\|\mathbf{z_{2q}}\|<\epsilon_{q}$:

$\displaystyle\dot{V}$ $\displaystyle\leq-\varsigma
V+\|\mathbf{\eta_{m}}\|\epsilon_{m}$ (3.28)

where
$||\mathbf{\eta_{m}}||\triangleq\max\\{||\mathbf{\eta_{p}}||,||\mathbf{\eta_{q}}||\\}$,
and $\epsilon_{m}\triangleq\max\\{\epsilon_{p},\epsilon_{q}\\}$. Replacing
(3.8b) into (3.7) and (3.15b) into (3.14) one can verify that
$\mathbf{z_{2p}},\mathbf{z_{2q}}\in\mathcal{L}_{\infty}\Rightarrow\mathbf{p},\dot{\mathbf{p}},\mathbf{q},\dot{\mathbf{q}}\in\mathcal{L}_{\infty}$
as desired trajectories are bounded via Assumption 3. Now, boundedness of
$\mathbf{p},\dot{\mathbf{p}},\mathbf{q},\dot{\mathbf{q}}$ imply
$\alpha_{\mathbf{p}},\alpha_{\mathbf{q}}\in\mathcal{L}_{\infty}\Rightarrow\mathbf{\nu_{p}},\mathbf{\nu_{q}}\in\mathcal{L}_{\infty}$
from (3.8), (3.15) and
$\mathbf{C}(\mathbf{q},\dot{\mathbf{q}})\in\mathcal{L}_{\infty}$ by property
of Euler-Lagrange mechanics [38]; these cumulative boundedness conditions
imply $\mathbf{\eta_{p}},\mathbf{\eta_{q}}\in\mathcal{L}_{\infty}$ from (3.10)
and (3.17). Therefore, there exists finite constant $c$ such that
$\|\mathbf{\eta_{m}}\|\epsilon_{m}\leq c$. Then, observing the four stability
cases it can be inferred that

$\displaystyle\dot{V}\leq-\varsigma V+c$ (3.29)

implying that the closed-loop system remains ultimately bounded (cf. [47] for
the definition) via the barrier Lyapunov function $V$, implying
$z_{pi},z_{qi}$ never violates the constraints and
$|z_{pi}|<k_{pi},|z_{qi}|<k_{qi}$ $i=1,2,3$ $\forall t>0$. ∎

Figure 3.3: Scenario 1 (Pipe) setup

###  3.5 Simulation Verification

In this section, the effectiveness of the proposed RSB (Robust Symmetrical
Barrier-lyapunov) controller is compared to the Sliding Mode Control (SMC)
[19] during maneuvering in constrained space. The following subsections
discuss the simulation setup and results.

Figure 3.4: Snapshots of the simulation for scenario 1: (a) Before dropping B1
on drop-point (t=34s) (b) After dropping B1 (t=35s) (c) Attempting to enter
pipe 1 (t=47s) (d) Failing to enter pipe 1 (t=50s) (e) Before dropping B1 on
drop-point (t=34s) (f) After dropping B1 (t=35s) (g) Attempting to enter pipe
1 with B2 (t=47s) (h) After entering pipe 1 (t=51s) Figure 3.5: Scenario 1
(Pipe): Trajectory tracking Figure 3.6: Scenario 1 (Pipe): Position error
comparison Figure 3.7: Scenario 1 (Pipe): Attitude error comparison Figure
3.8: Scenario 1 (Pipe): Control inputs

The performance of the proposed controller is tested on a Gazebo simulation
platform using the RotorS Simulator framework [60] for ROS with the Pelican
quadrotor model, which is actuated by commanding the angular velocities, in
accordance with their relation with the applied thrusts and moments (cf.
[57]). The objective is to determine the effectiveness of the proposed
controller on precise path tracking and payload delivery of the quadrotor. The
following parameters for the model and the proposed controller are used:
$[k_{p_{1}},k_{p_{2}},k_{p_{3}},k_{q_{1}},k_{q_{2}},k_{q_{3}}]^{T}=[0.3,0.3,0.16,0.5,0.5,0.25]^{T}$;
$\Lambda_{1p}=[0.1,~{}0.1,~{}0.1]$;
$\Lambda_{2p}=\operatorname{diag}{\\{6,6,6\\}}$;
$\Lambda_{1q}=[24,~{}24,~{}8]$;
$\Lambda_{2q}=\operatorname{diag}{\\{15,15,15\\}}$; $\bar{m}=2$ kg;
$\bar{\mathbf{J}}=\operatorname{diag}{\\{0.02,0.02,0.04\\}}$; $E_{q}=0.3$;
$E_{p}=0.3$; $\epsilon_{p}=0.1$; $\epsilon_{q}=1$; mean wind-speed disturbance
= 2 m/s; $\mathbf{p(0)=q(0)=0}$; disturbance bounds for the outer-loop
controller: $[0,0,0.5]^{T}$; disturbance bounds for the inner-loop controller:
$[0.01,0.01,0.02]^{T}$. In real-life dynamic payload delivery scenario, the
centre-of-mass of the payload might not exactly align with that of the
quadrotor, and so, small offsets (valued mentioned in the scenarios) are
provided to each payload in the x and y directions for more generalization.
For SMC, sliding surfaces are taken as
$\mathbf{s_{p}}=\dot{\mathbf{z}}_{\mathbf{p}}+\Lambda_{1p}\mathbf{z_{p}}$,
$\mathbf{s_{q}}=\dot{\mathbf{z}}_{\mathbf{q}}+\Lambda_{1q}\mathbf{z_{q}}$,
respectively, for parity.

Scenario 1 (Pipe): In this simulation, there are 2 payloads, B1 (0.4 kg) and
B2 (0.8 kg); and 2 pipes of 1.5 m diameter each, as shown in Fig. 3.3. The
quadrotor starts from the initial position (O), travels through pipe 1, picks
up B1, travels through the pipe 2, drops B1 at its drop point, picks up B2,
travels through pipe 1, and finally drops B2 at its drop point. Figures 3.6
and 3.7 show the results on the position and attitude errors are obtained
after simulating on SMC and the proposed controller. It is readily observable
that, at $t\approx 24$s and at $t\approx 51$s, all three position errors for
SMC violate the intended performance-bound imposed (shown by the red
horizontal lines), while the proposed controller keeps the position errors
within the bounds. While the SMC does not violate the intended attitude error
limits, it should be noted that the magnitudes of error for SMC are
significantly larger with relatively larger oscillations, which is detrimental
to precise payload delivery operations, as seen later. Table 3.1 compares the
Root-mean-squared (RMS) and peak errors of the proposed controller and SMC,
which emphasises on the points stated earlier. Additionally, to further
demonstrate the effectiveness of the proposed controller, Fig. 3.4 shows 4
essential snapshots, of the simulation with timestamps.

From Fig. 3.4((a),(b) and (e),(f)), it is clearly seen that the quadrotor
successfully drops B1 at approximately its designated drop-point (which falls
on the red line) for the proposed controller, while it fails to do the same
with SMC. Additionally, from Fig. 3.4((c),(d) and (g),(h)), it is observed
that the quadrotor successfully manoeuvres through the pipe for the proposed
controller, unlike with the SMC.

Figure 3.9: Scenario 2 (Ring) simulation run snapshots: (a) Before dropping B1
on drop-point (t=59s) (b) After dropping B1 (t=60s) (c) Attempting to enter
ring 2 (t=84s) (d) Failing to enter ring 2 (t=85s) (e) Before dropping B1 on
drop-point (t=59s) (f) After dropping B1 (t=60s) (g) Attempting to enter ring
2 with B2 (t=84s) (h) After entering ring 2 (t=85s)

Scenario 2 (Ring):  In this simulation Scenario, (cf. Fig. 3.10), the
quadrotor is tasked to pick up payload B1 ($0.4$ kg) and manoeuvre through
four ring-like structures of different diameters ($1.2$ m for rings 1-2 and
$1.5$ m for rings 3-4) for $t=60$ sec before dropping at its original place.
Then, the similar task is to be repeated from $t>60$ sec with a higher payload
B2 ($0.8$ kg). For realistic representation, (i) wind disturbance of speed $2$
m/sec blowing in $45^{0}$ direction to $x-y$ plane is added; (ii) a $2$ cm
offset in centre-of-mass between the payload and Pelican in $x$ direction is
provided, as such misalignment cannot be ruled out in practice. The tracking
performance of the two controllers are shown via Figs. 3.9-3.14 and Table 3.1.
It can observed from Fig. 3.12 that, while carrying payload B1, $z$ position
error violates the intended performance-bound with SMC and such violations are
quite significant in $y$ and $z$ directions while carrying the heavier payload
B2 (cf. $88\leq t\leq 115$ sec (approx)): these violations imply that the
quadrotor did not manoeuvre through the rings with SMC while carrying payload
B2 (cf. Fig. 3.9, peak error in Table 3.2). Whereas, the proposed controller
keeps the position and attitude errors within the designated bounds. While the
SMC does not violate the intended attitude error limits, Table 3.2 reveals
performance gaps in terms of root-mean-squared (RMS) and peak absolute errors.
While the SMC does not violate the intended attitude error limits, it should
be noted that the magnitudes of error are significantly larger with SMC, with
relatively larger oscillations, which is detrimental to precise and fast
payload delivery operations. In fact, to further demonstrate the effectiveness
of the proposed controller for payload operation scenarios, Fig. 3.9 shows
four essential snapshots for each controller method. It is clearly seen in
Fig. 3.9 (a), (b), (e) and (f) that the quadrotor successfully drops B1 at
approximately its designated drop-point (which is situated at the intersection
of the green line and the relevant grey grid-line) for the proposed
controller, while it fails to do the same with SMC.

Figure 3.10: Simulation scenario 2: manoeuvring through ring structures with
different payloads. Figure 3.11: Scenario 2 (Ring): Position tracking
performance comparison Figure 3.12: Scenario 2 (Ring): Position tracking error
comparison for the ring scenario

Figure 3.13: Scenario 2 (Ring): Attitude tracking error comparison Figure 3.14: Scenario 2 (Ring): Control input comparison | RMS error (m) | RMS error (degree)
---|---|---
| $x$ | $y$ | $z$ | $\phi$ | $\theta$ | $\psi$
SMC | 1.28 | 0.16 | 0.17 | 4.71 | 7.09 | 0.25
Proposed | 0.03 | 0.03 | 0.04 | 1.55 | 1.94 | 0.06
| Peak absolute error (m) | Peak absolute error (degree)
| $x$ | $y$ | $z$ | $\phi$ | $\theta$ | $\psi$
SMC | 4.61 | 0.49 | 0.38 | 10.61 | 21.25 | 0.81
Proposed | 0.0 | 0.12 | 0.10 | 7.11 | 6.08 | 0.46
Table 3.1: Scenario 1 (Pipe): Performance comparison

Controller | RMS error (m) | RMS error (degree)
---|---|---
| $x$ | $y$ | $z$ | $\phi$ | $\theta$ | $\psi$
SMC | 0.11 | 1.89 | 0.18 | 5.58 | 2.55 | 0.28
Proposed | 0.04 | 0.05 | 0.04 | 2.16 | 1.13 | 0.07
| Peak absolute error (m) | Peak absolute error (degree)
| $x$ | $y$ | $z$ | $\phi$ | $\theta$ | $\psi$
SMC | 0.24 | 6.47 | 0.38 | 18.69 | 9.53 | 0.72
Proposed | 0.09 | 0.16 | 0.11 | 9.24 | 4.99 | 0.72
Table 3.2: Scenario 2 (Ring): Performance comparison

###  3.6 Conclusion

A robust controller with Barrier Lyapunov approach for quadrotors was
proposed, which can ensure tracking performance within a predefined limit to
allow a quadrotor navigate through constrained space under parametric
uncertainties and external disturbances. Closed-loop system stability was
established via Barrier Lyapunov function. Performance of the proposed
controller is extensively verified via simulated scenarios in comparison with
the state of the art. However, the six states, i.e., the linear velocities and
the angular velocities are unconstrained in this work. The next chapter of the
thesis implements robust control with full state-constraints (i.e.,
constraints on position, orientation, linear velocity and angular velocity) on
a quadrotor and a payload delivery scenario under tight constraints is
extensively investigated via experiments on a real quadrotor.

##  Chapter 4 Robust Manoeuvring of Quadrotor under Full State Constraints

###  4.1 Introduction

In the previous chapter, the problem of robust manoeuvring and payload
carrying by a quadrotor under spatial constraints was addressed. However, six
out of the twelve controllable states of the quadrotor, i.e., the three linear
velocity and the three angular velocity states were left unconstrained. In
real-life scenarios, such as relief operation during flooding, the quadrotor
needs to not only manoeuvre under tight spatial constraints, but also needs to
drop the relief package with high precision to avoid wastage of material. On
the other hand (further observed in the experimental section of this chapter),
a quadrotor has the tendency to undergo heavy transients immediately after
deploying its payload while tracking the desired trajectory. In conventional
robust or adaptive control schemes, these transients are controlled via tuning
of the user-specified control gains. A drawback of this method is that tuning
of a real quadrotor requires several trial-and-error runs in real-life
scenarios (while keeping in mind the effect of parametric uncertainties and
external disturbances) before ensuring any predefined accuracy and successful
performance under implied state constraints. This defeats the purpose of
deploying the UAV in emergency scenarios which requires quick and effective
response. Therefore, a control design enforcing user-defined constraints on
the time-derivatives of position and orientation implies that the quadrotor
would perform better at mitigating transients during payload drop operations.
The additional challenge of the quadrotor being an underactuated system adds
to the challenge of accurate trajectory tracking.

The challenges faced by related works are explored in Chapter 1, where a
comprehensive control solution to tackle the above issues, to the best of the
author’s knowledge, was found missing. Toward this direction, this chapter
provides the following major contributions:

  * •

A BLF-based robust controller for quadrotor is formulated which obeys full
state-constraints on all six degrees-of-freedom (DoFs) (i.e., position,
orientation, linear and angular velocity), and can tackle parametric
uncertainties and external disturbances. Compared to [32], constraints on all
DoFs make the control problem more practical.

  * •

The closed-loop stability is verified analytically, and the performance of the
proposed design is experimentally compared to the state-of-the-art designs.

The rest of the chapter is organised as follows: Section 4.2 describes the
quadrotor dynamics, Section 4.3 states the control problem; Section 4.4
details the proposed control framework, and the stability analysis is provided
in Section 4.5; experimental results are provided in Section 4.6, while
Section 4.7 provides the concluding remarks.

###  4.2 Quadrotor Dynamics

Similar to Chapter 3, the dynamics of a quadrotor is modelled on the Euler-
Lagrange dynamics as follows [49]:

$\displaystyle m\ddot{\mathbf{p}}+\mathbf{g+d_{p}}$
$\displaystyle=\mathbf{\tau_{p}}$ (4.1)
$\displaystyle\mathbf{J(q)}\ddot{\mathbf{q}}+\mathbf{C(q,}\dot{\mathbf{q}})\dot{\mathbf{q}}+\mathbf{d_{q}}$
$\displaystyle=\mathbf{\tau_{q}}$ (4.2) $\displaystyle\mathbf{\tau_{p}}$
$\displaystyle=\mathbf{R}_{B}^{W}\mathbf{U}$ (4.3)

where $m$ is the total mass of the system;
$\mathbf{p}(t)\triangleq\begin{bmatrix}x(t)&y(t)&z(t)\end{bmatrix}^{T}\in\mathbb{R}^{3}$
is the position of the centre of mass of the quadrotor in the Earth-fixed
frame;
$\mathbf{q}(t)\triangleq\begin{bmatrix}\phi(t)&\theta(t)&\psi(t)\end{bmatrix}^{T}\in\mathbb{R}^{3}$
is the attitude vector consisting of the roll ($\phi$), pitch ($\theta$) and
yaw ($\psi$) angles;
$\mathbf{g}\triangleq\begin{bmatrix}0&0&mg\end{bmatrix}^{T}\in\mathbb{R}^{3}$,
where $g$ is the acceleration due to gravity in the z-direction;
$\mathbf{J(q)}\in\mathbb{R}^{3\times 3}$ is the inertia matrix;
$\mathbf{C(q,\dot{q})}\in\mathbb{R}^{3\times 3}$ is the Coriolis matrix and
the vectors $\mathbf{d_{p}},\mathbf{d_{q}}\in\mathbb{R}^{3}$ represent effect
of external disturbances (e.g., wind, gust);
$\boldsymbol{\tau}_{\mathbf{q}}\triangleq\begin{bmatrix}u_{2}(t)&u_{3}(t)&u_{4}(t)\end{bmatrix}^{T}\in\mathbb{R}^{3}$
denotes the control inputs for roll, pitch and yaw;
$\boldsymbol{\tau}_{\mathbf{p}}(t)\in\mathbb{R}^{3}$ is the generalized
control input for position tracking in Earth-fixed frame, with
$\mathbf{U}(t)\triangleq\begin{bmatrix}0&0&u_{1}(t)\end{bmatrix}^{T}\in\mathbb{R}^{3}$
being the force vector in body-fixed frame and
$\mathbf{R}_{B}^{W}\in\mathbb{R}^{3\times 3}$ being the $Z-Y-X$ Euler angle
rotation matrix describing the rotation from the body-fixed coordinate frame
to the Earth-fixed frame, given by

$\displaystyle\mathbf{R}_{B}^{W}=\begin{bmatrix}c_{\psi}c_{\theta}&c_{\psi}s_{\theta}s_{\phi}-s_{\psi}c_{\phi}&c_{\psi}s_{\theta}c_{\phi}+s_{\psi}s_{\phi}\\\
s_{\psi}c_{\theta}&s_{\psi}s_{\theta}s_{\phi}+c_{\psi}c_{\phi}&s_{\psi}s_{\theta}c_{\phi}-c_{\psi}s_{\phi}\\\
-s_{\theta}&s_{\phi}c_{\theta}&c_{\theta}c_{\phi}\end{bmatrix},$ (4.4)

where $c_{(\cdot)},s_{(\cdot)}$ and denote $\cos{(\cdot)},\sin{(\cdot)}$
respectively.

###  4.3 Control Problem

Manoeuvring under full-state constraints implies the quadrotor cannot go
beyond some performance limits over the desired trajectories, transforming the
control objective as tracking with predefined accuracy.

Let $\mathbf{z_{p}}=\\{z_{p1},~{}z_{p2},~{}z_{p3}\\}$ and
$\mathbf{z_{q}}=\\{z_{q1},~{}z_{q2},~{}z_{q3}\\}$ be the position $(x,y,z)$
and attitude $(\phi,\theta,\psi)$ tracking errors respectively;
$\dot{\mathbf{z}}_{\mathbf{p}}=\\{\dot{z}_{p1},~{}\dot{z}_{p2},~{}\dot{z}_{p3}\\}$
and
$\dot{\mathbf{z}}_{\mathbf{q}}=\\{\dot{z}_{q1},~{}\dot{z}_{q2},~{}\dot{z}_{q3}\\}$
be the tracking errors in velocity $(\dot{x},\dot{y},\dot{z})$ and attitude
rate $(\dot{\phi},\dot{\theta},\dot{\psi})$ respectively. Let,
$k_{pi},k_{qi},\dot{k}_{pi},\dot{k}_{qi}\in\mathbb{R}^{+}$ for $i=1,~{}2,~{}3$
be twelve user-defined scalars. Then, the control problem is defined as
follows:

Under Assumptions 1-2 of Section 3.2.1, to design a robust controller to track
a desired trajectory such that the tracking accuracy for position and velocity
remains within a user-defined region as $|z_{pi}|<k_{pi},|z_{qi}|<k_{qi}$,
$|\dot{z}_{pi}|<\dot{k}_{pi},|\dot{z}_{qi}|<\dot{k}_{qi}$, with $i=1,2,3$ and
$|z_{pi}(0)|<k_{pi},~{}|\dot{z}_{pi}(0)|<\dot{k}_{pi},~{}|z_{qi}(0)|<k_{qi},~{}|\dot{z}_{qi}(0)|<\dot{k}_{qi}$,
$\forall t>0$.

Initial conditions lying within the constraints as above is standard in
literature, otherwise the control problem becomes ill-posed and infeasible
(cf. [17, 31, 32, 33]). The following section provides a solution to this
control problem.

###  4.4 Proposed Control Solution

The we follow the same co-design approach of simultaneous controller design of
an outer loop for position dynamics and of an inner loop for attitude dynamics
as in the previous chapter.

####  4.4.1 Outer Loop Controller Design

The position tracking error $\mathbf{z_{p}}=\\{z_{p1},~{}z_{p2},~{}z_{p3}\\}$
and an auxiliary error variable $\mathbf{z_{2p}}$ are defined as

$\displaystyle\mathbf{z_{p}}$ $\displaystyle=\mathbf{p-p_{d}},$ (4.5)
$\displaystyle\mathbf{z_{2p}}$
$\displaystyle=\dot{\mathbf{p}}-\mathbf{\alpha_{p}},$ (4.6)

where $\mathbf{\alpha_{p}}$ is an auxiliary control variable. The position
control law is designed as

$\displaystyle\mathbf{\tau_{p}}$
$\displaystyle=\bar{m}\mathbf{\nu_{p}}+\bar{\mathbf{g}},~{}~{}\mathbf{\nu_{p}}=\bar{\mathbf{\nu}}_{\mathbf{p}}+\Delta\mathbf{\nu_{p}},$
(4.7a) $\displaystyle\mathbf{\alpha_{p}}$
$\displaystyle=-\Lambda_{1p}\mathbf{z_{p}}+\dot{\mathbf{p}}_{\mathbf{d}},$
(4.7b) $\displaystyle\bar{\mathbf{\nu}}_{\mathbf{p}}$
$\displaystyle=\dot{\mathbf{\alpha}}_{\mathbf{p}}-\mathbf{D_{3p}}\mathbf{z_{p}}-\Lambda_{2p}\mathbf{z_{2p}},$
(4.7c) $\displaystyle\Delta\mathbf{\nu_{p}}$
$\displaystyle=-\rho_{p}\operatorname{sat}(\mathbf{z_{2p}},\epsilon_{p}),$
(4.7d)

where $\bar{\mathbf{g}}=[0~{}0~{}\bar{m}g]^{T}$;
$\Lambda_{1p}=\operatorname{diag}{\\{\gamma_{p_{1}},\gamma_{p_{2}},\gamma_{p_{3}}\\}}$,
and
$\Lambda_{2p}=\operatorname{diag}{\\{\gamma_{2p_{1}},\gamma_{2p_{2}},\gamma_{2p_{3}}\\}}$,
where $\gamma_{p_{i}}>0$ and $\gamma_{2p_{i}}>0$ are user-defined constants;
$\mathbf{D_{3p}}\triangleq\mathbf{D}_{\mathbf{2p}}^{-1}\mathbf{D_{p}}$ with
$\mathbf{D_{p}}=\operatorname{diag}{\bigg{\\{}\frac{1}{k_{p_{1}}^{2}-z_{p_{1}}^{2}},\frac{1}{k_{p_{2}}^{2}-z_{p_{2}}^{2}},\frac{1}{k_{p_{3}}^{2}-z_{p_{3}}^{2}}\bigg{\\}}}$,
$\mathbf{D_{2p}}=\operatorname{diag}{\bigg{\\{}\frac{1}{k_{2p_{1}}^{2}-z_{2p_{1}}^{2}},\frac{1}{k_{2p_{2}}^{2}-z_{2p_{2}}^{2}},\frac{1}{k_{2p_{3}}^{2}-z_{2p_{3}}^{2}}\bigg{\\}}}$
and

$\displaystyle k_{2p_{i}}$
$\displaystyle\triangleq\dot{k}_{p_{i}}+\gamma_{p_{i}}k_{p_{i}},~{}i=1,2,3.$
(4.8)

The gain $\rho_{p}$ (defined later) provides robustness against uncertainties
and $\epsilon_{p}>0$ is used to avoid chattering.

From (4.6) and (4.7b), $z_{2p_{i}}$ can be rewritten as

$\displaystyle z_{2p_{i}}=\dot{z}_{p_{i}}+\gamma_{p_{i}}z_{p_{i}}.$

Then, based on the desired constraints
$|z_{pi}|<k_{pi},|\dot{z}_{pi}|<\dot{k}_{pi}$ and using (4.8), the desired
constraint on $z_{2p_{i}}$ turns out to be

$\displaystyle|z_{2p_{i}}|$
$\displaystyle\leq|\dot{z}_{p_{i}}|+|\gamma_{p_{i}}||z_{p_{i}}|<\dot{k}_{p_{i}}+\gamma_{p_{i}}k_{p_{i}}=k_{2p_{i}}.$
(4.9)

Using (4.1) and (4.7a), the time derivative of (4.6) yields

$\displaystyle\dot{\mathbf{z}}_{2\mathbf{p}}$
$\displaystyle=\ddot{\mathbf{p}}-\dot{\mathbf{\alpha}}_{\mathbf{p}}=m^{-1}(\mathbf{\tau_{p}}-\mathbf{g}-\mathbf{d_{p}})-\dot{\mathbf{\alpha}}_{\mathbf{p}}$
$\displaystyle=\bar{\nu}_{\mathbf{p}}+\Delta\mathbf{\nu_{p}}+\mathbf{\eta_{p}}-\dot{\mathbf{\alpha}}_{\mathbf{p}}$
(4.10) $\displaystyle\text{where}~{}~{}~{}\mathbf{\eta_{p}}$
$\displaystyle\triangleq(m^{-1}\bar{m}-1)\mathbf{\nu_{p}}+m^{-1}(\bar{\mathbf{g}}-\mathbf{g}-\mathbf{d_{p}})$
(4.11)

is the overall uncertainty in the position dynamics and $\rho_{p}$ is designed
using (3.5) and (4.11) such that $\rho_{p}\geq||\mathbf{\eta_{p}}||$ as

$\displaystyle\rho_{p}$ $\displaystyle\geq
E_{p}\|\bar{\mathbf{\nu}}_{\mathbf{p}}\|+E_{p}\rho_{p}+m^{-1}||(\bar{\mathbf{g}}-\mathbf{g}-\mathbf{d_{p}})||$
$\displaystyle\Rightarrow\rho_{p}$ $\displaystyle\geq\frac{\displaystyle
1}{\displaystyle
1-E_{p}}(E_{p}\|\bar{\mathbf{\nu}}_{\mathbf{p}}\|+m^{-1}(||\bar{\mathbf{g}}-\mathbf{g}||+||\mathbf{d_{p}}||).$
(4.12)

Eventually, $\mathbf{U}$ is applied to the system via (4.3) as $R_{B}^{W}$ is
an invertible rotation matrix.

####  4.4.2 Inner Loop Controller Design

In a similar approach to the previous chapter, the desired roll ($\phi_{d}$)
and pitch ($\theta_{d}$) angles are defined by first defining an intermediate
coordinate frame as (cf. [57]):

$\displaystyle z_{B}$
$\displaystyle=\frac{\mathbf{\tau_{p}}}{||\mathbf{\tau_{p}}||},~{}~{}y_{A}=\begin{bmatrix}-s_{\psi_{d}}&c_{\psi_{d}}&0\end{bmatrix}^{T}$
(4.13a) $\displaystyle x_{B}$ $\displaystyle=\frac{y_{A}\times
z_{B}}{||y_{A}\times z_{B}||},~{}~{}y_{B}=z_{B}\times x_{B}$ (4.13b)

where $(x_{B},y_{B},z_{B})$ are the desired $(x,y,z)$ axis in the body-fixed
coordinate frame. Given the desired yaw angle $\psi_{d}(t)$ and based on the
computed intermediate axes as in (4.13), $\phi_{d}(t)$ and $\theta_{d}(t)$ can
be determined using the desired body frame axes as described in [57].

Further, the attitude error can be defined as [57]:

$\displaystyle\mathbf{z_{q}}=\\{z_{q1},z_{q2},z_{q3}\\}$
$\displaystyle={\mathbf{((R_{d})^{T}R_{B}^{W}-(R_{B}^{W})^{T}R_{d})}}^{v}$
(4.14)

where $(.)^{v}$ is vee map converting elements of $SO(3)$ to
$\in{\mathbb{R}^{3}}$ (cf. [57]) and $\mathbf{R_{d}}$ is the rotation matrix
as in (4.4) evaluated at ($\phi_{d},\theta_{d},\psi_{d}$). The auxiliary error
variable $\mathbf{z_{2q}}$ is defined as

$\displaystyle\mathbf{z_{2q}}$
$\displaystyle=\dot{\mathbf{q}}-\mathbf{\alpha_{q}}$ (4.15)

with $\mathbf{\alpha_{q}}$ being an auxiliary control variable defined
subsequently.

The inner loop control law is designed as

$\displaystyle\mathbf{\tau_{q}}$
$\displaystyle=\bar{\mathbf{J}}\mathbf{\nu_{q}}+\bar{\mathbf{C}}\dot{\mathbf{q}},~{}\mathbf{\nu_{q}}=\bar{\mathbf{\nu}}_{\mathbf{q}}+\Delta\mathbf{\nu_{q}},$
(4.16a) $\displaystyle\mathbf{\alpha_{q}}$
$\displaystyle=-\Lambda_{1q}\mathbf{z_{q}}+\dot{\mathbf{q}}_{\mathbf{d}},$
(4.16b) $\displaystyle\bar{\mathbf{\nu}}_{\mathbf{q}}$
$\displaystyle=\dot{\mathbf{\alpha}}_{\mathbf{q}}-\mathbf{D_{3q}}\mathbf{z_{q}}-\Lambda_{2q}\mathbf{z_{2q}},$
(4.16c) $\displaystyle\Delta\mathbf{\nu_{q}}$
$\displaystyle=-\rho_{q}\operatorname{sat}(\mathbf{z_{2q}},\epsilon_{q}),$
(4.16d)

where
$\Lambda_{1q}=\operatorname{diag}{\\{\gamma_{q_{1}},\gamma_{q_{2}},\gamma_{q_{3}}\\}}$,
$\Lambda_{2q}=\operatorname{diag}{\\{\gamma_{2q_{1}},\gamma_{2q_{2}},\gamma_{2q_{3}}\\}}$,
with $\gamma_{q_{i}}>0$ and $\gamma_{2q_{i}}>0$ being user-defined constants;
$\mathbf{D_{3q}}\triangleq\mathbf{D_{2q}}^{-1}\mathbf{D_{q}}$ with
$\mathbf{D_{q}}=\operatorname{diag}{\bigg{\\{}\frac{1}{k_{q_{1}}^{2}-z_{q_{1}}^{2}},\frac{1}{k_{q_{2}}^{2}-z_{q_{2}}^{2}},\frac{1}{k_{q_{3}}^{2}-z_{q_{3}}^{2}}\bigg{\\}}}$,
$\mathbf{D_{2q}}=\operatorname{diag}{\bigg{\\{}\frac{1}{k_{2q_{1}}^{2}-z_{2q_{1}}^{2}},\frac{1}{k_{2q_{2}}^{2}-z_{2q_{2}}^{2}},\frac{1}{k_{2q_{3}}^{2}-z_{2q_{3}}^{2}}\bigg{\\}}}$
and

$\displaystyle
k_{2q_{i}}\triangleq\dot{k}_{q_{i}}+\gamma_{q_{i}}k_{q_{i}}~{}i=1,2,3.$ (4.17)

The gain $\rho_{q}$ (defined later) robustness against uncertainties in the
attitude dynamics and $\epsilon_{q}>0$ avoids chattering.

Similar to the desired constraint on $z_{2p_{i}}$ as in (4.9), a desired
constraint $|z_{2q_{i}}|<k_{2q_{i}}$ is obtained from (4.17). Following
similar lines to derive (4.10) for the outer loop controller, the following is
achieved using (4.2), (4.15) and (4.16a)

$\displaystyle\dot{\mathbf{z}}_{2\mathbf{q}}$
$\displaystyle=\bar{\nu}_{\mathbf{q}}+\Delta\mathbf{\nu_{q}}+\mathbf{\eta_{q}}-\dot{\mathbf{\alpha}}_{\mathbf{q}}$
(4.18) $\displaystyle\text{where}~{}~{}~{}\mathbf{\eta_{q}}$
$\displaystyle\triangleq(\mathbf{J}^{-1}\bar{\mathbf{J}}-\mathbf{I})\mathbf{\nu_{q}}+\mathbf{J}^{-1}(-\mathbf{d_{q}}-\Delta\mathbf{C}\dot{\mathbf{q}})$
(4.19)

represents the overall uncertainty in the attitude dynamics and the robust
control gain is designed to be $\rho_{q}\geq||\mathbf{\eta_{q}}||$, i.e.,

$\displaystyle\rho_{q}$ $\displaystyle\geq
E_{q}||\bar{\mathbf{\nu}}_{\mathbf{q}}||+E_{q}\rho_{q}+||\mathbf{J}^{-1}(-\mathbf{d_{q}}-\Delta\mathbf{C}\dot{\mathbf{q}})||$
$\displaystyle\rho_{q}$ $\displaystyle\geq\frac{\displaystyle 1}{\displaystyle
1-E_{q}}(E_{q}||\bar{\mathbf{\nu}}_{\mathbf{q}}||+||\mathbf{J}^{-1}||(||\Delta\mathbf{C}||||\dot{\mathbf{q}}||+||\mathbf{d_{q}}||).$
(4.20)

######  Remark 5 (Choice of gains and feasibility).

It may appear from (4.7c) and (4.16c) that the gains
$\mathbf{D_{p},~{}D_{q},~{}D_{2p}}$ and $\mathbf{D_{2q}}$ will become
infeasible if ${z_{pi}}=k_{pi}$, ${z}_{qi}=k_{qi}$, ${z_{2p_{i}}}=k_{2p_{i}}$,
and ${z}_{2q_{i}}=k_{2q_{i}}$ for any $i=1,2,3$ and $t>0$. However, the
subsequent closed-loop stability analysis will show that $|{z_{pi}}|<k_{pi}$
and $|{z}_{qi}|<k_{qi}$, $|{z_{2p_{i}}}|<k_{2p_{i}}$ and
$|{z}_{2q_{i}}|<k_{2q_{i}}$ $\forall t>0$ and infeasibility is avoided under
the proposed design. Further, smaller
$k_{pi},k_{qi},\dot{k}_{pi},\dot{k}_{qi}$ will result in better accuracy,
albeit at the cost of higher control input demand. Therefore, such choices
should be made as per application requirements.

###  4.5 Stability Analysis

######  Theorem 4.

Under Assumptions 1-3 of Section 3.2.1 (in Chapter 3) and initial conditions
$|z_{pi}(0)|<k_{pi},~{}|\dot{z}_{pi}(0)|<\dot{k}_{pi},~{}|z_{qi}(0)|<k_{qi},~{}|\dot{z}_{qi}(0)|<\dot{k}_{qi}$
and using the robust control laws (4.7) and (4.16), the tracking error
trajectories $z_{pi},~{}z_{qi},~{}\dot{z}_{pi},~{}\dot{z}_{qi}$ remain bounded
as $|z_{pi}|<k_{pi},|z_{qi}|<k_{qi}$,
$|\dot{z}_{pi}|<\dot{k}_{pi},|\dot{z}_{qi}|<\dot{k}_{qi}$ with $i=1,2,3$
$\forall t>0$.

###### Proof.

Closed-loop stability analysis is carried via the following barrier Lyapunov
function candidate:

$\displaystyle V$ $\displaystyle=V_{p}+V_{q}$ (4.21)
$\displaystyle\text{where}~{}~{}V_{p}$ $\displaystyle=\frac{\displaystyle
1}{\displaystyle 2}\sum_{i=1}^{3}\log{\left(\frac{\displaystyle
k_{p_{i}}^{2}}{\displaystyle
k_{p_{i}}^{2}-z_{p_{i}}^{2}}\right)}+\log{\left(\frac{\displaystyle
k_{2p_{i}}^{2}}{\displaystyle k_{2p_{i}}^{2}-z_{2p_{i}}^{2}}\right)}$
$\displaystyle V_{q}$ $\displaystyle=\frac{\displaystyle 1}{\displaystyle
2}\sum_{i=1}^{3}\log{\left(\frac{\displaystyle k_{q_{i}}^{2}}{\displaystyle
k_{q_{i}}^{2}-z_{q_{i}}^{2}}\right)}+\log{\left(\frac{\displaystyle
k_{2q_{i}}^{2}}{\displaystyle k_{2q_{i}}^{2}-z_{2q_{i}}^{2}}\right)}.$

Using (4.6)-(4.10) and (4.15)-(4.18), with gains
$\mathbf{D_{p}},\mathbf{D_{2p}}$ as in (4.7c) and
$\mathbf{D_{q}},\mathbf{D_{2q}}$ as in (4.16c), the time derivative of (4.21)
yields

$\displaystyle\dot{V}_{p}=\sum_{i=1}^{3}\frac{\displaystyle
z_{p_{i}}^{T}\dot{z}_{p_{i}}}{\displaystyle
k_{p_{i}}^{2}-z_{p_{i}}^{2}}+\frac{\displaystyle
z_{2p_{i}}^{T}\dot{z}_{2p_{i}}}{\displaystyle
k_{2p_{i}}^{2}-z_{2p_{i}}^{2}}=\mathbf{z}^{T}_{\mathbf{p}}\mathbf{D_{p}}\dot{\mathbf{z}}_{\mathbf{p}}+\mathbf{z}^{T}_{\mathbf{2p}}\mathbf{D_{2p}}\dot{\mathbf{z}}_{\mathbf{2p}}$
$\displaystyle=\mathbf{z}^{T}_{\mathbf{p}}\mathbf{D_{p}(z_{2p}}+\alpha_{\mathbf{p}}-\dot{\mathbf{p}}_{\mathbf{d}})+\mathbf{z}^{T}_{\mathbf{2p}}\mathbf{D_{2p}}(\bar{\nu}_{\mathbf{p}}+\Delta\nu_{\mathbf{p}}+\eta_{\mathbf{p}}-\dot{\alpha}_{\mathbf{p}})$
$\displaystyle=-\mathbf{z}^{T}_{\mathbf{p}}\Lambda_{1p}\mathbf{D_{p}{z}_{p}}-\mathbf{z}^{T}_{\mathbf{2p}}\Lambda_{2p}\mathbf{D_{2p}}\mathbf{{z}_{2p}}+\mathbf{z}^{T}_{\mathbf{2p}}\mathbf{D_{2p}}(\Delta\mathbf{{\mathbf{\nu_{p}}+\eta_{p}})},$
(4.22)
$\displaystyle\dot{V}_{q}=\sum_{i=1}^{3}\frac{z_{q_{i}}^{T}\dot{z}_{q_{i}}}{k_{q_{i}}^{2}-z_{q_{i}}^{2}}+\frac{z_{2q_{i}}^{T}\dot{z}_{2q_{i}}}{k_{2q_{i}}^{2}-z_{2q_{i}}^{2}}=\mathbf{z}^{T}_{\mathbf{q}}\mathbf{D_{q}}\dot{\mathbf{z}}_{\mathbf{q}}+\mathbf{z}^{T}_{\mathbf{2q}}\mathbf{D_{2q}}\dot{\mathbf{z}}_{\mathbf{2q}}$
$\displaystyle=\mathbf{z}^{T}_{\mathbf{q}}\mathbf{D_{q}(z_{2q}+\alpha_{q}}-\dot{\mathbf{q}}_{\mathbf{d}})+\mathbf{z}^{T}_{\mathbf{2q}}\mathbf{D_{2q}}(\bar{\nu}_{\mathbf{q}}+\Delta\mathbf{\nu_{q}+\mathbf{\eta_{q}}}-\dot{\alpha}_{\mathbf{q}})$
$\displaystyle=-\mathbf{z}^{T}_{\mathbf{q}}\Lambda_{1q}\mathbf{D_{q}}{\mathbf{z}}_{\mathbf{q}}-\mathbf{z}^{T}_{\mathbf{2q}}\Lambda_{2q}\mathbf{D_{2q}}{\mathbf{z}}_{\mathbf{2q}}+\mathbf{z}^{T}_{\mathbf{2q}}\mathbf{D_{2q}}(\Delta\mathbf{{\mathbf{\nu_{q}}+\eta_{q}})}.$
(4.23)

Further simplifications from (4.22)-(4.23) yield

$\displaystyle\dot{V}\leq$
$\displaystyle-\sum_{i=1}^{3}\gamma_{p_{i}}\log{\left(\frac{\displaystyle
k_{p_{i}}^{2}}{\displaystyle
k_{p_{i}}^{2}-z_{p_{i}}^{2}}\right)}-\gamma_{q_{i}}\log{\left(\frac{\displaystyle
k_{q_{i}}^{2}}{\displaystyle k_{q_{i}}^{2}-z_{q_{i}}^{2}}\right)}$
$\displaystyle-\gamma_{2q_{i}}\log{\left(\frac{\displaystyle
k_{2q_{i}}^{2}}{\displaystyle
k_{2q_{i}}^{2}-z_{2q_{i}}^{2}}\right)}-\gamma_{2q_{i}}\log{\left(\frac{\displaystyle
k_{2q_{i}}^{2}}{\displaystyle k_{2q_{i}}^{2}-z_{2q_{i}}^{2}}\right)}$ (4.24)
$\displaystyle+\mathbf{z}^{T}_{\mathbf{2p}}\mathbf{D_{2p}}(\Delta\mathbf{\nu_{p}+\eta_{p}})+\mathbf{z}^{T}_{\mathbf{2q}}\mathbf{D_{2q}}(\Delta\mathbf{\nu_{q}+\eta_{q}}).$
(4.25)

The first four terms in the aforementioned inequality are derived from the
fact that $\log{\left(\frac{\displaystyle k_{x}^{2}}{\displaystyle
k_{x}^{2}-x^{2}}\right)}<\frac{\displaystyle x^{2}}{\displaystyle
k_{x}^{2}-x^{2}}$ within any compact set $\Omega:|x(t)|<k_{x}$ $\forall t\geq
0$ and any $k_{x}\in\mathbb{R}^{+}$ [59].

The definition of $V$ yields

$\displaystyle V$
$\displaystyle\leq\sum_{i=1}^{3}\log{\left(\frac{\displaystyle
k_{p_{i}}^{2}}{\displaystyle
k_{p_{i}}^{2}-z_{p_{i}}^{2}}\right)}+\log{\left(\frac{\displaystyle
k_{q_{i}}^{2}}{\displaystyle
k_{q_{i}}^{2}-z_{q_{i}}^{2}}\right)}+\log{\left(\frac{\displaystyle
k_{2p_{i}}^{2}}{\displaystyle k_{2p_{i}}^{2}-z_{2p_{i}}^{2}}\right)}$
$\displaystyle+\log{\left(\frac{\displaystyle k_{2q_{i}}^{2}}{\displaystyle
k_{2q_{i}}^{2}-z_{2q_{i}}^{2}}\right)}.$ (4.26)

Using (4.26), from (4.25) we have

$\displaystyle\dot{V}\leq-\varsigma
V+\mathbf{z}^{T}_{\mathbf{2p}}\mathbf{D_{2p}}(\Delta\mathbf{\nu_{p}+\eta_{p}})+\mathbf{z}^{T}_{\mathbf{2q}}\mathbf{D_{2q}}(\Delta\mathbf{\nu_{q}+\eta_{q}})$
(4.27)

where
$\varsigma\triangleq\min\\{\min\\{\gamma_{p_{i}}\\},\min\\{\gamma_{q_{i}}\\},\min\\{\gamma_{2p_{i}}\\},\min\\{\gamma_{2q_{i}}\\}\\}$.

Based on the structures of $\Delta\mathbf{\nu_{p}}$ and
$\Delta\mathbf{\nu_{q}}$ as in (4.7d) and (4.16d), the following four possible
cases can be identified.
Case (i) $\|\mathbf{z_{2p}}\|\geq\epsilon_{p}$ and
$\|\mathbf{z_{2q}}\|\geq\epsilon_{q}$:
Since $\rho_{p}\geq\|\mathbf{\eta_{p}}\|$ and
$\rho_{q}\geq\|\mathbf{\eta_{q}}\|$ by design, (4.27) yields

$\displaystyle\dot{V}\leq$ $\displaystyle-\varsigma
V-\rho_{p}\|\mathbf{D_{2p}}\|\|\mathbf{z_{2p}}\|+\rho_{p}\|\mathbf{D_{2p}}\|\|\mathbf{z_{2p}}\|$
$\displaystyle-\rho_{q}\|\mathbf{D_{2q}}\|\|\mathbf{z_{2q}}\|+\rho_{q}\|\mathbf{D_{2q}}\|\|\mathbf{z_{2q}}\|$
$\displaystyle\implies\dot{V}\leq$ $\displaystyle-\varsigma V$ (4.28)

Case (ii) $\|\mathbf{z_{2p}}\|\geq\epsilon_{p}$,
$\|\mathbf{z_{2q}}\|<\epsilon_{q}$:

$\displaystyle\dot{V}$ $\displaystyle\leq-\varsigma
V+\|\mathbf{\eta_{q}}\|\|\mathbf{D_{2q}}\|\|\mathbf{z_{2q}}\|\leq-\varsigma
V+\|\mathbf{\eta_{q}}\|\|\mathbf{D_{2q}}\|\epsilon_{q}$ (4.29)

Case (iii) $\|\mathbf{z_{2p}}\|<\epsilon_{p}$,
$\|\mathbf{z_{2q}}\|\geq\epsilon_{q}$:

$\displaystyle\dot{V}$ $\displaystyle\leq-\varsigma
V+\|\mathbf{\eta_{p}}\|\|\mathbf{D_{2p}}\|\|\mathbf{z_{2p}}\|\leq-\varsigma
V+\|\mathbf{\eta_{p}}\|\|\mathbf{D_{2p}}\|\epsilon_{p}$ (4.30)

Case (iv) $\|\mathbf{z_{2p}}\|<\epsilon_{p}$,
$\|\mathbf{z_{2q}}\|<\epsilon_{q}$:

$\displaystyle\dot{V}$ $\displaystyle\leq-\varsigma
V+\|\mathbf{\eta_{m}}\|\|\mathbf{D_{2m}}\|\epsilon_{m}$ (4.31)

where
$||\mathbf{\eta_{m}}||\triangleq\max\\{||\mathbf{\eta_{p}}||,||\mathbf{\eta_{q}}||\\}$,
$||\mathbf{D_{2m}}||\triangleq\max\\{||\mathbf{D_{2p}}||,||\mathbf{D_{2q}}||\\}$,
and $\epsilon_{m}\triangleq\max\\{\epsilon_{p},\epsilon_{q}\\}$. Replacing
(4.7b) into (4.6) and (4.16b) into (4.15) one can verify that
$\mathbf{z_{2p}},\mathbf{z_{2q}}\in\mathcal{L}_{\infty}\Rightarrow\mathbf{p},\dot{\mathbf{p}},\mathbf{q},\dot{\mathbf{q}}\in\mathcal{L}_{\infty}$
as desired trajectories are bounded via Assumption 3. Now, boundedness of
$\mathbf{p},\dot{\mathbf{p}},\mathbf{q},\dot{\mathbf{q}}$ imply
$\alpha_{\mathbf{p}},\alpha_{\mathbf{q}}\in\mathcal{L}_{\infty}\Rightarrow\mathbf{\nu_{p}},\mathbf{\nu_{q}}\in\mathcal{L}_{\infty}$
from (4.7), (4.16) and $\mathbf{C(q,\dot{q})}\in\mathcal{L}_{\infty}$ by
property of EL mechanics [38]; these cumulative boundedness conditions imply
$\mathbf{\eta_{p}},\mathbf{\eta_{q}},\mathbf{D_{2p}},\mathbf{D_{2q}}\in\mathcal{L}_{\infty}$
from (4.11) and (4.19). Therefore, there exists a finite constant $c$ such
that $\|\mathbf{\eta_{m}}\|\|\mathbf{D_{2m}}\|\epsilon_{m}\leq c$. Then,
observing the four stability cases it can be inferred that

$\displaystyle\dot{V}\leq-\varsigma V+c$ (4.32)

implying that the closed-loop system remains bounded via the barrier Lyapunov
function $V$, implying $z_{pi},z_{qi},\dot{z}_{pi},\dot{z}_{qi}$ never
violates the constraints and
$|z_{pi}|<k_{pi},|z_{qi}|<k_{qi},|\dot{z}_{pi}|<\dot{k}_{pi},|\dot{z}_{qi}|<\dot{k}_{qi}$
$i=1,2,3$ $\forall t>0$. ∎

###  4.6 Experimental Verification

Figure 4.1: Snapshots from the experiment: (a), (e) Before dropping payload on
drop-point (b), (f) After dropping payload (t=37s) (c), (g) Payload lands on
the tray for proposed controller, while it falls on the edge for SMC (d), (h)
Proposed controller makes quadrotor hold its position, while SMC shoots the
quadrotor up

This section experimentally verifies the effectiveness of the proposed
controller for precision maneuvering in comparison with SMC ([19])111Note that
the standard BLF-based controller for quadrotors [32, 37] are not robust to
uncertainties; therefore, in the face of parametric uncertainty (attachment
and release of payload) and external disturbances, tracking error might
approach the constraints leading to high control input and potential
operational hazard by crashing the quadrotor. Therefore, real-time experiments
with standard non-robust BLF methods were avoided..

####  4.6.1 Experimental setup and scenario

A quadrotor (1.4 kg) is tasked follow a ground robot (Pioneer 3-DX) and drop a
payload on a tray placed on top of it (cf. Fig. 4.1). The quadrotor setup
includes one raspberry pi-4 processing unit and one electromagnetic gripper
($0.03$ kg). Optitrack motion-capture system (at 60 fps) is used to obtain
quadrotor’s pose. Note that the gripper operations are carried out via a
remote signal, which is separate from the control design.

Figure 4.2: Circular path tracking performance comparison. Figure 4.3:
Position tracking error comparison. Figure 4.4: Velocity tracking error
comparison. Figure 4.5: Attitude tracking error comparison. Figure 4.6:
Attitude-rate tracking error comparison. Figure 4.7: Control signals
comparison.

The experimental scenario is described as follows: (i) Pioneer 3-DX is
commanded to make two rounds of a circular path of radius $1$m; (ii) the $x-y$
coordinates of Pioneer 3-DX from Optitrack system are used as the desired
setpoints for the quadrotor with a desired constant altitude of
$z_{d}(t)=1.2$m, so that it flies over the ground robot all time
($\psi_{d}=0$, and $\phi_{d},\theta_{d}$ follow Remark 3 of Chapter 3); (iii)
the quadrotor initially carries a payload of $0.3$ kg for one complete round
and drops it at $t=37$s; (iv) then, it tracks the ground robot for another
turn without the payload.

Control parameters are selected as: constraint parameters
$[k_{p_{1}},k_{p_{2}},k_{p_{3}}]=[0.2,0.2,0.2]$ m (according to the size of
the tray), $[\dot{k}_{p_{1}},\dot{k}_{p_{2}},\dot{k}_{p_{3}}]=[0.55,0.55,0.7]$
m/s, $[k_{q_{1}},k_{q_{2}},k_{q_{3}}]=[0.174,0.174,0.174]$ rad, and
$[\dot{k}_{q_{1}},\dot{k}_{q_{2}},\dot{k}_{q_{3}}]=[0.43,0.43,0.174]$ rad/s;
$\Lambda_{1p}=\operatorname{diag}\\{0.5,0.5,0.5\\}$,
$\Lambda_{2p}=\operatorname{diag}{\\{10,10,10\\}}$,
$\Lambda_{1q}=\operatorname{diag}\\{20,20,12\\}$,
$\Lambda_{2q}=\operatorname{diag}{\\{15,15,15\\}}$, $\bar{m}=1.5$,
$\bar{\mathbf{J}}=\operatorname{diag}{\\{0.02,0.02,0.04\\}}$,
$E_{p}=E_{q}=0.3$, $\epsilon_{p}=0.1$, $\epsilon_{q}=1$, and the upper-bounds
of $\|\mathbf{d_{p}}\|$ and $\|\mathbf{d_{q}}\|$ as 1.73 and 0.173,
respectively. For SMC, sliding surfaces are selected as:
$\mathbf{s_{p}}=\dot{\mathbf{z}}_{\mathbf{p}}+\Lambda_{1p}\mathbf{z_{p}}$,
$\mathbf{s_{q}}=\dot{\mathbf{z}}_{\mathbf{q}}+\Lambda_{1q}\mathbf{z_{q}}$.

####  4.6.2 Experimental results and analysis

Controller | RMS error (m) | RMS error (degree)
---|---|---
| $x$ | $y$ | $z$ | $\phi$ | $\theta$ | $\psi$
SMC | 0.12 | 0.12 | 0.09 | 3.84 | 4.22 | 0.17
Proposed | 0.08 | 0.08 | 0.02 | 1.08 | 0.90 | 0.03
| Peak absolute error (m) | Peak absolute error (degree)
| $x$ | $y$ | $z$ | $\phi$ | $\theta$ | $\psi$
SMC | 0.22 | 0.24 | 0.34 | 12.75 | 15.72 | 2.53
Proposed | 0.15 | 0.16 | 0.09 | 7.59 | 6.66 | 0.46
Table 4.1: Position tracking performance comparison Controller | RMS error (m/s) | RMS error (degree/s)
---|---|---
| $\dot{x}$ | $\dot{y}$ | $\dot{z}$ | $\dot{\phi}$ | $\dot{\theta}$ | $\dot{\psi}$
SMC | 0.21 | 0.20 | 0.11 | 2.61 | 3.57 | 0.40
Proposed | 0.19 | 0.13 | 0.08 | 2.48 | 2.69 | 0.05
| Peak absolute error (m/s) | Peak absolute error (degree/s)
| $\dot{x}$ | $\dot{y}$ | $\dot{z}$ | $\dot{\phi}$ | $\dot{\theta}$ | $\dot{\psi}$
SMC | 0.50 | 0.46 | 0.37 | 35.51 | 46.61 | 7.31
Proposed | 0.26 | 0.29 | 0.36 | 19.04 | 21.12 | 0.54
Table 4.2: Velocity tracking performance comparison

The performance comparison of the proposed controller and SMC are highlighted
via Figs. 4.2 \- 4.7 and via Tables 4.1-4.2 (in terms of root-mean-squared
(RMS) and absolute peak error). Figures 4.3-4.6 reveal that SMC breached the
bounds in $(x,y,z,\phi,\theta)$ and in ($\dot{\phi}$, $\dot{\theta}$), while
it was too close to the bounds in $\dot{x},\dot{y}$: these resulted in the
quadrotor dropping the payload on the edge of the tray and eventually falling
outside the tray (cf. snapshots (g) and (h) in Fig. 4.1) in the case of SMC;
whereas, the proposed controller could maintain the errors of all controlled
states (position, orientation, linear and angular velocity) well within the
bounds and the payload was dropped within the tray (cf. snapshot (c) and (d)
in Fig. 4.1). A sudden deviation in the altitude can be observed for SMC at
$t=37$s in snapshot (h) of Fig. 4.1 and in Figs. 4.2 and 4.3 when the payload
is dropped. These transients happen because higher thrust was required while
carrying the payload to maintain the altitude compared to the no payload
condition (cf. Fig. 4.7); just after releasing the payload, this additional
thrust tends to push the quadrotor upwards. Left unattended, this would be
hazardous in confined spaces. Whereas, the proposed controller could maintain
the altitude within the bound (cf. snapshot (d) of Fig. 4.1 and Figs. 4.2 and
4.3).

###  4.7 Conclusion

A robust controller with Barrier Lyapunov approach for quadrotors was
formulated to ensure tracking performance with full state-constraints under
parametric uncertainties and external disturbances. Closed-loop system
stability was established analytically and the performance of the proposed
controller was experimentally verified.

##  Chapter 5 Conclusions

In this thesis, comprehensive robust control solutions for a quadrotor
manoeuvring under multiple state-constraints was provided. For the constraint
handling, the Barrier Lyapunov Function (BLF) method was followed. Chapter 1
detailed the challenges faced by quadrotor tasked with manoeuvring operations
in tight spaces which acted as strong motivation behind the thesis
construction, and introduced fundamental principles that were utilized in the
chapters that followed. Chapter 2 successfully demonstrated the effectiveness
of the BLF based control method over unconstrained methods such as the PID
controller, by designing a BLF controller on the generalized n-DoF Euler-
Lagrange dynamics. Chapter 3 utilized the potential of the BLF control method
and successfully designed a robust controller with user-specified constraints
on the position and orientation of a quadrotor under parametric uncertainties
and external disturbances; the efficacy of the proposed control method was
validated via extensive realistic simulation scenarios on the Gazebo platform
where the results obtained were compared with Sliding Mode Control (SMC).
Lastly, Chapter 4 designed a robust controller with full state-constraints
(i.e., constraints on the position, attitude, linear velocity and angular
velocity) on a quadrotor under uncertainties and disturbances. The performance
of the proposed controller was validated via experiments on a real quadrotor
carrying payload, where the proposed controller outperformed SMC.

Throughout the thesis, the initial trajectory errors must lie within the
imposed bounds for the feasibility of the control method. This opens up
opportunities to explore the implementation of variable constraints on a
quadrotor, where the initial values of the bounds could be made greater than
their steady state values, increasing the window of feasibility. Additionally,
the possibility of implementing constraints on the actuators in BLF based
robust control could also be explored. Finally, a challenging future work
could be to implement state-constraints on the quadrotor in an adaptive
setting with unknown uncertainty bounds.

## Related Publications

###  5.1 Main Publications

  * •

S. Ganguly, V. N. Sankaranarayanan, B. V. S. G. Suraj, R. D. Yadav and S. Roy,
“Efficient Manoeuvring of Quadrotor under Constrained Space and Predefined
Accuracy”, IEEE/RSJ International Conference on Intelligent Robots and
Systems, 2021.

  * •

S. Ganguly, V. N. Sankaranarayanan, B. V. S. G. Suraj, R. D. Yadav and S. Roy,
“Robust Manoeuvring of Quadrotor under Full State Constraints”, Advances in
Control and Optimization of Dynamical Systems, 2022.

###  5.2 Other Publication(s)

  * •

V. N. Sankaranarayanan, R. D. Yadav, R. K. Swayampakula, S. Ganguly and S.
Roy, “Robustifying Payload Carrying Operations for Quadrotors under Time-
varying State Constraints and Uncertainty”, IEEE Robotics and Automation
Letters (RA-L). (Submitted)

## Bibliography

  * [1] Z. Yingkun, “Flight path planning of agriculture UAV based on improved artificial potential field method,” in _2018 Chinese Control And Decision Conference (CCDC)_. IEEE, 2018\.
  * [2] V. P. Subba Rao and S. Rao, Gorantla, “Design and modelling of an affordable UAV based pesticide sprayer in agriculture applications,” in _2019 Fifth International Conference on Electrical Energy Systems (ICEES)_. IEEE, 2019.
  * [3] J.-H. Park, S.-C. Choi, I.-Y. Ahn, and J. Kim, “Multiple UAVs-based surveillance and reconnaissance system utilizing IoT platform,” in _International Conference on Electronics, Information, and Communication (ICEIC)_. IEEE, 2019.
  * [4] S. Fari, X. Wang, S. Roy, and S. Baldi, “Addressing unmodeled path-following dynamics via adaptive vector field: a uav test case,” _IEEE Transactions on Aerospace and Electronic Systems_ , vol. 56, no. 2, pp. 1613–1622, 2019.
  * [5] A. Torabi, M. W. Shafer, G. S. Vega, and K. M. Rothfus, “Uav-rt: An SDR based aerial platform for wildlife tracking,” in _88th Vehicular Technology Conference (VTC-Fall)_. IEEE, 2018.
  * [6] X. Wang, S. Roy, S. Farì, and S. Baldi, “The problem of reliable design of vector-field path following in the presence of uncertain course dynamics,” _IFAC-PapersOnLine_ , vol. 53, no. 2, pp. 9399–9404, 2020.
  * [7] S. N. A. M. Ghazali, H. A. Anuar, S. N. A. S. Zakaria, and Z. Yusoff, “Determining position of target subjects in maritime search and rescue (MSAR) operations using rotary wing unmanned aerial vehicles (UAVs),” in _2016 International Conference on Information and Communication Technology (ICICTM)_. IEEE, 2016.
  * [8] D. Invernizzi, M. Lovera, and L. Zaccarian, “Dynamic attitude planning for trajectory tracking in thrust-vectoring UAVs,” _IEEE Transactions on Automatic Control_ , vol. 65, no. 1, pp. 453–460, 2019.
  * [9] ——, “Integral ISS-based cascade stabilization for vectored-thrust UAVs,” _IEEE Control Systems Letters_ , vol. 4, no. 1, pp. 43–48, 2019\.
  * [10] A. A. Mian and W. Daobo, “Nonlinear flight control strategy for an underactuated quadrotor aerial robot,” in _2008 IEEE International Conference on Networking, Sensing and Control_ , 2008, pp. 938–942.
  * [11] S. Roy, S. Baldi, and P. A. Ioannou, “An adaptive control framework for underactuated switched euler-lagrange systems,” _IEEE Transactions on Automatic Control_ , 2021.
  * [12] S. Baldi, S. Roy, and K. Yang, “Towards adaptive autopilots for fixed-wing unmanned aerial vehicles,” in _2020 59th IEEE Conference on Decision and Control (CDC)_. IEEE, 2020, pp. 4724–4729.
  * [13] E. Tal and S. Karaman, “Accurate tracking of aggressive quadrotor trajectories using incremental nonlinear dynamic inversion and differential flatness,” _IEEE Transactions on Control Systems Technology_ , vol. 29, no. 3, 2021.
  * [14] S. Roy and S. Baldi, “The role of uncertainty in adaptive control of switched euler-lagrange systems,” in _2019 IEEE 58th Conference on Decision and Control (CDC)_. IEEE, 2019, pp. 72–77.
  * [15] T. Bera, A. Sinha, A. K. Sadhu, and R. Dasgupta, “Vision based autonomous quadcopter navigation through narrow gaps using visual servoing and monocular SLAM,” in _88th Vehicular Technology Conference (VTC-Fall)_. IEEE, 2018.
  * [16] J. Su, J.-H. Bak, and J. Hyun, “Optimal trajectory generation for quadrotor with suspended load under swing angle constraint,” in _IEEE 15th International Conference on Control and Automation (ICCA)_. IEEE, 2019.
  * [17] K. P. Tee, S. S. Gea, and E. H. Tay, “Barrier lyapunov functions for the control of output-constrained nonlinear systems,” _Automatica_ , no. 45, pp. 918–927, 2008.
  * [18] A. Dhar and S. Bhasin, “Indirect adaptive mpc for discrete-time lti systems with parametric uncertainties,” _IEEE Transactions on Automatic Control_ , 2021.
  * [19] L. R. Ovalle, H. Ríos, and M. A. Llama, “Continuous sliding-mode control for underactuated systems: Relative degree one and two,” _Control Engineering Practice_ , vol. 90, pp. 342–357, 2019.
  * [20] A. Sanchez, V. Parra-Vega, C. Tang, F. Oliva-Palomo, and C. Izaguirre-Espinosa, “Continuous reactive-based position-attitude control of quadrotors,” in _2012 American Control Conference (ACC)_. IEEE, 2012, pp. 4643–4648.
  * [21] L. Derafa, A. Benallegue, and L. Fridman, “Super twisting control algorithm for the attitude tracking of a four rotors UAV,” _Journal of the Franklin Institute_ , vol. 349, no. 2, pp. 685–699, 2012.
  * [22] T. Madani and A. Benallegue, “Sliding mode observer and backstepping control for a quadrotor unmanned aerial vehicles,” in _2007 American Control Conference_. IEEE, 2007, pp. 5887–5892.
  * [23] S. Roy, J. Lee, and S. Baldi, “A new continuous-time stability perspective of time-delay control: Introducing a state-dependent upper bound structure,” _IEEE Control Systems Letters_ , vol. 3, no. 2, pp. 475–480, 2019.
  * [24] C. Nicol, C. Macnab, and A. Ramirez-Serrano, “Robust adaptive control of a quadrotor helicopter,” _Mechatronics_ , vol. 21, no. 6, pp. 927–938, 2011\.
  * [25] B. J. Bialy, J. Klotz, K. Brink, and W. E. Dixon, “Lyapunov-based robust adaptive control of a quadrotor UAV in the presence of modeling uncertainties,” _American Control Conference_ , pp. 13–18, 2013.
  * [26] S. Roy and I. N. Kar, “Adaptive–robust approach for time-delayed control of a class of uncertain el systems,” in _Adaptive-Robust Control with Limited Knowledge on Systems Dynamics_. Springer, 2020, pp. 41–68.
  * [27] Z. T. Dydek, A. M. Annaswamy, and E. Lavretsky, “Adaptive control of quadrotor UAVs: A design trade study with flight evaluations,” _IEEE Transactions on Control Systems Technology_ , vol. 21, no. 4, pp. 1400–1406, 2012\.
  * [28] T.-T. Tran, S. S. Ge, and W. He, “Adaptive control of a quadrotor aerial vehicle with input constraints and uncertain parameters,” _International Journal of Control_ , vol. 91, no. 5, pp. 1140–1160, 2018\.
  * [29] S. Roy and S. Baldi, “A simultaneous adaptation law for a class of nonlinearly parametrized switched systems,” _IEEE Control Systems Letters_ , vol. 3, no. 3, pp. 487–492, 2019.
  * [30] B. Tian, J. Cui, H. Lu, Z. Zuo, and Q. Zong, “Adaptive finite-time attitude tracking of quadrotors with experiments and comparisons,” _IEEE Transactions on Industrial Electronics_ , 2019.
  * [31] Y.-J. Liu and S. Tong, “Barrier lyapunov functions-based adaptive control for a class of nonlinear pure-feedback systems with full state constraints,” _Automatica_ , vol. 64, pp. 70–75, 2016.
  * [32] R. Dasgupta, S. B. Roy, O. S. Patil, and S. Bhasin, “A singularity-free hierarchical nonlinear quad-rotorcraft control using saturation and barrier lyapunov function,” in _2019 American Control Conference (ACC)_. IEEE, 2019, pp. 3075–3080.
  * [33] K. Sachan and R. Padhi, “Output-constrained robust adaptive control for uncertain nonlinear mimo systems with unknown control directions,” _IEEE Control Systems Letters_ , vol. 3, no. 4, pp. 823–828, 2019.
  * [34] J. Berberich, J. Köhler, M. A. Muller, and F. Allgower, “Data-driven model predictive control with stability and robustness guarantees,” _IEEE Transactions on Automatic Control_ , 2020.
  * [35] F. Allgöwer and A. Zheng, _Nonlinear model predictive control_. Birkhäuser, 2012, vol. 26.
  * [36] P. N. Chikasha and C. Dube, “Adaptive model predictive control of a quadrotor,” _IFAC-PapersOnLine_ , vol. 50, no. 2, pp. 157–162, 2017, control Conference Africa CCA 2017.
  * [37] Y. Kumar, S. B. Roy, and P. Sujit, “Barrier lyapunov function based trajectory tracking controller for autonomous vehicles with guaranteed safety bounds,” in _2020 International Conference on Unmanned Aircraft Systems (ICUAS)_. IEEE, 2020, pp. 722–728.
  * [38] M. W. Spong and M. Vidyasagar, _Robot dynamics and control_. John Wiley & Sons, 2008.
  * [39] S. Roy and S. Baldi, “On reduced-complexity robust adaptive control of switched euler–lagrange systems,” _Nonlinear Analysis: Hybrid Systems_ , vol. 34, pp. 226–237, 2019.
  * [40] J. Ye, S. Roy, M. Godjevac, and S. Baldi, “A switching control perspective on the offshore construction scenario of heavy-lift vessels,” _IEEE Transactions on Control Systems Technology_ , vol. 29, no. 1, pp. 470–477, 2020\.
  * [41] S. Roy, E. B. Kosmatopoulos, and S. Baldi, “On vanishing gains in robust adaptation of switched systems: A new leakage-based result for a class of euler–lagrange dynamics,” _Systems & Control Letters_, vol. 144, p. 104773, 2020.
  * [42] M. M. Rayguru, R. E. Mohan, R. Parween, L. Yi, A. V. Le, and S. Roy, “An output feedback based robust saturated controller design for pavement sweeping self-reconfigurable robot,” _IEEE/ASME Transactions on Mechatronics_ , 2021.
  * [43] H. Shukla, S. Roy, and S. Gupta, “Robust adaptive control of steer-by-wire systems under unknown state-dependent uncertainties,” _International Journal of Adaptive Control and Signal Processing_ , 2021.
  * [44] K. W. Cassel, _Variational Methods with Applications in Science and Engineering_. Cambridge University Press, 2013.
  * [45] S. Roy and I. N. Kar, _Adaptive-Robust Control with Limited Knowledge on Systems Dynamics: An Artificial Input Delay Approach and Beyond_. Springer Nature, 2019.
  * [46] K. Ogata, _Modern Control Engineering_ , 4th ed. USA: Prentice Hall PTR, 2001.
  * [47] H. K. Khalil, _Nonlinear systems_. Prentice hall Upper Saddle River, NJ, 2002, vol. 3.
  * [48] S. Roy, J. Lee, and S. Baldi, “A new adaptive-robust design for time delay control under state-dependent stability condition,” _IEEE Transactions on Control Systems Technology_ , vol. 29, no. 1, pp. 420–427, 2020.
  * [49] B. J. Bialy, J. Klotz, K. Brink, and W. E. Dixon, “Lyapunov-based robust adaptive control of a quadrotor UAV in the presence of modeling uncertainties,” in _American Control Conference (ACC) Washington, DC, USA_. IEEE, 2013.
  * [50] S. Roy, S. B. Roy, J. Lee, and S. Baldi, “Overcoming the underestimation and overestimation problems in adaptive sliding mode control,” _IEEE/ASME Transactions on Mechatronics_ , vol. 24, no. 5, pp. 2031–2039, 2019.
  * [51] S. Roy, S. Nandy, R. Ray, and S. N. Shome, “Robust path tracking control of nonholonomic wheeled mobile robot: Experimental validation,” _International Journal of Control, Automation and Systems_ , vol. 13, no. 4, pp. 897–905, 2015.
  * [52] S. Roy, S. Nandy, S. N. Shome, and R. Ray, “Robust position control of an autonomous underwater vehicle: a comparative study,” in _2013 IEEE international conference on automation science and engineering (CASE)_. IEEE, 2013, pp. 1002–1007.
  * [53] S. Tang and V. Kumar, “Mixed integer quadratic program trajectory generation for a quadrotor with a cable-suspended payload,” _IEEE International Conference on Robotics and Automation (ICRA)_ , pp. 2216–2222, 2015.
  * [54] V. N. Sankaranarayanan and S. Roy, “Introducing switched adaptive control for quadrotors for vertical operations,” _Optimal Control Applications and Methods_ , vol. 41, no. 6, pp. 1875–1888, 2020.
  * [55] S. Roy and S. Baldi, “Towards structure-independent stabilization for uncertain underactuated euler–lagrange systems,” _Automatica_ , vol. 113, p. 108775, 2020.
  * [56] S. Roy, S. Baldi, P. Li, and V. Narayanan, “Artificial-delay adaptive control for under-actuated euler-lagrange robotics,” _IEEE/ASME Transactions on Mechatronics_ , 2021.
  * [57] D. Mellinger and V. Kumar, “Minimum snap trajectory generation and control for quadrotors,” in _2011 IEEE International Conference on Robotics and Automation_. IEEE, 2011, pp. 2520–2525.
  * [58] V. N. Sankaranarayanan, S. Roy, and S. Baldi, “Aerial transportation of unknown payloads: Adaptive path tracking for quadrotors,” in _2020 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS)_. IEEE, 2020, pp. 7710–7715.
  * [59] Y.-J. Liu and S. Tong, “Barrier lyapunov functions-based adaptive control for class of nonlinear pure-feedback systems with full state constraints,” _Elsevier Automatica_ , vol. 64, pp. 70–75, 2016.
  * [60] F. Furrer, M. Burri, M. Achtelik, and R. Siegwart, _RotorS – A Modular Gazebo MAV Simulator Framework_. Springer, 01 2016, vol. 625, pp. 595–625.