path tracking of a uav via an underactuated control …rubio/ejc_11_quadrotor.pdf · path tracking...

20
European Journal of Control (2011)2:1–20 © 2011 EUCA DOI:10.3166/EJC.17.1–20 Path Tracking of a UAV via an Underactuated H Control Strategyg Guilherme V. Raffo , Manuel G. Ortega ∗∗ , Francisco R. Rubio ∗∗∗ Department of Systems Engineering and Automation, University of Seville, Camino de los Descubrimientos sn, 41092 Seville, Spain In this study, a nonlinear robust control strategy designed for underactuated mechanical systems is proposed in order to solve the path tracking problem for a quadro- tor unmanned aerial vehicle. An underactuated nonlinear H controller based on the six degrees of freedom dynamic model is designed to control the helicopter atti- tude and altitude in the inner-loop. The outer-loop control is performed using a model-based predictive controller (mpc) to track the reference trajectory. The robust per- formance achieved with the proposed control strategy is checked by simulation in the presence of aerodynamic dis- turbances, unmodelled dynamics and parametric uncer- tainties. Keywords: Nonlinear H control, predictive con- trol, robust control, underactuated mechanical system, autonomous aerial vehicle 1. Introduction The quadrotor unmanned aerial vehicle (UAV) is an autonomous four rotor helicopter, which is often used to develop control laws for VTOL (Vertical Take-Off and Landing). Besides, the quadrotor UAV configuration presents some advantageous features in comparison with the standard helicopter one. This is mainly because it is lifted and propelled by four rotors, which makes it possi- ble to reduce each individual rotor size and to maintain or to increase the total UAV load capacity, when compared Correspondence to: G.V. Raffo, E-mail: [email protected] ∗∗ E-mail: [email protected] ∗∗∗ E-mail: [email protected] with a helicopter with one main rotor. Furthermore, these vehicles do not require complex mechanical linkages to act on propellers. This reduces the design, maintenance and cost of the vehicle [15]. These facts, added to its high maneuverability, allow take-offs and landings, as well as flight in tough environment. The quadrotor helicopter tries to reach a stable hov- ering and flight using the equilibrium forces produced by the four rotors [7]. The movement of the UAV results from changes in the angular speed of the rotors. Longitudinal motions are achieved by means of changes in the front and rear rotor velocity, while lateral displacements are per- formed using the speed of the right and left propellers. Yaw movement is obtained from the difference in the counter- torque between each pair of propellers, i.e., accelerating the two clockwise turning rotors while decelerating the counter-clockwise turning rotors, and vice-versa. Nevertheless, these kind of vehicles are underactuated mechanical systems with six degrees of freedom (DOF) and only four control actions, which complicates the control design stage. Techniques developed for fully actu- ated robots can not be directly applied to underactuated nonlinear mechanical systems [10]. Therefore, nonlinear modelling techniques and modern nonlinear control the- ory are usually employed to achieve autonomous flight with high performance [16], [7], [12]. Several studies have been published describing some control strategies to solve the path tracking problem for the quadrotor helicopter. In [21], the path tracking prob- lem was solved using exact linearization techniques via dynamic feedback. In [9], the angular rates and vertical velocity stabilization by a 2DOF H controller using Received 28 September 2009; Accepted 2 June 2010 Recommended by G.R. Damm, A.J. van der Schaft

Upload: tranhanh

Post on 21-Jun-2018

221 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Path Tracking of a UAV via an Underactuated Control …rubio/EJC_11_QuadRotor.pdf · Path Tracking of a UAV via H∞ Control 3 The remainder of the study is organized as follows:

European Journal of Control (2011)2:1–20© 2011 EUCADOI:10.3166/EJC.17.1–20

Path Tracking of a UAV via an Underactuated HHH∞∞∞ Control Strategyg

Guilherme V. Raffo∗, Manuel G. Ortega∗∗, Francisco R. Rubio∗∗∗

Department of Systems Engineering and Automation, University of Seville, Camino de los Descubrimientos sn, 41092 Seville, Spain

In this study, a nonlinear robust control strategy designedfor underactuated mechanical systems is proposed inorder to solve the path tracking problem for a quadro-tor unmanned aerial vehicle. An underactuated nonlinearH∞ controller based on the six degrees of freedomdynamic model is designed to control the helicopter atti-tude and altitude in the inner-loop. The outer-loop controlis performed using a model-based predictive controller(mpc) to track the reference trajectory. The robust per-formance achieved with the proposed control strategy ischecked by simulation in the presence of aerodynamic dis-turbances, unmodelled dynamics and parametric uncer-tainties.

Keywords: Nonlinear H∞ control, predictive con-trol, robust control, underactuated mechanical system,autonomous aerial vehicle

1. Introduction

The quadrotor unmanned aerial vehicle (UAV) is anautonomous four rotor helicopter, which is often usedto develop control laws for VTOL (Vertical Take-Offand Landing). Besides, the quadrotor UAV configurationpresents some advantageous features in comparison withthe standard helicopter one. This is mainly because it islifted and propelled by four rotors, which makes it possi-ble to reduce each individual rotor size and to maintain orto increase the total UAV load capacity, when compared

∗Correspondence to: G.V. Raffo, E-mail: [email protected]∗∗E-mail: [email protected]∗∗∗E-mail: [email protected]

with a helicopter with one main rotor. Furthermore, thesevehicles do not require complex mechanical linkages toact on propellers. This reduces the design, maintenanceand cost of the vehicle [15]. These facts, added to its highmaneuverability, allow take-offs and landings, as well asflight in tough environment.

The quadrotor helicopter tries to reach a stable hov-ering and flight using the equilibrium forces produced bythe four rotors [7]. The movement of the UAV results fromchanges in the angular speed of the rotors. Longitudinalmotions are achieved by means of changes in the frontand rear rotor velocity, while lateral displacements are per-formed using the speed of the right and left propellers. Yawmovement is obtained from the difference in the counter-torque between each pair of propellers, i.e., acceleratingthe two clockwise turning rotors while decelerating thecounter-clockwise turning rotors, and vice-versa.

Nevertheless, these kind of vehicles are underactuatedmechanical systems with six degrees of freedom (DOF)and only four control actions, which complicates thecontrol design stage. Techniques developed for fully actu-ated robots can not be directly applied to underactuatednonlinear mechanical systems [10]. Therefore, nonlinearmodelling techniques and modern nonlinear control the-ory are usually employed to achieve autonomous flightwith high performance [16], [7], [12].

Several studies have been published describing somecontrol strategies to solve the path tracking problem forthe quadrotor helicopter. In [21], the path tracking prob-lem was solved using exact linearization techniques viadynamic feedback. In [9], the angular rates and verticalvelocity stabilization by a 2DOF H∞ controller using

Received 28 September 2009; Accepted 2 June 2010Recommended by G.R. Damm, A.J. van der Schaft

Page 2: Path Tracking of a UAV via an Underactuated Control …rubio/EJC_11_QuadRotor.pdf · Path Tracking of a UAV via H∞ Control 3 The remainder of the study is organized as follows:

2 G.V. Raffo et al.

the loop shaping technique was applied in the inner-loop.The same technique was used to control the longitudi-nal and lateral velocities, the yaw angle and the height inthe outer-loop. A predictive control was designed to solvethe path tracking problem in that study. Backstepping andsliding mode techniques were used to control the heli-copter in [2]. In these strategies the model was split up intothe angular rotations subsystem and the linear translationsone. Xu and Özgüner proposed an approach using slid-ing mode control for underactuated mechanical systems tostabilize a quadrotor helicopter ([38],[39]). Robust feed-back linearization with a H∞ controller was applied toperform the path tracking problem in [22]. In [23] a feed-back linearization-based controller with a sliding modeobserver was designed for the quadrotor helicopter.

The same model structure presented in [2] was usedto design the controllers in [27], [28]. In [27] a controllaw based on a standard backstepping approach for trans-lational movements and a fully actuated nonlinear H∞controller to stabilize the helicopter were combined toperform path following in the presence of aerodynamicmoments disturbances and parametric uncertainties. In[28] the same nonlinear H∞ controller presented in [27]was used to stabilize the UAV, while a predictive controllerwas employed to control the translational motion and toprovide a smooth path tracking through its predictive fea-tures. However, both these strategies are only able to rejectsustained disturbances applied to the rotational motion.

Although, several control strategies have been testedon the quadrotor helicopter, most of them do not con-sider external disturbances on the six degrees of freedom,unmodelled dynamics and parametric uncertainty on thewhole model. For example, in [2], [6], [40] the proposedcontrollers are not capable to reject sustained disturbances.In [21] just disturbances on the translational movementswere considered, and in [27], [28] disturbances are onlytaken into account in the rotational controller design.

In this study, the quadrotor helicopter path trackingis performed using a nonlinear H∞ control designedfor underactuated mechanical systems in the inner-loop.This controller considers the overall dynamic behaviour inorder to control the helicopter attitude and altitude. Thisfact implies that the translational and rotational motioncontrol are not considered separately, being that their cou-pling are not treated like external disturbances. Therefore,this approach constitutes a clear advantage with respect toother control strategies proposed in the literature (e.g. [3],[27], [28]). Moreover, the underactuated nonlinear H∞control proposed in this study makes it possible to rejectpersistent disturbances on the six degrees of freedom.

The proposed controller is based on the ones developedin [34] and in [25]. In [34] a nonlinear H∞ control forunderactuated manipulators, by using the state tracking

error equation presented in [17], is proposed. Neverthe-less, these results exhibit some main restrictions, as, forexample, the assumption of null-average disturbances andan exact robot model. In [25] a nonlinear H∞ controllerfor fully actuated manipulator is developed, where theintegral of the error position is added to the tracking errorvector. In the same publication, conditions to formulatethe controller in the form of a nonlinear PID were estab-lished, where the control signal can be penalized, as wellas the error signals, their integral and their derivative.The nonlinear H∞ control considers a Hamilton-Jacobi-Bellman-Isaacs partial differential equation (HJBI PDE),which replaces the Riccati equation in the case of thelinear H∞ control formulation. The main problem withthe nonlinear case is that there is no general method tosolve these HJBI PDEs. Therefore, solutions have to befound for each particular case. By applying game theoryto formulate the nonlinear H∞ control, a constant gainsimilar to the results obtained with feedback lineariza-tion procedures is provided by an analytical solution. Anexplicit global parameterized solution to this problem, for-mulated as a minimax game, was developed in [8] forthe particular case of mechanical systems formulated viaEuler-Lagrange equations, which was modified in [34] andin [25].

In this study, both techniques are combined and adaptedfor the case of a quadrotor helicopter in order to synthe-size the inner-loop controller. In the outer-loop an integralpredictive controller is designed by determining the rolland pitch reference angles for the inner-loop controller.The outer-loop controller is an improvement of the oneproposed in [28], since the integral action is added to thexy motion control law to deal with sustained disturbances.Furthermore, it provides a smooth path tracking due to thefact that the mpc formulation allows the use of previouslyknown references for the control law calculation.

For the control strategy proposed in this study, it isassumed that all states are accessible by the controllers.Generally, it can result in difficulties for practical imple-mentations. At the same time, there are a large varietyof sensors available that provide the necessary measure-ments. For instance, Euler angles and angular velocitiescan be obtained through Inertial Measurement Systems.Besides, if it is combined with GPS (or differential GPS)the linear position and linear velocity can also be mea-sured. At this stage it is necessary to keep in mind theobjectives of the application such as, for example, if theUAV must fly in an indoor or outdoor environment,or ifthe GPS accuracy is admissible. Other kinds of sensorscan be also used to estimate the UAV position and atti-tude, like ultrasound systems in a structured environment([31]), vision systems ([1], [20], [35], [13]) and 3D trackersystem (POLHEMUS) ([6], [14]).

Page 3: Path Tracking of a UAV via an Underactuated Control …rubio/EJC_11_QuadRotor.pdf · Path Tracking of a UAV via H∞ Control 3 The remainder of the study is organized as follows:

Path Tracking of a UAV via H∞ Control 3

The remainder of the study is organized as follows:in Section 2, a description of the quadrotor helicoptermodelling is given. The control strategy used to per-form the quadrotor helicopter path tracking is describedin Section 3. The nonlinear H∞ controller formulatedfor underactuated mechanical system is developed inSection 4. In Section 5, a predictive controller for the outer-loop is presented. Some simulation results are shown inSection 6. Finally, the major conclusions of the work aredrawn in Section 7.

2. System Modelling

2.1. Description

The dynamic model of the system is obtained under thehypothesis that the vehicle is a rigid body in the spacesubject to one main force (thrust) and three torques.

Due to the complexities presented, some assumptionsare made for control purposes. The ground effect isneglected and the mass center and the body-fixed frameorigin are assumed coincident. Moreover, only for con-troller synthesis purposes, the helicopter structure isassumed to be symmetrical, which results in a momentof inertia tensor with just diagonal inertia terms.

2.2. Helicopter Kinematics

The helicopter as a rigid body is characterized by a framelinked to it. Let B = {�xL , �yL , �zL} be the body-fixed frame,where the �xL axis is the helicopter normal flight direction,�yL is orthogonal to �xL and positive to starboard in the hor-izontal plane, whereas �zL is oriented in ascendant senseand orthogonal to the plane �xLO�yL . The inertial frameI = {�x, �y, �z} is considered fixed with respect to the earth(see Fig. 1).

Let the vector ξ = [x y z]′ represent the position ofthe helicopter mass center expressed in the inertial frame

f 2

mg

l

f3 f4

f1U1

z

y x

LxLy

Lz

Fig. 1. Quadrotor helicopter scheme.

I .1 The vehicle orientation is given by a rotation matrixRI : B → I , where RI ∈ SO(3) is an orthonormalrotation matrix [10]. In this study, the XYZ fixed Eulerangles have been used to describe the helicopter rotationmatrix, RI , with respect to the ground. These angles arebounded as follows: the roll angle, φ, by (−π/2 < φ <

π/2), the pitch angle, θ , by (−π/2 < θ < π/2) and theyaw angle, ψ , by (−π < ψ < π).

From these three rotations, the following rotation matrixfrom B to I is obtained:

RI =

CψCθ CψSθSφ − SψCφ CψSθCφ+SψSφ

SψCθ SψSθSφ + CψCφ SψSθCφ − CψSφ

−Sθ CθSφ CθCφ

(1)

where C· = cos(·) and S· = sin(·).The kinematic equations of the rotational and transla-

tional movements are obtained by means of the rotationmatrix. The translational kinematic can be written as:

vI = RI · vB (2)

where vI = [u0 v0 w0]′ and vB = [uL vL wL]′ are thelinear velocities of the helicopter mass center expressed inthe inertial frame and body-fixed frame, respectively.

The rotational kinematic can be obtained from the rela-tionship between the rotation matrix and its derivativewith an skew-symmetric matrix [24]. Thus, after somealgebraic manipulations it can be posed as follows:

η = W−1η ω

φ

θ

ψ

=

1 sin φ tan θ cos φ tan θ

0 cos φ − sin φ

0 sin φ sec θ cos φ sec θ

p

q

r

(3)

where η = [φ θ ψ]′, and ω = [p q r]′ is the angularvelocity vector expressed in the body-fixed frame.

2.3. Lagrange-Euler Equations

The helicopter motion dynamic equations can beexpressed by the Lagrange-Euler formalism based on thekinetic and potential energy concept:

�i = d

dt

(∂L

∂ qi

)− ∂L

∂qi(4)

L = Ec − Ep

1 The notation prime ′ denotes transpose.

Page 4: Path Tracking of a UAV via an Underactuated Control …rubio/EJC_11_QuadRotor.pdf · Path Tracking of a UAV via H∞ Control 3 The remainder of the study is organized as follows:

4 G.V. Raffo et al.

where L is the Lagrangian, Ec is the total kinetic energy,Ep is the total potential energy, qi is the i-th generalizedcoordinate and �i is the i-th generalized force/torque givenby nonconservative forces/torques.

The generalized coordinates for a rigid body rotating inthe three-dimensional space can be written as [5]:

q = [x y z φ θ ψ]′ ∈ �6

The Lagrangian expression of the helicopter isgiven by:

L(q, q) = EcTrans + EcRot − Ep (5)

where EcTrans is the translational kinetic energy and EcRot

is the rotational kinetic energy (see [27]).The complete movement equation is obtained from the

Lagrangian expression (5). However, since the Lagrangiandoes not contain kinetic energy terms combining ξ and η,the Lagrange-Euler equations can be divided into transla-tional and rotational dynamics and expressed as follows[27]:

mξ + mge3 = fξ (6)

M(η)η + C(η, η)η = τη (7)

where m is the helicopter mass, g is the gravitationalacceleration, τη ∈ �3 represents the roll, pitch and

yaw moments, and fξ = RI f + αT is the transla-tional forces vector. This translational force is dividedinto two parts: first the term RI f constitutes the appliedforce to the helicopter due to the main control inputU1 in the �z axis direction, being RI f = RIe3

U1.2

The second part, αT = [Ax Ay Az]′, is the aerody-namic forces vector, whose components are in the �x, �yand �z axes, respectively. Aerodynamic forces are con-sidered like external disturbances for the control design(more details can be found in [27]). M(η) = W ′

ηJWη

represents the symmetric positive definite inertia matrix,where J is the moment of inertia tensor, and is written asfollows:

M(η) =

Ixx 0 −IxxSθ

0 IyyC2φ + IzzS2φ(Iyy − Izz

)CφSφCθ

−IxxSθ(Iyy − Izz

)CφSφCθ IxxS2θ + IyyS2φC2θ + IzzC2φC2θ

The Coriolis matrix is given by:

C (η, η) =

c11 c12 c13

c21 c22 c23

c31 c32 c33

2 The notation e3 represents the vector e3 = [0 0 1]′. Thus, the termRIe3

denotes the third column of the rotation matrix.

where

c11 = 0

c12 = (Iyy − Izz

) (θCφSφ + ψS2φCθ

)+ (

Izz − Iyy)ψC2φCθ − IxxψCθ

c13 = (Izz − Iyy

)ψCφSφC2θ

c21 = (Izz − Iyy

) (θCφSφ + ψS2φCθ

)+ (

Iyy − Izz)ψC2φCθ + IxxψCθ

c22 = (Izz − Iyy

)φCφSφ

c23 = −IxxψSθCθ + IyyψS2φCθSθ + IzzψC2φSθCθ

c31 = (Iyy − Izz

)ψC2θSφCφ − Ixx θCθ

c32 = (Izz − Iyy

) (θCφSφSθ + φS2φCθ

)+ (

Iyy − Izz)φC2φCθ + IxxψSθCθ

− IyyψS2φSθCθ − IzzψC2φSθCθ

c33 = (Iyy − Izz

)φCφSφC2θ − IyyθS2φCθSθ

− IzzθC2φCθSθ + Ixx θCθSθ

Hence, the mathematical model used for controller syn-thesis purposes that describes the helicopter translationalmovement computed from Eq. (6) can be written in thefollowing form:

x = 1

m(cos ψ sin θ cos φ + sin ψ sin φ) U1 + Ax

m

y = 1

m(sin ψ sin θ cos φ − cos ψ sin φ) U1 + Ay

m

z = −g + 1

m(cos θ cos φ) U1 + Az

m

(8)

while the rotational dynamic Eq. (7) is given as follows:

η = M(η)−1 (τη − C(η, η)η

)(9)

3. Control Scheme

The control strategy used in this study is based on theidea presented in Fig. 2, which is composed by an outer-inner control structure. To solve the path tracking problemfor an unmanned aerial vehicle (in this case, a quadrotorhelicopter) two control techniques are proposed. Thesetechniques are designed to guide the vehicle even if para-metric and structural uncertainties are considered, and also

Page 5: Path Tracking of a UAV via an Underactuated Control …rubio/EJC_11_QuadRotor.pdf · Path Tracking of a UAV via H∞ Control 3 The remainder of the study is organized as follows:

Path Tracking of a UAV via H∞ Control 5

Fig. 2. Nonlinear H∞ control block diagram for the underactuated quadrotor helicopter with an outer-loop controller. (Thick and thin lines mean fulland partial data vectors, respectively. Dashed line means a single data.)

when sustained disturbances affect on all the degrees offreedom of the helicopter.

The path to be followed in the �3 Cartesian space is gen-erated beforehand by the Trajectory Generator block. Tocompute the reference trajectory, a virtual reference vehi-cle with the same quadrotor mathematical model definedin Section 2 is used. However, the trajectory is gen-erated under the assumption that there are no externaldisturbances affecting the system, and its attitude is insteady-state. Firstly, considering that the vehicle is hov-ering, the desired altitude, zd , its time derivatives and thedesired thrust, U1d , are computed using model (8). Thesealtitude references, jointly with the desired yaw angle,ψd , and its time derivatives, are supplied by the Trajec-tory Generator block to the inner-loop controller througha feedforward action. The yaw reference angle is definedseparately. In a second step, making use of the computedreference thrust, U1d , the same block generates the xy ref-erence trajectory, being these reference positions, xd andyd , their speeds and the virtual control references, uxd anduyd (see definition in Section 5), provided to the outer-loopcontroller.

A state-space predictive controller to control the move-ments in the xy plane is executed in the Outer-LoopController block. This predictive controller is based onthe xy error model between the helicopter mathematicalmodel and the virtual reference one. Moreover, the inte-gral of the position error is considered to be part of the statevector, which makes the sustained disturbances rejectionpossible. From the virtual control actions, uc

x and ucy (see

Eq. (46)), calculated by this controller, the desired roll,φd , and pitch, θd , angles are computed.

Keeping in mind that the quadrotor helicopter is anunderactuated mechanical system, a nonlinear H∞ con-troller designed for this kind of systems is used in theinner-loop control law. The synthesized controller con-siders the overall dynamic behavior in order to controlthe helicopter attitude, φ, θ and ψ , and the altitude, z.

Furthermore, this control law also includes the integral ofboth the altitude and the angular position error in the statevector in order to obtain null steady-state error in presenceof sustained disturbances. The underactuated nonlinearH∞ controller is split up into two parts: first the controlledcoordinates accelerations required to track the desired ref-erence are computed; in a second step, these values areconsidered to generate the forces and torques applied tothe quadrotor helicopter, �a = [U1 τφa τθa τψa ]′.

Taking into account the cascade structure of this strat-egy and considering the performance attained by theinner-loop controller, the quadrotor helicopter is assumedstabilized at the desired height. Therefore, for the designof the outer-loop controller, the thrust, U1, and the Eulerangles can be considered as time-varying parameters, andin steady-state between two outer-loop sampling time.

In the following sections, both the inner-loop and theouter-loop controllers will be presented.

4. Inner-loop Controller

In this section the height and the rotational subsystem con-trol law to achieve robustness in presence of sustaineddisturbances and parametric uncertainty is developed.A nonlinear H∞ controller, designed for underactuatedmechanical systems, is proposed to carry out this task.

As stated at the introduction of the study, the helicopterdynamic model represents an underactuated mechanicalsystem [10] since there are more degrees of freedom thanactuators. The dynamic equations of this kind of systemwith n DOF can be partitioned into two components, onecorresponding to the passive generalized coordinates, qp ∈�np , and the other to the active ones, qa ∈ �na , wheren = np + na.

It is well-known that no more than na degrees of free-dom can be controlled at each moment by the externalgeneralized forces/torques [33]. Therefore, the na DOF to

Page 6: Path Tracking of a UAV via an Underactuated Control …rubio/EJC_11_QuadRotor.pdf · Path Tracking of a UAV via H∞ Control 3 The remainder of the study is organized as follows:

6 G.V. Raffo et al.

be controlled should be grouped in a vector qc ∈ �na ,while the remaining generalized coordinates should begrouped in a vector qr ∈ �n−na . Whenever there is acoupling between the passive and active dynamics, thepassive degrees of freedom can be chosen to be controlledusing this feature (e.g. [26]). In this study, the controlleddegrees of freedom vector is chosen the same as the activeone while the remaining coordinates vector is selectedas the passive one. Accordingly, the passive and activenotations are maintained, and for the case of the quadro-tor helicopter, qp = [x y]′ and qa = [z φ θ ψ]′. Asstated before, the advantage of this method is based onthe knowledge of all underactuated system’s behaviourat the moment to compute the control signals, and notsolely considering the remaining coordinates’ behaviouras external disturbances.

Thus, the quadrotor dynamic equations (6) and (7) canbe written in the following form:[

�p + δp

�a + δa

]=

[Ipp(q) Ipa(q)

Iap(q) Iaa(q)

] [qp

qa

]

+[

Cpp(q, q) Cpa(q, q)

Cap(q, q) Caa(q, q)

] [qp

qa

]+

[Gp (q)

Ga (q)

](10)

where

Ipp =[

mCψCθ mSψCθ

m (CψSθSφ − SψCφ) m (SψSθSφ + CψCφ)

]

Ipa =[

−mSθ 1×3

mCθSφ 1×3

]

Iap =[m (CψSθCφ + SψSφ) m (SψSθCφ − CψSφ)

3×1 3×1

]

Iaa =[

mCθCφ 1×3

3×1 M(η)

]

Cpp = 2×2; Cpa = 2×4; Cap = 4×2;

Caa =[

0 1×3

3×1 C(η, η)

]

Gp =[

−mgSθ

mgCθSφ

], Ga =

[mgCθCφ

3×1

]

δp = −(�Ipp(q)qp + �Ipa(q)qa + �Cpp(q, q)qp

+ �Cpa(q, q)qa + �Gp(q) − �dp

)δa = −(

�Iap(q)qp + �Iaa(q)qa + �Cap(q, q)qp

+ �Caa(q, q)qa + �Ga(q) − �da

)

�p ∈ �np and �a ∈ �na are the forces/torques inthe passive and active DOFs, respectively. In the caseof the quadrotor helicopter, �p = [0 0]′ and �a =[U1 τφa τθa τψa ]′. δp and δa represent the total effectof the parametric uncertainties (matrices expressed by �•)and energy-bounded external disturbances on the passive,�dp , and active, �da , DOF, respectively.

Taking into account this partition and from the secondrow of (10):

�a + δa = Iap(q)qp + Iaa(q)qa + Cap(q, q)qp

+ Caa(q, q)qa + Ga(q) (11)

the controlled degrees of freedom acceleration (in thiscase, the active ones) can be isolated, yielding [33]:

qa = −I−1aa (q)(Caa(q, q)qa + Ga(q) − � − δa) (12)

where � = �a − Iap(q)qp − Cap(q, q)qp.By defining the tracking error vector of the active DOFs

as follows [26]:

xa =

˙qa

qa∫qadt

=

qa − qda

qa − qda∫ (

qa − qda)

dt

(13)

Equation (12) can be written in the state space form:

xa = f (xa, t) + g0(q, q, qda , qd

a) + g(xa, t)� + k(xa, t)δa,

(14)

where

f (xa, t) =

−I−1aa Caa

O

xa,

g0(q, q, qda , qd

a) =

−I−1aa (Iaaqd

a + Caaqda + Ga)

,

g (xa, t) = k (xa, t) =

I−1aa

,

where qda , qd

a and qda ∈ �na are the desired trajectory and

the corresponding velocity and acceleration, respectively.is the identity matrix and the zero matrix, both of na-th

order. Note that an integral term has been included in theerror vector. This term will allow the achievement of a nullsteady-state error when persistent disturbances are actingon the system [26].

Page 7: Path Tracking of a UAV via an Underactuated Control …rubio/EJC_11_QuadRotor.pdf · Path Tracking of a UAV via H∞ Control 3 The remainder of the study is organized as follows:

Path Tracking of a UAV via H∞ Control 7

4.1. Nonlinear HHH ∞∞∞ Controller Design

The nonlinear H∞ controller used to the inner-loopconsiders the overall helicopter dynamic behavior.

As a previous step to synthesize the control law, thefollowing state transformation is used:

z =

z1

z2

z3

= Toxa =

T1 T2 T3

˙qa

qa∫qadt

(15)

with T1 = ρ , where ρ is a positive scalar and ∈ �na×na

is the identity matrix.Equation (14) can be rewritten as follows [33]:

xa = f (xa, t) + g(xa, t)T1(−F(xe) + �) + k(xa, t)d,

(16)

f (xa, t) =

T−1o

−I−1

aa Caa

T−11 − T−1

1 T2 − + T−11 (T2 − T3)

Toxa,

g (xa, t) = k (xa, t) = To−1

I−1

aa

,

F (xe) = Iaa(qda − T−1

1 T2 ˙qa − T−11 T3qa)

+Caa

(qd

a − T−11 T2qa − T−1

1 T3

∫qadt

)+ Ga

where d = ρ δa ∈ �na is the vector of externaldisturbances.

The following control law is proposed for the controlledsubsystem:

� = Iaa(q)qa + Caa(q, q)qa + Ga(q)

− T−11 (IaaTxa + CaaTxa) + T−1

1 u (17)

where matrix T can be partitioned as follows:

T = [T1 T2 T3

].

This proposed control law can be split up into three dif-ferent parts: the first one consists of the first three termsof that equation, which are designed in order to counterthe effects of the system dynamics (12). The second partconsists of terms including the error vector xa and itsderivative, xa. Assuming δa ≡ 0, these two terms of thecontrol law enable perfect tracking, which means that theyrepresent the essential control effort needed to perform thetask. Finally, the third part includes vector u, which repre-sents the additional control effort needed for disturbancerejection.

It can be pointed out that, despite the preceding con-trol law might not seem a well posed system, it will beshown afterwards that the computed forces/torques doesnot rely on DOF accelerations, but on their references. Inthis way, the control acceleration qa, computed in Eq. (27),is replaced into (17) which makes it a well posed equation.

Substituting the expression of the control law from (17)into the system (12) one gets:

Iaa(q)Txa + Caa(q, q)Txa = u + d (18)

This expression is the same of the system (16) whenu = T1(−F(xe)+�), and represents the dynamic equationof the system error. Therefore, Eq. (16) considering theadditional control input vector u is used to apply thenonlinear H∞ theoretical results presented in [36]. Thisadditional control signal provides H∞ robustness andrepresents a state feedback.

The performance of the controlled system can bederived from the following cost variable ζ ∈ �2na :

ζ = W

[h(xa)

u

], (19)

where h(xa) ∈ �na represents a function of the vector ofstates to be controlled, and W ∈ �2na×2na is a weightingmatrix.

Taking into account the nonlinear Eq. (18) and theabove-defined cost variable (19), if the states xa areassumed to be available for measurement, then the non-linear H∞ control problem can be posed as follows[36]:

“Find the smallest value γ ∗ ≥ 0 such that for anyγ ≥ γ ∗ exists an additional control effort u = u(xa, t),such that the L2 gain from the disturbance signals d to thecost variable ζ = W

[h′(xa) u′]′ is less than or equal to

a given attenuation level γ , that is:”.∫ T

0‖ζ‖2

2 dt ≤ γ 2∫ T

0‖d‖2

2 dt. (20)

The internal term of the integral expression on the left-hand side of inequality (20) can be written as:

‖ζ‖22 = ζ ′ζ =

[h′(xa) u′] W ′W

[h(xa)

u

]

and the symmetric positive definite matrix W ′W can bepartitioned as follows:

W ′W =[

Q S

S′ R

](21)

Matrices Q and R are symmetric positive definite andthe fact that W ′W > guarantees that Q − SR−1S′ > ,where is the na-th order zero matrix.

Page 8: Path Tracking of a UAV via an Underactuated Control …rubio/EJC_11_QuadRotor.pdf · Path Tracking of a UAV via H∞ Control 3 The remainder of the study is organized as follows:

8 G.V. Raffo et al.

Taking into account the definition of the error vector,xa, and the definition of the cost variable, ζ , the fol-lowing structures are considered for matrices Q and Sin (21):

Q =

Q1 Q12 Q13

Q12 Q2 Q23

Q13 Q23 Q3

, S =

S1

S2

S3

.

Under these assumptions, an optimal state feedbackadditional control effort u∗(xa, t) can be computed if asmooth solution V(xa, t), with xa0 = 0 and V(xa0 , t) ≡ 0for t ≥ 0, is found for the following HJBI equation [37]:

∂V

∂t+ ∂ ′V

∂xaf (xa, t) + 1

2

∂ ′V∂xa

[1

γ 2k(xa, t)k′(xa, t)

− g(xa, t)R−1g′(xa, t)

]∂V

∂xa− ∂ ′V

∂xag(xa, t)R−1S′h(xa)

+ 1

2h′(xa)(Q − SR−1S′)h(xa) = 0 (22)

for each γ >√

σmax(R) ≥ 0, where σmax stands forthe maximum singular value. In such a case, the opti-mal state feedback additional control effort is derived as(see [11]):

u∗ = −R−1(

S′h(xa) + g′(xa, t)∂V(xa, t)

∂xa

). (23)

As stated before, the solution of the HJBI equationdepends on the choice of the cost variable, ζ , and par-ticularly on the selection of function h(xa). In this study,this function is taken to be equal to the error vector, thatis, h(xa) = xa. Once this function has been selected, com-puting the additional control effort, u, will require findingthe solution, V(xa, t), to the HJBI equation posed in [11].The details of how this solution is achieved can be foundin [25]. The following theorem will help do this.

Theorem: Let V(xa, t) be the parameterized scalarfunction:

V (xa, t) = 1

2xa

′To′

Iaa

Y X − Y

X − Y Z + Y

Toxa, (24)

where X, Y and Z ∈ �na×na are constant, symmetric,and positive definite matrices such that Z − XY−1X +2X > , and To is as defined in (15). Let T be the matrix

appearing in (17). If these matrices verify the followingequation:

Y X

Y 2X Z + 2X

X Z + 2X

+ Q + 1

γ 2T ′T

− (S′ + T

)′ R−1 (S′ + T

) = (25)

then, function V(xa, t) constitutes a solution to the HJBI,for a sufficiently high value of γ .

The proof of this theorem can be found in [25].

Once matrix T is computed by solving some Riccatialgebraic equations, substituting V(xa, t) into the optimalstate feedback additional control effort (23), the addi-tional control effort u∗ corresponding to the H∞ optimalindex γ is given by

u∗ = −R−1(S′ + T)xa (26)

Finally, if the additional control effort (26) is replacedinto (18) under the assumption that d = 0, and after somemanipulations, the control acceleration for the controlledsubsystem can be obtained as:

qa = qda − KD ˙qa − KP qa − KI

∫qadt (27)

where

KD = T−11 (T2 + I−1

aa CaaT1 + I−1aa R−1(S′

1 + T1)

KP = T−11 (T3 + I−1

aa CaaT2 + I−1aa R−1(S′

2 + T2))

KI = −T−11 (I−1

aa CaaT3 + I−1aa R−1(S′

3 + T3)

A particular case can be obtained when the componentsof weighting compound W ′W verify:

Q =

ω21

ω22

ω23

, S =

, R = ω2

u .

(28)

In this case, the following analytical expressions for thegain matrices have been obtained:

KD =√

ω22 + 2ω1ω3

ω1+ I−1

aa

(Caa + 1

ω2u

),

KP = ω3

ω1+

√ω2

2 + 2ω1ω3

ω1I−1

aa

(Caa + 1

ω2u

),

KI = ω3

ω1I−1

aa

(Caa + 1

ω2u

).

Page 9: Path Tracking of a UAV via an Underactuated Control …rubio/EJC_11_QuadRotor.pdf · Path Tracking of a UAV via H∞ Control 3 The remainder of the study is organized as follows:

Path Tracking of a UAV via H∞ Control 9

where the parameters ω1, ω2, ω3 and ωu are tuned by asystematic procedure taking in mind a linear PID controlaction interpretation (see [19]).

Equation (27) gives the controlled degrees of freedomacceleration required to track the desired reference. Theforces/torques in the active DOF can be computed usingthis control acceleration, which does not depend on theacceleration of the DOF controlled, but on their acceler-ation references as pointed out before. Thereby, as thecontrol actions for the active degrees of freedom are thesame as the controlled ones, the forces/torques applied tothe quadrotor helicopter can be obtained by isolating vec-tor qp in the first row of (10) and replacing it in the secondone, as follows:

�a = (Iaa(q) − Iap(q)I−1pp Ipa)qa + ba(q, q)

− Iap(q)I−1pp bp(q, q) (29)

where

ba(q, q) = Caa(q, q)qa + Cap(q, q)qp + Ga(q)

bp(q, q) = Cpa(q, q)qa + Cpp(q, q)qp + Gp(q)

The proposed control law guarantees that all equilib-rium points in the workspace are globally asymptoticallystable for the controlled subsystem if the passive degreesof freedom are stable or converge asymptotically to thepath to be followed. Therefore, the attraction basin in theinner closed-loop is enlarged or reduced by modifyingthe gains parameters. Meanwhile, the estimated attrac-tion basin can be augmented by modifying the relationof gains between the inner-loop controller and outer-loopone, which guarantees convergence.

5. Outer-loop Controller

In this section a control law able to solve the path trackingproblem on the xy plane is designed. A linear state-spacempc strategy based on the error model is used to performthat task.

The proposed control law is derived from the system (8),where only the equations describing the xy motion areused:

x = 1

m(cos ψ sin θ cos φ + sin ψ sin φ)U1 + Ax

m

y = 1

m(sin ψ sin θ cos φ − cos ψ sin φ) U1 + Ay

m(30)

The objective of this approach is to obtain a linearcontrol law that leads the error between a real vehicleand a virtual reference one to zero. To obtain the error

model for the controller design, the system (30) is rewrit-ten in a state-space form as ˙x(t) = f (x(t), u(t)), wherex(t) = [x(t) u0(t) y(t) v0(t)]′ and u(t) = [ux(t) uy(t)]′stand for the state-space and the virtual input vectors ofthe system, respectively. Since the aerodynamic forces, Ax

and Ay, are assumed as external disturbances, they are notconsidered at the control design stage.

From (30) and the new state-space vectors, the systemdynamic equation for the controller design can be writtenin the following form:

˙x(t) = f (x(t), u(t)) =

u0(t)

ux(t)U1(t)

mv0(t)

uy(t)U1(t)

m

(31)

with:

ux(t) � cos ψ(t) sin θ(t) cos φ(t) + sin ψ(t) sin φ(t)

uy(t) � sin ψ(t) sin θ(t) cos φ(t) − cos ψ(t) sin φ(t).

(32)

Furthermore, system (30) show that the movementthrough the x and y axes depends on the control input U1.In fact, U1 is the designed total thrust magnitude to obtainthe desired linear movement, while ux and uy can be con-sidered as the directions of U1 that cause the movementthrough the x and y axes, respectively. As the input controlU1(t) is computed by the inner-loop controller, which hasa faster settling time than the outer one, for the outer-loopcontroller synthesis, this control action is considered as atime variant parameter to the x and y motions in (31). Thatis, between each outer-loop sampling time the inner-loopcontrolled variables are considered in steady-state.

Therefore, Eq. (32) is a definition of the system to becontrolled, and through the virtual inputs, ux(t) and uy(t),the necessary values of φ and θ to guide the helicopter inthe xy plane could be computed. However, these valuescan not be set directly since these angles are two of theoutputs of the rotational subsystem; being the nonlinearH∞ inner-loop in charge of carrying out this task. Onthe other hand, assuming the error vector definition (13),Eq. (32) can be written as follows:

ux(t) � cos(ψ) sin(θ + θd) cos(φ + φd)

+ sin(ψ) sin(φ + φd)(33)

uy(t) � sin(ψ) sin(θ + θd) cos(φ + φd)

− cos(ψ) sin(φ + φd).

Moreover, because of the cascade structure of the strat-egy proposed in this study (see Fig. 2), and considering

Page 10: Path Tracking of a UAV via an Underactuated Control …rubio/EJC_11_QuadRotor.pdf · Path Tracking of a UAV via H∞ Control 3 The remainder of the study is organized as follows:

10 G.V. Raffo et al.

the closed-loop performance achieved by the inner-loopcontroller, the Euler angles error can be considered at theorigin for the outer-loop controller design. Besides, it canbe pointed out that the yaw angle, ψ , is assumed mea-surable for the computation of the desired magnitudes θdand φd . For this reason, the variable ψd has not been con-sidered in Eq. (33). In consequence of these assumptions,the desired virtual directions vector, ud

xy(k) = [udx ud

y ]′,to follow the path reference in the xy plane, is defined asfollows:

udx (t) = cos ψ(t) sin θd(t) cos φd(t) + sin ψ(t) sin φd(t)

udy (t) = sin ψ(t) sin θd(t) cos φd(t) − cos ψ(t) sin φd(t).

(34)

Due to the fact that the destination coordinates vary intime, a virtual reference vehicle with the same quadro-tor helicopter mathematical model (31) is defined on thedesired track, that is:

˙xr(t) = f (xr(t), ur(t)) (35)

where xr(t) = [xd(t) u0d (t) yd(t) v0d (t)]′ andur(t) = [uxd uyd ]′ are the reference states and controlinputs, respectively.

Considering the state error vector and the control inputerror vector defined as x(t) = x(t) − xr(t) and u(t) =u(t) − ur(t), the proposed translational error model isobtained from systems (31) and (35):

˙x(t) = A · x(t) + B(t) · u(t). (36)

where matrices A and B(t) are the Jacobians of the system(31) in relation to x(t) and u(t), respectively. However, toperform an appropriate path tracking in the presence ofsustained disturbances, the integral of the position errorshould also be considered to be part of the error vector.Hence, the augmented vector error is given by:

x(t) =

x(t)

u0(t)∫x(t)dt

y(t)

v0(t)∫y(t)dt

=

x(t) − xd(t)

u0(t) − u0d (t)∫(x(t) − xd(t))dt

y(t) − yd(t)

v0(t) − v0d (t)∫(y(t) − yd(t))dt

(37)

Using Euler’s method (e.g., ˙x(t) = x[(k+1) t]−x(k t) t ),

the system (36) is discretized and the following model isobtained:

x(k + 1) = A · x(k) + B(k) · u(k). (38)

which is time-varying and linear.

Thus, matrices A and B(k) are written in the discrete-time domain as follows:

A =

1 t 0 0 0 0

0 1 0 0 0 0

t 0 1 0 0 0

0 0 0 1 t 0

0 0 0 0 1 0

0 0 0 t 0 1

(39)

B(k) =

0 0 t

mU1(k) 0

0 0

0 0

0 t

mU1(k)

0 0

where t is the sampling time, which has been chosensmall enough to capture all xy motion error dynamic andhigh enough to consider the altitude and attitude closed-loop dynamics are in steady state.

Hence, from the xy error model the control law can bedesigned in such way that the system is forced to followthe reference trajectory. The idea used in this controllerconsists in the computation of a control law that minimizesthe following cost function:

J =[ ˆx − xr

]′Q

[ ˆx − xr

]+ [

u − ur]′ R

[u − ur

]+ � (x(k + N2|k) − xr(k + N2|k)) (40)

where Q and R are diagonal positive definite weightingmatrices and N2 and Nu are the prediction and controlhorizons, respectively [32]. � is the terminal state costdefined by:

� (x(k + N2|k) − xr(k + N2|k))

= [x(k + N2|k) − xr(k + N2|k)

]′× P

[x(k + N2|k) − xr(k + N2|k)

]with P ≥ 0 [18]. The reference vectors are given by:

xr =

xr(k + 1|k) − xr(k|k)

...

xr(k + N2|k) − xr(k|k)

,

ur =

ur(k|k) − ur(k − 1|k)

...

ur(k + Nu − 1|k) − ur(k − 1|k)

.

Page 11: Path Tracking of a UAV via an Underactuated Control …rubio/EJC_11_QuadRotor.pdf · Path Tracking of a UAV via H∞ Control 3 The remainder of the study is organized as follows:

Path Tracking of a UAV via H∞ Control 11

Asymptotic stability is guaranteed for the cost function(40) if the trajectory reference is constant and no con-straints are considered (see [30]). On the other hand, ifthe path to be followed varies on time, only asymptoticconvergence can be guaranteed.

The system output predictions ˆx(k + j|k) are computedusing a linear state space model of the xy movements bythe Eq. (38), obtaining:

x = Pxy · x(k|k) + Hxy(k|k) · u, (41)

where matrix Pxy is obtained as follows:

Pxy =

A

A2

...

AN2−1

AN2

, (42)

and matrix Hxy as shown at the top of the next page, whereβ(k, j) is given by:

β(k, j) =

if Nu = N2

N2−Nu∑j=1

AN2−(Nu+j)B(k + (Nu + j) − 1) if Nu < N2(43)

Hxy(k|k) =

B(k|k) 0 0 · · · 0

AB(k|k) B(k + 1|k) 0 · · · 0

A2B(k|k) AB(k + 1|k) B(k + 2|k) · · · 0...

......

. . ....

AN2−1B(k|k) AN2−2B(k + 1|k) AN2−3B(k + 2|k) · · · AN2−NuB(k + Nu − 1|k) + β(k, j)

(44)

By minimizing the Eq. (40) in the case where no con-straints are considered, the xy motion control law can beobtained as:

u =[H′

xyQHxy + R]−1 [

H′xyQ

(xr − Pxyx(k)

) + Rur

].

(45)

From the computed sequence of control actions, onlyu(k|k) = [ux(k|k) uy(k|k)]′ is needed at each instant k[4]. Thus, the control input vector is given by:[

ucx(k)

ucy(k)

]=

[ux(k|k)

uy(k|k)

]+

[uxd (k)

uyd (k)

](46)

Thereby, substituting the desired virtual input value,ud

xy, from the computed one obtained with Eq. (46), theroll and pitch reference angles, φd and θd respectively, arederived using Eq. (34). These references are necessary forthe helicopter inner-loop controller.

6. Simulation Results

Simulations have been performed in order to test theproposed control strategy when the quadrotor helicopterexecutes some path following. The performance obtainedby this strategy have been checked considering a moreaccurate model, which emulates a real quadrotor heli-copter. This model takes into account the crossed inertiaterms in the moment of inertia tensor as well as saturatedcontrol inputs. This fact implies that structural uncertaintyhas been considered with respect to the simplified nom-inal model used for control synthesis purposes. Besides,an amount of ±40% in the uncertainty of the elements ofthe moment of inertia tensor and the mass has also beenconsidered to test the robustness provided by the controlstrategy with respect to parametric uncertainty. Finally,sustained disturbances affecting all the degrees of freedomhave been applied in different instants of time to check thedisturbance rejection capability of the proposed controlstrategy.

The following vertical helix has been defined as the firstreference trajectory (see Fig. 3):

xd = 1

2cos

(t

2

)m, yd = 1

2sin

(t

2

)m,

zd = 1 + t

10m, ψd = π

3rad

The helicopter initial conditions are ξ0 = [0 0 0.5]′mand η0 = [0 0 0.5]′rad. The values of the modelnominal parameters used for simulations are shown inTable 1.

The following persistent steps have been applied asaerodynamic moments and forces disturbances in the sim-ulations: Ar = 1 Nm at t = 5 s; Az = −1 N at t = 10 s;Ap = 1 Nm at t = 15 s; Ax = 1 N at t = 20 s; Aq = 1 Nmat t = 25 s and Ay = 1 N at t = 30 s.

Page 12: Path Tracking of a UAV via an Underactuated Control …rubio/EJC_11_QuadRotor.pdf · Path Tracking of a UAV via H∞ Control 3 The remainder of the study is organized as follows:

12 G.V. Raffo et al.

Table 1. QuadRotor helicopter model parameters.

Parameter Description Parameter Value

Mass of the quadRotor m 0.74 kghelicopter

Distance between the mass l 0.21 mcenter and the rotors

Gravitational acceleration g 9.81 m/s2

Moment of inertia around Ixx 0.004 kg.m2

the x-axisMoment of inertia around Iyy 0.004 kg.m2

the y-axisMoment of inertia around Izz 0.0084 kg.m2

the z-axis

The mpc parameters were adjusted as follows:

N2 = 6, Nu = 3,

Q =

5 0 0 0 0 0

0 5 0 0 0 0

0 0 10 0 0 0

0 0 0 5 0 0

0 0 0 0 5 0

0 0 0 0 0 10

, R =[

65 0

0 65

]

The nonlinear H∞ controller gains were tuned with thefollowing values: ω1 = 0.1, ω2 = 3, ω3 = 9 y ωu = 1.5.In addition, a simulation using ω3 = 0 was performedin order to show the integral action improvement on theinner-loop control.

Figs 3 to 7 indicate an excellent reference trackingperformance even if external disturbances originated byaerodynamic forces and moments are considered. Theseresults illustrate the robust behavior provided by the outer-inner control structure in the case of both parametric andstructural uncertainty.

The smooth reference tracking provided by the mpc canbe observed in Figs 4 and 5. This fact is clearly visible atthe beginning of the trajectory where the vehicle is far fromthe reference. This is due to the fact that the predictive con-troller considers the future reference in the computation ofthe control signal so as to predict a path that would resultin a softer displacement.

The time evolution of the translational position and itserror are shown in Figs 4 and 5 respectively. The integralaction features of the mpc controller can be easily observedin Fig. 5. This integral action makes it possible to obtainnull error in the path tracking when sustained disturbancesaffect the xy motion of the helicopter.

An additional simulation considering the integral actionweighting of the inner-loop, ω3, equal to zero is also plot-ted in the graphs. This simulation shows the deterioration

in the tracking performance when this action is not takeninto account, since the inner-loop controller is not able toreject the sustained disturbances acting on the helicopter.In Fig. 5 it can be observed that the outer-loop controllermanages to obtain xy error null in the presence of externaldisturbances in the case of the integral action weighting ofthe inner-loop is null. However, the altitude, that is a vari-able controlled by the nonlinear H∞ controller, maintainsa constant offset during all the trajectory.

Figs 6 and 7 illustrate the Euler angles evolution. Inthese graphs a Euler angles steady-state error can also beobserved in the trajectory that the integral action weight-ing, ω3, is equal to zero. In this case, apart from the fact thatthe inner-loop loses performance, it is interesting to notethat the outer-loop controller tries to compensate for thelack of integral action by increasing the φ and θ referenceangles.

Another simulation collection has been provided inorder to corroborate the improvements reached by the pro-posed control structure in this study when compared withthe one of same authors published in [29]. This strategymakes use of the uncoupled quadrotor model, when twocontrollers designed for fully actuated systems are imple-mented. The reference trajectory used is a circle evolvingin �3 Cartesian space defined by:

xd = 1

2cos

(π t

20

)m, yd = 1

2sin

(π t

20

)m,

zd = 3 − 2 cos

(π t

20

)m, ψd = π/3 rad

The UAV started from ξ0 = [0 0.2 0.5]′m and η0 =[0 0 0.5]′rad with a parametric uncertainty of 40%in the elements of the moment of inertia tensor and themass. The controller parameters defined before have alsobeen used in these simulations in both control structures,being necessary to synthesize just the altitude controllerparameters used in [29], which have been adjusted topresent a similar performance with respect to the comparedcontrol strategy. The simulation results are illustrated inFigs 8 to 12.

These figures show that both control strategies presenta robust path following when parametric uncertaintiesand sustained disturbances are applied to the system. Inorder to make a quantitative comparison of the resultsobtained by these two control strategies, the IntegralSquare Error (ISE) performance indexes, presented inTable 2, have been computed from the simulation resultsshowed in Figs 8 to 12. Results obtained considering thequadorotor helicopter model (6–7) with nominal parame-ters have presented very similar ISE performance indexes.However, when an amount of 40% in the uncertaintyof parameters of the moment of inertia tensor and themass has been considered, a large improvement has

Page 13: Path Tracking of a UAV via an Underactuated Control …rubio/EJC_11_QuadRotor.pdf · Path Tracking of a UAV via H∞ Control 3 The remainder of the study is organized as follows:

Path Tracking of a UAV via H∞ Control 13

−0.4−0.2

00.2

0.40.6

−0.4−0.2

00.2

0.40.60.5

1

1.5

2

2.5

3

3.5

4

4.5

5

x [m]y [m]

z [m

]Reference

Nominal Parameters

Parameters +40%

Parameters −40%

Nominal Parameters and w3=0

Fig. 3. Path following with external disturbances.

0 5 10 15 20 25 30 35 40−0.5

0

0.5

x [m

]

0 5 10 15 20 25 30 35 40−0.5

0

0.5

y [m

]

0 5 10 15 20 25

1

2

3

4

5

time [s]

z [m

]

Reference

Nominal Parameters

Parameters +40%

Parameters −40%

Nominal Parameters and w3=0

Fig. 4. Position (x, y, z) with external disturbances.

Page 14: Path Tracking of a UAV via an Underactuated Control …rubio/EJC_11_QuadRotor.pdf · Path Tracking of a UAV via H∞ Control 3 The remainder of the study is organized as follows:

14 G.V. Raffo et al.

0 5 10 15 20 25 30 35 40

−0.4

−0.2

0

err

or x [m

]

0 5 10 15 20 25 30 35 40

−0.02

0

0.02

0.04

0.06

0.08

err

or y [m

]

0 5 10 15 20 25 30 35 40

−0.4

−0.2

0

time [s]

err

or z [

m]

Nominal Parameters

Parameters +40%

Parameters −40%

Nominal Parameters and ω3=0

Fig. 5. Position error (x, y, z) with external disturbances.

0 5 10 15 20 25 30 35 40−0.5

0

0.5

φ [r

ad]

0 5 10 15 20 25 30 35 40−0.5

0

0.5

θ [r

ad]

0 5 10 15 20 25 30 35 40

0.6

0.8

1

time [s]

ψ [ra

d] Reference

Nominal Parameters

Parameters +40%

Parameters −40%

Nominal Parameters and w3=0

Reference with w3=0

Fig. 6. Orientation (φ, θ , ψ) with external disturbances.

been achieved by the proposed control structure. It canbe observed that the performance is improved by theMPCxy + UnderActuatedNonlinear H∞ control strategyfor most of states (x ↓ 17.64%, y ↓ 26.39%, z ↓ 40.81%,

φ ↓ 103.09%, θ ↓ 183.12% and ψ ↑ 1.71%). These bet-ter results, when uncertainties parametric are considered,are due to the underactuated nonlinear H∞ structure used.It computes the applied control inputs taking into account

Page 15: Path Tracking of a UAV via an Underactuated Control …rubio/EJC_11_QuadRotor.pdf · Path Tracking of a UAV via H∞ Control 3 The remainder of the study is organized as follows:

Path Tracking of a UAV via H∞ Control 15

0 5 10 15 20 25 30 35 40

−0.2

0

0.2

0.4err

or

φ [ra

d]

0 5 10 15 20 25 30 35 40

−0.5

0

0.5

err

or

θ [ra

d]

0 5 10 15 20 25 30 35 40

−0.4

−0.2

0

time [s]

err

or

ψ [

rad]

Nominal Parameters

Parameters +40%

Parameters −40%

Nominal Parameters and ω3=0

Fig. 7. Orientation error (φ, θ , ψ) with external disturbances.

−0.6−0.4

−0.20

0.20.4

0.60.8

−0.8−0.6

−0.4−0.2

00.2

0.40.60.5

1

1.5

2

2.5

3

3.5

4

4.5

5

x [m]y [m]

z [m

]

Reference

MPCxy−UnderActuatedNLH∞

MPCxyz−NLH∞

Fig. 8. Path following.

Page 16: Path Tracking of a UAV via an Underactuated Control …rubio/EJC_11_QuadRotor.pdf · Path Tracking of a UAV via H∞ Control 3 The remainder of the study is organized as follows:

16 G.V. Raffo et al.

0 5 10 15 20 25 30 35 40−0.5

0

0.5

x [m

]

0 5 10 15 20 25 30 35 40−0.5

0

0.5

y [m

]

0 5 10 15 20 25 30 35 40

1

2

3

4

5

time [s]

z [m

]

Reference

MPCxy−UnderActuatedNLH∞MPCxyz−NLH∞

Fig. 9. Position (x, y, z).

0 5 10 15 20 25 30 35 40

0

err

or

x [m

]

0 5 10 15 20 25 30 35 40

0

0.05

0.1

0.15

err

or

y [m

]

0 5 10 15 20 25 30 35 40

0.4

0.2

0

time [s]

err

or

z [m

]

Fig. 10. Position error (x, y, z).

Page 17: Path Tracking of a UAV via an Underactuated Control …rubio/EJC_11_QuadRotor.pdf · Path Tracking of a UAV via H∞ Control 3 The remainder of the study is organized as follows:

Path Tracking of a UAV via H∞ Control 17

0 5 10 15 20 25 30 35 40

0

0.5

φ [r

ad

]

0 5 10 15 20 25 30 35 40

0

0.2

0.4

θ [r

ad

]

0 5 10 15 20 25 30 35 40

0.6

0.8

1

time [s]

ψ [

rad

]

Reference

Fig. 11. Orientation (φ, θ , ψ).

0 5 10 15 20 25 30 35 40

0

0.5

err

or

φ [ra

d]

0 5 10 15 20 25 30 35 40

0

0.5

err

or

θ [r

ad]

0 5 10 15 20 25 30 35 40

0

time [s]

err

or

ψ [ra

d]

Fig. 12. Orientation error (φ, θ , ψ).

Page 18: Path Tracking of a UAV via an Underactuated Control …rubio/EJC_11_QuadRotor.pdf · Path Tracking of a UAV via H∞ Control 3 The remainder of the study is organized as follows:

18 G.V. Raffo et al.

0 5 10 15 20 25 30 35 404

6

8

10

12

14

16

18

20

time [s]

U1

0 5 10 15 20 25 30 35 40−2

−1.5

−1

−0.5

0

0.5

1

1.5

2

time [s]

τφ

0 5 10 15 20 25 30 35 40−2

−1.5

−1

−0.5

0

0.5

1

1.5

2

time [s]

τθ

0 5 10 15 20 25 30 35 40−2

−1.5

−1

−0.5

0

0.5

1

1.5

2

time [s]

τψ

MPCxy−UnderActuatedNLH∞

MPCxyz−NLH∞

Fig. 13. Control inputs (U1, τφa , τθa , τψa ).

Table 2. ISE Index Performance Analysis.

States MPCxy + MPCxyz +UnderActuatedNLH∞ NLH∞

x 14.3968 16.9365y 3.2658 4.1275z 10.1827 14.3379φ 4.3876 8.9109θ 1.8097 5.1237ψ 5.9508 5.8488

the noncontrolled DOF, that is, the uncertainty on the massthat affect the xy motion is also counterattacked by theinner-controller loop. Meanwhile, with the controller pro-posed in [29], this effect is only just considered as anunknown external disturbance.

7. Conclusions

In this study an underactuated nonlinear H∞ control tocompute the applied control actions on the quadrotor

helicopter has been presented. This controller is basedon the 6DOF quadrotor helicopter model that provides acontrol law with knowledge of both the active degrees offreedom and the passive ones.

To solve the path tracking problem, an outer-loop con-troller has been implemented which is used as a trackgenerator. That is, using a previously known path ref-erence, an mpc based on the xy motion error model isdesigned to generate the necessary φ and θ referenceangles. To perform the sustained disturbance rejection,the integral term of the xy position error has been includedin the error vector. Moreover, because of the predictivecontroller features, a good and smooth performance in thexy plane reference tracking is achieved.

The robust performance provided by the inner-outercontrol strategy has been tested by simulation. A moreaccurate helicopter model than the one used for controlsynthesis purposes has been employed to obtain simula-tion results, which introduces structural uncertainty in theproblem. Besides, an amount of 40% of uncertainty hasbeen considered in several mechanical parameters of thevehicle, and some sustained disturbances on all the degrees

Page 19: Path Tracking of a UAV via an Underactuated Control …rubio/EJC_11_QuadRotor.pdf · Path Tracking of a UAV via H∞ Control 3 The remainder of the study is organized as follows:

Path Tracking of a UAV via H∞ Control 19

of freedom have been applied during the simulations.Despite these facts, an excellent tracking performance hasbeen achieved with the proposed control structure.

Acknowledgments

The authors thank CICYT for funding this work undergrants DPI2006-07338 and DPI2007-64697.

References

1. Altug E, Ostrowski JP, Mahony R. Control of a quadrotorhelicopter using visual feedback. In Proc 2002 IEEE IntConf Robotics Automation, pages 72–77, Washington, DC,2002

2. Bouabdallah S, Siegwart R. Backstepping and sliding-mode techniques applied to an indoor micro quadrotor. InProc IEEE Int Conf on Robot Automat, pages 2259–2264,Barcelona, Spain, 2005

3. Bouabdallah S, Siegwart R. Full control of a quadrotor. InProc Intelligent Robots Syst. IROS 2007, pages 153–158,San Diego, USA, 2007

4. Camacho EF, Bordons C. Model Predictive Control.Springer-Verlag, New York, 1998

5. Castillo P, García P, Lozano R, Albertos P. Modelado yEstabilizaci’on de un Helic’optero con Cuatro Rotores.RIAI Revista Iberoamericana de Autom’atica e Inform’aticaIndustrial, 2007; 4(1): 41–57

6. Castillo P, Lozano R, Dzul A. Stabilization of a minirotorcraft with four rotors. IEEE Cont Syst Mag, 2005:45–55Q1

7. Castillo P, Lozano R, Dzul AE. Modelling and Control ofMini-Flying Machines. Springer-Verlag, London, 2005

8. Chen BS, Lee TS, Feng JH. A nonlinear H∞ control designin robotic systems under parameter perturbation and externaldisturbance. Int J Control, 1994; 59(2): 439–461

9. Chen M, Huzmezan M. A combined MBPC/2DOF H∞controller for a quad rotor UAV. In Proc AIAA Guidance,Navigation, and Control Conference and Exhibit, Texas,USA, 2003

10. Fantoni I, Lozano R. Non-linear Control for UnderactuatedMechanical Systems. Springer-Verlag, London, 2002

11. Feng W, Postlethwaite I. Robust nonlinear H∞/adaptativecontrol of robot manipulator motion. Proc Instn Mech Engrs,1994; 208: 221–230

12. Frazzoli E, Dahleh MA, Feron E. Trajectory tracking con-trol design for autonomous helicopters using a backstep-ping algorithm. In Proc Am Control Conference, 6, pages4102–4107, 2000

13. Guenard N, Hamel T, Mahony R. A practical visual servocontrol for an unmanned aerial vehicle. Robotics, IEEE Trans[see also Robotics and Automation, IEEE Transactions on],2008; 24(2): 331–340

14. Guisser M, Medromi H, Ifassiouen H, Saadi J, Radhy N.A coupled nonlinear discrete-time controller and observerdesigns for underactuated autonomous vehicles with applica-tion to a quadrotor aerial robot. In Proc 33rd IEEE-IECON06,pages 1–6, Paris, France, 2006

15. Hoffmann GM, Huang H, Waslander SL, Tomlin CJ. Quadro-tor helicopter flight dynamics and control: Theory and

experiment. In Proc AIAA Guidance, Navigation and ControlConf Exhibit, pages 1–20, South Carolina, USA, 2007

16. Isidori A, Marconi L, Serrani A. Robust AutonomousGuidance. Springer-Verlag, New York, Secaucus, NJ,2003

17. Johansson R. Quadratic optimization of motion coordina-tion and control. IEEE Trans Automatic Cont, 1990; 35(11):1197–1208

18. Kuhne F, Lages WF, Da Silva JMG. Point stabilization ofmobile robots with nonlinear model predictive control. InProc IEEE Mechatronics Robotics, volume 3, pages 1163–1168, Niagara Falls, Canada, 2005

19. L’opez-Mart’ınez M, Ortega MG, Rubio FR. Nonlinear L2control of a laboratory helicopter with variable speed rotors.Automatica, 2007; 43(4): 655–661

20. Metni N, Hamel T, Derkx F. Visual tracking control of aerialrobotic systems with adaptative depth estimation. In ProcCDC/ECC, pages 6078–6084, Seville, Spain, 2005

21. Mistler V, Benallegue A, M’Sirdi NK. Exact linearization andnoninteracting control of a 4 rotors helicopter via dynamicfeedback. In Proc IEEE Int Workshop Robot Human InterCommun, 2001

22. Mokhtari A, Benallegue A, Daachi B. Robust feedbacklinearization and G H∞ Controller for a quadrotor unmannedaerial vehicle. J Elect Eng, 2006; 57(1): 20–27

23. Mokhtari A, Benallegue A, Orlov Y. Exact linearizationand sliding mode observer for a quadrotor unmannedaerial vehicle. Int J Robotics Autom, 2006; 21(1):39–49

24. Olfati-Saber R. Nonlinear Control of UnderactuatedMechanical Systems with Application to Robotics andAerospace Vehicles. PhD thesis, Massachusetts Institute ofTechnology, 2001

25. Ortega MG, Vargas M, Vivas C, Rubio FR. Robustnessimprovement of a nonlinear H∞gontroller for robot manip-ulators via saturation functions. J Robotic Syst, 2005; 22(8):421–437

26. Raffo GV, Ortega MG, Rubio FR. Nonlinear H∞ Controlapplied to the personal pendulum car. In Proc Eur ControlConf. ECC’07, Kos, Greece, 2007

27. Raffo GV, Ortega MG, Rubio FR. Backstepping/nonlinearH∞ Control for path tracking of a quad-rotor unmannedaerial vehicle. In Proc 2008 Am Control Conf—ACC2008,pages 3356–3361, Seattle, USA, June 2008

28. Raffo GV, Ortega MG, Rubio FR. MPC with nonlinearH∞ Control for path tracking of a quad-rotor helicopter.In Proc 17th IFAC World Congress 2008—IFAC’08, pages8564–8569, Seoul, Korea, 2008

29. Raffo GV, Ortega MG, Rubio FR. An integral predic-tive/nonlinear H∞ control structure for a quadrotor heli-copter. Automatica, 2010; 46: 29–39

30. Rawlings JB, Mayne DQ. Model Predictive Control: Theoryand Design. Nob Hill Publishing, Madison, 2009

31. Roberts JF, Stirling T, Zufferey JC, Floreano D. Sensing forautonomous indoor flight. In Proc Eur Micro Air VehicleConf Flight Competition (EMAV), 2007

32. Rossiter JA. Model-Based Predictive Control: A PracticalApproach. CRC Press, New York, 2003

33. Siqueira AAG, Terra MH. Nonlinear H∞ control for under-actuated manipulators with robustness tests. Revista deControl & Automação, 2004; 15(3): 339–350

34. Siqueira AAG, Terra MH, Maciel BCO. Nonlinear mixedH2/H∞ control applied to manipulators via actuationredundancy. Control Eng Pract, 2006; 14: 327–335

Page 20: Path Tracking of a UAV via an Underactuated Control …rubio/EJC_11_QuadRotor.pdf · Path Tracking of a UAV via H∞ Control 3 The remainder of the study is organized as follows:

20 G.V. Raffo et al.

35. Tournier GP, Valenti M, How JP, Feron E. Estimation andcontrol of a quadrotor vehicle using monocular vision andMoir’e patterns. In Proc AIAA Guidance, Navigation, andControl Conf Exhibit, August 2006

36. Van der Schaft A. L2-gain analysis of nonlinear systemsand nonlinear state feedback control. IEEE Trans AutomatControl, 1992; 37(6): 770–784

37. Van der Schaft A. L2-Gain and Passivity Techniques inNonlinear Control. Springer-Verlag, New York, 2000

38. Xu R, Ozg uner U. Sliding mode control of a quadrotor heli-copter. In Proc 45th IEEE Conf Decision Control, pages4957–4962, San Diego, USA, 2006

39. Xu R, Özgüner Ü. Sliding mode control of a class ofunderactuated systems. Automatica, 2008, 44: 233–241

40. Zemalache KM, Beji L, Maaref H. Two inertial models ofx4-flyers dynamics, motion planning and control. IntegratedComputer-Aided Eng, 2007; 14(2): 107–119