Open access peer-reviewed chapter

Robust Adaptive Output Tracking for Quadrotor Helicopters

Written By

Keyvan Mohammadi and Andrea L’Afflitto

Submitted: 19 April 2017 Reviewed: 28 August 2017 Published: 20 December 2017

DOI: 10.5772/intechopen.70723

From the Edited Volume

Adaptive Robust Control Systems

Edited by Le Anh Tuan

Chapter metrics overview

1,549 Chapter Downloads

View Full Metrics

Abstract

Quadrotor helicopters are drawing considerable attention both for their mobility and their potential to perform multiple tasks in complete autonomy. Moreover, the numerous limitations characterizing these aircraft, such as their underactuation, make quadrotors ideal testbeds for innovative theoretical approaches to the problem of controlling autonomous mechanical systems. In this chapter, we propose a robust model reference adaptive control architecture and design an autopilot for quadrotors, which guarantees satisfactory output tracking despite uncertainties in the vehicle’s mass, matrix of inertia, and location of the center of mass. The feasibility of our results is supported by a detailed analysis of the quadrotor’s equations of motion. Specifically, considering the vehicle’s equations of motion as a time-varying nonlinear dynamical system and avoiding the common assumption that the vehicle’s Euler angles are small at all times, we prove that the proposed autopilot guarantees satisfactory output tracking and verifies sufficient conditions for a weak form of controllability of the closed-loop system known as strong accessibility. A numerical example illustrates the applicability of the theoretical results presented and clearly shows how the proposed autopilot outperforms in strong wind conditions autopilots designed using a commonly employed proportional-derivative control law and a conventional model reference adaptive control law.

Keywords

  • robust model reference adaptive control
  • e-modification
  • quadrotors
  • autopilot design
  • output tracking

1. Introduction

Quadrotor helicopters, also known as “quadrotors,” are currently employed in diverse scenarios, which range from search and rescue missions to infrastructure inspection, precision agriculture, and wildlife monitoring ([1, Ch. 1], [2, 3]). Employing quadrotors in enclosed industrial environments or in proximity of untrained personnel is still considered as a challenge for the high reliability required to these aircraft. Additional complexity in the use of quadrotors for commercial applications, such as parcel delivery, is that users demand satisfactory trajectory following capabilities without tuning the controller’s gains prior to each mission, whenever the payload is changed.

Autopilots for commercial-off-the-shelf quadrotors are currently designed assuming that the vehicle’s and the payload’s inertial properties are known and constant in time. Moreover, it is assumed that the propulsion system is able to deliver maximum thrust whenever needed. These assumptions considerably simplify the design of control algorithms for quadrotor helicopters, but also undermine these vehicles’ reliability in challenging work conditions, such as in case the propulsion system is partly damaged or the payload is not rigidly attached to the vehicle. For instance, the authors in [4] show that if the payload’s mass and matrix of inertia vary in time, then autopilots for quadrotors designed using classical control techniques, such as the proportional-derivative control, are inadequate to guarantee satisfactory trajectory tracking.

In recent years, numerous authors, such as Bouadi et al. [5]; Dydek et al. [6]; Jafarnejadsani et al. [7]; Loukianov [8]; Mohammadi & Shahri [9]; Zheng et al. [10], to name a few, employed nonlinear robust control techniques, such as sliding mode control, model reference adaptive control (MRAC), adaptive sliding mode control, and L1 adaptive control, to design autopilots for quadrotors that are able to account for inaccurate modeling assumptions and compensate failures in the propulsion system. These autopilots are generally designed assuming perfect knowledge of the location of the quadrotor’s center of mass, supposing that the vehicle’s Euler angles are small at all times, and neglecting the inertial counter-torque. Furthermore, in several cases also the aerodynamic force and the corresponding moment are omitted. Because of these simplifying assumptions, these autopilots are inadequate for aircraft performing aggressive maneuvers, flying in adverse weather conditions, and transporting payloads not rigidly connected to the vehicle’s frame [11]. The vehicle’s guidance system is usually delegated to avoiding obstacles detected by proximity sensors and cameras installed aboard. For details, see the recent works by Faust et al. [12]; Gao & Shen [13]; Lin & Saripalli [14].

In the first part of this chapter, we present the equations of motion of quadrotors and analyze those properties needed to design effective nonlinear robust controls that enable output tracking. Specifically, we present the equations of motion of quadrotors without assuming a priori that the Euler angles are small and without neglecting the inertial counter-torque and the gyroscopic effect. Since the inertial counter-torque cannot be expressed as an algebraic function of the quadrotor’s state and control vectors, we account for this effect as an unmatched time-varying disturbance on the vehicle’s dynamics and hence, we consider the equations of motion of a quadrotor as a nonlinear time-varying dynamical system. Successively, we verify for the first time sufficient conditions for the strong accessibility of quadrotors’ altitude and rotational dynamics; strong accessibility [15] is a weak form of controllability for nonlinear time-varying dynamical systems. As a result of this analysis, we show that a conservative control law for quadrotors must prevent rotations of a ±π/2 angle about either of the two horizontal axes of the body reference frame; otherwise, the vehicle may be uncontrollable.

In the second part of this chapter, we present a robust autopilot for quadrotors, which is based on a version of the e-modification of the MRAC architecture [16]. This autopilot is characterized by numerous unique features. For instance, we assume that the quadrotor’s inertial properties, such as mass, moment of inertia, and location of the center of mass are unknown. Moreover, we assume that the quadrotor’s reference frame is centered at an arbitrary point, which does not necessarily coincide with the vehicle’s center of mass. In addition, we suppose that the coefficients characterizing the aerodynamic force and moment are unknown. In order to reduce the rotational kinematic and dynamic equations to a form that is suitable for MRAC, we employ an output-feedback linearization approach so that the controlled rotational dynamics is captured by a linear dynamical system, whose virtual input is designed using the proposed robust MRAC architecture.

We design the autopilot’s outer loop so that it regulates the vehicle’s position in the inertial frame and the inner loop so that it regulates the vehicle’s attitude. In conventional autopilots for quadrotors, the outer loop regulates the vehicle’s position in the horizontal plane and the inner loop controls the quadrotor’s altitude and orientation. As in conventional architectures, our outer loop defines the reference pitch and roll angles for the inner loop to track. However, our control architecture allows us to verify a priori that the reference pitch and roll angles meet the sufficient conditions for strong accessibility of the quadrotor’s altitude and rotational dynamics. Conventional autopilots’ outer loop may generate large reference pitch and roll angles that are not guaranteed to lay in the vehicle’s reachable set.

The conventional MRAC architecture ([17], Ch. 9) is designed to regulate time-invariant dynamical systems and, for this reason, autopilots for quadrotors based on the classical MRAC are unable to account for time-varying terms in the vehicle’s dynamics, such as the inertial counter-torque. Moreover, autopilots for quadrotors based on the classical MRAC architecture are robust to both matched and parametric uncertainties, but not unmatched uncertainties, such as aerodynamic forces. The autopilots presented in this chapter, instead, are robust to unmatched uncertainties as well and account for the fact that quadrotors are inherently time-varying dynamical systems.

A numerical example illustrates our theoretical framework by designing a control law that allows a quadrotor to follow a circular trajectory, although the vehicle’s inertial properties are unknown, one of the motors is suddenly turned off, the payload is dropped over the course of the mission, and the wind blows at 16 m/s, which is usually considered as a prohibitive velocity for conventional quadrotors. In this example, we clearly show how the proposed robust control algorithm outperforms both the classical proportional-derivative (PD) control and the conventional MRAC. Indeed, it is shown that quadrotors implementing autopilots based on the PD framework crash as soon as one motor is turned off. Moreover, we verify that quadrotors implementing autopilots based on the classical MRAC framework [6] are unable to fly in the presence of wind gusts faster than 6 m/s. Lastly, we show that, to fly in a wind blowing at 16 m/s, our autopilot requires a control effort that is smaller than the one required by a conventional MRAC-based autopilot to fly in a 6 m/s wind.

Advertisement

2. Notation and definitions

In this section, we establish the notation and the definitions used in this chapter. Let R denote the set of real numbers, Rn the set of n × 1 real column vectors, and Rn × m the set of n × m real matrices. We write 1n for the n × n identity matrix, 0n × m for the zero n × m matrix, and AT for the transpose of the matrix A ∈ Rn × m. Given a = [a1, a2, a3]T ∈ R3, a×0a3a2a30a1a2a10 denotes the cross product operator. We write ∥ · ∥ for the Euclidean vector norm and ∥ · ∥F for the Frobenius matrix norm, that is, given B ∈ Rn × m, BFtrBBT12. The Fréchet derivative of the continuously differentiable function V : Rn → R at x is denoted by V(x) ≜ ∂V(x)/∂x.

Definition 2.1 ([18], Def. 6.8). The Lie derivative of the continuously differentiable function V : Rn → R along the vector field f : Rn → Rn is defined as

LfVxVxfx,xRn.E1

The zeroth-order and the higher-order Lie derivatives are, respectively, defined as

Lf0VxVx,LfkVxLfLfk1Vx,xRn,k1.E2

Given the continuously differentiable functions f, g : Rn → Rn, the Lie bracket of f(·) and g(·) is defined as

adfgxgxxfxfxxgx,xRn.E3

To recall the definition of uniform ultimate boundedness, consider the nonlinear time-varying dynamical system

ẋt=ftxt,xt0=x0,tt0,E4

where x(t) ∈ Rn, t ≥ t0, f : [t0, ∞) × Rn → Rn is jointly continuous in its arguments, f(t, ·) is locally Lipschitz continuous in x uniformly in t for all t in compact subsets of t ∈ [t0, ∞), and 0 = f (t, 0), t ≥ t0.

Definition 2.2 ([19], Def. 4.6). The nonlinear time-varying dynamical system (4) is uniformly ultimately bounded with ultimate bound b > 0 if there exists c > 0 independent of t0 and for every a ∈ (0, c), there exists T = T (a, c) ≥ 0, independent of t0, such that if ∥x0 ∥  ≤ a, thenx(t) ∥  ≤ b, t ≥ t0 + T.

Advertisement

3. Robust MRAC for output tracking

In order to enable robust output tracking, in this section we present a robust nonlinear control law that is based on the e-modification of the conventional model reference adaptive control [16]. This control law guarantees that after a finite-time transient, the plant’s measured output tracks a given reference signal within some bounded error despite model uncertainties and external disturbances. In practice, the proposed controller guarantees uniform ultimate boundedness of the output tracking error.

Consider the nonlinear time-varying plant and the plant sensors’ dynamics

ẋpt=Apxpt+BpΛut+ΘTΦxpt+ξ̂t,xpt0=xp,0,tt0,E5
ẏt=εCpxptεyt,yt0=Cpxp,0,E6

where xptDpRnp, t ≥ t0, denotes the plant’s trajectory, 0np×1Dp, u(t) ∈ Rm denotes the control input, y(t) ∈ Rm denotes the measured output, ε > 0, Ap ∈ Rnp × np is unknown, Bp ∈ Rnp × m, Cp ∈ Rm × np, Λ ∈ Rm × m is diagonal, positive-definite, and unknown, Θ ∈ RN × m is unknown, the regressor vector Φ : RnP → RN is Lipschitz continuous in its argument, and ξ̂:t0Rnp is continuous in its argument and unknown. We assume that ξ̂tξ̂max, t ≥ t0, and Λ is such that the pair (Ap, BpΛ) is controllable and Λmin1m ≤ Λ, for some Λmin > 0. Both Λ and ΘTΦ(xp), xpDp, capture the plant’s matched and parametric uncertainties, such as malfunctions in the control system; the term ξ̂· captures the plant’s unmatched uncertainties, such as external disturbances.

Eq. (6) models the plant sensors as linear dynamical systems, whose uncontrolled dynamics is exponentially stable and characterized by the parameter ε > 0 ([20], Ch. 2). Given the reference signal ycmd : [t0, ∞) → Rm, which is continuous with its first derivative, define ycmd,2tẏcmdt, t ≥ t0, and assume that both ycmd(·) and ycmd, 2(·) are bounded, that is, ‖ycmd(t)‖ ≤ ymax, 1, t ≥ t0, and ‖ycmd, 2(t)‖ ≤ ymax, 2, for some ymax, 1, ymax, 2 > 0.

The following theorem provides a robust MRAC for the nonlinear time-varying dynamical system (5) and (6) such that the measured output y(·) is able to eventually track the reference signal ycmd(·) with bounded error, that is, there exist b > 0 and c > 0 independent of t0, and for every a ∈ (0, c), there exists a finite-time T = T(a, c) ≥ 0, independent of t0, such that if ∥y(t0) − ycmd(t0) ∥  ≤ a, then

ytycmdtb,tt0+T.E7

For the statement of this result, let n ≜ np + m and xtxpTtytycmdtTTRn, t ≥ t0, note that (5) and (6) are equivalent to

ẋt=Axt+BΛut+ΘTΦxpt+ξt,xt0=xp,0Cpxp,0ycmdt0,tt0,E8

where xtDRn, DDp×Rm, AAp0np×mεCpε1m, BBp0m×m, B10np×m1m, and ξtB1ycmd,2t+εycmdt+1np0m×npξ̂t, and consider the reference dynamical model

ẋreft=Arefxreft+Brefycmdt,xreft0=xp,0Cpxp,0ycmdt0,tt0,E9

where Aref=Aref,10np×m0m×npAref,2, Aref, 1 ∈ Rnp×np is Hurwitz, Aref, 2 ∈ Rm × m is Hurwitz, and Bref ∈ Rn × m is such that the pair (Aref, Bref) is controllable.

Theorem 3.1 Consider the nonlinear time-varying dynamical system given by Eqs. (5) and (6), the augmented dynamical system (8), and the linear time-invariant reference dynamical model (9). Define e(t) ≜ x(t) − xref(t), t ≥ t0, and let

γtxpx=K̂xTtx+K̂cmdTtycmdtΘ̂TtΦxp,txpxt0×Dp×D,E10

where

K̂̇xt=ΓxxteTtPB+σ1BTPetK̂xt,K̂xt0=0n×m,tt0,E11
K̂̇cmdt=ΓcmdycmdteTtPB+σ2BTPetK̂cmdt,K̂cmdt0=0m×m,E12
Θ̂̇t=ΓΘΦxpteTtPBσ3BTPetΘ̂t,Θ̂t0=0N×m,E13

the learning gain matrices Γx ∈ Rn × n, Γcmd ∈ Rm × m, and ΓΘ ∈ RN × N are symmetric positive-definite, P ∈ Rn × n is the symmetric positive-definite solution of the Lyapunov equation

0=ArefTP+PAref+Q,E14

Q ∈ Rn × n is symmetric positive-definite, and σ1, σ2, σ3 > 0. If there exists Kx ∈ Rn × m and Kcmd ∈ Rm × m such that

Aref=A+BΛKxT,E15
Bref=BΛKcmdT,E16

then the nonlinear time-varying dynamical system (8) with u(t) = γ(t, xp(t), x(t)), t ≥ t0, is uniformly ultimately bounded and (7) is verified.

Proof: Let ΔKxK̂xKx, ΔKcmdK̂cmdKcmd, and ΔΘΘ̂Θ and consider the Lyapunov function candidate

VeΔKxΔKcmdΔΘ=eTPe+trΔKxTΓxTΔKx+ΔKcmdTΓcmdTΔKcmd+ΔΘTΓΘTΔΘΛ,eΔKxΔKcmdΔΘRn×Rn×m×Rm×m×RN×m,E17

where tr(·) denotes the trace operator. The error dynamics is given by

ėt=Arefet+BΛΔKxTxt+ΔKcmdTycmdtΔΘTΦxpt+ξt,et0=0,tt0,E18

and using the same arguments as in ([17], pp. 324-325), one can prove that

V̇eΔKxΔKcmdΔΘ<0eΔKxΔKcmdΔΘΩ,E19

for some compact set Ω ⊂ Rn × Rn × m × Rm × m × RN × m. Thus, it follows from Theorem 4.18 of Khalil [19] that the nonlinear dynamical system given by (18) and (11)(13) is uniformly ultimately bounded.

Next, let xreft=xref,1Ttxref,2TtT, t ≥ t0, verify (9), where xref, 1(t) ∈ Rnp and xref, 2(t) ∈ Rm. It follows from the uniform ultimate boundedness of (18) that

ytycmdtxref,2tb̂,tT+t0,E20

for some b̂>0 and T ≥ 0, which are independent of t0. Moreover, since Aref is block-diagonal and Hurwitz, B1 = [0m × np, −1m]T, and ycmd(·) is bounded, it follows from (9) that xref, 2(·) is uniformly bounded ([18], 245), that is, ‖xref, 2(t)‖ ≤ b2, t ≥ t0, for some b2 ≥ 0 independent of t0. Thus, it follows from (20) that (7) is verified with b=b̂+b2.□

It is important to notice that although the matrix Ap, which characterizes the plant’s uncontrolled linearized dynamics, is unknown and hence, the augmented matrix A is unknown, the structure of the matrix Ap is usually known. Thus, in problems of practical interest it is generally possible to verify the matching conditions (15) and (16), although the matrix A is unknown ([17], Ch. 9).

Remark 3.1 If the adaptive gains K̂x·, K̂cmd·, and Θ̂· verify (11)(13), respectively, with σ1 = σ2 = σ3 = 0, then the control law (10) reduces to the conventional model reference adaptive control law for the augmented dynamical system (8) ([17], p. 298). However, conventional MRAC does not guarantee uniform ultimate boundedness of the closed-loop system in the presence of the matched uncertainty ξ̂· ([17], pp. 317-319).

Advertisement

4. Modeling assumptions on quadrotors’ dynamics

Let I=OXYZ denote an orthonormal reference frame fixed with the Earth and centered at some point O, and let J=Axtytzt, t ≥ t0, denote an orthonormal reference frame fixed with the quadrotor and centered at some point A, which is arbitrarily chosen. The axes of the reference frames I and J form two orthonormal bases of R3 and if a vector a ∈ R3 is expressed in I, then this vector is denoted by aI. Alternatively, if a ∈ R3 is expressed in J, then no superscript is used. In this chapter, we consider the reference frame I as an inertial reference frame; quadrotors move at subsonic velocities and are usually operated at altitudes considerably lower than 10 kilometers and hence, the error induced by this modeling assumption is negligible ([21], Ch. 5). The Z axis is chosen so that the quadrotor’s weight is given by FgI=mQgZ, where mQ > 0 denotes the vehicle’s mass and g denotes the gravitational acceleration; the X and Y axes are chosen arbitrarily. The axis z(·) points down and the axis x(·) is aligned to one of the quadrotor’s arms; see Figure 1.

Figure 1.

Schematic representation of a quadrotor helicopter.

The attitude of the reference frame J with respect to the reference frame I is captured by the roll, pitch, and yaw angles using a 3-2-1 rotation sequence ([22], Ch. 1). In particular, we denote by ψ : [t0, ∞) → [0, 2π) the yaw angle and φ,θ:t0π2π2 the roll and pitch angles, respectively. The angular velocity of J with respect to I is denoted by ω : [t0, ∞) → R3 ([22], Def. 1.9). The position of the point A with respect to the origin O of the inertial reference frame I is denoted by rA : [t0, ∞) → R3 and the velocity of A with respect to I is denoted by vA : [t0, ∞) → R3.

The position of the quadrotor’s center of mass C with respect to the reference point A is denoted by rC ∈ R3. The matrix of inertia of the quadrotor, excluding its propellers, with respect to A is denoted by I ∈ R3 × 3 and the matrix of inertia of each propeller with respect to A is denoted by IP ∈ R3 × 3. The spin rate of the ith propeller is denoted by ΩP, i : [t0, ∞) → R, i = 1, …, 4. In this chapter, we model the quadrotor’s frame as a rigid body and propellers as thin disks. Moreover, we assume that the vehicle’s inertial properties, such as the mass mQ, the inertia matrix I, and the location of the center of mass rC, are constant, but unknown. The quadrotor’s estimated mass is denoted by m̂Q>0 and the quadrotor’s estimated matrix of inertia with respect to A is given by the symmetric, positive-definite matrix ÎR3×3.

Advertisement

5. Quadrotors’ equations of motion

In this section, we present the equations of motion of quadrotors. Specifically, a quadrotor’s translational kinematic equation is given by ([22], Ex. 1.12)

ṙAIt=RφtθtψtvAt,rAIt0=rA,0I,tt0,E21

where

Rφθψcosψsinψ0sinψcosψ0001cosθ0sinθ010sinθ0cosθ1000cosφsinφ0sinφcosφ,φθψπ2π2×π2π2×02π,

and the rotational kinematic equation is given by ([22], Th. 1.7)

φ̇tθ̇tψ̇t=Γφtθtωt,φt0θt0ψt0=φ0θ0ψ0,E22

where

Γφθ1sinφtanθcosφtanθ0cosφsinφ0sinφsecθcosφsecθ,φθπ2π2×π2π2.

Under the modeling assumptions outlined in Section 4, a quadrotor’s translational dynamic equation is given by [4]

FTt+Fgφtθt+FvAt=mQv̇At+ω×tvAt+ω̇×trC+ω×tω×trC,vAt0=vA,0,tt0,E23

where FT(t) = [0, 0, u1(t)]T denotes the thrust force, that is, the force produced by the propellers that allows a quadrotor to hover,

Fgφθ=mQgsinθcosθsinφcosθcosφT,φθπ2π2×π2π2,E24

denotes the quadrotor’s weight, and F : R3 → R3 denotes the aerodynamic force acting on the quadrotor [23]. The rotational dynamic equation of a quadrotor is given by [4]

MTt+Mgφtθt+Mωt=mQrC×v̇At+ω×tvAt+Iω̇t+ω×tt+IPi=1400Ω̇P,itT+ω×tIPi=1400ΩP,itT,ωt0=ω0,tt0,E25

where MT(t) = [u2(t), u3(t), u4(t)]T denotes the moment of the forces induced by the propellers, MgφθrC×Fgφθ, φθπ2π2×π2π2, denotes the moment of the quadrotor’s weight with respect to A, and M : R3 → R3 denotes the moment of the aerodynamic force with respect to A. The terms IPi=1400Ω̇PitT, t ≥ t0, and ω×tIPi=1400ΩPitT in (25) are known as inertial counter-torque and gyroscopic effect, respectively. In this chapter, we refer to (21)(23) and (25) as the equations of motion of a quadrotor helicopter.

We model the aerodynamic force and the moment of the aerodynamic force as

FvA=vAKFvA,vAR3,E26
Mω=ωKMω,ωR3,E27

where KF, KM ∈ R3 × 3 are diagonal, positive-definite, and unknown; for details, refer to [23]. The aerodynamic force (26) is expressed in the reference frame J. The next result allows expressing F(·) in the reference frame I.

Proposition 5.1 Consider the translational kinematic equation (21) and let (26) capture the aerodynamic forces acting on a quadrotor. It holds that

FIvA=ṙAIRφθψKFRTφθψṙAI,ṙAφθψR3×π2π2×π2π2×02π.E28

Proof: It follows from (26) that

FIvA=vAKFvAI=vARφθψKFvAE29

for all vAφθψR3×π2π2×π2π2×02π, and it follows from (21) that

FIvA=vARφθψKFR1φθψṙAI.E30

Eq. (28) now follows from (30), since R(·,  · , ·) is an orthogonal matrix and hence, per definition, R−1(φ, θ, ψ) = RT(φ, θ, ψ), φθψπ2π2×π2π2×02π, ([22], Def. A.13) and vA=RTφθψṙA=ṙA ([24], p. 132).□

Eq. (26) captures the aerodynamic drag acting on a quadrotor in absence of wind. If the wind velocity vWI:t0R3 is not identically equal to zero, then it follows from (28) that the aerodynamic force is given by

FItvA=vwItṙAIRφθψKFRTφθψvwItṙAI,tṙAφθψt0×R3×π2π2×π2π2×02π.E31

It is reasonable to assume that the wind velocity does not affect the moment of the aerodynamic force (27).

A quadrotor’s control vector is given by u(t) = [u1(t), u2(t), u3(t), u4(t)]T, t ≥ t0, that is, the third component of the thrust force FT(·) and the moment of the forces induced by the propellers MT(·). One can verify that ([1], Ch. 2)

u1tu2tu3tu4t=11110l0ll0l0cTcTcTcTT1tT2tT3tT4t,tt0,E32

where Ti : [t0, ∞) → R, i = 1, …, 4, denotes the component of the force produced by the ith propeller along the −z(·) axis of the reference frame J, l > 0 denotes the length of each propeller’s arm, and cT > 0 denotes each propeller’s drag coefficient.

Remark 5.1 The state vector for the equations of motion of a quadrotor (21)(23) and (25) is defined as rATvATφθψωTTR12 and the inertial counter-torque IPi=1400Ω̇PitT, t ≥ t0, can be explicitly related through algebraic expressions to neither the state vector x nor the control input u. Thus, the inertial counter-torque must be considered as a time-varying term in a quadrotor’s rotational dynamic equations. Furthermore, it is common practice not to relate the gyroscopic effect ω×tIPi=1400ΩPitT, t ≥ t0, with the control input u through (32) ([1], Ch. 2). Hence, also the gyroscopic effect must be accounted for as a time-varying term in a quadrotor’s equations of motion. For these reasons, (21)(23) and (25) are a nonlinear time-varying dynamical system.

Advertisement

6. Proposed control system for quadrotors

In this section, we outline a control strategy for quadrotors and verify that this strategy does not defy the vehicle’s limits given by its controllability and underactuation.

6.1. Proposed control strategy

The configuration of a quadrotor, whose frame is modeled as a rigid body, is uniquely identified by the position in the inertial space of the reference point A, that is, rAIt=rXtrYt rZ(t)]T, t ≥ t0, and the Euler angles φ(t), θ(t), and ψ(t). Observing the equations of motion of a quadrotor (21)(23) and (25), one can show that the four control inputs u1(·), …, u4(·) are unable to instantaneously and simultaneously accelerate the six independent generalized coordinates rX(·), rY(·), rZ(·), φ(·), θ(·), and ψ(·), and hence quadrotors are underactuated mechanical systems ([25], Def. 2.9). However, it follows from (21)(23) and (25) that the control inputs u1(·), …, u4(·) are able to instantaneously and simultaneously accelerate the independent generalized coordinates rZ(·), φ(·), θ(·), and ψ(·), which uniquely capture the vehicle’s altitude and orientation dynamics.

In practical applications, quadrotors are employed to transport detection devices, such as antennas or cameras, that must be taken to some specific location and pointed in some given direction. For this reason, one usually needs to regulate a quadrotor’s position rAI· and yaw angle ψ(·). To meet this goal despite quadrotors’ underactuation, we apply the following control strategy. Let [rX, ref (t), rY, ref (t), rZ, ref (t)]T ∈ R3, t ≥ t0, denote the quadrotor’s reference trajectory, let ψref (t) ∈ [0, 2π) denote the quadrotor’s reference yaw angle, and assume that rX, ref (·), rY, ref (·), rZ, ref (·), and ψref (·), are continuous with their first two derivatives and bounded with their first derivatives. It follows from Example 1.4 of [22] that (21) and (23) are equivalent to

r¨AIt=uXtuYtuZt+mQ1FIvAtωtr¨CIt+μIt,rAIt0vAIt0=rA,0IvA,0I,tt0,E33

where [26]

μItmQ1u1tR(φtθtψt)R(φreftθreftψreft)Z,E34
φreftsin1uXtsinψreftuYtcosψreftuX2t+uY2t+uZ2t,E35
θrefttan1uXtcosψreft+uYtsinψreftuZt.E36

Thus, a feedback control law for the virtual control input [uX(·), uY(·), uZ(·)]T is designed so that, after a finite-time transient, rA(·) tracks [rX, ref(·), rY, ref(·), rZ, ref(·)]T with bounded error. Furthermore, a feedback control law for the control input [u2(·), u3(·), u4(·)]T is designed so that, after a finite-time transient, [φ(·), θ(·), ψ(·)]T tracks [φref(·), θref(·), ψref(·)]T with bounded error. Since the quadrotor’s mass mQ is unknown, we compute the component of the quadrotor’s thrust along the z(·) axis of the reference frame J as

u1t=m̂QuX2t+uY2t+uZ2t,tt0.E37

Figure 2 provides a schematic representation of the proposed control strategy.

Figure 2.

Proposed control scheme for a quadrotor.

Eqs. (35) and (36) constrain the nonlinear dynamical system given by (33), (22), and (25) and enforce its underactuation. Note that (36) is well-defined, since uZ(t) ≠ 0, t ≥ t0, is a necessary condition for a quadrotor to fly, and (35) is well-defined since u1(t) ≠ 0, t ≥ t0, is a necessary condition to fly and

uXtsinψreftuYtcosψreftuX2t+uY2t+uZ2t=uX2t+uY2tuX2t+uY2t+uZ2tcosψreft+αt1,

where α(t) ≜ tan−1(uY(t)/uX(t)). Alternative control strategies, which rely on the assumption that the roll and pitch angles are small, are provided by Islam et al. [27]; Kotarski et al. [28]; Liu & Hedrick [29].

6.2. Strong accessibility of quadrotors

In this section, we prove that quadrotors are not controllable whenever the z(·) axis is parallel to the horizontal plane. Specifically, it is well-known that θtπ2π2, t ≥ t0, is a necessary condition for a 3-2-1 rotation sequence to uniquely identify a quadrotor’s orientation in space and guarantee finiteness of the yaw rate for finite angular velocities ([22], p. 19). In the following, we verify for the first time the conditions for quadrotors’ strong accessibility [15], which is a weaker form of controllability for nonlinear dynamical systems [3032], and prove that if φt=π2 for some t ≥ t0, then the quadrotor may not be controllable, that is, there may not exist a continuous control input that is able to regulate the vehicle’s altitude and orientation dynamics at t = t.

To the authors’ best knowledge, the controllability of quadrotors’ altitude and orientation dynamics has been studied considering simplified models, which assume that the vehicle’s pitch and roll angles are small at all times [5, 33]. Moreover, existing results on the controllability of quadrotors neglect the fact that, as discussed in Remark 5.1, these vehicles are time-varying dynamical systems and rely on sufficient conditions for the controllability of time-invariant dynamical systems [30, 34].

In the following, we recall the notions of reachable set and strong accessibility for the nonlinear time-varying dynamical system

ẋt=ftxt+Gxtut,xt0=x0,tt0,E38

where x(t) ∈ Rn, t ≥ t0, u(t) ∈ Rm is continuous, and both f : [t0, ∞) × Rn → Rn and G : Rn → Rn × m are continuously differentiable.

Definition 6.1 ([15]). Consider the nonlinear time-varying dynamical system (38), let M be a real analytic manifold of dimension n, and let y ∈ M and t1, t2 ≥ t0. The reachable set R(y, t1, t2) of (38) from (y, t1) at t2 is the set of all states that can be reached at time t2 by following the solution of (38) with initial condition y, initial time t1, and some continuous control input u(·). The nonlinear time-varying dynamical system (38) is strongly accessible at y ∈ M at time t1 if R(y, t1, t2) has a non-empty interior in M for every t2 > t1. The nonlinear time-varying dynamical system (38) is strongly accessible on M if it is strongly accessible at every y ∈ M and every t1 ≥ t0.

In practice, Definition 6.1 states that if the nonlinear time-varying dynamical system (38) is strongly accessible on M, then for every point in the reachable set of (38), there exists a continuous control input such that the system’s trajectory is contained both in the reachable set and the manifold M at all times. The next theorem provides sufficient conditions for the strong accessibility of the nonlinear dynamical system (38). For the statement of this result, consider the augmented time-invariant dynamical system

x~̇t=f~x~t+G~x~tut,x~0=x0Tt0T,t0,E39

where x~xTtT, f~x~fTx1T, G~x~GTx0n×1T, and recall that the controllability matrix of the augmented time-invariant dynamical system (39) is defined as [15]

Cx~g~1x~g~mx~adf~g~1x~adf~g~mx~,x~Rn×t0,E40

where G~x~=g~1x~g~mx~.

Theorem 6.1 ([15]). Consider the nonlinear dynamical system (38). If rankCx~=n for all x~M×t0, then (38) is strongly accessible.

It follows from (21)(23) and (25) that a quadrotor’s altitude and orientation are captured by (38) with n = 8, m = 4, x=rZφθψṙZωTT, f:t0×D×R4R4, D=0×π2π2× π2π2×02π×R×R3, and

Gx=mQ104×104×3cosφcosθ01×303×1mQΓφθI1;E41

the explicit expression for f(·, ·) is omitted for brevity. In this case, the controllability matrix C· of the fully actuated, augmented time-invariant dynamical system (39) is such that

detCx~=cosφmQ2det2I,x~R8×t0,E42

and it follows from Theorem 6.1 that φtπ2π2, t ≥ t0, is a sufficient condition to guarantee that a quadrotor’s altitude rZ(t) and orientation [φ(t), θ(t), ψ(t)]T can be regulated by some continuous control input u(t), while ṙZtφ̇tθ̇tψ̇tT remain bounded at all times; in practice, to preserve controllability, a conservative control law for quadrotors must prevent rotations of an angle of ±π/2 about the x(·) axis of the reference frame J. Note that it follows from (35) that φreftπ2π2, t ≥ t0, and hence the reference roll angle verifies sufficient conditions for strong accessibility of quadrotors’ altitude and orientation dynamics.

Advertisement

7. Nonlinear robust control of quadrotors

In this section, we apply the results presented in Sections 3–6 to design control laws so that a quadrotor can follow a given trajectory with bounded error. Specifically, we design a control law for u(·) so that a quadrotor can track both the given reference trajectory [rX, ref(t), rY, ref(t), rZ, ref(t)]T, t ≥ t0, and the reference yaw angle ψref(t). In practice, we design control laws both for the virtual control input [uX(t), uY(t), uZ(t)]T, t ≥ t0, and the moment of the propellers’ thrust [u2(t), u3(t), u4(t)]T, so that a quadrotor tracks [rX, ref(t), rY, ref(t), rZ, ref(t)]T, the reference roll angle (35), the reference pitch angle (36), and the reference yaw angle ψref(t).

It follows form (33) that if the aerodynamic force is modeled as in (31), then a quadrotor’s translational kinematic and dynamic equations are given by

ẋp,Pt=Ap,Pxp,Pt+Bp,PΛPuXtuYtuZt+ΘPTΦxp,Pt+ξ̂Pt,xp,Pt0=rA,0TvA,0ITT,tt0,E43
ẏPt=εCp,Pxp,PtεyPt,yPt0=Cp,Pxp,Pt0,E44

where xp,Pt=rAItTṙAItTT, t ≥ t0, Ap,P=03×31303×303×3, Bp,P=03×313, ΛP=mQ113, Cp, P = [13, 03 × 3], ξ̂PtR6, 1303×3ξ̂Pt=03×3, and

03×313ξ̂Pt=mQ1vWItṙAItBp,PRφtθtψt·KFRTφtθtψtvWItṙAIt+μItr¨CIt.E45

Although ΘPTΦxp,P· follows neither from (33) nor (28), this nonlinear term has been introduced to account for failures of the control system; in this section, we assume that

Φz=tanhz,zRn,E46

which is globally Lipschitz continuous. Since any quadrotor’s velocity and acceleration are bounded, it follows from (45) that also the unmatched uncertainty ξ̂P· is bounded. Eq. (44) captures the plant sensor’s dynamics ([20], Ch. 2).

It follows from (22) and (25) that a quadrotor’s rotational dynamics is captured by

φ̇tθ̇tψ̇tω̇t=fφtθtψtωt+03×3Î1u2tu3tu4t+ξ̂At,φt0θt0ψt0ωTt0T=φ0θ0ψ0ω0TT,tt0,E47

where fφθψω=ωTΓTφθÎ1ω×ÎωTT, ξ̂AtR6, 1303×3ξ̂At=03,

03×313ξ̂At=I1rC×Fg(φtθt)mQr¨AIt+I1Mωt+Î1ω×tÎI1ω×tIωt+IÎu2tu3tu4tTI1IPi=1400Ω̇P,itI1ω×tIPi=1400ΩP,it,E48

Fg(·, ·) is given by (24), rA(·) verifies (43), and M(·) is given by (27). Let xp,A=φφ̇θθ̇ψψ̇T, ηxp,A=φ̇θ̇ψ̇T, βxp,A=Lf2φLf2θLf2ψT, and v ∈ R3; the explicit expression of β(·) is omitted for brevity. By proceeding as in Example 6.3 of [35], one can prove that the nonlinear dynamical system (47) is feedback linearizable ([31], Ch. 5). Specifically, (47) with

u2u3u4T=ÎΓ1φθηxp,Aβxp,A+v,xp,Avπ2π2×R×π2π2×R×02π×R×R3,E49

is equivalent to

ẋp,At=Ap,Axp,At+Bp,AΛAvt+ΘATΦxp,At+ξ̂At,xp,At0=φ0φ̇0θ0θ̇0ψ0ψ̇0T,tt0,E50
ẏAt=εCp,Axp,AtεyAt,yAt0=Cp,Axp,At0,E51

where

Ap,A=010000010000000100000100000001000001,Bp,A=000100000010000001,Cp,A=100000010000001000T,E52

φ̇0θ̇0ψ̇0T=Γφ0θ0ω0, Λ ∈ R3 × 3 is diagonal positive-definite, and Φ(·) given by (46). Although ΛA = 13 [35], we assume that ΛA is unknown and accounts for failures of the propulsion system and erroneous modeling assumptions. Similarly, the term ΘATΦxp,A· has been introduced to capture matched uncertainties. Since any quadrotor’s angular velocity, angular acceleration, and propeller’s spin rate are bounded, it follows from (48) that also the unmatched uncertainty ξ̂A· is bounded. Eq. (51) captures the plant sensor’s dynamics ([20], Ch. 2).

The next theorem provides feedback control laws both for [uX(·), uY(·), uZ(·)]T and [u2(·), u3(·), u4(·)]T so that the measured output signal yP(·) tracks the reference signal

ycmd,Pt=rX,reftrY,reftrZ,reftT,tt0,E53

and the measured output signal yA(·) tracks the reference signal

ycmd,At=φreftθreftψreftT,E54

where φref(·) and θref(·) are given by (35) and (36), respectively, with some bounded error despite model uncertainties, external disturbances, and failures of the propulsion system. For the statement of this result, consider both the nonlinear dynamical system given by (43) and (44) and the nonlinear dynamical system given by (50) and (51), and note that these systems are equivalent to (5) and (6) with xp=xp,PTxp,ATT, Dp=R3×R3×π2π2×R×π2π2×R×02π×R, u = [uX, uY, uZ, vT]T, ycmd=ycmd,PTycmd,ATT, ycmd,2=ycmd,2,PTycmd,2,ATT, np = 12, m = 6, ξ̂=ξ̂PTξ̂ATT, and

Ap=Ap,P06×606×6Ap,A,Bp=Bp,P06×306×3Bp,A,Cp=Cp,P03×603×6Cp,A,
Λ=ΛP03×303×3ΛA,Θ=ΘP06×306×3ΘA,Φxp=Φxp,PΦxp,A.

Theorem 7.1 Consider the nonlinear dynamical system given by (43) and (44), the nonlinear dynamical system given by (50) and (51), the reference signals (53) and (54), the augmented dynamical system (8), the reference dynamical model (9), the feedback control law γ(·,  · , ·) given by (10), and the adaptation laws (11)(13). If there exist Kx ∈ R18 × 6 and Kcmd ∈ R6 × 6 such that (15) and (16) and satisfied, then (8) with u = γ(t, xp, x) is uniformly ultimately bounded. Furthermore, there exist b > 0 and c > 0 independent of t0, and for every a ∈ (0, c), there exists a finite-time T = T(a, c) ≥ 0, independent of t0, such that ifyP(t0) − ycmd, P(t0) ∥  ≤ a andyA(t0) − ycmd, A(t0) ∥  ≤ a, then

yPtycmd,Ptb,tt0+T,E55
yAtycmd,Atb.E56

Lastly, the thrust force generated by the quadrotor’s propellers is such that

u1t=m̂QγP(txptxt),tt0,E57

and the moment of the thrust force generated by the quadrotor’s propellers is given by

u2tu3tu4t=ÎΓ1φtθtηxp,Atβxp,At+γA(txptxt),E58

where γtxpx=γPTtxpxγAT(txpx)T, (t, xp, x) ∈ [t0, ∞) × R12 × R18, γP(t, xp, x) ∈ R3, and γA(t, xp, x) ∈ R3.

Proof: Uniform ultimate boundedness of (8) with u = γ(t, xp, x) is a direct consequence of Theorem 3.1. Thus, both the nonlinear dynamical system given by (43) and (44) with [uX, uY, uZ]T = γP(t, xp, x), txpxt0×Dp×D, and the nonlinear dynamical system given by (50) and (51) with [u2, u3, u4]T = γA(t, xp, x) are uniformly ultimately bounded. Consequently, it follows from Definition 2.2 that there exist b > 0 and c > 0 independent of t0, and for every a ∈ (0, c), there exists a finite-time T = T(a, c) ≥ 0, independent of t0, such that if ∥yP(t0) − ycmd, P(t0) ∥  ≤ a and ∥yA(t0) − ycmd, A(t0) ∥  ≤ a, then (55) and (56) are satisfied. Lastly, (57) directly follows from (37), and (58) directly follows from (49).

Advertisement

8. Illustrative numerical example

In this section, we provide a numerical example to illustrate both the applicability and the advantages of the theoretical results presented in this chapter. Specifically, we design a nonlinear robust control algorithm that allows a quadrotor helicopter to follow a circular trajectory, although the vehicle’s inertial properties are unknown, one of the motors is suddenly turned off, the payload is dropped over the course of the mission, and the wind blows at strong velocity.

Consider a quadrotor of mass mQ = 1 kg and matrix of inertia I = 13 kg m2, let the propellers be characterized by the matrix of inertia Ip=0.0250000.0250000.05kgm2, and let that the sensor’s dynamics be characterized by ε = 10. We assume that the vehicle’s mass and matrix of inertia are unknown and estimated to be m̂Q=1.25kg and Î=0.8·13kgm2, respectively. Moreover, we assume that the aerodynamic force (31) and the aerodynamic moment (27) are characterized by KF = KM = 0.01 · 13, which we assume unknown, and the wind velocity is given by vWIt=1600Tm/s, t ≥ t0; it is worthwhile to note that this wind speed is considered as excessive for quadrotors equipped with conventional autopilots.

Figure 3 shows the quadrotor’s trajectory obtained applying the control laws (57) and (58) to track a circular path of radius 0.3 m at an altitude of 0.75 m despite the fact that the quadrotor’s payload of 0.5 kg is dropped at t ≥ 40 s and one of the motors is turned off at t = 90 s. These results have been obtained by setting σ1 = σ2 = σ3 = 2, Γcmd = 100 · 16, and Γx and ΓΘ as block-diagonal matrices, whose non-zero blocks are Γx, (1, 1) = 1000 · 19, Γx, (2, 2) = 2000 · 19, ΓΘ, (1, 1) = 200 · 19, abd ΓΘ, (2, 2) = 1600 · 19.

Figure 3.

Reference trajectory and trajectory followed by the quadrotor implementing the proposed control algorithm. The vehicle is disturbed by some wind constantly blowing at 16 m/s.

Figure 4 shows both the quadrotor’s altitude as function of time and the altitude of an identical quadrotor implementing an autopilot based on the classical PD framework [36] and flying in absence of wind. It is clear how the quadrotor implementing our control algorithm is able to fly at the desired altitude despite the fact that the payload is dropped at t = 40 s and a motor is turned off at t = 90 s. The quadrotor implementing the PD algorithm is unable to reach the desired altitude because of the large error in the vehicle’s mass’ estimate. Moreover, this quadrotor reaches a considerably higher altitude after the payload is dropped and crashes after one of the propellers is turned off.

Figure 4.

Altitude of a quadrotor implementing the proposed control algorithm and altitude of an identical quadrotor implementing an autopilot based on the classical PD control.

The first plot in Figure 5 shows the control inputs (57) and (58). The second plot in Figure 5 shows the control inputs computed using a conventional MRAC framework [6] for a quadrotor tracking the same circular path despite a wind blowing at 6 m/s; numerical simulations show that quadrotors implementing the conventional MRAC framework are unable to fly in the presence of wind gusts faster than 6 m/s. It is clear that our autopilot requires a control effort that is smaller than the effort required by a conventional MRAC-based autopilot to fly in weaker wind.

Figure 5.

Control input for a quadrotor implementing the proposed control algorithm and control input for an identical quadrotor implementing a conventional MRAC-based autopilot.

Advertisement

9. Conclusion

In this chapter, we presented a robust MRAC architecture, which we employed to design autopilots for quadrotor helicopters. The proposed autopilot is the first to account for the fact that quadrotors are nonlinear time-varying dynamical systems, the exact location of the vehicle’s center of mass is usually unknown, and the aircraft reference frame is centered at some point that does not necessarily coincide with the vehicle’s barycenter. Moreover, our autopilot does not rely on the assumption that the Euler angles are small at all times and accounts both for the inertial counter-torque and the gyroscopic effect.

The applicability of our theoretical results has been illustrated by a numerical example and it is clearly shown how the proposed autopilot is able to track a given reference trajectory despite the fact that the payload is dropped during the mission, one of the motors is turned off, and the wind blows at the prohibitive velocity of 16 m/s. It is also shown that quadrotors implementing autopilots based on the classical PD framework crash if one of the propellers stops functioning. Lastly, it is shown that our autopilot requires a control effort that is smaller than the effort required by conventional MRAC-based autopilots to fly in less strong wind.

Advertisement

Acknowledgments

This work was supported in part by the NOAA/Office of Oceanic and Atmospheric Research under NOAA-University of Oklahoma Cooperative Agreement #NA16OAR4320115, U.S. Department of Commerce, the National Science Foundation under Grant no. 1700640, and the National Science Foundation REU under Grant Oklahoma EPSCoR-2017-3. Lastly, the author wishes to thank Mr. Keyvan Mohammadi for performing the numerical simulation presented in Section 8.

References

  1. 1. Carrillo LRG, López AED, Lozano R, Pégard C. Quad Rotorcraft Control: Vision-Based Hovering and Navigation. London, UK: Springer; 2012
  2. 2. Mahony R, Kumar V, Corke P. Multirotor aerial vehicles: Modeling, estimation, and control of quadrotor. IEEE Robotics & Automation Magazine. 2012;19(3):20-32
  3. 3. Valavanis KP, editor. Introduction. In: Advances in Unmanned Aerial Vehicles: State of the Art and the Road to Autonomy. Dordrecht, the Netherlands: Springer; 2007. p. 3-13
  4. 4. L’Afflitto A, Mohammadi K. Equations of motion of rotary-wing UAS with time-varying inertial properties. AIAA Journal of Guidance, Control, and Dynamics. 2017 In press. DOI:10.2514/1.G003015. https://arc.aiaa.org/doi/abs/10.2514/1.G003015
  5. 5. Bouadi H, Cunha SS, Drouin A, Mora-Camino F. Adaptive sliding mode control for quadrotor attitude stabilization and altitude tracking. In: IEEE International Symposium on Computational Intelligence and Informatics; 2011. pp. 449-455
  6. 6. Dydek ZT, Annaswamy AM, Lavretsky E. Adaptive control of quadrotor UAVs: A design trade study with flight evaluations. IEEE Transactions on Control Systems Technology. 2013;21(4):1400-1406
  7. 7. Jafarnejadsani H, Sun D, Lee H, Hovakimyan N. Optimized 1 adaptive controller for trajectory tracking of an indoor quadrotor. Journal of Guidance, Control, and Dynamics. 2017;40(6):1415-1427
  8. 8. Loukianov AG. Robust block decomposition sliding mode control design. Mathematical Problems in Engineering. 2002;8(4–5):349-365
  9. 9. Mohammadi M, Shahri AM. Adaptive nonlinear stabilization control for a quadrotor UAV: Theory, simulation and experimentation. Journal of Intelligent & Robotic Systems. 2013;72(1):105-122
  10. 10. Zheng E-H, Xiong J-J, Luo J-L. Second order sliding mode control for a quadrotor UAV. ISA Transactions. 2014;53(4):1350-1356
  11. 11. Foehn P, Falanga D, Kuppuswamy N, Tedrake R, Scaramuzza D. Fast trajectory optimization for agile quadrotor maneuvers with a cable-suspended payload. In: Robotics: Science and Systems; 2017. pp. 1-10
  12. 12. Faust A, Chiang H-T, Rackley N, Tapia L. Avoiding moving obstacles with stochastic hybrid dynamics using pearl: Preference appraisal reinforcement learning. In: International Conference on Robotics and Automation; 2016
  13. 13. Gao F, Shen S. Quadrotor trajectory generation in dynamic environments using semi-definite relaxation on nonconvex qcqp. In: IEEE International Conference on Robotics and Automation; 2017. pp. 6354-6361
  14. 14. Lin Y, Saripalli S. Path planning using 3D Dubins curve for unmanned aerial vehicles. In: International Conference on Unmanned Aircraft Systems; 2014. pp. 296-304
  15. 15. Bhat SP. Controllability of nonlinear time-varying systems: Applications to spacecraft attitude control using magnetic actuation. IEEE Transactions on Automatic Control. 2005;50(11):1725-1735
  16. 16. Narendra K, Annaswamy A. A new adaptive law for robust adaptation without persistent excitation. IEEE Transactions on Automatic Control. 1987;32(2):134-145
  17. 17. Lavretsky E, Wise K. Robust and Adaptive Control: With Aerospace Applications. London, UK: Springer; 2012
  18. 18. Haddad WM, Chellaboina V. Nonlinear Dynamical Systems and Control: A Lyapunov-Based Approach. Princeton, NJ: Princeton Univ. Press; 2008
  19. 19. Khalil HK. Nonlinear Systems. Princeton, NJ: Prentice Hall; 2002
  20. 20. Morris AS. Measurement and Instrumentation Principles. Woburn, MA: Elsevier; 2001
  21. 21. Etkin B. Dynamics of Flight: Stability and Control. New York, NY: Wiley; 1982
  22. 22. L’Afflitto A. A Mathematical Perspective on Flight Dynamics and Control. London, UK: Springer; 2017
  23. 23. Hoffmann G, Huang H, Waslander S, Tomlin C. Quadrotor helicopter flight dynamics and control: Theory and experiment. In: AIAA Guidance, Navigation and Control Conference; 2007. pp. 1-20
  24. 24. Gentle J. Matrix Algebra: Theory, Computations, and Applications in Statistics, Springer Texts in Statistics. New York, NY: Springer; 2007
  25. 25. Fantoni I, Lozano R. Non-linear Control for Underactuated Mechanical Systems. Berlin, Germany: Springer; 2002
  26. 26. Zhao B, Xian B, Zhang Y, Zhang X. Nonlinear robust adaptive tracking control of a quadrotor UAV via immersion and invariance methodology. IEEE Transactions on Industrial Electronics. 2015;62(5):2891-2902
  27. 27. Islam S, Liu XP, Saddik AE. Adaptive sliding mode control of unmanned four rotor flying vehicle. International Journal of Robotics and Automation. 2015;30:140-148
  28. 28. Kotarski D, Benić Z, Krznar M. Control design for unmanned aerial vehicles with four rotors. Interdisciplinary Description of Complex Systems. 2016;14(2):236-245
  29. 29. Liu Z, Hedrick K. Dynamic surface control techniques applied to horizontal position control of a quadrotor. In: International Conference on System Theory, Control and Computing; 2016. pp. 138-144
  30. 30. Hermann R, Krener A. Nonlinear controllability and observability. IEEE Transactions on Automatic Control. 1977;22(5):728-740
  31. 31. Isidori A. Nonlinear Control Systems. New York, NY: Springer; 1995
  32. 32. Sussmann HJ, Jurdjevic V. Controllability of nonlinear systems. Journal of Differential Equations. 1972;12(1):95-116
  33. 33. Sato K. Algebraic controllability of nonlinear mechanical control systems. SICE Journal of Control, Measurement, and System Integration. 2014;7(4):191-198
  34. 34. Haynes GW, Hermes H. Nonlinear controllability via Lie theory. SIAM Journal on Control. 1970;8(4):450-460
  35. 35. L’Afflitto A, Haddad WM. Optimal singular control for nonlinear semistabilisation. International Journal of Control. 2016;89(6):1222-1239
  36. 36. Bouabdallah S, Noth A, Siegwart R. PID vs LQ control techniques applied to an indoor micro quadrotor. In: International Conference on Intelligent Robots and Systems. Vol. 3; 2004. pp. 2451-2456

Written By

Keyvan Mohammadi and Andrea L’Afflitto

Submitted: 19 April 2017 Reviewed: 28 August 2017 Published: 20 December 2017