12
Research Article Trajectory Tracking and Stabilization of a Quadrotor Using Model Predictive Control of Laguerre Functions Mapopa Chipofya, 1 Deok Jin Lee, 2 and Kil To Chong 1 1 Department of Electronic Engineering, Chonbuk National University, Room 421, Engineering Building No. 7, 567 Baekje-daero, Deokjin-gu, Jeonju-si, Jeollabuk-do 561-756, Republic of Korea 2 Department of Mechanical Engineering, Kunsan National University, Republic of Korea Correspondence should be addressed to Kil To Chong; [email protected] Received 12 September 2014; Accepted 29 October 2014 Academic Editor: Sakthivel Rathinasamy Copyright © 2015 Mapopa Chipofya et al. is is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited. is paper presents a solution to stability and trajectory tracking of a quadrotor system using a model predictive controller designed using a type of orthonormal functions called Laguerre functions. A linear model of the quadrotor is derived and used. To check the performance of the controller we compare it with a linear quadratic regulator and a more traditional linear state space MPC. Simulations for trajectory tracking and stability are performed in MATLAB and results provided in this paper. 1. Introduction A quadrotor is a helicopter which has four equally spaced rotors, usually arranged at the corners of a square body. When these rotors spin, they push air downwards and in the process create a thrust force that keeps the quadrotor aloſt. Unlike the conventional helicopter (with two rotors) which requires a swashplate mechanism in order to have more degrees of freedom, such mechanism is not needed in quadrotor systems since the two additional rotors provide the same level of control as that with conventional helicopters fixed with swashplate mechanism. e task to control a quadrotor is a fundamentally difficult and interesting problem. With six degrees of freedom (three translational and three rotational) and only four independent inputs (rotor speeds), quadrotors are severely underactuated. In order to achieve six degrees of freedom, rotational and translational motion are coupled. e resulting dynamics are highly nonlinear, especially aſter accounting for the complicated aerodynamic effects. Finally, unlike ground vehicles, quadrotors have very little friction to prevent their motion, so they must provide their own damping in order to stop moving and remain stable. Put together, these factors create a very challenging control problem. 2. Literature Review Amongst the many control techniques used in quadrotor control PID, LQR and recently MPC have been widely used. While PID is the most popular choice for controlling several types of processes, it turns out that tuning becomes a big challenge especially for MIMO systems like the quadrotor. Several techniques have been used to divide the quadrotor control problem to several SISO systems. While this has worked in some cases it has to be pointed out that this takes away the most natural way of controlling the system and designing many SISO controllers may make maintenance more difficult. LQR is a relatively modern control method that is very powerful yet limited to applications where linear system models are available. To use this method to control non- linear systems a linear model has to be obtained from the corresponding nonlinear model. To evaluate the performance of the LQR controller we need to compare it with results obtained from other control techniques. is means design- ing the same system using another control technique which could be cumbersome. Because of this, LQR is only very popular to use in inherently linear systems or where results of control obtained using other control techniques are available for comparison. Hindawi Publishing Corporation Abstract and Applied Analysis Volume 2015, Article ID 916864, 11 pages http://dx.doi.org/10.1155/2015/916864

Research Article Trajectory Tracking and ... - Hindawi

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Research Article Trajectory Tracking and ... - Hindawi

Research ArticleTrajectory Tracking and Stabilization of a Quadrotor UsingModel Predictive Control of Laguerre Functions

Mapopa Chipofya1 Deok Jin Lee2 and Kil To Chong1

1 Department of Electronic Engineering Chonbuk National University Room 421 Engineering Building No 7 567 Baekje-daeroDeokjin-gu Jeonju-si Jeollabuk-do 561-756 Republic of Korea

2Department of Mechanical Engineering Kunsan National University Republic of Korea

Correspondence should be addressed to Kil To Chong kitchongjbnuackr

Received 12 September 2014 Accepted 29 October 2014

Academic Editor Sakthivel Rathinasamy

Copyright copy 2015 Mapopa Chipofya et al This is an open access article distributed under the Creative Commons AttributionLicense which permits unrestricted use distribution and reproduction in any medium provided the original work is properlycited

This paper presents a solution to stability and trajectory tracking of a quadrotor system using amodel predictive controller designedusing a type of orthonormal functions called Laguerre functions A linear model of the quadrotor is derived and used To checkthe performance of the controller we compare it with a linear quadratic regulator and a more traditional linear state space MPCSimulations for trajectory tracking and stability are performed in MATLAB and results provided in this paper

1 Introduction

A quadrotor is a helicopter which has four equally spacedrotors usually arranged at the corners of a square bodyWhen these rotors spin they push air downwards and inthe process create a thrust force that keeps the quadrotoraloft Unlike the conventional helicopter (with two rotors)which requires a swashplate mechanism in order to havemore degrees of freedom such mechanism is not needed inquadrotor systems since the two additional rotors provide thesame level of control as that with conventional helicoptersfixed with swashplate mechanism

The task to control a quadrotor is a fundamentallydifficult and interesting problemWith six degrees of freedom(three translational and three rotational) and only fourindependent inputs (rotor speeds) quadrotors are severelyunderactuated In order to achieve six degrees of freedomrotational and translationalmotion are coupledThe resultingdynamics are highly nonlinear especially after accounting forthe complicated aerodynamic effects Finally unlike groundvehicles quadrotors have very little friction to prevent theirmotion so they must provide their own damping in orderto stop moving and remain stable Put together these factorscreate a very challenging control problem

2 Literature Review

Amongst the many control techniques used in quadrotorcontrol PID LQR and recently MPC have been widely used

While PID is the most popular choice for controllingseveral types of processes it turns out that tuning becomes abig challenge especially forMIMOsystems like the quadrotorSeveral techniques have been used to divide the quadrotorcontrol problem to several SISO systems While this hasworked in some cases it has to be pointed out that this takesaway the most natural way of controlling the system anddesigning many SISO controllers may make maintenancemore difficult

LQR is a relatively modern control method that is verypowerful yet limited to applications where linear systemmodels are available To use this method to control non-linear systems a linear model has to be obtained from thecorresponding nonlinearmodel To evaluate the performanceof the LQR controller we need to compare it with resultsobtained from other control techniques This means design-ing the same system using another control technique whichcould be cumbersome Because of this LQR is only verypopular to use in inherently linear systems or where results ofcontrol obtained using other control techniques are availablefor comparison

Hindawi Publishing CorporationAbstract and Applied AnalysisVolume 2015 Article ID 916864 11 pageshttpdxdoiorg1011552015916864

2 Abstract and Applied Analysis

On the other hand MPC can handle both linear andnonlinear systems [1] Comparisons between the nonlinearsystem and its corresponding linearmodel can easily bemadewith very little modification Compared to PID tuning MPCis easier even for complex MIMO systems

However in trying to track the reference trajectory inan optimal way and at the same time obey the constraintsimposed MPC makes much more calculations than eitherPID or LQRThis computation burden makes MPC less suit-able for ldquofastrdquo processes It requires very powerful processorsto be used in hardware implementation Not surprisingly alot of effort is being put in to reduce the computations so thatMPC can be faster and easily be implemented even on lowcost processors

In [2] Wang proposed a method of designing MPC usingorthonormal functions This method makes less computa-tions than the traditional MPC With reduced number ofcomputations this technique can be used where rapid systemdynamics are requiredWe will use this method in our task tocontrol a quadrotor using MPC

Other MPC applications to quadrotor can be found in[3 4] In [4] the control structure consists of a controllerbased on MPC to track the reference trajectory and a secondone based on a nonlinear 119867

infincontrol technique to stabilize

the rotational movements Similarly in [3] anMPC controlleris designed to control position and a second feedforwardcontroller is used to perform stabilization of the quadrotorsystem

In both [3 4] the control loop uses two controllers thecontroller based onMPC which is used for tracking the posi-tion reference trajectory and a second controller (which isdesigned using other techniques) that is used for stabilizationof the rotational movements In this paper MPC is used tocontrol both the position and rotational movements This isgood for uniformity and ease of maintenance

3 Kinematics and Dynamics of a Quadrotor

A quadrotor is completely described by twelve states Thefirst six states describe translational motion of the quadrotorThese states are 119909 119910 and 119911 which represent position ininertial frame and 119906 V and 119908 which denote velocity vectorsalong the body frame Similarly the remaining six variablesdescribe rotational motionsThese are 120601 120579 and 120595 commonlyknown as Euler angles and 119901 119902 and 119903 which denote angularvelocities

A free body diagram of a quadrotor is shown in Figure 1The force 119865

lowastand moment 119872

lowast(where lowast = 119891 119887 119903 and 119897)

produced by the rotors can be described by their angularspeed (120596) as 119865

lowast= 119896

11205962 and 119872

lowast= 119896

21205962 respectively

Similarly torques 120591120601 120591120579 and 120591

120595and the thrust force (119865) are

related to angular speed of rotors as

(

119865

120591120601

120591120579

120591120595

) = 119872(

(

1205962

119891

1205962

119903

1205962

119887

1205962

119897

)

)

(1)

where119872 = [

1198961

1198961

11989611198961

0 minus1198971198961

0 1198971198961

1198971198961

0 minus11989711989610

minus11989621198962minus11989621198962

] and 119897 is the length of arm of the

quadrotorEquations describing the kinematics of the quadrotor are

given by

(

119910

) = 119877 (120601 120579 120595)(

119906

V119908

)

(

120601

120579

) = (

1 119904120601119905120579 119888120601119905120579

0 119888120601 minus119904120601

0119904120601

119888120579

119888120601

119888120579

)(

119901

119902

119903

)

(2)

where 119877(120601 120579 120595) = [

119888120579119888120595119904120601119904120579119888120595minus119888120601119904120595119888120601119904120579119888120595+119904120601119904120595

119888120579119904120595119904120601119904120579119904120595+119888120601119888120595119888120601119904120579119904120595minus119904120601119888120595

minus119904120579

119904120601119888120579

119888120601119888120579

] 119888 stands for

cos 119904 stand for sin and 119905 stands for tan Similarly dynamicequations can be derived using Newtons laws of motionwhich are listed in

(

V

) = (

119903V minus 119902119908

119901119908 minus 119903119902

119902119906 minus 119901V) + (

minus119892 sin 120579119892 cos 120579 sin120601119892 cos 120579 cos120601

) +1

119898(

0

0

minus119865

)

(

119902

119903

) =

(((

(

119869119910minus 119869

119911

119869119909

119902119903

119869119911minus 119869

119909

119869119910

119901119903

119869119909minus 119869

119910

119869119911

119901119902

)))

)

+((

(

1

119869119909

120591120601

1

119869119910

120591120579

1

119869119911

120591120595

))

)

(3)

where 119869119909 119869119910 and 119869

119911are the respectivemoment of inertia about

119883 119884 and 119885 axes of the quadrotor For the simulation of thecontroller of quadrotor we have considered 119865 120591

120601 120591120579 and 120591

120595

as the inputs to the system

31 Linearization In order to design a linear controller it isvital that (2) to (3) be simplified to linear ones To do that rollpitch and heading angles are assumed to operate within verysmall angles [5] which leads to the following

(

120601

120579

) =((

(

1

119869119909

120591120601

1

119869119910

120591120579

1

119869119911

120591120595

))

)

= 119892 minus119865

119898

= minus119892120579

V = 119892120601

(4)

4 Controller Design

In order to control attitude (120601 120579 and 120595) altitude (119911) andposition (119909 119910) we propose a control architecture given in

Abstract and Applied Analysis 3

X

Y

Z

(a)

Fl Ff

Fb Fr

120591l

120591b

120591f

120591r(r 120595)

(q 120579)

(p 120601)

u

120596

(b)

Figure 1 Inertial frame (a) and forces and torques acting on the quadrotor (b)

Positioncontroller

Altitudecontroller

Attitudecontroller

Quadrotordynamics

MPC

zref

xref

yref

120595ref

120579ref

120601ref

[x y][120579 120601 120595]

120591120579

120591120601

120591120595

F

z

Figure 2 Block diagram showing the structure of the controllers

Figure 2 where we have utilized MPC to design the threecontrollers The attitude controller generates 120591

120601 120591

120579 and 120591

120595

actuator signals whereas the altitude controller generatesrequired thrust for the system The position controller con-trols position in the 119909 and 119910 directions and generates controlsignals 120579 and 120601 which when combined with the 120595 signal actas reference signals to the attitude controller

In the next section we look at the design of each of thethree controllers

41 Discretization In this section discrete-time state-spaceequations necessary for altitude position and attitude con-trol are derived

411 Altitude Controller The linear equations responsible foraltitude control are

= 119908

= 119892 minus119865

119898

(5)

These two equations can be combined to give the followingsecond order ODE

= 119892 minus119865

119898 (6)

This second order ODE can be simplified to

= 119866 (7)

where 119866 = 119892 minus 119865119898 or 119865 = 119898(119892 minus 119866) Equation (7) can bewritten in state-space form as in the following equation

[

] = [

0 1

0 0] [

119911

] + [

0

1]119866 (8)

Using the forward Euler method and choosing a samplinginterval Δ119879 we can express (8) in discrete form as in

[119911 (119896 + 1)

V119911(119896 + 1)

] = [1 Δ119879

0 1] [

119911 (119896)

V119911(119896)

] + [0

Δ119879]119866 (119896) (9)

The states 119911(119896) and V119911(119896) represent the position and velocity

respectively and we could choose a proper output matrix 119862depending on which state we are going to measure In thispaper we are interested in the position and therefore we willuse the output matrix 119862 = [1 0]

412 Position Controller The equations responsible for posi-tion and velocity control in 119909 direction are

= 119906

= minus119892120579

(10)

These two equations can be combined to give the secondorder ODE

= minus119892120579 (11)

4 Abstract and Applied Analysis

Similarly the equations responsible for position and velocitycontrol in 119910 direction are

119910 = V

V = 119892120601

(12)

which give rise to the second order ODE

119910 = 119892120601 (13)

Equations (11) and (13) can be combined and form a state-space equation such as

[[[

[

119910

119910

]]]

]

=

[[[

[

0 1 0 0

0 0 0 0

0 0 0 1

0 0 0 0

]]]

]

[[[

[

119909

119910

119910

]]]

]

+

[[[

[

0 0

minus119892 0

0 0

0 119892

]]]

]

[120579

120601] (14)

As stated before we can use the forward Euler method toexpress (14) in discrete form Consider

[[[

[

119909 (119896 + 1)

V119909(119896 + 1)

119910 (119896 + 1)

V119910(119896 + 1)

]]]

]

=

[[[

[

1 Δ119879 0 0

0 1 0 0

0 0 1 Δ119879

0 0 0 1

]]]

]

[[[

[

119909 (119896)

V119909(119896)

119910 (119896)

V119910(119896)

]]]

]

+

[[[

[

0 0

minus119892Δ119879 0

0 0

0 119892Δ119879

]]]

]

[120579 (119896)

120601 (119896)]

(15)

The states 119909(119896) and 119910(119896) represent the position while V119909(119896)

and V119910(119896) represent velocity Since we are interested in the

position we will use the output matrix 119862 = [1 0 0 0

0 0 1 0] but

we could have used a different 2 times 4 output matrix if wewere interested in the velocity But it is important to notethat we can not use a 3 times 4 or 4 times 4 as there is no guaranteethat we will be able to control each of the measured outputsindependently with zero steady state errors This is generallythe case for a system with119898 inputs 119902 outputs and 119902 gt 119898 [6]

413 Attitude Controller In attitude control we are interestedin controlling the roll 120601 pitch 120579 and yaw (heading) 120595 suchthat we generate appropriate torque signals responsible forsteering the quadrotor in the desired direction with therequired attitude The equations responsible for roll controlare

120601 = 119901

=1

119869119909

120591120601

(16)

These two equations can be combined to give the secondorder ODE

120601 =1

119869119909

120591120601 (17)

Similarly the equations responsible for pitch are given by120579 = 119902

119902 =1

119869119910

120591120579

(18)

which give rise to the second order ODE

120579 =1

119869119910

120591120579 (19)

Also the equations responsible for heading are expressed as

= 119903

119903 =1

119869119911

120591120595

(20)

which like in roll and pitch give rise to the second orderODE

=1

119869119911

120591120579 (21)

Equations (17) (19) and (21) can be combined and written instate-space form as in

[[[[[[[

[

120601

120601

120579

120579

]]]]]]]

]

=

[[[[[[[

[

0 1 0 0 0 0

0 0 0 0 0 0

0 0 0 1 0 0

0 0 0 0 0 0

0 0 0 0 0 1

0 0 0 0 0 0

]]]]]]]

]

[[[[[[[

[

120601

120601

120579

120579

120595

]]]]]]]

]

+

[[[[[[[

[

0 0 0

119869minus1

1199090 0

0 0 0

0 119869minus1

1199100

0 0 0

0 0 119869minus1

119911

]]]]]]]

]

[

[

120591120601

120591120579

120591120595

]

]

(22)

where 120591120601 120591

120579 and 120591

120595are the torques required to give the

required roll pitch and yaw respectivelyAgain using the forward Eulermethod we express (22) in

discrete form as

[[[[[[[

[

120601 (119896 + 1)

V120601(119896 + 1)

120579 (119896 + 1)

V120579(119896 + 1)

120595 (119896 + 1)

V120595(119896 + 1)

]]]]]]]

]

=

[[[[[[[

[

1 Δ119879 0 0 0 0

0 1 0 0 0 0

0 0 1 Δ119879 0 0

0 0 0 1 0 0

0 0 0 0 1 Δ119879

0 0 0 0 0 1

]]]]]]]

]

[[[[[[[

[

120601 (119896)

V120601(119896)

120579 (119896)

V120579(119896)

120595 (119896)

V120595(119896)

]]]]]]]

]

+

[[[[[[[

[

0 0 0

Δ119879119869minus1

1199090 0

0 0 0

0 Δ119879119869minus1

1199100

0 0 0

0 0 Δ119879119869minus1

119911

]]]]]]]

]

[

[

120591120601(119896)

120591120579(119896)

120591120595(119896)

]

]

(23)

Since we are interested in measuring 120601(119896) 120579(119896) and 120595(119896) wewill use the output matrix 119862 = [

1 0 0 0 0 0

0 0 1 0 0 0

0 0 0 0 1 0

]So far we have formulated the necessary equations used to

build the three controllers Figure 2 shows in block diagramform what we have done so far But that is not the wholestory In the next section we will look at exactly how modelpredictive control is applied to the quadrotor systemusing thediscrete state-space equations formulated in this section

Abstract and Applied Analysis 5

Plant

Observer

MPC

u(t) y(t)

x(t)

Figure 3 Block diagram of SS-MPC

5 Model Predictive Control

One of the many tenets deployed in control of complexsystems like the quadrotor using MPC is to use modelsthat reduce the computation burden which is a necessitywhen it comes to online implementation It is also agreedupon that linear models perform better in this respect thanthe nonlinear models they represent In this and subse-quent sections the performance of a qudrotor controllerdesigned using Laguerre-based MPC (LMPC) is comparedwith that designed using themore common linear state-spaceapproach presented in [7] We will call the linear state-spacemethod SS-MPC

51 Linear State-Space MPC (SS-MPC) Linear state-spaceMPC is modeled using a linear state-space relation andplant constraints are modeled using linear equalities andinequalities When combined with convex quadratic costfunction this implies that the desired control action canbe obtained at each sample interval via the solution of acorresponding quadratic program This is attractive becausethe quadratic programs can be solved efficiently online [7]The general block diagram representing SSMPC is shown inFigure 3

511 Plant Theplant ismodeled by using the following state-space system

119909119896+1

= 119860119909119896+ 119861119906

119896+ 119908

119896

119910119896= 119862119909

119896+ 119863119906

119896+ V

119896

(24)

where 119908119896is the state noise and V

119896is the measurement noise

Both 119908119896and V

119896are assumed to be Gaussian distributed with

zero mean respective covariances of 119882 and 119881 and crosscovariance 119885 This is represented mathematically as

[119908119896

V119896

] sim 119873([0

0] [

119882 119885

119885119879

119881]) (25)

512 Observer Using Gaussian assumptions stated above itis possible to make optimal predictions of state and outputusing the Kalman filter as

119909119896+1|119896

= 119860119909119896|119896minus1

+ 119861119906 + 119870 (119910119896minus 119910

119896|119896minus1)

119910119896|119896minus1

= 119862119909119896|119896minus1

+ 119863119906119896

(26)

The closed loop gain 119870 is found by solving the discrete-timealgebraic Riccati equation (DARE)

119870 = (119860119875119862119879

+ 119885) (119862119875119862119879

+ 119881)minus1

119875 = 119882 + 119860119875119860119879

minus (119860119875119862119879

+ 119885) (119862119875119862119879

+ 119881)minus1

(119885119879

+ 119862119875119860119879

)

(27)

513 Optimal Estimation of State and Output The generalequation representing the optimal estimate of state at instant119895 and written in terms of the initial state 119909

119896+1|119896and future

control inputs 119906119896+119894|119896

is given by

119909119896+119895|119896

= 119860119895minus1

119909119896+1|119896

+

119895minus1

sum

119899=1

119860119895minus119899minus1

119861119906119896+119899|119896

(28)

Similarly the output equation is given by

119910119896+119895|119896

= 119862119860119895minus1

119909119896+1|119896

+ 119862(

119895minus1

sum

119899=1

119860119895minus119899minus1

119861119906119896+119899|119896

) + 119863119906119896+119895|119896

(29)

The vector containing all output vectors can be written as

119884119896=[[

[

119910119896+1|119896

119910119896+119873|119896

]]

]

(30)

while that containing all control actions can be written as

119880119896=[[

[

119906119896+1|119896

119906119896+119873|119896

]]

]

(31)

Therefore we can write 119884119896as

119884119896= 119865119909

119896+1|119896+ Φ119880

119896 (32)

where

119865 =

[[[[[[

[

119862

119862119860

1198621198602

119862119860119873minus1

]]]]]]

]

Φ =

[[[[[[

[

119863

119862119861 119863

119862119860119861 119862119861 119863

119862119860119873minus2

119861 sdot sdot sdot sdot sdot sdot 119862119861 119863

]]]]]]

]

(33)

6 Abstract and Applied Analysis

514 Cost Function The prime goal in MPC is to rejectdisturbances whilst tracking a reference signal But at eachinstant it has to ensure that the control signal is withinreasonable range that is practical for actuation An objectivefunction that combines these two tasks is

119869 (119909119896+1|119896

119880119896) =

1

2

119873

sum

119899=1

1003817100381710038171003817119910119896+119899|119896 minus 119903119896+119899

1003817100381710038171003817

2

119876+1003817100381710038171003817119906119896+119899|119896 minus 119906

119896+119899minus1|119896

1003817100381710038171003817

2

119878

(34)

where both119876 and 119878 are assumed to be symmetric and positivedefinite

52 Laguerre-Based MPC (LMPC) Model predictive controldesigned using Laguerre functions is developed and summa-rized in [2] The author presented this design technique forboth single-variable and multivariable systems Fortunatelythe derivations for the single-variable case and the multi-variable case are very similar and knowing one would giveenough insight into the derivation of the other For brevityonly the single-variable case is presented and it is hoped thatthis is enough to set forth the LMPC design technique

Consider a plant with 119901 inputs 119902 outputs and 119899 states asdescribed by (35) where the subscript119898 stands for model

119909119898(119896 + 1) = 119860

119898119909119898(119896) + 119861

119898119906 (119896) + 119861

119889120596 (119896)

119910 (119896) = 119862119898119909 (119896)

(35)

where 119906(119896) is the input variable 119910(119896) is the process outputand 119909

119898(119896) is the state vector 120596(119896) is the input disturbance

and is assumed to be a sequence of integrated white noiseThe plant described by (35) can be expressed in aug-

mented state-space form [2 6] as

119909 (119896 + 1) = 119860119909 (119896) + 119861Δ119906 (119896) + 119861120598120598 (119896)

119910 (119896) = 119862119909 (119896)

(36)

where 119860 = [119860119898

0119899times119902

119862119898119860119898119868119902times119902

] 119861 = [119861119898

119862119898119861119898

] 119861120598= [

119861119889

119862119898119861119889

] 119862 =

[0119902times119899

119868119902times119902

] and the state 119909(119896) = [Δ119909119898(119896) 119910(119896)]

119879 120598(119896) is azero mean white noise sequence related to the disturbance bythe difference equation 120598(119896) = 120596(119896) minus 120596(119896 minus 1) [6]

521 Design Framework In designing MPC using Laguerrefunctions the control trajectory Δ119880 is expressed using a setof orthonormal functions called Laguerre functions Since thestate and output vectors can also be described in terms ofΔ119880 it follows that they too can be expressed using Laguerrefunctions

At sampling instant 119896119894 the state variable 119909(119896

119894) is available

through measurement The future control trajectory is givenby

Δ119880 = [Δ119906 (119896119894) Δ119906 (119896

119894+ 1) Δ119906 (119896

119894+ 119873

119888minus 1)] (37)

where119873119888is the control horizon

Laguerre functions can approximate the incrementalterms contained inΔ119880The 119911-transfroms of the discrete-timeLaguerre functions are written as

Γ1(119911) =

radic1 minus 1198862

1 minus 119886119911minus1

Γ2(119911) =

radic1 minus 1198862

1 minus 119886119911minus1(

119911minus1

minus 119886

1 minus 119886119911minus1)

Γ119873(119911) =

radic1 minus 1198862

1 minus 119886119911minus1(

119911minus1

minus 119886

1 minus 119886119911minus1)

119873minus1

(38)

In the discrete-time Laguerre network of (38) 119886 is the poleof the discrete-time Laguerre network and 0 le 119886 lt 1 forstability of the network The parameter 119886 is called the scalingfactor and 119873 = 1 2 3 is the number of Laguerre termsused in the network Note that

Γ119896(119911) = Γ

119896minus1(119911) (

119911minus1

minus 119886

1 minus 119886119911minus1) (39)

with the first term as Γ1(119911) = radic1 minus 1198862(1 minus 119886119911

minus1

)Let 119897

119895(119896) be the inverse 119911-transform of the 119895th term in

the discrete Laguerre network and 119871(119896) the vector containingall inverse 119911-transform terms Then taking advantage of (39)successive inverse 119911-transform vectors are obtained throughthe difference equation

119871 (119896 + 1) = 119860119897119871 (119896) (40)

Thematrix119860119897has size119873times119873 and is a function of parameters

119886 and 120573 = 1 minus 1198862 The initial condition is given by

119871 (0)⊤

= radic120573 [1 minus119886 1198862

sdot sdot sdot (minus1)119873minus1

119886119873minus1

] (41)

In the case where119873 = 5 matrix 119860119897and the initial condition

119871(0) are

[[[[[

[

119886 0 0 0 0

120573 119886 0 0 0

minus119886120573 120573 119886 0 0

1198862

120573 minus119886120573 120573 119886 0

minus1198863

120573 1198862

120573 minus119886120573 120573 119886

]]]]]

]

(42)

119871 (0) = radic120573

[[[[[

[

1

minus119886

1198862

minus1198863

1198864

]]]]]

]

(43)

respectivelyAt sampling instant 119896

119894 the control trajectory is described

using Laguerre functions as in

Δ119906 (119896119894+ 119896) =

119873

sum

119895=1

119888119895(119896119894) 119897119895(119896119894) (44)

Abstract and Applied Analysis 7

where 119896 = 0 1 2 119873119901with 119873

119901as the prediction horizon

119873 terms used in the expansion and 119897119895(119896119894) is the inverse 119911-

transform of the 119895th term in the discrete Laguerre networkEquation (44) can be rewritten as

Δ119906 (119896119894+ 119896) = 119871 (119896)

120578 (45)

where 119871(119896) = [1198971(119896) 119897

2(119896) sdot sdot sdot 119897

119873(119896)]

119879 120578 = [11988811198882sdot sdot sdot 119888

119873]119879

and the coefficients 1198881 1198882 119888

119873are obtained from system

dataAt an arbitrary future instant 119898 the state is described

using Laguerre functions as

119909 (119896119894+ 119898 | 119896

119894) = 119860

119898

119909 (119896119894) +

119898minus1

sum

119894=0

119860119898minus119894minus1

119861119871 (119894)119879

120578 (46)

Similarly the output is described as

119910 (119896119894+ 119898 | 119896

119894) = 119862119860

119898

119909 (119896119894) +

119898minus1

sum

119894=0

119862119860119898minus119894minus1

119861119871 (119894)119879

120578 (47)

522 Cost Function The cost function is used to choose theoptimal control trajectory Δ119880 to bring the predicted outputas close as possible to the set-point The cost function

119869 =

119873119901

sum

119898=1

119909 (119896119894+ 119898 | 119896

119894)119879

119876119909 (119896119894+ 119898 | 119896

119894) + 120578

119879

119877119871120578 (48)

minimizes the error between the set-point signal and theoutput in the shortest possible time by carefully tuning theweighting matrices 119876 ge 0 and 119877

119871gt 0

523 Cost Function Minimization The state variable in (46)can be rewritten as

119909 (119896119894+ 119898 | 119896

119894) = 119860

119898

119909 (119896119894) + 120601 (119898)

119879

120578 (49)

where 120601(119898)119879

= sum119898minus1

119894=0119860119898minus119894minus1

119861119871(119894)119879

By substituting (49) into (48) and performing the partialderivative 120597119869120597120578 = 0 the Laguerre coefficients vector is foundto be

120578 = minusΩminus1

Ψ119909 (119896119894) (50)

withΩ = sum119873119901

119898=1120601(119898)119876120601(119898)

119879

+ 119877119871and Ψ = 120601(119898)119876119860

119898

524 Receding Horizon Control In receding horizon control(RHC) only the first term in Δ119880 that is Δ119906(119896

119894) is imple-

mented at instant 119896119894 The rest of the sequence is ignored

Only the most recent measurement is taken to form the statevector for calculation of the control signal This procedure isrepeated in real-time to give the receding horizon control law[6 8]

525 Stability In stability analysis we make use of the tech-nique of exponential data weighting originated by Andersonand Moore [9] and applied to MPC in [6] More specifically

we will concentrate on the discrete exponential factor 119890120582Δ119905where Δ119905 is the sampling interval and the discrete weightsform a geometric sequence 120572119895 119895 = 0 1 2

The proposed cost function is similar to the one usedin linear quadratic regulator (LQR) systems but with theinclusion of discrete weights

119869119908=

119873119901

sum

119895=1

120572minus2119895

119909 (119896119894+ 119895 | 119896

119894)119879

119876119909 (119896119894+ 119895 | 119896

119894)

+

119873119901

sum

119895=0

120572minus2119895

Δ119906 (119896119894+ 119895)

119879

119877Δ119906 (119896119894+ 119895)

(51)

For 120572 gt 1 the exponential weights 120572minus2119895 119895 = 1 2 3 119873119901

put more emphasis on the current state 119909(119896119894+ 119895 | 119896

119894) and less

emphasis on subsequent future statesThe exponentially weighted cost function can be

expressed more compactly as

119869119908=

119873119901

sum

119895=1

119909 (119896119894+ 119895 | 119896

119894)119879

119876119909 (119896119894+ 119895 | 119896

119894)

+

119873119901

sum

119895=0

Δ (119896119894+ 119895)

119879

119877Δ (119896119894+ 119895)

(52)

with state equation119909 (119896 + 1) = 119860

120572119909 (119896) + 119861

120572Δ (119896) (53)

and 119860120572= 119860120572 and 119861

120572= 119861120572

With 119876 ge 0 119877 gt 0 and 119873119901

rarr infin minimizing thecost function 119869

119908is equivalent to the DLQR problem which is

solved using algebraic Riccati equation (54)Thepair (119860120572 119861

120572)

is assumed to be controllable and (119860120572 119862) observable with

119876 = 119862119879

119862 Then there is a stabilizing state feedback controlgain matrix119870

119908

119870119908= (119877 + 120572

minus2

119861119879

119875119908119861)

minus1

120572minus2

119861119879

119875119908119860

119860119879

120572[119875

119908minus 119875

119908

119861

120572(119877 +

119861119879

120572119875119908

119861

120572)

minus1

119861119879

120572119875119908]119860

120572+ 119876 minus 119875

119908= 0

(54)that gives a stable closed loop system with all its eigenvaluesinside the unit circle and the the closed loop system beingdescribed by

119909 (119896119894+ 119895 + 1 | 119896

119894) = 120572

minus1

(119860 minus 119861119870119908) 119909 (119896

119894+ 119895 | 119896

119894) (55)

From (55) the transformed system has all its eigenvaluesinside the unit circle by taking119873

119901rarr infin So

120572minus1 1003816100381610038161003816120582max (119860 minus 119861119870

119908)1003816100381610038161003816 lt 1 (56)

which gives1003816100381610038161003816120582max (119860 minus 119861119870

119908)1003816100381610038161003816 lt 120572 (57)

Thus by choosing 120572 gt 1 there is a great chance that the systemwill be stable Several simulations on the quadrotor systemindicate that a choice of 120572 slightly greater than unity makesthe system stable almost all the time

8 Abstract and Applied Analysis

Table 1

Parameter ValueMass119898 07 kgLength 119897 0275m119869119909

01063 kgsdotm2

119869119910

01063 kgsdotm2

119869119911

02122 kgsdotm2

Table 2

Control horizon119873119888

119873 Required 119886

10 5 0606515 5 0716520 5 0778825 5 0818750 5 09048

6 Simulation Parameters and Results

In order to illustrate the controllerrsquos stability we will checkif the eigenvalues of each of the three individual controllersappear inside a unit circle Andwewill use a trajectory in a 3Dplane to check the overall controllerrsquos ability to track a desiredtrajectory

Table 1 shows the parameters of the quadrotor used insimulation

61 Stability Analysis In this section we look at the locationof eigenvalues of LMPC and check if they fall within the unitcircle for stability of the system We also compare them tothose obtained from the optimal DLQR system To ensurestability as explained in Section 525 we use 120572 = 12

By looking at Figure 4 we note that all the eigenvaluesappear inside the unit circle as required Also the eigenvaluesobtained from LMPC closely match with those of the optimalDLQRThis not only shows the system is stable but also showsthe controllers perform optimally

62 Trajectory Tracking In this section we look at theperformance of LMPC when used to track a 3D trajectoryAlso LMPC is compared to SS-MPC and individual statetrajectories are observed The starting point of the trajectoryis (119909 119910 119911) = (0 0 0) and final point is (119909 119910 119911) = (5 5 10)Parameter 119886 = 08187 while119873 = 5 See Figure 5

Clearly both LMPC and SS-MPC track the desired tra-jectory very well See Figures 5 6 and 7 However LMPCperforms better than SS-MPC in that it requires only fiveparameters (119873 = 5) to capture the control trajectorycompared to SS-MPCrsquosminimumof 25 (119873

119888= 25) parameters

(see Table 2 for relationship of119873 and119873119888with 119886 = 08187)

63 Control Horizon in Relation to 119886 and 119873 The controlhorizon (119873

119888) is related to the parameters 119886 and119873 [2] by

119886 asymp 119890minus119873119873

119888 (58)

minus1 minus08 minus06 minus04 minus02 0 02 04 06 08 1minus1

minus08

minus06

minus04

minus02

0

02

04

06

08

1

Real

Imag

inar

yLMPCDLQR

Figure 4 Eigenvalues for DLQR and LMPC in altitude control

0 1 2 3 4 5 6

02

46

0

2

4

6

8

10

xy

z

DesiredSS-MPCLMPC

Figure 5 Tracking a 3D trajectory

631 Constant 119873 Using (58) and choosing a constantparameter119873 = 5 we get Table 2

Thus we can increase the control horizon by increasingthe parameter 119886 without necessarily changing the order119873

632 Constant Control Horizon 119873119888 Assuming we want to

achieve a control horizon of 30 we choose one parameterusually 119873 because it is an integer and directly defines theorder of the discrete Laguerre networkTherefater we simplyuse (58) to find the corresponding scaling factor 119886 as shownin Table 3

Abstract and Applied Analysis 9

0 500 1000 1500 2000 2500 3000 3500 40000

1

2

3

4

5

6

Time (ms)

x p

ositi

on

DesiredSS-MPCLMPC

(a)

0 500 1000 1500 2000 2500 3000 3500 4000Time (ms)

0

1

2

3

4

5

6

y p

ositi

on

DesiredSS-MPCLMPC

(b)

Figure 6 Tracking 119909 (a) and 119910 in (b)

2

4

6

8

10

12

00

500 1000 1500 2000 2500 3000 3500 4000Time (ms)

z p

ositi

on (m

)

DesiredSS-MPCLMPC

(a)

0

01

02

03

04

05

0 500 1000 1500 2000 2500 3000 3500 4000Time (ms)

Hea

ding

angl

e120595

DesiredSS-MPCLMPC

(b)

Figure 7 Altitude (119911) (a) and heading angle (120595) (b)

Table 3

Target control horizon119873119888

Chosen119873 Required 119886

30 1 0967230 3 0904830 5 0846530 7 0791930 9 07408

Figures 8 9 10 11 12 and 13 compare two LMPC designsboth of which yield a control horizon of 30 One designuses 119873 = 1 and the other 119873 = 9 Thus we can choose aLaguerre network with lower number of terms119873 (that gives

lower computation burden) but with a larger scaling factor119886 to achieve the same control horizon The computationalcost is lower if a smaller number of parameters are usedFor 119873 = 1 only one Laguerre term is used to capture thecontrol trajectory while119873 = 9 requires nine Laguerre termsto capture the same control trajectory

7 Conclusion

This paper has presented a solution to stability and trajectorytracking of quadrotor systems using a model predictivecontroller designed by using a special type of orthonor-mal functions called Laguerre functions A quadratic cost

10 Abstract and Applied Analysis

0 05 1 15 2 25 3 35 40

1

2

3

4

5

6

Time (s)

x (m

)

DesiredLMPC

Figure 8 119909 trajectory119873 = 1

0 05 1 15 2 25 3 35 40

1

2

3

4

5

6

Time (s)

x (m

)

DesiredLMPC

Figure 9 119909 trajectory119873 = 9

0 05 1 15 2 25 3 35 40

1

2

3

4

5

6

Time (s)

y (m

)

DesiredLMPC

Figure 10 119910 trajectory119873 = 1

0 05 1 15 2 25 3 35 40

1

2

3

4

5

6

Time (s)

y (m

)

DesiredLMPC

Figure 11 119910 trajectory119873 = 9

0

2

4

6

8

10A

ltitu

de (m

)

Altitude

0 05 1 15 2 25 3 35 4Time (s)

DesiredLMPC

Figure 12 119911 trajectory119873 = 1

0

2

4

6

8

10

Alti

tude

(m)

Altitude

0 05 1 15 2 25 3 35 4Time (s)

DesiredLMPC

Figure 13 119911 trajectory119873 = 9

Abstract and Applied Analysis 11

function similar to that used in linear quadratic regulator(LQR) has been used In stability analysis LMPC has beencompared to the optimal DLQR system whereas in trajectorytracking LMPC has been compared to a popular linear state-space MPC desgin technique in which plant constraints aremodeled using linear equalities and inequalities The resultsfrom the simulations indicate that the controller performsvery well and is considered feasible With this perceivedfeasibility LMPCoffers the added advantage that it can handlesystems where rapid sampling and more complicated processdynamics are required [5 10] By selecting appropriate valuesof 119886 and119873 LMPC reduces the number of parameters requiredfor accurate prediction when using the traditional (MPC)approach This is a big advantage in that with the reducednumber of parameters online implementation might bepossible where the traditional MPC would have failed

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper

Acknowledgment

This work was supported by the National Research Foun-dation of Korea (NRF) grant funded by the Koreangovernment (MEST) (no 2013R1A2A2A01068127 and no2013R1A1A2A10009458)

References

[1] J M Maciejowski Predictive Control with Constraints PrenticeHall New York NY USA 1st edition 2002

[2] L Wang ldquoDiscrete time model predictive control design usingLaguerre functionsrdquo in Proceedings of the American ControlConference pp 2430ndash2435 Arlington Va USA June 2001

[3] K Alexis G Nikolakopoulos and A Tzes ldquoExperimentalmodel predictive attitude tracking control of a quadrotorhelicopter subject to wind-gustsrdquo in Proceedings of the 18thMediterranean Conference on Control amp Automation (MED rsquo10)pp 1461ndash1466 IEEE Marrakech Morocco June 2010

[4] G V RaffoM G Ortega and F R Rubio ldquoMPCwith nonlinear119867infin

control for path tracking of a quad-rotor helicopterrdquo inProceedings of the 17th World Congress International Federationof Automatic Control (IFAC rsquo08) July 2008

[5] A M Singh D J Lee D P Hong and K T Chong ldquoSucces-sive loop closure based controller design for an autonomousquadrotor vehiclerdquo Applied Mechanics and Materials vol 483pp 361ndash367 2014

[6] L Wang Model Predictive Control Design and ImplementationUsing MATLAB Advances in Industrial Control Springer NewYork NY USA 1st edition 2009

[7] A G Wills ldquoTechnical report EE04025-Notes on linear modelpredictive controlrdquo December 2004

[8] Y Gao C G Lee and K T Chong ldquoReceding horizon trackingcontrol for wheeled mobile robots with time-delayrdquo Journal ofMechanical Science and Technology vol 22 no 12 pp 2403ndash2416 2008

[9] B D O Anderson and J B Moore Linear Optimal ControlPrentice-Hall 1971

[10] J A Rossiter and L Wang ldquoExploiting Laguerre functions toimprove the feasibilityperformance compromise in MPCrdquo inProceedings of the 47th IEEE Conference onDecision and Control(CDC rsquo08) pp 4737ndash4742 December 2008

Submit your manuscripts athttpwwwhindawicom

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical Problems in Engineering

Hindawi Publishing Corporationhttpwwwhindawicom

Differential EquationsInternational Journal of

Volume 2014

Applied MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

OptimizationJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Operations ResearchAdvances in

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Function Spaces

Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of Mathematics and Mathematical Sciences

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Algebra

Discrete Dynamics in Nature and Society

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Decision SciencesAdvances in

Discrete MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Stochastic AnalysisInternational Journal of

Page 2: Research Article Trajectory Tracking and ... - Hindawi

2 Abstract and Applied Analysis

On the other hand MPC can handle both linear andnonlinear systems [1] Comparisons between the nonlinearsystem and its corresponding linearmodel can easily bemadewith very little modification Compared to PID tuning MPCis easier even for complex MIMO systems

However in trying to track the reference trajectory inan optimal way and at the same time obey the constraintsimposed MPC makes much more calculations than eitherPID or LQRThis computation burden makes MPC less suit-able for ldquofastrdquo processes It requires very powerful processorsto be used in hardware implementation Not surprisingly alot of effort is being put in to reduce the computations so thatMPC can be faster and easily be implemented even on lowcost processors

In [2] Wang proposed a method of designing MPC usingorthonormal functions This method makes less computa-tions than the traditional MPC With reduced number ofcomputations this technique can be used where rapid systemdynamics are requiredWe will use this method in our task tocontrol a quadrotor using MPC

Other MPC applications to quadrotor can be found in[3 4] In [4] the control structure consists of a controllerbased on MPC to track the reference trajectory and a secondone based on a nonlinear 119867

infincontrol technique to stabilize

the rotational movements Similarly in [3] anMPC controlleris designed to control position and a second feedforwardcontroller is used to perform stabilization of the quadrotorsystem

In both [3 4] the control loop uses two controllers thecontroller based onMPC which is used for tracking the posi-tion reference trajectory and a second controller (which isdesigned using other techniques) that is used for stabilizationof the rotational movements In this paper MPC is used tocontrol both the position and rotational movements This isgood for uniformity and ease of maintenance

3 Kinematics and Dynamics of a Quadrotor

A quadrotor is completely described by twelve states Thefirst six states describe translational motion of the quadrotorThese states are 119909 119910 and 119911 which represent position ininertial frame and 119906 V and 119908 which denote velocity vectorsalong the body frame Similarly the remaining six variablesdescribe rotational motionsThese are 120601 120579 and 120595 commonlyknown as Euler angles and 119901 119902 and 119903 which denote angularvelocities

A free body diagram of a quadrotor is shown in Figure 1The force 119865

lowastand moment 119872

lowast(where lowast = 119891 119887 119903 and 119897)

produced by the rotors can be described by their angularspeed (120596) as 119865

lowast= 119896

11205962 and 119872

lowast= 119896

21205962 respectively

Similarly torques 120591120601 120591120579 and 120591

120595and the thrust force (119865) are

related to angular speed of rotors as

(

119865

120591120601

120591120579

120591120595

) = 119872(

(

1205962

119891

1205962

119903

1205962

119887

1205962

119897

)

)

(1)

where119872 = [

1198961

1198961

11989611198961

0 minus1198971198961

0 1198971198961

1198971198961

0 minus11989711989610

minus11989621198962minus11989621198962

] and 119897 is the length of arm of the

quadrotorEquations describing the kinematics of the quadrotor are

given by

(

119910

) = 119877 (120601 120579 120595)(

119906

V119908

)

(

120601

120579

) = (

1 119904120601119905120579 119888120601119905120579

0 119888120601 minus119904120601

0119904120601

119888120579

119888120601

119888120579

)(

119901

119902

119903

)

(2)

where 119877(120601 120579 120595) = [

119888120579119888120595119904120601119904120579119888120595minus119888120601119904120595119888120601119904120579119888120595+119904120601119904120595

119888120579119904120595119904120601119904120579119904120595+119888120601119888120595119888120601119904120579119904120595minus119904120601119888120595

minus119904120579

119904120601119888120579

119888120601119888120579

] 119888 stands for

cos 119904 stand for sin and 119905 stands for tan Similarly dynamicequations can be derived using Newtons laws of motionwhich are listed in

(

V

) = (

119903V minus 119902119908

119901119908 minus 119903119902

119902119906 minus 119901V) + (

minus119892 sin 120579119892 cos 120579 sin120601119892 cos 120579 cos120601

) +1

119898(

0

0

minus119865

)

(

119902

119903

) =

(((

(

119869119910minus 119869

119911

119869119909

119902119903

119869119911minus 119869

119909

119869119910

119901119903

119869119909minus 119869

119910

119869119911

119901119902

)))

)

+((

(

1

119869119909

120591120601

1

119869119910

120591120579

1

119869119911

120591120595

))

)

(3)

where 119869119909 119869119910 and 119869

119911are the respectivemoment of inertia about

119883 119884 and 119885 axes of the quadrotor For the simulation of thecontroller of quadrotor we have considered 119865 120591

120601 120591120579 and 120591

120595

as the inputs to the system

31 Linearization In order to design a linear controller it isvital that (2) to (3) be simplified to linear ones To do that rollpitch and heading angles are assumed to operate within verysmall angles [5] which leads to the following

(

120601

120579

) =((

(

1

119869119909

120591120601

1

119869119910

120591120579

1

119869119911

120591120595

))

)

= 119892 minus119865

119898

= minus119892120579

V = 119892120601

(4)

4 Controller Design

In order to control attitude (120601 120579 and 120595) altitude (119911) andposition (119909 119910) we propose a control architecture given in

Abstract and Applied Analysis 3

X

Y

Z

(a)

Fl Ff

Fb Fr

120591l

120591b

120591f

120591r(r 120595)

(q 120579)

(p 120601)

u

120596

(b)

Figure 1 Inertial frame (a) and forces and torques acting on the quadrotor (b)

Positioncontroller

Altitudecontroller

Attitudecontroller

Quadrotordynamics

MPC

zref

xref

yref

120595ref

120579ref

120601ref

[x y][120579 120601 120595]

120591120579

120591120601

120591120595

F

z

Figure 2 Block diagram showing the structure of the controllers

Figure 2 where we have utilized MPC to design the threecontrollers The attitude controller generates 120591

120601 120591

120579 and 120591

120595

actuator signals whereas the altitude controller generatesrequired thrust for the system The position controller con-trols position in the 119909 and 119910 directions and generates controlsignals 120579 and 120601 which when combined with the 120595 signal actas reference signals to the attitude controller

In the next section we look at the design of each of thethree controllers

41 Discretization In this section discrete-time state-spaceequations necessary for altitude position and attitude con-trol are derived

411 Altitude Controller The linear equations responsible foraltitude control are

= 119908

= 119892 minus119865

119898

(5)

These two equations can be combined to give the followingsecond order ODE

= 119892 minus119865

119898 (6)

This second order ODE can be simplified to

= 119866 (7)

where 119866 = 119892 minus 119865119898 or 119865 = 119898(119892 minus 119866) Equation (7) can bewritten in state-space form as in the following equation

[

] = [

0 1

0 0] [

119911

] + [

0

1]119866 (8)

Using the forward Euler method and choosing a samplinginterval Δ119879 we can express (8) in discrete form as in

[119911 (119896 + 1)

V119911(119896 + 1)

] = [1 Δ119879

0 1] [

119911 (119896)

V119911(119896)

] + [0

Δ119879]119866 (119896) (9)

The states 119911(119896) and V119911(119896) represent the position and velocity

respectively and we could choose a proper output matrix 119862depending on which state we are going to measure In thispaper we are interested in the position and therefore we willuse the output matrix 119862 = [1 0]

412 Position Controller The equations responsible for posi-tion and velocity control in 119909 direction are

= 119906

= minus119892120579

(10)

These two equations can be combined to give the secondorder ODE

= minus119892120579 (11)

4 Abstract and Applied Analysis

Similarly the equations responsible for position and velocitycontrol in 119910 direction are

119910 = V

V = 119892120601

(12)

which give rise to the second order ODE

119910 = 119892120601 (13)

Equations (11) and (13) can be combined and form a state-space equation such as

[[[

[

119910

119910

]]]

]

=

[[[

[

0 1 0 0

0 0 0 0

0 0 0 1

0 0 0 0

]]]

]

[[[

[

119909

119910

119910

]]]

]

+

[[[

[

0 0

minus119892 0

0 0

0 119892

]]]

]

[120579

120601] (14)

As stated before we can use the forward Euler method toexpress (14) in discrete form Consider

[[[

[

119909 (119896 + 1)

V119909(119896 + 1)

119910 (119896 + 1)

V119910(119896 + 1)

]]]

]

=

[[[

[

1 Δ119879 0 0

0 1 0 0

0 0 1 Δ119879

0 0 0 1

]]]

]

[[[

[

119909 (119896)

V119909(119896)

119910 (119896)

V119910(119896)

]]]

]

+

[[[

[

0 0

minus119892Δ119879 0

0 0

0 119892Δ119879

]]]

]

[120579 (119896)

120601 (119896)]

(15)

The states 119909(119896) and 119910(119896) represent the position while V119909(119896)

and V119910(119896) represent velocity Since we are interested in the

position we will use the output matrix 119862 = [1 0 0 0

0 0 1 0] but

we could have used a different 2 times 4 output matrix if wewere interested in the velocity But it is important to notethat we can not use a 3 times 4 or 4 times 4 as there is no guaranteethat we will be able to control each of the measured outputsindependently with zero steady state errors This is generallythe case for a system with119898 inputs 119902 outputs and 119902 gt 119898 [6]

413 Attitude Controller In attitude control we are interestedin controlling the roll 120601 pitch 120579 and yaw (heading) 120595 suchthat we generate appropriate torque signals responsible forsteering the quadrotor in the desired direction with therequired attitude The equations responsible for roll controlare

120601 = 119901

=1

119869119909

120591120601

(16)

These two equations can be combined to give the secondorder ODE

120601 =1

119869119909

120591120601 (17)

Similarly the equations responsible for pitch are given by120579 = 119902

119902 =1

119869119910

120591120579

(18)

which give rise to the second order ODE

120579 =1

119869119910

120591120579 (19)

Also the equations responsible for heading are expressed as

= 119903

119903 =1

119869119911

120591120595

(20)

which like in roll and pitch give rise to the second orderODE

=1

119869119911

120591120579 (21)

Equations (17) (19) and (21) can be combined and written instate-space form as in

[[[[[[[

[

120601

120601

120579

120579

]]]]]]]

]

=

[[[[[[[

[

0 1 0 0 0 0

0 0 0 0 0 0

0 0 0 1 0 0

0 0 0 0 0 0

0 0 0 0 0 1

0 0 0 0 0 0

]]]]]]]

]

[[[[[[[

[

120601

120601

120579

120579

120595

]]]]]]]

]

+

[[[[[[[

[

0 0 0

119869minus1

1199090 0

0 0 0

0 119869minus1

1199100

0 0 0

0 0 119869minus1

119911

]]]]]]]

]

[

[

120591120601

120591120579

120591120595

]

]

(22)

where 120591120601 120591

120579 and 120591

120595are the torques required to give the

required roll pitch and yaw respectivelyAgain using the forward Eulermethod we express (22) in

discrete form as

[[[[[[[

[

120601 (119896 + 1)

V120601(119896 + 1)

120579 (119896 + 1)

V120579(119896 + 1)

120595 (119896 + 1)

V120595(119896 + 1)

]]]]]]]

]

=

[[[[[[[

[

1 Δ119879 0 0 0 0

0 1 0 0 0 0

0 0 1 Δ119879 0 0

0 0 0 1 0 0

0 0 0 0 1 Δ119879

0 0 0 0 0 1

]]]]]]]

]

[[[[[[[

[

120601 (119896)

V120601(119896)

120579 (119896)

V120579(119896)

120595 (119896)

V120595(119896)

]]]]]]]

]

+

[[[[[[[

[

0 0 0

Δ119879119869minus1

1199090 0

0 0 0

0 Δ119879119869minus1

1199100

0 0 0

0 0 Δ119879119869minus1

119911

]]]]]]]

]

[

[

120591120601(119896)

120591120579(119896)

120591120595(119896)

]

]

(23)

Since we are interested in measuring 120601(119896) 120579(119896) and 120595(119896) wewill use the output matrix 119862 = [

1 0 0 0 0 0

0 0 1 0 0 0

0 0 0 0 1 0

]So far we have formulated the necessary equations used to

build the three controllers Figure 2 shows in block diagramform what we have done so far But that is not the wholestory In the next section we will look at exactly how modelpredictive control is applied to the quadrotor systemusing thediscrete state-space equations formulated in this section

Abstract and Applied Analysis 5

Plant

Observer

MPC

u(t) y(t)

x(t)

Figure 3 Block diagram of SS-MPC

5 Model Predictive Control

One of the many tenets deployed in control of complexsystems like the quadrotor using MPC is to use modelsthat reduce the computation burden which is a necessitywhen it comes to online implementation It is also agreedupon that linear models perform better in this respect thanthe nonlinear models they represent In this and subse-quent sections the performance of a qudrotor controllerdesigned using Laguerre-based MPC (LMPC) is comparedwith that designed using themore common linear state-spaceapproach presented in [7] We will call the linear state-spacemethod SS-MPC

51 Linear State-Space MPC (SS-MPC) Linear state-spaceMPC is modeled using a linear state-space relation andplant constraints are modeled using linear equalities andinequalities When combined with convex quadratic costfunction this implies that the desired control action canbe obtained at each sample interval via the solution of acorresponding quadratic program This is attractive becausethe quadratic programs can be solved efficiently online [7]The general block diagram representing SSMPC is shown inFigure 3

511 Plant Theplant ismodeled by using the following state-space system

119909119896+1

= 119860119909119896+ 119861119906

119896+ 119908

119896

119910119896= 119862119909

119896+ 119863119906

119896+ V

119896

(24)

where 119908119896is the state noise and V

119896is the measurement noise

Both 119908119896and V

119896are assumed to be Gaussian distributed with

zero mean respective covariances of 119882 and 119881 and crosscovariance 119885 This is represented mathematically as

[119908119896

V119896

] sim 119873([0

0] [

119882 119885

119885119879

119881]) (25)

512 Observer Using Gaussian assumptions stated above itis possible to make optimal predictions of state and outputusing the Kalman filter as

119909119896+1|119896

= 119860119909119896|119896minus1

+ 119861119906 + 119870 (119910119896minus 119910

119896|119896minus1)

119910119896|119896minus1

= 119862119909119896|119896minus1

+ 119863119906119896

(26)

The closed loop gain 119870 is found by solving the discrete-timealgebraic Riccati equation (DARE)

119870 = (119860119875119862119879

+ 119885) (119862119875119862119879

+ 119881)minus1

119875 = 119882 + 119860119875119860119879

minus (119860119875119862119879

+ 119885) (119862119875119862119879

+ 119881)minus1

(119885119879

+ 119862119875119860119879

)

(27)

513 Optimal Estimation of State and Output The generalequation representing the optimal estimate of state at instant119895 and written in terms of the initial state 119909

119896+1|119896and future

control inputs 119906119896+119894|119896

is given by

119909119896+119895|119896

= 119860119895minus1

119909119896+1|119896

+

119895minus1

sum

119899=1

119860119895minus119899minus1

119861119906119896+119899|119896

(28)

Similarly the output equation is given by

119910119896+119895|119896

= 119862119860119895minus1

119909119896+1|119896

+ 119862(

119895minus1

sum

119899=1

119860119895minus119899minus1

119861119906119896+119899|119896

) + 119863119906119896+119895|119896

(29)

The vector containing all output vectors can be written as

119884119896=[[

[

119910119896+1|119896

119910119896+119873|119896

]]

]

(30)

while that containing all control actions can be written as

119880119896=[[

[

119906119896+1|119896

119906119896+119873|119896

]]

]

(31)

Therefore we can write 119884119896as

119884119896= 119865119909

119896+1|119896+ Φ119880

119896 (32)

where

119865 =

[[[[[[

[

119862

119862119860

1198621198602

119862119860119873minus1

]]]]]]

]

Φ =

[[[[[[

[

119863

119862119861 119863

119862119860119861 119862119861 119863

119862119860119873minus2

119861 sdot sdot sdot sdot sdot sdot 119862119861 119863

]]]]]]

]

(33)

6 Abstract and Applied Analysis

514 Cost Function The prime goal in MPC is to rejectdisturbances whilst tracking a reference signal But at eachinstant it has to ensure that the control signal is withinreasonable range that is practical for actuation An objectivefunction that combines these two tasks is

119869 (119909119896+1|119896

119880119896) =

1

2

119873

sum

119899=1

1003817100381710038171003817119910119896+119899|119896 minus 119903119896+119899

1003817100381710038171003817

2

119876+1003817100381710038171003817119906119896+119899|119896 minus 119906

119896+119899minus1|119896

1003817100381710038171003817

2

119878

(34)

where both119876 and 119878 are assumed to be symmetric and positivedefinite

52 Laguerre-Based MPC (LMPC) Model predictive controldesigned using Laguerre functions is developed and summa-rized in [2] The author presented this design technique forboth single-variable and multivariable systems Fortunatelythe derivations for the single-variable case and the multi-variable case are very similar and knowing one would giveenough insight into the derivation of the other For brevityonly the single-variable case is presented and it is hoped thatthis is enough to set forth the LMPC design technique

Consider a plant with 119901 inputs 119902 outputs and 119899 states asdescribed by (35) where the subscript119898 stands for model

119909119898(119896 + 1) = 119860

119898119909119898(119896) + 119861

119898119906 (119896) + 119861

119889120596 (119896)

119910 (119896) = 119862119898119909 (119896)

(35)

where 119906(119896) is the input variable 119910(119896) is the process outputand 119909

119898(119896) is the state vector 120596(119896) is the input disturbance

and is assumed to be a sequence of integrated white noiseThe plant described by (35) can be expressed in aug-

mented state-space form [2 6] as

119909 (119896 + 1) = 119860119909 (119896) + 119861Δ119906 (119896) + 119861120598120598 (119896)

119910 (119896) = 119862119909 (119896)

(36)

where 119860 = [119860119898

0119899times119902

119862119898119860119898119868119902times119902

] 119861 = [119861119898

119862119898119861119898

] 119861120598= [

119861119889

119862119898119861119889

] 119862 =

[0119902times119899

119868119902times119902

] and the state 119909(119896) = [Δ119909119898(119896) 119910(119896)]

119879 120598(119896) is azero mean white noise sequence related to the disturbance bythe difference equation 120598(119896) = 120596(119896) minus 120596(119896 minus 1) [6]

521 Design Framework In designing MPC using Laguerrefunctions the control trajectory Δ119880 is expressed using a setof orthonormal functions called Laguerre functions Since thestate and output vectors can also be described in terms ofΔ119880 it follows that they too can be expressed using Laguerrefunctions

At sampling instant 119896119894 the state variable 119909(119896

119894) is available

through measurement The future control trajectory is givenby

Δ119880 = [Δ119906 (119896119894) Δ119906 (119896

119894+ 1) Δ119906 (119896

119894+ 119873

119888minus 1)] (37)

where119873119888is the control horizon

Laguerre functions can approximate the incrementalterms contained inΔ119880The 119911-transfroms of the discrete-timeLaguerre functions are written as

Γ1(119911) =

radic1 minus 1198862

1 minus 119886119911minus1

Γ2(119911) =

radic1 minus 1198862

1 minus 119886119911minus1(

119911minus1

minus 119886

1 minus 119886119911minus1)

Γ119873(119911) =

radic1 minus 1198862

1 minus 119886119911minus1(

119911minus1

minus 119886

1 minus 119886119911minus1)

119873minus1

(38)

In the discrete-time Laguerre network of (38) 119886 is the poleof the discrete-time Laguerre network and 0 le 119886 lt 1 forstability of the network The parameter 119886 is called the scalingfactor and 119873 = 1 2 3 is the number of Laguerre termsused in the network Note that

Γ119896(119911) = Γ

119896minus1(119911) (

119911minus1

minus 119886

1 minus 119886119911minus1) (39)

with the first term as Γ1(119911) = radic1 minus 1198862(1 minus 119886119911

minus1

)Let 119897

119895(119896) be the inverse 119911-transform of the 119895th term in

the discrete Laguerre network and 119871(119896) the vector containingall inverse 119911-transform terms Then taking advantage of (39)successive inverse 119911-transform vectors are obtained throughthe difference equation

119871 (119896 + 1) = 119860119897119871 (119896) (40)

Thematrix119860119897has size119873times119873 and is a function of parameters

119886 and 120573 = 1 minus 1198862 The initial condition is given by

119871 (0)⊤

= radic120573 [1 minus119886 1198862

sdot sdot sdot (minus1)119873minus1

119886119873minus1

] (41)

In the case where119873 = 5 matrix 119860119897and the initial condition

119871(0) are

[[[[[

[

119886 0 0 0 0

120573 119886 0 0 0

minus119886120573 120573 119886 0 0

1198862

120573 minus119886120573 120573 119886 0

minus1198863

120573 1198862

120573 minus119886120573 120573 119886

]]]]]

]

(42)

119871 (0) = radic120573

[[[[[

[

1

minus119886

1198862

minus1198863

1198864

]]]]]

]

(43)

respectivelyAt sampling instant 119896

119894 the control trajectory is described

using Laguerre functions as in

Δ119906 (119896119894+ 119896) =

119873

sum

119895=1

119888119895(119896119894) 119897119895(119896119894) (44)

Abstract and Applied Analysis 7

where 119896 = 0 1 2 119873119901with 119873

119901as the prediction horizon

119873 terms used in the expansion and 119897119895(119896119894) is the inverse 119911-

transform of the 119895th term in the discrete Laguerre networkEquation (44) can be rewritten as

Δ119906 (119896119894+ 119896) = 119871 (119896)

120578 (45)

where 119871(119896) = [1198971(119896) 119897

2(119896) sdot sdot sdot 119897

119873(119896)]

119879 120578 = [11988811198882sdot sdot sdot 119888

119873]119879

and the coefficients 1198881 1198882 119888

119873are obtained from system

dataAt an arbitrary future instant 119898 the state is described

using Laguerre functions as

119909 (119896119894+ 119898 | 119896

119894) = 119860

119898

119909 (119896119894) +

119898minus1

sum

119894=0

119860119898minus119894minus1

119861119871 (119894)119879

120578 (46)

Similarly the output is described as

119910 (119896119894+ 119898 | 119896

119894) = 119862119860

119898

119909 (119896119894) +

119898minus1

sum

119894=0

119862119860119898minus119894minus1

119861119871 (119894)119879

120578 (47)

522 Cost Function The cost function is used to choose theoptimal control trajectory Δ119880 to bring the predicted outputas close as possible to the set-point The cost function

119869 =

119873119901

sum

119898=1

119909 (119896119894+ 119898 | 119896

119894)119879

119876119909 (119896119894+ 119898 | 119896

119894) + 120578

119879

119877119871120578 (48)

minimizes the error between the set-point signal and theoutput in the shortest possible time by carefully tuning theweighting matrices 119876 ge 0 and 119877

119871gt 0

523 Cost Function Minimization The state variable in (46)can be rewritten as

119909 (119896119894+ 119898 | 119896

119894) = 119860

119898

119909 (119896119894) + 120601 (119898)

119879

120578 (49)

where 120601(119898)119879

= sum119898minus1

119894=0119860119898minus119894minus1

119861119871(119894)119879

By substituting (49) into (48) and performing the partialderivative 120597119869120597120578 = 0 the Laguerre coefficients vector is foundto be

120578 = minusΩminus1

Ψ119909 (119896119894) (50)

withΩ = sum119873119901

119898=1120601(119898)119876120601(119898)

119879

+ 119877119871and Ψ = 120601(119898)119876119860

119898

524 Receding Horizon Control In receding horizon control(RHC) only the first term in Δ119880 that is Δ119906(119896

119894) is imple-

mented at instant 119896119894 The rest of the sequence is ignored

Only the most recent measurement is taken to form the statevector for calculation of the control signal This procedure isrepeated in real-time to give the receding horizon control law[6 8]

525 Stability In stability analysis we make use of the tech-nique of exponential data weighting originated by Andersonand Moore [9] and applied to MPC in [6] More specifically

we will concentrate on the discrete exponential factor 119890120582Δ119905where Δ119905 is the sampling interval and the discrete weightsform a geometric sequence 120572119895 119895 = 0 1 2

The proposed cost function is similar to the one usedin linear quadratic regulator (LQR) systems but with theinclusion of discrete weights

119869119908=

119873119901

sum

119895=1

120572minus2119895

119909 (119896119894+ 119895 | 119896

119894)119879

119876119909 (119896119894+ 119895 | 119896

119894)

+

119873119901

sum

119895=0

120572minus2119895

Δ119906 (119896119894+ 119895)

119879

119877Δ119906 (119896119894+ 119895)

(51)

For 120572 gt 1 the exponential weights 120572minus2119895 119895 = 1 2 3 119873119901

put more emphasis on the current state 119909(119896119894+ 119895 | 119896

119894) and less

emphasis on subsequent future statesThe exponentially weighted cost function can be

expressed more compactly as

119869119908=

119873119901

sum

119895=1

119909 (119896119894+ 119895 | 119896

119894)119879

119876119909 (119896119894+ 119895 | 119896

119894)

+

119873119901

sum

119895=0

Δ (119896119894+ 119895)

119879

119877Δ (119896119894+ 119895)

(52)

with state equation119909 (119896 + 1) = 119860

120572119909 (119896) + 119861

120572Δ (119896) (53)

and 119860120572= 119860120572 and 119861

120572= 119861120572

With 119876 ge 0 119877 gt 0 and 119873119901

rarr infin minimizing thecost function 119869

119908is equivalent to the DLQR problem which is

solved using algebraic Riccati equation (54)Thepair (119860120572 119861

120572)

is assumed to be controllable and (119860120572 119862) observable with

119876 = 119862119879

119862 Then there is a stabilizing state feedback controlgain matrix119870

119908

119870119908= (119877 + 120572

minus2

119861119879

119875119908119861)

minus1

120572minus2

119861119879

119875119908119860

119860119879

120572[119875

119908minus 119875

119908

119861

120572(119877 +

119861119879

120572119875119908

119861

120572)

minus1

119861119879

120572119875119908]119860

120572+ 119876 minus 119875

119908= 0

(54)that gives a stable closed loop system with all its eigenvaluesinside the unit circle and the the closed loop system beingdescribed by

119909 (119896119894+ 119895 + 1 | 119896

119894) = 120572

minus1

(119860 minus 119861119870119908) 119909 (119896

119894+ 119895 | 119896

119894) (55)

From (55) the transformed system has all its eigenvaluesinside the unit circle by taking119873

119901rarr infin So

120572minus1 1003816100381610038161003816120582max (119860 minus 119861119870

119908)1003816100381610038161003816 lt 1 (56)

which gives1003816100381610038161003816120582max (119860 minus 119861119870

119908)1003816100381610038161003816 lt 120572 (57)

Thus by choosing 120572 gt 1 there is a great chance that the systemwill be stable Several simulations on the quadrotor systemindicate that a choice of 120572 slightly greater than unity makesthe system stable almost all the time

8 Abstract and Applied Analysis

Table 1

Parameter ValueMass119898 07 kgLength 119897 0275m119869119909

01063 kgsdotm2

119869119910

01063 kgsdotm2

119869119911

02122 kgsdotm2

Table 2

Control horizon119873119888

119873 Required 119886

10 5 0606515 5 0716520 5 0778825 5 0818750 5 09048

6 Simulation Parameters and Results

In order to illustrate the controllerrsquos stability we will checkif the eigenvalues of each of the three individual controllersappear inside a unit circle Andwewill use a trajectory in a 3Dplane to check the overall controllerrsquos ability to track a desiredtrajectory

Table 1 shows the parameters of the quadrotor used insimulation

61 Stability Analysis In this section we look at the locationof eigenvalues of LMPC and check if they fall within the unitcircle for stability of the system We also compare them tothose obtained from the optimal DLQR system To ensurestability as explained in Section 525 we use 120572 = 12

By looking at Figure 4 we note that all the eigenvaluesappear inside the unit circle as required Also the eigenvaluesobtained from LMPC closely match with those of the optimalDLQRThis not only shows the system is stable but also showsthe controllers perform optimally

62 Trajectory Tracking In this section we look at theperformance of LMPC when used to track a 3D trajectoryAlso LMPC is compared to SS-MPC and individual statetrajectories are observed The starting point of the trajectoryis (119909 119910 119911) = (0 0 0) and final point is (119909 119910 119911) = (5 5 10)Parameter 119886 = 08187 while119873 = 5 See Figure 5

Clearly both LMPC and SS-MPC track the desired tra-jectory very well See Figures 5 6 and 7 However LMPCperforms better than SS-MPC in that it requires only fiveparameters (119873 = 5) to capture the control trajectorycompared to SS-MPCrsquosminimumof 25 (119873

119888= 25) parameters

(see Table 2 for relationship of119873 and119873119888with 119886 = 08187)

63 Control Horizon in Relation to 119886 and 119873 The controlhorizon (119873

119888) is related to the parameters 119886 and119873 [2] by

119886 asymp 119890minus119873119873

119888 (58)

minus1 minus08 minus06 minus04 minus02 0 02 04 06 08 1minus1

minus08

minus06

minus04

minus02

0

02

04

06

08

1

Real

Imag

inar

yLMPCDLQR

Figure 4 Eigenvalues for DLQR and LMPC in altitude control

0 1 2 3 4 5 6

02

46

0

2

4

6

8

10

xy

z

DesiredSS-MPCLMPC

Figure 5 Tracking a 3D trajectory

631 Constant 119873 Using (58) and choosing a constantparameter119873 = 5 we get Table 2

Thus we can increase the control horizon by increasingthe parameter 119886 without necessarily changing the order119873

632 Constant Control Horizon 119873119888 Assuming we want to

achieve a control horizon of 30 we choose one parameterusually 119873 because it is an integer and directly defines theorder of the discrete Laguerre networkTherefater we simplyuse (58) to find the corresponding scaling factor 119886 as shownin Table 3

Abstract and Applied Analysis 9

0 500 1000 1500 2000 2500 3000 3500 40000

1

2

3

4

5

6

Time (ms)

x p

ositi

on

DesiredSS-MPCLMPC

(a)

0 500 1000 1500 2000 2500 3000 3500 4000Time (ms)

0

1

2

3

4

5

6

y p

ositi

on

DesiredSS-MPCLMPC

(b)

Figure 6 Tracking 119909 (a) and 119910 in (b)

2

4

6

8

10

12

00

500 1000 1500 2000 2500 3000 3500 4000Time (ms)

z p

ositi

on (m

)

DesiredSS-MPCLMPC

(a)

0

01

02

03

04

05

0 500 1000 1500 2000 2500 3000 3500 4000Time (ms)

Hea

ding

angl

e120595

DesiredSS-MPCLMPC

(b)

Figure 7 Altitude (119911) (a) and heading angle (120595) (b)

Table 3

Target control horizon119873119888

Chosen119873 Required 119886

30 1 0967230 3 0904830 5 0846530 7 0791930 9 07408

Figures 8 9 10 11 12 and 13 compare two LMPC designsboth of which yield a control horizon of 30 One designuses 119873 = 1 and the other 119873 = 9 Thus we can choose aLaguerre network with lower number of terms119873 (that gives

lower computation burden) but with a larger scaling factor119886 to achieve the same control horizon The computationalcost is lower if a smaller number of parameters are usedFor 119873 = 1 only one Laguerre term is used to capture thecontrol trajectory while119873 = 9 requires nine Laguerre termsto capture the same control trajectory

7 Conclusion

This paper has presented a solution to stability and trajectorytracking of quadrotor systems using a model predictivecontroller designed by using a special type of orthonor-mal functions called Laguerre functions A quadratic cost

10 Abstract and Applied Analysis

0 05 1 15 2 25 3 35 40

1

2

3

4

5

6

Time (s)

x (m

)

DesiredLMPC

Figure 8 119909 trajectory119873 = 1

0 05 1 15 2 25 3 35 40

1

2

3

4

5

6

Time (s)

x (m

)

DesiredLMPC

Figure 9 119909 trajectory119873 = 9

0 05 1 15 2 25 3 35 40

1

2

3

4

5

6

Time (s)

y (m

)

DesiredLMPC

Figure 10 119910 trajectory119873 = 1

0 05 1 15 2 25 3 35 40

1

2

3

4

5

6

Time (s)

y (m

)

DesiredLMPC

Figure 11 119910 trajectory119873 = 9

0

2

4

6

8

10A

ltitu

de (m

)

Altitude

0 05 1 15 2 25 3 35 4Time (s)

DesiredLMPC

Figure 12 119911 trajectory119873 = 1

0

2

4

6

8

10

Alti

tude

(m)

Altitude

0 05 1 15 2 25 3 35 4Time (s)

DesiredLMPC

Figure 13 119911 trajectory119873 = 9

Abstract and Applied Analysis 11

function similar to that used in linear quadratic regulator(LQR) has been used In stability analysis LMPC has beencompared to the optimal DLQR system whereas in trajectorytracking LMPC has been compared to a popular linear state-space MPC desgin technique in which plant constraints aremodeled using linear equalities and inequalities The resultsfrom the simulations indicate that the controller performsvery well and is considered feasible With this perceivedfeasibility LMPCoffers the added advantage that it can handlesystems where rapid sampling and more complicated processdynamics are required [5 10] By selecting appropriate valuesof 119886 and119873 LMPC reduces the number of parameters requiredfor accurate prediction when using the traditional (MPC)approach This is a big advantage in that with the reducednumber of parameters online implementation might bepossible where the traditional MPC would have failed

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper

Acknowledgment

This work was supported by the National Research Foun-dation of Korea (NRF) grant funded by the Koreangovernment (MEST) (no 2013R1A2A2A01068127 and no2013R1A1A2A10009458)

References

[1] J M Maciejowski Predictive Control with Constraints PrenticeHall New York NY USA 1st edition 2002

[2] L Wang ldquoDiscrete time model predictive control design usingLaguerre functionsrdquo in Proceedings of the American ControlConference pp 2430ndash2435 Arlington Va USA June 2001

[3] K Alexis G Nikolakopoulos and A Tzes ldquoExperimentalmodel predictive attitude tracking control of a quadrotorhelicopter subject to wind-gustsrdquo in Proceedings of the 18thMediterranean Conference on Control amp Automation (MED rsquo10)pp 1461ndash1466 IEEE Marrakech Morocco June 2010

[4] G V RaffoM G Ortega and F R Rubio ldquoMPCwith nonlinear119867infin

control for path tracking of a quad-rotor helicopterrdquo inProceedings of the 17th World Congress International Federationof Automatic Control (IFAC rsquo08) July 2008

[5] A M Singh D J Lee D P Hong and K T Chong ldquoSucces-sive loop closure based controller design for an autonomousquadrotor vehiclerdquo Applied Mechanics and Materials vol 483pp 361ndash367 2014

[6] L Wang Model Predictive Control Design and ImplementationUsing MATLAB Advances in Industrial Control Springer NewYork NY USA 1st edition 2009

[7] A G Wills ldquoTechnical report EE04025-Notes on linear modelpredictive controlrdquo December 2004

[8] Y Gao C G Lee and K T Chong ldquoReceding horizon trackingcontrol for wheeled mobile robots with time-delayrdquo Journal ofMechanical Science and Technology vol 22 no 12 pp 2403ndash2416 2008

[9] B D O Anderson and J B Moore Linear Optimal ControlPrentice-Hall 1971

[10] J A Rossiter and L Wang ldquoExploiting Laguerre functions toimprove the feasibilityperformance compromise in MPCrdquo inProceedings of the 47th IEEE Conference onDecision and Control(CDC rsquo08) pp 4737ndash4742 December 2008

Submit your manuscripts athttpwwwhindawicom

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical Problems in Engineering

Hindawi Publishing Corporationhttpwwwhindawicom

Differential EquationsInternational Journal of

Volume 2014

Applied MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

OptimizationJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Operations ResearchAdvances in

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Function Spaces

Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of Mathematics and Mathematical Sciences

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Algebra

Discrete Dynamics in Nature and Society

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Decision SciencesAdvances in

Discrete MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Stochastic AnalysisInternational Journal of

Page 3: Research Article Trajectory Tracking and ... - Hindawi

Abstract and Applied Analysis 3

X

Y

Z

(a)

Fl Ff

Fb Fr

120591l

120591b

120591f

120591r(r 120595)

(q 120579)

(p 120601)

u

120596

(b)

Figure 1 Inertial frame (a) and forces and torques acting on the quadrotor (b)

Positioncontroller

Altitudecontroller

Attitudecontroller

Quadrotordynamics

MPC

zref

xref

yref

120595ref

120579ref

120601ref

[x y][120579 120601 120595]

120591120579

120591120601

120591120595

F

z

Figure 2 Block diagram showing the structure of the controllers

Figure 2 where we have utilized MPC to design the threecontrollers The attitude controller generates 120591

120601 120591

120579 and 120591

120595

actuator signals whereas the altitude controller generatesrequired thrust for the system The position controller con-trols position in the 119909 and 119910 directions and generates controlsignals 120579 and 120601 which when combined with the 120595 signal actas reference signals to the attitude controller

In the next section we look at the design of each of thethree controllers

41 Discretization In this section discrete-time state-spaceequations necessary for altitude position and attitude con-trol are derived

411 Altitude Controller The linear equations responsible foraltitude control are

= 119908

= 119892 minus119865

119898

(5)

These two equations can be combined to give the followingsecond order ODE

= 119892 minus119865

119898 (6)

This second order ODE can be simplified to

= 119866 (7)

where 119866 = 119892 minus 119865119898 or 119865 = 119898(119892 minus 119866) Equation (7) can bewritten in state-space form as in the following equation

[

] = [

0 1

0 0] [

119911

] + [

0

1]119866 (8)

Using the forward Euler method and choosing a samplinginterval Δ119879 we can express (8) in discrete form as in

[119911 (119896 + 1)

V119911(119896 + 1)

] = [1 Δ119879

0 1] [

119911 (119896)

V119911(119896)

] + [0

Δ119879]119866 (119896) (9)

The states 119911(119896) and V119911(119896) represent the position and velocity

respectively and we could choose a proper output matrix 119862depending on which state we are going to measure In thispaper we are interested in the position and therefore we willuse the output matrix 119862 = [1 0]

412 Position Controller The equations responsible for posi-tion and velocity control in 119909 direction are

= 119906

= minus119892120579

(10)

These two equations can be combined to give the secondorder ODE

= minus119892120579 (11)

4 Abstract and Applied Analysis

Similarly the equations responsible for position and velocitycontrol in 119910 direction are

119910 = V

V = 119892120601

(12)

which give rise to the second order ODE

119910 = 119892120601 (13)

Equations (11) and (13) can be combined and form a state-space equation such as

[[[

[

119910

119910

]]]

]

=

[[[

[

0 1 0 0

0 0 0 0

0 0 0 1

0 0 0 0

]]]

]

[[[

[

119909

119910

119910

]]]

]

+

[[[

[

0 0

minus119892 0

0 0

0 119892

]]]

]

[120579

120601] (14)

As stated before we can use the forward Euler method toexpress (14) in discrete form Consider

[[[

[

119909 (119896 + 1)

V119909(119896 + 1)

119910 (119896 + 1)

V119910(119896 + 1)

]]]

]

=

[[[

[

1 Δ119879 0 0

0 1 0 0

0 0 1 Δ119879

0 0 0 1

]]]

]

[[[

[

119909 (119896)

V119909(119896)

119910 (119896)

V119910(119896)

]]]

]

+

[[[

[

0 0

minus119892Δ119879 0

0 0

0 119892Δ119879

]]]

]

[120579 (119896)

120601 (119896)]

(15)

The states 119909(119896) and 119910(119896) represent the position while V119909(119896)

and V119910(119896) represent velocity Since we are interested in the

position we will use the output matrix 119862 = [1 0 0 0

0 0 1 0] but

we could have used a different 2 times 4 output matrix if wewere interested in the velocity But it is important to notethat we can not use a 3 times 4 or 4 times 4 as there is no guaranteethat we will be able to control each of the measured outputsindependently with zero steady state errors This is generallythe case for a system with119898 inputs 119902 outputs and 119902 gt 119898 [6]

413 Attitude Controller In attitude control we are interestedin controlling the roll 120601 pitch 120579 and yaw (heading) 120595 suchthat we generate appropriate torque signals responsible forsteering the quadrotor in the desired direction with therequired attitude The equations responsible for roll controlare

120601 = 119901

=1

119869119909

120591120601

(16)

These two equations can be combined to give the secondorder ODE

120601 =1

119869119909

120591120601 (17)

Similarly the equations responsible for pitch are given by120579 = 119902

119902 =1

119869119910

120591120579

(18)

which give rise to the second order ODE

120579 =1

119869119910

120591120579 (19)

Also the equations responsible for heading are expressed as

= 119903

119903 =1

119869119911

120591120595

(20)

which like in roll and pitch give rise to the second orderODE

=1

119869119911

120591120579 (21)

Equations (17) (19) and (21) can be combined and written instate-space form as in

[[[[[[[

[

120601

120601

120579

120579

]]]]]]]

]

=

[[[[[[[

[

0 1 0 0 0 0

0 0 0 0 0 0

0 0 0 1 0 0

0 0 0 0 0 0

0 0 0 0 0 1

0 0 0 0 0 0

]]]]]]]

]

[[[[[[[

[

120601

120601

120579

120579

120595

]]]]]]]

]

+

[[[[[[[

[

0 0 0

119869minus1

1199090 0

0 0 0

0 119869minus1

1199100

0 0 0

0 0 119869minus1

119911

]]]]]]]

]

[

[

120591120601

120591120579

120591120595

]

]

(22)

where 120591120601 120591

120579 and 120591

120595are the torques required to give the

required roll pitch and yaw respectivelyAgain using the forward Eulermethod we express (22) in

discrete form as

[[[[[[[

[

120601 (119896 + 1)

V120601(119896 + 1)

120579 (119896 + 1)

V120579(119896 + 1)

120595 (119896 + 1)

V120595(119896 + 1)

]]]]]]]

]

=

[[[[[[[

[

1 Δ119879 0 0 0 0

0 1 0 0 0 0

0 0 1 Δ119879 0 0

0 0 0 1 0 0

0 0 0 0 1 Δ119879

0 0 0 0 0 1

]]]]]]]

]

[[[[[[[

[

120601 (119896)

V120601(119896)

120579 (119896)

V120579(119896)

120595 (119896)

V120595(119896)

]]]]]]]

]

+

[[[[[[[

[

0 0 0

Δ119879119869minus1

1199090 0

0 0 0

0 Δ119879119869minus1

1199100

0 0 0

0 0 Δ119879119869minus1

119911

]]]]]]]

]

[

[

120591120601(119896)

120591120579(119896)

120591120595(119896)

]

]

(23)

Since we are interested in measuring 120601(119896) 120579(119896) and 120595(119896) wewill use the output matrix 119862 = [

1 0 0 0 0 0

0 0 1 0 0 0

0 0 0 0 1 0

]So far we have formulated the necessary equations used to

build the three controllers Figure 2 shows in block diagramform what we have done so far But that is not the wholestory In the next section we will look at exactly how modelpredictive control is applied to the quadrotor systemusing thediscrete state-space equations formulated in this section

Abstract and Applied Analysis 5

Plant

Observer

MPC

u(t) y(t)

x(t)

Figure 3 Block diagram of SS-MPC

5 Model Predictive Control

One of the many tenets deployed in control of complexsystems like the quadrotor using MPC is to use modelsthat reduce the computation burden which is a necessitywhen it comes to online implementation It is also agreedupon that linear models perform better in this respect thanthe nonlinear models they represent In this and subse-quent sections the performance of a qudrotor controllerdesigned using Laguerre-based MPC (LMPC) is comparedwith that designed using themore common linear state-spaceapproach presented in [7] We will call the linear state-spacemethod SS-MPC

51 Linear State-Space MPC (SS-MPC) Linear state-spaceMPC is modeled using a linear state-space relation andplant constraints are modeled using linear equalities andinequalities When combined with convex quadratic costfunction this implies that the desired control action canbe obtained at each sample interval via the solution of acorresponding quadratic program This is attractive becausethe quadratic programs can be solved efficiently online [7]The general block diagram representing SSMPC is shown inFigure 3

511 Plant Theplant ismodeled by using the following state-space system

119909119896+1

= 119860119909119896+ 119861119906

119896+ 119908

119896

119910119896= 119862119909

119896+ 119863119906

119896+ V

119896

(24)

where 119908119896is the state noise and V

119896is the measurement noise

Both 119908119896and V

119896are assumed to be Gaussian distributed with

zero mean respective covariances of 119882 and 119881 and crosscovariance 119885 This is represented mathematically as

[119908119896

V119896

] sim 119873([0

0] [

119882 119885

119885119879

119881]) (25)

512 Observer Using Gaussian assumptions stated above itis possible to make optimal predictions of state and outputusing the Kalman filter as

119909119896+1|119896

= 119860119909119896|119896minus1

+ 119861119906 + 119870 (119910119896minus 119910

119896|119896minus1)

119910119896|119896minus1

= 119862119909119896|119896minus1

+ 119863119906119896

(26)

The closed loop gain 119870 is found by solving the discrete-timealgebraic Riccati equation (DARE)

119870 = (119860119875119862119879

+ 119885) (119862119875119862119879

+ 119881)minus1

119875 = 119882 + 119860119875119860119879

minus (119860119875119862119879

+ 119885) (119862119875119862119879

+ 119881)minus1

(119885119879

+ 119862119875119860119879

)

(27)

513 Optimal Estimation of State and Output The generalequation representing the optimal estimate of state at instant119895 and written in terms of the initial state 119909

119896+1|119896and future

control inputs 119906119896+119894|119896

is given by

119909119896+119895|119896

= 119860119895minus1

119909119896+1|119896

+

119895minus1

sum

119899=1

119860119895minus119899minus1

119861119906119896+119899|119896

(28)

Similarly the output equation is given by

119910119896+119895|119896

= 119862119860119895minus1

119909119896+1|119896

+ 119862(

119895minus1

sum

119899=1

119860119895minus119899minus1

119861119906119896+119899|119896

) + 119863119906119896+119895|119896

(29)

The vector containing all output vectors can be written as

119884119896=[[

[

119910119896+1|119896

119910119896+119873|119896

]]

]

(30)

while that containing all control actions can be written as

119880119896=[[

[

119906119896+1|119896

119906119896+119873|119896

]]

]

(31)

Therefore we can write 119884119896as

119884119896= 119865119909

119896+1|119896+ Φ119880

119896 (32)

where

119865 =

[[[[[[

[

119862

119862119860

1198621198602

119862119860119873minus1

]]]]]]

]

Φ =

[[[[[[

[

119863

119862119861 119863

119862119860119861 119862119861 119863

119862119860119873minus2

119861 sdot sdot sdot sdot sdot sdot 119862119861 119863

]]]]]]

]

(33)

6 Abstract and Applied Analysis

514 Cost Function The prime goal in MPC is to rejectdisturbances whilst tracking a reference signal But at eachinstant it has to ensure that the control signal is withinreasonable range that is practical for actuation An objectivefunction that combines these two tasks is

119869 (119909119896+1|119896

119880119896) =

1

2

119873

sum

119899=1

1003817100381710038171003817119910119896+119899|119896 minus 119903119896+119899

1003817100381710038171003817

2

119876+1003817100381710038171003817119906119896+119899|119896 minus 119906

119896+119899minus1|119896

1003817100381710038171003817

2

119878

(34)

where both119876 and 119878 are assumed to be symmetric and positivedefinite

52 Laguerre-Based MPC (LMPC) Model predictive controldesigned using Laguerre functions is developed and summa-rized in [2] The author presented this design technique forboth single-variable and multivariable systems Fortunatelythe derivations for the single-variable case and the multi-variable case are very similar and knowing one would giveenough insight into the derivation of the other For brevityonly the single-variable case is presented and it is hoped thatthis is enough to set forth the LMPC design technique

Consider a plant with 119901 inputs 119902 outputs and 119899 states asdescribed by (35) where the subscript119898 stands for model

119909119898(119896 + 1) = 119860

119898119909119898(119896) + 119861

119898119906 (119896) + 119861

119889120596 (119896)

119910 (119896) = 119862119898119909 (119896)

(35)

where 119906(119896) is the input variable 119910(119896) is the process outputand 119909

119898(119896) is the state vector 120596(119896) is the input disturbance

and is assumed to be a sequence of integrated white noiseThe plant described by (35) can be expressed in aug-

mented state-space form [2 6] as

119909 (119896 + 1) = 119860119909 (119896) + 119861Δ119906 (119896) + 119861120598120598 (119896)

119910 (119896) = 119862119909 (119896)

(36)

where 119860 = [119860119898

0119899times119902

119862119898119860119898119868119902times119902

] 119861 = [119861119898

119862119898119861119898

] 119861120598= [

119861119889

119862119898119861119889

] 119862 =

[0119902times119899

119868119902times119902

] and the state 119909(119896) = [Δ119909119898(119896) 119910(119896)]

119879 120598(119896) is azero mean white noise sequence related to the disturbance bythe difference equation 120598(119896) = 120596(119896) minus 120596(119896 minus 1) [6]

521 Design Framework In designing MPC using Laguerrefunctions the control trajectory Δ119880 is expressed using a setof orthonormal functions called Laguerre functions Since thestate and output vectors can also be described in terms ofΔ119880 it follows that they too can be expressed using Laguerrefunctions

At sampling instant 119896119894 the state variable 119909(119896

119894) is available

through measurement The future control trajectory is givenby

Δ119880 = [Δ119906 (119896119894) Δ119906 (119896

119894+ 1) Δ119906 (119896

119894+ 119873

119888minus 1)] (37)

where119873119888is the control horizon

Laguerre functions can approximate the incrementalterms contained inΔ119880The 119911-transfroms of the discrete-timeLaguerre functions are written as

Γ1(119911) =

radic1 minus 1198862

1 minus 119886119911minus1

Γ2(119911) =

radic1 minus 1198862

1 minus 119886119911minus1(

119911minus1

minus 119886

1 minus 119886119911minus1)

Γ119873(119911) =

radic1 minus 1198862

1 minus 119886119911minus1(

119911minus1

minus 119886

1 minus 119886119911minus1)

119873minus1

(38)

In the discrete-time Laguerre network of (38) 119886 is the poleof the discrete-time Laguerre network and 0 le 119886 lt 1 forstability of the network The parameter 119886 is called the scalingfactor and 119873 = 1 2 3 is the number of Laguerre termsused in the network Note that

Γ119896(119911) = Γ

119896minus1(119911) (

119911minus1

minus 119886

1 minus 119886119911minus1) (39)

with the first term as Γ1(119911) = radic1 minus 1198862(1 minus 119886119911

minus1

)Let 119897

119895(119896) be the inverse 119911-transform of the 119895th term in

the discrete Laguerre network and 119871(119896) the vector containingall inverse 119911-transform terms Then taking advantage of (39)successive inverse 119911-transform vectors are obtained throughthe difference equation

119871 (119896 + 1) = 119860119897119871 (119896) (40)

Thematrix119860119897has size119873times119873 and is a function of parameters

119886 and 120573 = 1 minus 1198862 The initial condition is given by

119871 (0)⊤

= radic120573 [1 minus119886 1198862

sdot sdot sdot (minus1)119873minus1

119886119873minus1

] (41)

In the case where119873 = 5 matrix 119860119897and the initial condition

119871(0) are

[[[[[

[

119886 0 0 0 0

120573 119886 0 0 0

minus119886120573 120573 119886 0 0

1198862

120573 minus119886120573 120573 119886 0

minus1198863

120573 1198862

120573 minus119886120573 120573 119886

]]]]]

]

(42)

119871 (0) = radic120573

[[[[[

[

1

minus119886

1198862

minus1198863

1198864

]]]]]

]

(43)

respectivelyAt sampling instant 119896

119894 the control trajectory is described

using Laguerre functions as in

Δ119906 (119896119894+ 119896) =

119873

sum

119895=1

119888119895(119896119894) 119897119895(119896119894) (44)

Abstract and Applied Analysis 7

where 119896 = 0 1 2 119873119901with 119873

119901as the prediction horizon

119873 terms used in the expansion and 119897119895(119896119894) is the inverse 119911-

transform of the 119895th term in the discrete Laguerre networkEquation (44) can be rewritten as

Δ119906 (119896119894+ 119896) = 119871 (119896)

120578 (45)

where 119871(119896) = [1198971(119896) 119897

2(119896) sdot sdot sdot 119897

119873(119896)]

119879 120578 = [11988811198882sdot sdot sdot 119888

119873]119879

and the coefficients 1198881 1198882 119888

119873are obtained from system

dataAt an arbitrary future instant 119898 the state is described

using Laguerre functions as

119909 (119896119894+ 119898 | 119896

119894) = 119860

119898

119909 (119896119894) +

119898minus1

sum

119894=0

119860119898minus119894minus1

119861119871 (119894)119879

120578 (46)

Similarly the output is described as

119910 (119896119894+ 119898 | 119896

119894) = 119862119860

119898

119909 (119896119894) +

119898minus1

sum

119894=0

119862119860119898minus119894minus1

119861119871 (119894)119879

120578 (47)

522 Cost Function The cost function is used to choose theoptimal control trajectory Δ119880 to bring the predicted outputas close as possible to the set-point The cost function

119869 =

119873119901

sum

119898=1

119909 (119896119894+ 119898 | 119896

119894)119879

119876119909 (119896119894+ 119898 | 119896

119894) + 120578

119879

119877119871120578 (48)

minimizes the error between the set-point signal and theoutput in the shortest possible time by carefully tuning theweighting matrices 119876 ge 0 and 119877

119871gt 0

523 Cost Function Minimization The state variable in (46)can be rewritten as

119909 (119896119894+ 119898 | 119896

119894) = 119860

119898

119909 (119896119894) + 120601 (119898)

119879

120578 (49)

where 120601(119898)119879

= sum119898minus1

119894=0119860119898minus119894minus1

119861119871(119894)119879

By substituting (49) into (48) and performing the partialderivative 120597119869120597120578 = 0 the Laguerre coefficients vector is foundto be

120578 = minusΩminus1

Ψ119909 (119896119894) (50)

withΩ = sum119873119901

119898=1120601(119898)119876120601(119898)

119879

+ 119877119871and Ψ = 120601(119898)119876119860

119898

524 Receding Horizon Control In receding horizon control(RHC) only the first term in Δ119880 that is Δ119906(119896

119894) is imple-

mented at instant 119896119894 The rest of the sequence is ignored

Only the most recent measurement is taken to form the statevector for calculation of the control signal This procedure isrepeated in real-time to give the receding horizon control law[6 8]

525 Stability In stability analysis we make use of the tech-nique of exponential data weighting originated by Andersonand Moore [9] and applied to MPC in [6] More specifically

we will concentrate on the discrete exponential factor 119890120582Δ119905where Δ119905 is the sampling interval and the discrete weightsform a geometric sequence 120572119895 119895 = 0 1 2

The proposed cost function is similar to the one usedin linear quadratic regulator (LQR) systems but with theinclusion of discrete weights

119869119908=

119873119901

sum

119895=1

120572minus2119895

119909 (119896119894+ 119895 | 119896

119894)119879

119876119909 (119896119894+ 119895 | 119896

119894)

+

119873119901

sum

119895=0

120572minus2119895

Δ119906 (119896119894+ 119895)

119879

119877Δ119906 (119896119894+ 119895)

(51)

For 120572 gt 1 the exponential weights 120572minus2119895 119895 = 1 2 3 119873119901

put more emphasis on the current state 119909(119896119894+ 119895 | 119896

119894) and less

emphasis on subsequent future statesThe exponentially weighted cost function can be

expressed more compactly as

119869119908=

119873119901

sum

119895=1

119909 (119896119894+ 119895 | 119896

119894)119879

119876119909 (119896119894+ 119895 | 119896

119894)

+

119873119901

sum

119895=0

Δ (119896119894+ 119895)

119879

119877Δ (119896119894+ 119895)

(52)

with state equation119909 (119896 + 1) = 119860

120572119909 (119896) + 119861

120572Δ (119896) (53)

and 119860120572= 119860120572 and 119861

120572= 119861120572

With 119876 ge 0 119877 gt 0 and 119873119901

rarr infin minimizing thecost function 119869

119908is equivalent to the DLQR problem which is

solved using algebraic Riccati equation (54)Thepair (119860120572 119861

120572)

is assumed to be controllable and (119860120572 119862) observable with

119876 = 119862119879

119862 Then there is a stabilizing state feedback controlgain matrix119870

119908

119870119908= (119877 + 120572

minus2

119861119879

119875119908119861)

minus1

120572minus2

119861119879

119875119908119860

119860119879

120572[119875

119908minus 119875

119908

119861

120572(119877 +

119861119879

120572119875119908

119861

120572)

minus1

119861119879

120572119875119908]119860

120572+ 119876 minus 119875

119908= 0

(54)that gives a stable closed loop system with all its eigenvaluesinside the unit circle and the the closed loop system beingdescribed by

119909 (119896119894+ 119895 + 1 | 119896

119894) = 120572

minus1

(119860 minus 119861119870119908) 119909 (119896

119894+ 119895 | 119896

119894) (55)

From (55) the transformed system has all its eigenvaluesinside the unit circle by taking119873

119901rarr infin So

120572minus1 1003816100381610038161003816120582max (119860 minus 119861119870

119908)1003816100381610038161003816 lt 1 (56)

which gives1003816100381610038161003816120582max (119860 minus 119861119870

119908)1003816100381610038161003816 lt 120572 (57)

Thus by choosing 120572 gt 1 there is a great chance that the systemwill be stable Several simulations on the quadrotor systemindicate that a choice of 120572 slightly greater than unity makesthe system stable almost all the time

8 Abstract and Applied Analysis

Table 1

Parameter ValueMass119898 07 kgLength 119897 0275m119869119909

01063 kgsdotm2

119869119910

01063 kgsdotm2

119869119911

02122 kgsdotm2

Table 2

Control horizon119873119888

119873 Required 119886

10 5 0606515 5 0716520 5 0778825 5 0818750 5 09048

6 Simulation Parameters and Results

In order to illustrate the controllerrsquos stability we will checkif the eigenvalues of each of the three individual controllersappear inside a unit circle Andwewill use a trajectory in a 3Dplane to check the overall controllerrsquos ability to track a desiredtrajectory

Table 1 shows the parameters of the quadrotor used insimulation

61 Stability Analysis In this section we look at the locationof eigenvalues of LMPC and check if they fall within the unitcircle for stability of the system We also compare them tothose obtained from the optimal DLQR system To ensurestability as explained in Section 525 we use 120572 = 12

By looking at Figure 4 we note that all the eigenvaluesappear inside the unit circle as required Also the eigenvaluesobtained from LMPC closely match with those of the optimalDLQRThis not only shows the system is stable but also showsthe controllers perform optimally

62 Trajectory Tracking In this section we look at theperformance of LMPC when used to track a 3D trajectoryAlso LMPC is compared to SS-MPC and individual statetrajectories are observed The starting point of the trajectoryis (119909 119910 119911) = (0 0 0) and final point is (119909 119910 119911) = (5 5 10)Parameter 119886 = 08187 while119873 = 5 See Figure 5

Clearly both LMPC and SS-MPC track the desired tra-jectory very well See Figures 5 6 and 7 However LMPCperforms better than SS-MPC in that it requires only fiveparameters (119873 = 5) to capture the control trajectorycompared to SS-MPCrsquosminimumof 25 (119873

119888= 25) parameters

(see Table 2 for relationship of119873 and119873119888with 119886 = 08187)

63 Control Horizon in Relation to 119886 and 119873 The controlhorizon (119873

119888) is related to the parameters 119886 and119873 [2] by

119886 asymp 119890minus119873119873

119888 (58)

minus1 minus08 minus06 minus04 minus02 0 02 04 06 08 1minus1

minus08

minus06

minus04

minus02

0

02

04

06

08

1

Real

Imag

inar

yLMPCDLQR

Figure 4 Eigenvalues for DLQR and LMPC in altitude control

0 1 2 3 4 5 6

02

46

0

2

4

6

8

10

xy

z

DesiredSS-MPCLMPC

Figure 5 Tracking a 3D trajectory

631 Constant 119873 Using (58) and choosing a constantparameter119873 = 5 we get Table 2

Thus we can increase the control horizon by increasingthe parameter 119886 without necessarily changing the order119873

632 Constant Control Horizon 119873119888 Assuming we want to

achieve a control horizon of 30 we choose one parameterusually 119873 because it is an integer and directly defines theorder of the discrete Laguerre networkTherefater we simplyuse (58) to find the corresponding scaling factor 119886 as shownin Table 3

Abstract and Applied Analysis 9

0 500 1000 1500 2000 2500 3000 3500 40000

1

2

3

4

5

6

Time (ms)

x p

ositi

on

DesiredSS-MPCLMPC

(a)

0 500 1000 1500 2000 2500 3000 3500 4000Time (ms)

0

1

2

3

4

5

6

y p

ositi

on

DesiredSS-MPCLMPC

(b)

Figure 6 Tracking 119909 (a) and 119910 in (b)

2

4

6

8

10

12

00

500 1000 1500 2000 2500 3000 3500 4000Time (ms)

z p

ositi

on (m

)

DesiredSS-MPCLMPC

(a)

0

01

02

03

04

05

0 500 1000 1500 2000 2500 3000 3500 4000Time (ms)

Hea

ding

angl

e120595

DesiredSS-MPCLMPC

(b)

Figure 7 Altitude (119911) (a) and heading angle (120595) (b)

Table 3

Target control horizon119873119888

Chosen119873 Required 119886

30 1 0967230 3 0904830 5 0846530 7 0791930 9 07408

Figures 8 9 10 11 12 and 13 compare two LMPC designsboth of which yield a control horizon of 30 One designuses 119873 = 1 and the other 119873 = 9 Thus we can choose aLaguerre network with lower number of terms119873 (that gives

lower computation burden) but with a larger scaling factor119886 to achieve the same control horizon The computationalcost is lower if a smaller number of parameters are usedFor 119873 = 1 only one Laguerre term is used to capture thecontrol trajectory while119873 = 9 requires nine Laguerre termsto capture the same control trajectory

7 Conclusion

This paper has presented a solution to stability and trajectorytracking of quadrotor systems using a model predictivecontroller designed by using a special type of orthonor-mal functions called Laguerre functions A quadratic cost

10 Abstract and Applied Analysis

0 05 1 15 2 25 3 35 40

1

2

3

4

5

6

Time (s)

x (m

)

DesiredLMPC

Figure 8 119909 trajectory119873 = 1

0 05 1 15 2 25 3 35 40

1

2

3

4

5

6

Time (s)

x (m

)

DesiredLMPC

Figure 9 119909 trajectory119873 = 9

0 05 1 15 2 25 3 35 40

1

2

3

4

5

6

Time (s)

y (m

)

DesiredLMPC

Figure 10 119910 trajectory119873 = 1

0 05 1 15 2 25 3 35 40

1

2

3

4

5

6

Time (s)

y (m

)

DesiredLMPC

Figure 11 119910 trajectory119873 = 9

0

2

4

6

8

10A

ltitu

de (m

)

Altitude

0 05 1 15 2 25 3 35 4Time (s)

DesiredLMPC

Figure 12 119911 trajectory119873 = 1

0

2

4

6

8

10

Alti

tude

(m)

Altitude

0 05 1 15 2 25 3 35 4Time (s)

DesiredLMPC

Figure 13 119911 trajectory119873 = 9

Abstract and Applied Analysis 11

function similar to that used in linear quadratic regulator(LQR) has been used In stability analysis LMPC has beencompared to the optimal DLQR system whereas in trajectorytracking LMPC has been compared to a popular linear state-space MPC desgin technique in which plant constraints aremodeled using linear equalities and inequalities The resultsfrom the simulations indicate that the controller performsvery well and is considered feasible With this perceivedfeasibility LMPCoffers the added advantage that it can handlesystems where rapid sampling and more complicated processdynamics are required [5 10] By selecting appropriate valuesof 119886 and119873 LMPC reduces the number of parameters requiredfor accurate prediction when using the traditional (MPC)approach This is a big advantage in that with the reducednumber of parameters online implementation might bepossible where the traditional MPC would have failed

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper

Acknowledgment

This work was supported by the National Research Foun-dation of Korea (NRF) grant funded by the Koreangovernment (MEST) (no 2013R1A2A2A01068127 and no2013R1A1A2A10009458)

References

[1] J M Maciejowski Predictive Control with Constraints PrenticeHall New York NY USA 1st edition 2002

[2] L Wang ldquoDiscrete time model predictive control design usingLaguerre functionsrdquo in Proceedings of the American ControlConference pp 2430ndash2435 Arlington Va USA June 2001

[3] K Alexis G Nikolakopoulos and A Tzes ldquoExperimentalmodel predictive attitude tracking control of a quadrotorhelicopter subject to wind-gustsrdquo in Proceedings of the 18thMediterranean Conference on Control amp Automation (MED rsquo10)pp 1461ndash1466 IEEE Marrakech Morocco June 2010

[4] G V RaffoM G Ortega and F R Rubio ldquoMPCwith nonlinear119867infin

control for path tracking of a quad-rotor helicopterrdquo inProceedings of the 17th World Congress International Federationof Automatic Control (IFAC rsquo08) July 2008

[5] A M Singh D J Lee D P Hong and K T Chong ldquoSucces-sive loop closure based controller design for an autonomousquadrotor vehiclerdquo Applied Mechanics and Materials vol 483pp 361ndash367 2014

[6] L Wang Model Predictive Control Design and ImplementationUsing MATLAB Advances in Industrial Control Springer NewYork NY USA 1st edition 2009

[7] A G Wills ldquoTechnical report EE04025-Notes on linear modelpredictive controlrdquo December 2004

[8] Y Gao C G Lee and K T Chong ldquoReceding horizon trackingcontrol for wheeled mobile robots with time-delayrdquo Journal ofMechanical Science and Technology vol 22 no 12 pp 2403ndash2416 2008

[9] B D O Anderson and J B Moore Linear Optimal ControlPrentice-Hall 1971

[10] J A Rossiter and L Wang ldquoExploiting Laguerre functions toimprove the feasibilityperformance compromise in MPCrdquo inProceedings of the 47th IEEE Conference onDecision and Control(CDC rsquo08) pp 4737ndash4742 December 2008

Submit your manuscripts athttpwwwhindawicom

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical Problems in Engineering

Hindawi Publishing Corporationhttpwwwhindawicom

Differential EquationsInternational Journal of

Volume 2014

Applied MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

OptimizationJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Operations ResearchAdvances in

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Function Spaces

Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of Mathematics and Mathematical Sciences

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Algebra

Discrete Dynamics in Nature and Society

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Decision SciencesAdvances in

Discrete MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Stochastic AnalysisInternational Journal of

Page 4: Research Article Trajectory Tracking and ... - Hindawi

4 Abstract and Applied Analysis

Similarly the equations responsible for position and velocitycontrol in 119910 direction are

119910 = V

V = 119892120601

(12)

which give rise to the second order ODE

119910 = 119892120601 (13)

Equations (11) and (13) can be combined and form a state-space equation such as

[[[

[

119910

119910

]]]

]

=

[[[

[

0 1 0 0

0 0 0 0

0 0 0 1

0 0 0 0

]]]

]

[[[

[

119909

119910

119910

]]]

]

+

[[[

[

0 0

minus119892 0

0 0

0 119892

]]]

]

[120579

120601] (14)

As stated before we can use the forward Euler method toexpress (14) in discrete form Consider

[[[

[

119909 (119896 + 1)

V119909(119896 + 1)

119910 (119896 + 1)

V119910(119896 + 1)

]]]

]

=

[[[

[

1 Δ119879 0 0

0 1 0 0

0 0 1 Δ119879

0 0 0 1

]]]

]

[[[

[

119909 (119896)

V119909(119896)

119910 (119896)

V119910(119896)

]]]

]

+

[[[

[

0 0

minus119892Δ119879 0

0 0

0 119892Δ119879

]]]

]

[120579 (119896)

120601 (119896)]

(15)

The states 119909(119896) and 119910(119896) represent the position while V119909(119896)

and V119910(119896) represent velocity Since we are interested in the

position we will use the output matrix 119862 = [1 0 0 0

0 0 1 0] but

we could have used a different 2 times 4 output matrix if wewere interested in the velocity But it is important to notethat we can not use a 3 times 4 or 4 times 4 as there is no guaranteethat we will be able to control each of the measured outputsindependently with zero steady state errors This is generallythe case for a system with119898 inputs 119902 outputs and 119902 gt 119898 [6]

413 Attitude Controller In attitude control we are interestedin controlling the roll 120601 pitch 120579 and yaw (heading) 120595 suchthat we generate appropriate torque signals responsible forsteering the quadrotor in the desired direction with therequired attitude The equations responsible for roll controlare

120601 = 119901

=1

119869119909

120591120601

(16)

These two equations can be combined to give the secondorder ODE

120601 =1

119869119909

120591120601 (17)

Similarly the equations responsible for pitch are given by120579 = 119902

119902 =1

119869119910

120591120579

(18)

which give rise to the second order ODE

120579 =1

119869119910

120591120579 (19)

Also the equations responsible for heading are expressed as

= 119903

119903 =1

119869119911

120591120595

(20)

which like in roll and pitch give rise to the second orderODE

=1

119869119911

120591120579 (21)

Equations (17) (19) and (21) can be combined and written instate-space form as in

[[[[[[[

[

120601

120601

120579

120579

]]]]]]]

]

=

[[[[[[[

[

0 1 0 0 0 0

0 0 0 0 0 0

0 0 0 1 0 0

0 0 0 0 0 0

0 0 0 0 0 1

0 0 0 0 0 0

]]]]]]]

]

[[[[[[[

[

120601

120601

120579

120579

120595

]]]]]]]

]

+

[[[[[[[

[

0 0 0

119869minus1

1199090 0

0 0 0

0 119869minus1

1199100

0 0 0

0 0 119869minus1

119911

]]]]]]]

]

[

[

120591120601

120591120579

120591120595

]

]

(22)

where 120591120601 120591

120579 and 120591

120595are the torques required to give the

required roll pitch and yaw respectivelyAgain using the forward Eulermethod we express (22) in

discrete form as

[[[[[[[

[

120601 (119896 + 1)

V120601(119896 + 1)

120579 (119896 + 1)

V120579(119896 + 1)

120595 (119896 + 1)

V120595(119896 + 1)

]]]]]]]

]

=

[[[[[[[

[

1 Δ119879 0 0 0 0

0 1 0 0 0 0

0 0 1 Δ119879 0 0

0 0 0 1 0 0

0 0 0 0 1 Δ119879

0 0 0 0 0 1

]]]]]]]

]

[[[[[[[

[

120601 (119896)

V120601(119896)

120579 (119896)

V120579(119896)

120595 (119896)

V120595(119896)

]]]]]]]

]

+

[[[[[[[

[

0 0 0

Δ119879119869minus1

1199090 0

0 0 0

0 Δ119879119869minus1

1199100

0 0 0

0 0 Δ119879119869minus1

119911

]]]]]]]

]

[

[

120591120601(119896)

120591120579(119896)

120591120595(119896)

]

]

(23)

Since we are interested in measuring 120601(119896) 120579(119896) and 120595(119896) wewill use the output matrix 119862 = [

1 0 0 0 0 0

0 0 1 0 0 0

0 0 0 0 1 0

]So far we have formulated the necessary equations used to

build the three controllers Figure 2 shows in block diagramform what we have done so far But that is not the wholestory In the next section we will look at exactly how modelpredictive control is applied to the quadrotor systemusing thediscrete state-space equations formulated in this section

Abstract and Applied Analysis 5

Plant

Observer

MPC

u(t) y(t)

x(t)

Figure 3 Block diagram of SS-MPC

5 Model Predictive Control

One of the many tenets deployed in control of complexsystems like the quadrotor using MPC is to use modelsthat reduce the computation burden which is a necessitywhen it comes to online implementation It is also agreedupon that linear models perform better in this respect thanthe nonlinear models they represent In this and subse-quent sections the performance of a qudrotor controllerdesigned using Laguerre-based MPC (LMPC) is comparedwith that designed using themore common linear state-spaceapproach presented in [7] We will call the linear state-spacemethod SS-MPC

51 Linear State-Space MPC (SS-MPC) Linear state-spaceMPC is modeled using a linear state-space relation andplant constraints are modeled using linear equalities andinequalities When combined with convex quadratic costfunction this implies that the desired control action canbe obtained at each sample interval via the solution of acorresponding quadratic program This is attractive becausethe quadratic programs can be solved efficiently online [7]The general block diagram representing SSMPC is shown inFigure 3

511 Plant Theplant ismodeled by using the following state-space system

119909119896+1

= 119860119909119896+ 119861119906

119896+ 119908

119896

119910119896= 119862119909

119896+ 119863119906

119896+ V

119896

(24)

where 119908119896is the state noise and V

119896is the measurement noise

Both 119908119896and V

119896are assumed to be Gaussian distributed with

zero mean respective covariances of 119882 and 119881 and crosscovariance 119885 This is represented mathematically as

[119908119896

V119896

] sim 119873([0

0] [

119882 119885

119885119879

119881]) (25)

512 Observer Using Gaussian assumptions stated above itis possible to make optimal predictions of state and outputusing the Kalman filter as

119909119896+1|119896

= 119860119909119896|119896minus1

+ 119861119906 + 119870 (119910119896minus 119910

119896|119896minus1)

119910119896|119896minus1

= 119862119909119896|119896minus1

+ 119863119906119896

(26)

The closed loop gain 119870 is found by solving the discrete-timealgebraic Riccati equation (DARE)

119870 = (119860119875119862119879

+ 119885) (119862119875119862119879

+ 119881)minus1

119875 = 119882 + 119860119875119860119879

minus (119860119875119862119879

+ 119885) (119862119875119862119879

+ 119881)minus1

(119885119879

+ 119862119875119860119879

)

(27)

513 Optimal Estimation of State and Output The generalequation representing the optimal estimate of state at instant119895 and written in terms of the initial state 119909

119896+1|119896and future

control inputs 119906119896+119894|119896

is given by

119909119896+119895|119896

= 119860119895minus1

119909119896+1|119896

+

119895minus1

sum

119899=1

119860119895minus119899minus1

119861119906119896+119899|119896

(28)

Similarly the output equation is given by

119910119896+119895|119896

= 119862119860119895minus1

119909119896+1|119896

+ 119862(

119895minus1

sum

119899=1

119860119895minus119899minus1

119861119906119896+119899|119896

) + 119863119906119896+119895|119896

(29)

The vector containing all output vectors can be written as

119884119896=[[

[

119910119896+1|119896

119910119896+119873|119896

]]

]

(30)

while that containing all control actions can be written as

119880119896=[[

[

119906119896+1|119896

119906119896+119873|119896

]]

]

(31)

Therefore we can write 119884119896as

119884119896= 119865119909

119896+1|119896+ Φ119880

119896 (32)

where

119865 =

[[[[[[

[

119862

119862119860

1198621198602

119862119860119873minus1

]]]]]]

]

Φ =

[[[[[[

[

119863

119862119861 119863

119862119860119861 119862119861 119863

119862119860119873minus2

119861 sdot sdot sdot sdot sdot sdot 119862119861 119863

]]]]]]

]

(33)

6 Abstract and Applied Analysis

514 Cost Function The prime goal in MPC is to rejectdisturbances whilst tracking a reference signal But at eachinstant it has to ensure that the control signal is withinreasonable range that is practical for actuation An objectivefunction that combines these two tasks is

119869 (119909119896+1|119896

119880119896) =

1

2

119873

sum

119899=1

1003817100381710038171003817119910119896+119899|119896 minus 119903119896+119899

1003817100381710038171003817

2

119876+1003817100381710038171003817119906119896+119899|119896 minus 119906

119896+119899minus1|119896

1003817100381710038171003817

2

119878

(34)

where both119876 and 119878 are assumed to be symmetric and positivedefinite

52 Laguerre-Based MPC (LMPC) Model predictive controldesigned using Laguerre functions is developed and summa-rized in [2] The author presented this design technique forboth single-variable and multivariable systems Fortunatelythe derivations for the single-variable case and the multi-variable case are very similar and knowing one would giveenough insight into the derivation of the other For brevityonly the single-variable case is presented and it is hoped thatthis is enough to set forth the LMPC design technique

Consider a plant with 119901 inputs 119902 outputs and 119899 states asdescribed by (35) where the subscript119898 stands for model

119909119898(119896 + 1) = 119860

119898119909119898(119896) + 119861

119898119906 (119896) + 119861

119889120596 (119896)

119910 (119896) = 119862119898119909 (119896)

(35)

where 119906(119896) is the input variable 119910(119896) is the process outputand 119909

119898(119896) is the state vector 120596(119896) is the input disturbance

and is assumed to be a sequence of integrated white noiseThe plant described by (35) can be expressed in aug-

mented state-space form [2 6] as

119909 (119896 + 1) = 119860119909 (119896) + 119861Δ119906 (119896) + 119861120598120598 (119896)

119910 (119896) = 119862119909 (119896)

(36)

where 119860 = [119860119898

0119899times119902

119862119898119860119898119868119902times119902

] 119861 = [119861119898

119862119898119861119898

] 119861120598= [

119861119889

119862119898119861119889

] 119862 =

[0119902times119899

119868119902times119902

] and the state 119909(119896) = [Δ119909119898(119896) 119910(119896)]

119879 120598(119896) is azero mean white noise sequence related to the disturbance bythe difference equation 120598(119896) = 120596(119896) minus 120596(119896 minus 1) [6]

521 Design Framework In designing MPC using Laguerrefunctions the control trajectory Δ119880 is expressed using a setof orthonormal functions called Laguerre functions Since thestate and output vectors can also be described in terms ofΔ119880 it follows that they too can be expressed using Laguerrefunctions

At sampling instant 119896119894 the state variable 119909(119896

119894) is available

through measurement The future control trajectory is givenby

Δ119880 = [Δ119906 (119896119894) Δ119906 (119896

119894+ 1) Δ119906 (119896

119894+ 119873

119888minus 1)] (37)

where119873119888is the control horizon

Laguerre functions can approximate the incrementalterms contained inΔ119880The 119911-transfroms of the discrete-timeLaguerre functions are written as

Γ1(119911) =

radic1 minus 1198862

1 minus 119886119911minus1

Γ2(119911) =

radic1 minus 1198862

1 minus 119886119911minus1(

119911minus1

minus 119886

1 minus 119886119911minus1)

Γ119873(119911) =

radic1 minus 1198862

1 minus 119886119911minus1(

119911minus1

minus 119886

1 minus 119886119911minus1)

119873minus1

(38)

In the discrete-time Laguerre network of (38) 119886 is the poleof the discrete-time Laguerre network and 0 le 119886 lt 1 forstability of the network The parameter 119886 is called the scalingfactor and 119873 = 1 2 3 is the number of Laguerre termsused in the network Note that

Γ119896(119911) = Γ

119896minus1(119911) (

119911minus1

minus 119886

1 minus 119886119911minus1) (39)

with the first term as Γ1(119911) = radic1 minus 1198862(1 minus 119886119911

minus1

)Let 119897

119895(119896) be the inverse 119911-transform of the 119895th term in

the discrete Laguerre network and 119871(119896) the vector containingall inverse 119911-transform terms Then taking advantage of (39)successive inverse 119911-transform vectors are obtained throughthe difference equation

119871 (119896 + 1) = 119860119897119871 (119896) (40)

Thematrix119860119897has size119873times119873 and is a function of parameters

119886 and 120573 = 1 minus 1198862 The initial condition is given by

119871 (0)⊤

= radic120573 [1 minus119886 1198862

sdot sdot sdot (minus1)119873minus1

119886119873minus1

] (41)

In the case where119873 = 5 matrix 119860119897and the initial condition

119871(0) are

[[[[[

[

119886 0 0 0 0

120573 119886 0 0 0

minus119886120573 120573 119886 0 0

1198862

120573 minus119886120573 120573 119886 0

minus1198863

120573 1198862

120573 minus119886120573 120573 119886

]]]]]

]

(42)

119871 (0) = radic120573

[[[[[

[

1

minus119886

1198862

minus1198863

1198864

]]]]]

]

(43)

respectivelyAt sampling instant 119896

119894 the control trajectory is described

using Laguerre functions as in

Δ119906 (119896119894+ 119896) =

119873

sum

119895=1

119888119895(119896119894) 119897119895(119896119894) (44)

Abstract and Applied Analysis 7

where 119896 = 0 1 2 119873119901with 119873

119901as the prediction horizon

119873 terms used in the expansion and 119897119895(119896119894) is the inverse 119911-

transform of the 119895th term in the discrete Laguerre networkEquation (44) can be rewritten as

Δ119906 (119896119894+ 119896) = 119871 (119896)

120578 (45)

where 119871(119896) = [1198971(119896) 119897

2(119896) sdot sdot sdot 119897

119873(119896)]

119879 120578 = [11988811198882sdot sdot sdot 119888

119873]119879

and the coefficients 1198881 1198882 119888

119873are obtained from system

dataAt an arbitrary future instant 119898 the state is described

using Laguerre functions as

119909 (119896119894+ 119898 | 119896

119894) = 119860

119898

119909 (119896119894) +

119898minus1

sum

119894=0

119860119898minus119894minus1

119861119871 (119894)119879

120578 (46)

Similarly the output is described as

119910 (119896119894+ 119898 | 119896

119894) = 119862119860

119898

119909 (119896119894) +

119898minus1

sum

119894=0

119862119860119898minus119894minus1

119861119871 (119894)119879

120578 (47)

522 Cost Function The cost function is used to choose theoptimal control trajectory Δ119880 to bring the predicted outputas close as possible to the set-point The cost function

119869 =

119873119901

sum

119898=1

119909 (119896119894+ 119898 | 119896

119894)119879

119876119909 (119896119894+ 119898 | 119896

119894) + 120578

119879

119877119871120578 (48)

minimizes the error between the set-point signal and theoutput in the shortest possible time by carefully tuning theweighting matrices 119876 ge 0 and 119877

119871gt 0

523 Cost Function Minimization The state variable in (46)can be rewritten as

119909 (119896119894+ 119898 | 119896

119894) = 119860

119898

119909 (119896119894) + 120601 (119898)

119879

120578 (49)

where 120601(119898)119879

= sum119898minus1

119894=0119860119898minus119894minus1

119861119871(119894)119879

By substituting (49) into (48) and performing the partialderivative 120597119869120597120578 = 0 the Laguerre coefficients vector is foundto be

120578 = minusΩminus1

Ψ119909 (119896119894) (50)

withΩ = sum119873119901

119898=1120601(119898)119876120601(119898)

119879

+ 119877119871and Ψ = 120601(119898)119876119860

119898

524 Receding Horizon Control In receding horizon control(RHC) only the first term in Δ119880 that is Δ119906(119896

119894) is imple-

mented at instant 119896119894 The rest of the sequence is ignored

Only the most recent measurement is taken to form the statevector for calculation of the control signal This procedure isrepeated in real-time to give the receding horizon control law[6 8]

525 Stability In stability analysis we make use of the tech-nique of exponential data weighting originated by Andersonand Moore [9] and applied to MPC in [6] More specifically

we will concentrate on the discrete exponential factor 119890120582Δ119905where Δ119905 is the sampling interval and the discrete weightsform a geometric sequence 120572119895 119895 = 0 1 2

The proposed cost function is similar to the one usedin linear quadratic regulator (LQR) systems but with theinclusion of discrete weights

119869119908=

119873119901

sum

119895=1

120572minus2119895

119909 (119896119894+ 119895 | 119896

119894)119879

119876119909 (119896119894+ 119895 | 119896

119894)

+

119873119901

sum

119895=0

120572minus2119895

Δ119906 (119896119894+ 119895)

119879

119877Δ119906 (119896119894+ 119895)

(51)

For 120572 gt 1 the exponential weights 120572minus2119895 119895 = 1 2 3 119873119901

put more emphasis on the current state 119909(119896119894+ 119895 | 119896

119894) and less

emphasis on subsequent future statesThe exponentially weighted cost function can be

expressed more compactly as

119869119908=

119873119901

sum

119895=1

119909 (119896119894+ 119895 | 119896

119894)119879

119876119909 (119896119894+ 119895 | 119896

119894)

+

119873119901

sum

119895=0

Δ (119896119894+ 119895)

119879

119877Δ (119896119894+ 119895)

(52)

with state equation119909 (119896 + 1) = 119860

120572119909 (119896) + 119861

120572Δ (119896) (53)

and 119860120572= 119860120572 and 119861

120572= 119861120572

With 119876 ge 0 119877 gt 0 and 119873119901

rarr infin minimizing thecost function 119869

119908is equivalent to the DLQR problem which is

solved using algebraic Riccati equation (54)Thepair (119860120572 119861

120572)

is assumed to be controllable and (119860120572 119862) observable with

119876 = 119862119879

119862 Then there is a stabilizing state feedback controlgain matrix119870

119908

119870119908= (119877 + 120572

minus2

119861119879

119875119908119861)

minus1

120572minus2

119861119879

119875119908119860

119860119879

120572[119875

119908minus 119875

119908

119861

120572(119877 +

119861119879

120572119875119908

119861

120572)

minus1

119861119879

120572119875119908]119860

120572+ 119876 minus 119875

119908= 0

(54)that gives a stable closed loop system with all its eigenvaluesinside the unit circle and the the closed loop system beingdescribed by

119909 (119896119894+ 119895 + 1 | 119896

119894) = 120572

minus1

(119860 minus 119861119870119908) 119909 (119896

119894+ 119895 | 119896

119894) (55)

From (55) the transformed system has all its eigenvaluesinside the unit circle by taking119873

119901rarr infin So

120572minus1 1003816100381610038161003816120582max (119860 minus 119861119870

119908)1003816100381610038161003816 lt 1 (56)

which gives1003816100381610038161003816120582max (119860 minus 119861119870

119908)1003816100381610038161003816 lt 120572 (57)

Thus by choosing 120572 gt 1 there is a great chance that the systemwill be stable Several simulations on the quadrotor systemindicate that a choice of 120572 slightly greater than unity makesthe system stable almost all the time

8 Abstract and Applied Analysis

Table 1

Parameter ValueMass119898 07 kgLength 119897 0275m119869119909

01063 kgsdotm2

119869119910

01063 kgsdotm2

119869119911

02122 kgsdotm2

Table 2

Control horizon119873119888

119873 Required 119886

10 5 0606515 5 0716520 5 0778825 5 0818750 5 09048

6 Simulation Parameters and Results

In order to illustrate the controllerrsquos stability we will checkif the eigenvalues of each of the three individual controllersappear inside a unit circle Andwewill use a trajectory in a 3Dplane to check the overall controllerrsquos ability to track a desiredtrajectory

Table 1 shows the parameters of the quadrotor used insimulation

61 Stability Analysis In this section we look at the locationof eigenvalues of LMPC and check if they fall within the unitcircle for stability of the system We also compare them tothose obtained from the optimal DLQR system To ensurestability as explained in Section 525 we use 120572 = 12

By looking at Figure 4 we note that all the eigenvaluesappear inside the unit circle as required Also the eigenvaluesobtained from LMPC closely match with those of the optimalDLQRThis not only shows the system is stable but also showsthe controllers perform optimally

62 Trajectory Tracking In this section we look at theperformance of LMPC when used to track a 3D trajectoryAlso LMPC is compared to SS-MPC and individual statetrajectories are observed The starting point of the trajectoryis (119909 119910 119911) = (0 0 0) and final point is (119909 119910 119911) = (5 5 10)Parameter 119886 = 08187 while119873 = 5 See Figure 5

Clearly both LMPC and SS-MPC track the desired tra-jectory very well See Figures 5 6 and 7 However LMPCperforms better than SS-MPC in that it requires only fiveparameters (119873 = 5) to capture the control trajectorycompared to SS-MPCrsquosminimumof 25 (119873

119888= 25) parameters

(see Table 2 for relationship of119873 and119873119888with 119886 = 08187)

63 Control Horizon in Relation to 119886 and 119873 The controlhorizon (119873

119888) is related to the parameters 119886 and119873 [2] by

119886 asymp 119890minus119873119873

119888 (58)

minus1 minus08 minus06 minus04 minus02 0 02 04 06 08 1minus1

minus08

minus06

minus04

minus02

0

02

04

06

08

1

Real

Imag

inar

yLMPCDLQR

Figure 4 Eigenvalues for DLQR and LMPC in altitude control

0 1 2 3 4 5 6

02

46

0

2

4

6

8

10

xy

z

DesiredSS-MPCLMPC

Figure 5 Tracking a 3D trajectory

631 Constant 119873 Using (58) and choosing a constantparameter119873 = 5 we get Table 2

Thus we can increase the control horizon by increasingthe parameter 119886 without necessarily changing the order119873

632 Constant Control Horizon 119873119888 Assuming we want to

achieve a control horizon of 30 we choose one parameterusually 119873 because it is an integer and directly defines theorder of the discrete Laguerre networkTherefater we simplyuse (58) to find the corresponding scaling factor 119886 as shownin Table 3

Abstract and Applied Analysis 9

0 500 1000 1500 2000 2500 3000 3500 40000

1

2

3

4

5

6

Time (ms)

x p

ositi

on

DesiredSS-MPCLMPC

(a)

0 500 1000 1500 2000 2500 3000 3500 4000Time (ms)

0

1

2

3

4

5

6

y p

ositi

on

DesiredSS-MPCLMPC

(b)

Figure 6 Tracking 119909 (a) and 119910 in (b)

2

4

6

8

10

12

00

500 1000 1500 2000 2500 3000 3500 4000Time (ms)

z p

ositi

on (m

)

DesiredSS-MPCLMPC

(a)

0

01

02

03

04

05

0 500 1000 1500 2000 2500 3000 3500 4000Time (ms)

Hea

ding

angl

e120595

DesiredSS-MPCLMPC

(b)

Figure 7 Altitude (119911) (a) and heading angle (120595) (b)

Table 3

Target control horizon119873119888

Chosen119873 Required 119886

30 1 0967230 3 0904830 5 0846530 7 0791930 9 07408

Figures 8 9 10 11 12 and 13 compare two LMPC designsboth of which yield a control horizon of 30 One designuses 119873 = 1 and the other 119873 = 9 Thus we can choose aLaguerre network with lower number of terms119873 (that gives

lower computation burden) but with a larger scaling factor119886 to achieve the same control horizon The computationalcost is lower if a smaller number of parameters are usedFor 119873 = 1 only one Laguerre term is used to capture thecontrol trajectory while119873 = 9 requires nine Laguerre termsto capture the same control trajectory

7 Conclusion

This paper has presented a solution to stability and trajectorytracking of quadrotor systems using a model predictivecontroller designed by using a special type of orthonor-mal functions called Laguerre functions A quadratic cost

10 Abstract and Applied Analysis

0 05 1 15 2 25 3 35 40

1

2

3

4

5

6

Time (s)

x (m

)

DesiredLMPC

Figure 8 119909 trajectory119873 = 1

0 05 1 15 2 25 3 35 40

1

2

3

4

5

6

Time (s)

x (m

)

DesiredLMPC

Figure 9 119909 trajectory119873 = 9

0 05 1 15 2 25 3 35 40

1

2

3

4

5

6

Time (s)

y (m

)

DesiredLMPC

Figure 10 119910 trajectory119873 = 1

0 05 1 15 2 25 3 35 40

1

2

3

4

5

6

Time (s)

y (m

)

DesiredLMPC

Figure 11 119910 trajectory119873 = 9

0

2

4

6

8

10A

ltitu

de (m

)

Altitude

0 05 1 15 2 25 3 35 4Time (s)

DesiredLMPC

Figure 12 119911 trajectory119873 = 1

0

2

4

6

8

10

Alti

tude

(m)

Altitude

0 05 1 15 2 25 3 35 4Time (s)

DesiredLMPC

Figure 13 119911 trajectory119873 = 9

Abstract and Applied Analysis 11

function similar to that used in linear quadratic regulator(LQR) has been used In stability analysis LMPC has beencompared to the optimal DLQR system whereas in trajectorytracking LMPC has been compared to a popular linear state-space MPC desgin technique in which plant constraints aremodeled using linear equalities and inequalities The resultsfrom the simulations indicate that the controller performsvery well and is considered feasible With this perceivedfeasibility LMPCoffers the added advantage that it can handlesystems where rapid sampling and more complicated processdynamics are required [5 10] By selecting appropriate valuesof 119886 and119873 LMPC reduces the number of parameters requiredfor accurate prediction when using the traditional (MPC)approach This is a big advantage in that with the reducednumber of parameters online implementation might bepossible where the traditional MPC would have failed

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper

Acknowledgment

This work was supported by the National Research Foun-dation of Korea (NRF) grant funded by the Koreangovernment (MEST) (no 2013R1A2A2A01068127 and no2013R1A1A2A10009458)

References

[1] J M Maciejowski Predictive Control with Constraints PrenticeHall New York NY USA 1st edition 2002

[2] L Wang ldquoDiscrete time model predictive control design usingLaguerre functionsrdquo in Proceedings of the American ControlConference pp 2430ndash2435 Arlington Va USA June 2001

[3] K Alexis G Nikolakopoulos and A Tzes ldquoExperimentalmodel predictive attitude tracking control of a quadrotorhelicopter subject to wind-gustsrdquo in Proceedings of the 18thMediterranean Conference on Control amp Automation (MED rsquo10)pp 1461ndash1466 IEEE Marrakech Morocco June 2010

[4] G V RaffoM G Ortega and F R Rubio ldquoMPCwith nonlinear119867infin

control for path tracking of a quad-rotor helicopterrdquo inProceedings of the 17th World Congress International Federationof Automatic Control (IFAC rsquo08) July 2008

[5] A M Singh D J Lee D P Hong and K T Chong ldquoSucces-sive loop closure based controller design for an autonomousquadrotor vehiclerdquo Applied Mechanics and Materials vol 483pp 361ndash367 2014

[6] L Wang Model Predictive Control Design and ImplementationUsing MATLAB Advances in Industrial Control Springer NewYork NY USA 1st edition 2009

[7] A G Wills ldquoTechnical report EE04025-Notes on linear modelpredictive controlrdquo December 2004

[8] Y Gao C G Lee and K T Chong ldquoReceding horizon trackingcontrol for wheeled mobile robots with time-delayrdquo Journal ofMechanical Science and Technology vol 22 no 12 pp 2403ndash2416 2008

[9] B D O Anderson and J B Moore Linear Optimal ControlPrentice-Hall 1971

[10] J A Rossiter and L Wang ldquoExploiting Laguerre functions toimprove the feasibilityperformance compromise in MPCrdquo inProceedings of the 47th IEEE Conference onDecision and Control(CDC rsquo08) pp 4737ndash4742 December 2008

Submit your manuscripts athttpwwwhindawicom

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical Problems in Engineering

Hindawi Publishing Corporationhttpwwwhindawicom

Differential EquationsInternational Journal of

Volume 2014

Applied MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

OptimizationJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Operations ResearchAdvances in

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Function Spaces

Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of Mathematics and Mathematical Sciences

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Algebra

Discrete Dynamics in Nature and Society

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Decision SciencesAdvances in

Discrete MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Stochastic AnalysisInternational Journal of

Page 5: Research Article Trajectory Tracking and ... - Hindawi

Abstract and Applied Analysis 5

Plant

Observer

MPC

u(t) y(t)

x(t)

Figure 3 Block diagram of SS-MPC

5 Model Predictive Control

One of the many tenets deployed in control of complexsystems like the quadrotor using MPC is to use modelsthat reduce the computation burden which is a necessitywhen it comes to online implementation It is also agreedupon that linear models perform better in this respect thanthe nonlinear models they represent In this and subse-quent sections the performance of a qudrotor controllerdesigned using Laguerre-based MPC (LMPC) is comparedwith that designed using themore common linear state-spaceapproach presented in [7] We will call the linear state-spacemethod SS-MPC

51 Linear State-Space MPC (SS-MPC) Linear state-spaceMPC is modeled using a linear state-space relation andplant constraints are modeled using linear equalities andinequalities When combined with convex quadratic costfunction this implies that the desired control action canbe obtained at each sample interval via the solution of acorresponding quadratic program This is attractive becausethe quadratic programs can be solved efficiently online [7]The general block diagram representing SSMPC is shown inFigure 3

511 Plant Theplant ismodeled by using the following state-space system

119909119896+1

= 119860119909119896+ 119861119906

119896+ 119908

119896

119910119896= 119862119909

119896+ 119863119906

119896+ V

119896

(24)

where 119908119896is the state noise and V

119896is the measurement noise

Both 119908119896and V

119896are assumed to be Gaussian distributed with

zero mean respective covariances of 119882 and 119881 and crosscovariance 119885 This is represented mathematically as

[119908119896

V119896

] sim 119873([0

0] [

119882 119885

119885119879

119881]) (25)

512 Observer Using Gaussian assumptions stated above itis possible to make optimal predictions of state and outputusing the Kalman filter as

119909119896+1|119896

= 119860119909119896|119896minus1

+ 119861119906 + 119870 (119910119896minus 119910

119896|119896minus1)

119910119896|119896minus1

= 119862119909119896|119896minus1

+ 119863119906119896

(26)

The closed loop gain 119870 is found by solving the discrete-timealgebraic Riccati equation (DARE)

119870 = (119860119875119862119879

+ 119885) (119862119875119862119879

+ 119881)minus1

119875 = 119882 + 119860119875119860119879

minus (119860119875119862119879

+ 119885) (119862119875119862119879

+ 119881)minus1

(119885119879

+ 119862119875119860119879

)

(27)

513 Optimal Estimation of State and Output The generalequation representing the optimal estimate of state at instant119895 and written in terms of the initial state 119909

119896+1|119896and future

control inputs 119906119896+119894|119896

is given by

119909119896+119895|119896

= 119860119895minus1

119909119896+1|119896

+

119895minus1

sum

119899=1

119860119895minus119899minus1

119861119906119896+119899|119896

(28)

Similarly the output equation is given by

119910119896+119895|119896

= 119862119860119895minus1

119909119896+1|119896

+ 119862(

119895minus1

sum

119899=1

119860119895minus119899minus1

119861119906119896+119899|119896

) + 119863119906119896+119895|119896

(29)

The vector containing all output vectors can be written as

119884119896=[[

[

119910119896+1|119896

119910119896+119873|119896

]]

]

(30)

while that containing all control actions can be written as

119880119896=[[

[

119906119896+1|119896

119906119896+119873|119896

]]

]

(31)

Therefore we can write 119884119896as

119884119896= 119865119909

119896+1|119896+ Φ119880

119896 (32)

where

119865 =

[[[[[[

[

119862

119862119860

1198621198602

119862119860119873minus1

]]]]]]

]

Φ =

[[[[[[

[

119863

119862119861 119863

119862119860119861 119862119861 119863

119862119860119873minus2

119861 sdot sdot sdot sdot sdot sdot 119862119861 119863

]]]]]]

]

(33)

6 Abstract and Applied Analysis

514 Cost Function The prime goal in MPC is to rejectdisturbances whilst tracking a reference signal But at eachinstant it has to ensure that the control signal is withinreasonable range that is practical for actuation An objectivefunction that combines these two tasks is

119869 (119909119896+1|119896

119880119896) =

1

2

119873

sum

119899=1

1003817100381710038171003817119910119896+119899|119896 minus 119903119896+119899

1003817100381710038171003817

2

119876+1003817100381710038171003817119906119896+119899|119896 minus 119906

119896+119899minus1|119896

1003817100381710038171003817

2

119878

(34)

where both119876 and 119878 are assumed to be symmetric and positivedefinite

52 Laguerre-Based MPC (LMPC) Model predictive controldesigned using Laguerre functions is developed and summa-rized in [2] The author presented this design technique forboth single-variable and multivariable systems Fortunatelythe derivations for the single-variable case and the multi-variable case are very similar and knowing one would giveenough insight into the derivation of the other For brevityonly the single-variable case is presented and it is hoped thatthis is enough to set forth the LMPC design technique

Consider a plant with 119901 inputs 119902 outputs and 119899 states asdescribed by (35) where the subscript119898 stands for model

119909119898(119896 + 1) = 119860

119898119909119898(119896) + 119861

119898119906 (119896) + 119861

119889120596 (119896)

119910 (119896) = 119862119898119909 (119896)

(35)

where 119906(119896) is the input variable 119910(119896) is the process outputand 119909

119898(119896) is the state vector 120596(119896) is the input disturbance

and is assumed to be a sequence of integrated white noiseThe plant described by (35) can be expressed in aug-

mented state-space form [2 6] as

119909 (119896 + 1) = 119860119909 (119896) + 119861Δ119906 (119896) + 119861120598120598 (119896)

119910 (119896) = 119862119909 (119896)

(36)

where 119860 = [119860119898

0119899times119902

119862119898119860119898119868119902times119902

] 119861 = [119861119898

119862119898119861119898

] 119861120598= [

119861119889

119862119898119861119889

] 119862 =

[0119902times119899

119868119902times119902

] and the state 119909(119896) = [Δ119909119898(119896) 119910(119896)]

119879 120598(119896) is azero mean white noise sequence related to the disturbance bythe difference equation 120598(119896) = 120596(119896) minus 120596(119896 minus 1) [6]

521 Design Framework In designing MPC using Laguerrefunctions the control trajectory Δ119880 is expressed using a setof orthonormal functions called Laguerre functions Since thestate and output vectors can also be described in terms ofΔ119880 it follows that they too can be expressed using Laguerrefunctions

At sampling instant 119896119894 the state variable 119909(119896

119894) is available

through measurement The future control trajectory is givenby

Δ119880 = [Δ119906 (119896119894) Δ119906 (119896

119894+ 1) Δ119906 (119896

119894+ 119873

119888minus 1)] (37)

where119873119888is the control horizon

Laguerre functions can approximate the incrementalterms contained inΔ119880The 119911-transfroms of the discrete-timeLaguerre functions are written as

Γ1(119911) =

radic1 minus 1198862

1 minus 119886119911minus1

Γ2(119911) =

radic1 minus 1198862

1 minus 119886119911minus1(

119911minus1

minus 119886

1 minus 119886119911minus1)

Γ119873(119911) =

radic1 minus 1198862

1 minus 119886119911minus1(

119911minus1

minus 119886

1 minus 119886119911minus1)

119873minus1

(38)

In the discrete-time Laguerre network of (38) 119886 is the poleof the discrete-time Laguerre network and 0 le 119886 lt 1 forstability of the network The parameter 119886 is called the scalingfactor and 119873 = 1 2 3 is the number of Laguerre termsused in the network Note that

Γ119896(119911) = Γ

119896minus1(119911) (

119911minus1

minus 119886

1 minus 119886119911minus1) (39)

with the first term as Γ1(119911) = radic1 minus 1198862(1 minus 119886119911

minus1

)Let 119897

119895(119896) be the inverse 119911-transform of the 119895th term in

the discrete Laguerre network and 119871(119896) the vector containingall inverse 119911-transform terms Then taking advantage of (39)successive inverse 119911-transform vectors are obtained throughthe difference equation

119871 (119896 + 1) = 119860119897119871 (119896) (40)

Thematrix119860119897has size119873times119873 and is a function of parameters

119886 and 120573 = 1 minus 1198862 The initial condition is given by

119871 (0)⊤

= radic120573 [1 minus119886 1198862

sdot sdot sdot (minus1)119873minus1

119886119873minus1

] (41)

In the case where119873 = 5 matrix 119860119897and the initial condition

119871(0) are

[[[[[

[

119886 0 0 0 0

120573 119886 0 0 0

minus119886120573 120573 119886 0 0

1198862

120573 minus119886120573 120573 119886 0

minus1198863

120573 1198862

120573 minus119886120573 120573 119886

]]]]]

]

(42)

119871 (0) = radic120573

[[[[[

[

1

minus119886

1198862

minus1198863

1198864

]]]]]

]

(43)

respectivelyAt sampling instant 119896

119894 the control trajectory is described

using Laguerre functions as in

Δ119906 (119896119894+ 119896) =

119873

sum

119895=1

119888119895(119896119894) 119897119895(119896119894) (44)

Abstract and Applied Analysis 7

where 119896 = 0 1 2 119873119901with 119873

119901as the prediction horizon

119873 terms used in the expansion and 119897119895(119896119894) is the inverse 119911-

transform of the 119895th term in the discrete Laguerre networkEquation (44) can be rewritten as

Δ119906 (119896119894+ 119896) = 119871 (119896)

120578 (45)

where 119871(119896) = [1198971(119896) 119897

2(119896) sdot sdot sdot 119897

119873(119896)]

119879 120578 = [11988811198882sdot sdot sdot 119888

119873]119879

and the coefficients 1198881 1198882 119888

119873are obtained from system

dataAt an arbitrary future instant 119898 the state is described

using Laguerre functions as

119909 (119896119894+ 119898 | 119896

119894) = 119860

119898

119909 (119896119894) +

119898minus1

sum

119894=0

119860119898minus119894minus1

119861119871 (119894)119879

120578 (46)

Similarly the output is described as

119910 (119896119894+ 119898 | 119896

119894) = 119862119860

119898

119909 (119896119894) +

119898minus1

sum

119894=0

119862119860119898minus119894minus1

119861119871 (119894)119879

120578 (47)

522 Cost Function The cost function is used to choose theoptimal control trajectory Δ119880 to bring the predicted outputas close as possible to the set-point The cost function

119869 =

119873119901

sum

119898=1

119909 (119896119894+ 119898 | 119896

119894)119879

119876119909 (119896119894+ 119898 | 119896

119894) + 120578

119879

119877119871120578 (48)

minimizes the error between the set-point signal and theoutput in the shortest possible time by carefully tuning theweighting matrices 119876 ge 0 and 119877

119871gt 0

523 Cost Function Minimization The state variable in (46)can be rewritten as

119909 (119896119894+ 119898 | 119896

119894) = 119860

119898

119909 (119896119894) + 120601 (119898)

119879

120578 (49)

where 120601(119898)119879

= sum119898minus1

119894=0119860119898minus119894minus1

119861119871(119894)119879

By substituting (49) into (48) and performing the partialderivative 120597119869120597120578 = 0 the Laguerre coefficients vector is foundto be

120578 = minusΩminus1

Ψ119909 (119896119894) (50)

withΩ = sum119873119901

119898=1120601(119898)119876120601(119898)

119879

+ 119877119871and Ψ = 120601(119898)119876119860

119898

524 Receding Horizon Control In receding horizon control(RHC) only the first term in Δ119880 that is Δ119906(119896

119894) is imple-

mented at instant 119896119894 The rest of the sequence is ignored

Only the most recent measurement is taken to form the statevector for calculation of the control signal This procedure isrepeated in real-time to give the receding horizon control law[6 8]

525 Stability In stability analysis we make use of the tech-nique of exponential data weighting originated by Andersonand Moore [9] and applied to MPC in [6] More specifically

we will concentrate on the discrete exponential factor 119890120582Δ119905where Δ119905 is the sampling interval and the discrete weightsform a geometric sequence 120572119895 119895 = 0 1 2

The proposed cost function is similar to the one usedin linear quadratic regulator (LQR) systems but with theinclusion of discrete weights

119869119908=

119873119901

sum

119895=1

120572minus2119895

119909 (119896119894+ 119895 | 119896

119894)119879

119876119909 (119896119894+ 119895 | 119896

119894)

+

119873119901

sum

119895=0

120572minus2119895

Δ119906 (119896119894+ 119895)

119879

119877Δ119906 (119896119894+ 119895)

(51)

For 120572 gt 1 the exponential weights 120572minus2119895 119895 = 1 2 3 119873119901

put more emphasis on the current state 119909(119896119894+ 119895 | 119896

119894) and less

emphasis on subsequent future statesThe exponentially weighted cost function can be

expressed more compactly as

119869119908=

119873119901

sum

119895=1

119909 (119896119894+ 119895 | 119896

119894)119879

119876119909 (119896119894+ 119895 | 119896

119894)

+

119873119901

sum

119895=0

Δ (119896119894+ 119895)

119879

119877Δ (119896119894+ 119895)

(52)

with state equation119909 (119896 + 1) = 119860

120572119909 (119896) + 119861

120572Δ (119896) (53)

and 119860120572= 119860120572 and 119861

120572= 119861120572

With 119876 ge 0 119877 gt 0 and 119873119901

rarr infin minimizing thecost function 119869

119908is equivalent to the DLQR problem which is

solved using algebraic Riccati equation (54)Thepair (119860120572 119861

120572)

is assumed to be controllable and (119860120572 119862) observable with

119876 = 119862119879

119862 Then there is a stabilizing state feedback controlgain matrix119870

119908

119870119908= (119877 + 120572

minus2

119861119879

119875119908119861)

minus1

120572minus2

119861119879

119875119908119860

119860119879

120572[119875

119908minus 119875

119908

119861

120572(119877 +

119861119879

120572119875119908

119861

120572)

minus1

119861119879

120572119875119908]119860

120572+ 119876 minus 119875

119908= 0

(54)that gives a stable closed loop system with all its eigenvaluesinside the unit circle and the the closed loop system beingdescribed by

119909 (119896119894+ 119895 + 1 | 119896

119894) = 120572

minus1

(119860 minus 119861119870119908) 119909 (119896

119894+ 119895 | 119896

119894) (55)

From (55) the transformed system has all its eigenvaluesinside the unit circle by taking119873

119901rarr infin So

120572minus1 1003816100381610038161003816120582max (119860 minus 119861119870

119908)1003816100381610038161003816 lt 1 (56)

which gives1003816100381610038161003816120582max (119860 minus 119861119870

119908)1003816100381610038161003816 lt 120572 (57)

Thus by choosing 120572 gt 1 there is a great chance that the systemwill be stable Several simulations on the quadrotor systemindicate that a choice of 120572 slightly greater than unity makesthe system stable almost all the time

8 Abstract and Applied Analysis

Table 1

Parameter ValueMass119898 07 kgLength 119897 0275m119869119909

01063 kgsdotm2

119869119910

01063 kgsdotm2

119869119911

02122 kgsdotm2

Table 2

Control horizon119873119888

119873 Required 119886

10 5 0606515 5 0716520 5 0778825 5 0818750 5 09048

6 Simulation Parameters and Results

In order to illustrate the controllerrsquos stability we will checkif the eigenvalues of each of the three individual controllersappear inside a unit circle Andwewill use a trajectory in a 3Dplane to check the overall controllerrsquos ability to track a desiredtrajectory

Table 1 shows the parameters of the quadrotor used insimulation

61 Stability Analysis In this section we look at the locationof eigenvalues of LMPC and check if they fall within the unitcircle for stability of the system We also compare them tothose obtained from the optimal DLQR system To ensurestability as explained in Section 525 we use 120572 = 12

By looking at Figure 4 we note that all the eigenvaluesappear inside the unit circle as required Also the eigenvaluesobtained from LMPC closely match with those of the optimalDLQRThis not only shows the system is stable but also showsthe controllers perform optimally

62 Trajectory Tracking In this section we look at theperformance of LMPC when used to track a 3D trajectoryAlso LMPC is compared to SS-MPC and individual statetrajectories are observed The starting point of the trajectoryis (119909 119910 119911) = (0 0 0) and final point is (119909 119910 119911) = (5 5 10)Parameter 119886 = 08187 while119873 = 5 See Figure 5

Clearly both LMPC and SS-MPC track the desired tra-jectory very well See Figures 5 6 and 7 However LMPCperforms better than SS-MPC in that it requires only fiveparameters (119873 = 5) to capture the control trajectorycompared to SS-MPCrsquosminimumof 25 (119873

119888= 25) parameters

(see Table 2 for relationship of119873 and119873119888with 119886 = 08187)

63 Control Horizon in Relation to 119886 and 119873 The controlhorizon (119873

119888) is related to the parameters 119886 and119873 [2] by

119886 asymp 119890minus119873119873

119888 (58)

minus1 minus08 minus06 minus04 minus02 0 02 04 06 08 1minus1

minus08

minus06

minus04

minus02

0

02

04

06

08

1

Real

Imag

inar

yLMPCDLQR

Figure 4 Eigenvalues for DLQR and LMPC in altitude control

0 1 2 3 4 5 6

02

46

0

2

4

6

8

10

xy

z

DesiredSS-MPCLMPC

Figure 5 Tracking a 3D trajectory

631 Constant 119873 Using (58) and choosing a constantparameter119873 = 5 we get Table 2

Thus we can increase the control horizon by increasingthe parameter 119886 without necessarily changing the order119873

632 Constant Control Horizon 119873119888 Assuming we want to

achieve a control horizon of 30 we choose one parameterusually 119873 because it is an integer and directly defines theorder of the discrete Laguerre networkTherefater we simplyuse (58) to find the corresponding scaling factor 119886 as shownin Table 3

Abstract and Applied Analysis 9

0 500 1000 1500 2000 2500 3000 3500 40000

1

2

3

4

5

6

Time (ms)

x p

ositi

on

DesiredSS-MPCLMPC

(a)

0 500 1000 1500 2000 2500 3000 3500 4000Time (ms)

0

1

2

3

4

5

6

y p

ositi

on

DesiredSS-MPCLMPC

(b)

Figure 6 Tracking 119909 (a) and 119910 in (b)

2

4

6

8

10

12

00

500 1000 1500 2000 2500 3000 3500 4000Time (ms)

z p

ositi

on (m

)

DesiredSS-MPCLMPC

(a)

0

01

02

03

04

05

0 500 1000 1500 2000 2500 3000 3500 4000Time (ms)

Hea

ding

angl

e120595

DesiredSS-MPCLMPC

(b)

Figure 7 Altitude (119911) (a) and heading angle (120595) (b)

Table 3

Target control horizon119873119888

Chosen119873 Required 119886

30 1 0967230 3 0904830 5 0846530 7 0791930 9 07408

Figures 8 9 10 11 12 and 13 compare two LMPC designsboth of which yield a control horizon of 30 One designuses 119873 = 1 and the other 119873 = 9 Thus we can choose aLaguerre network with lower number of terms119873 (that gives

lower computation burden) but with a larger scaling factor119886 to achieve the same control horizon The computationalcost is lower if a smaller number of parameters are usedFor 119873 = 1 only one Laguerre term is used to capture thecontrol trajectory while119873 = 9 requires nine Laguerre termsto capture the same control trajectory

7 Conclusion

This paper has presented a solution to stability and trajectorytracking of quadrotor systems using a model predictivecontroller designed by using a special type of orthonor-mal functions called Laguerre functions A quadratic cost

10 Abstract and Applied Analysis

0 05 1 15 2 25 3 35 40

1

2

3

4

5

6

Time (s)

x (m

)

DesiredLMPC

Figure 8 119909 trajectory119873 = 1

0 05 1 15 2 25 3 35 40

1

2

3

4

5

6

Time (s)

x (m

)

DesiredLMPC

Figure 9 119909 trajectory119873 = 9

0 05 1 15 2 25 3 35 40

1

2

3

4

5

6

Time (s)

y (m

)

DesiredLMPC

Figure 10 119910 trajectory119873 = 1

0 05 1 15 2 25 3 35 40

1

2

3

4

5

6

Time (s)

y (m

)

DesiredLMPC

Figure 11 119910 trajectory119873 = 9

0

2

4

6

8

10A

ltitu

de (m

)

Altitude

0 05 1 15 2 25 3 35 4Time (s)

DesiredLMPC

Figure 12 119911 trajectory119873 = 1

0

2

4

6

8

10

Alti

tude

(m)

Altitude

0 05 1 15 2 25 3 35 4Time (s)

DesiredLMPC

Figure 13 119911 trajectory119873 = 9

Abstract and Applied Analysis 11

function similar to that used in linear quadratic regulator(LQR) has been used In stability analysis LMPC has beencompared to the optimal DLQR system whereas in trajectorytracking LMPC has been compared to a popular linear state-space MPC desgin technique in which plant constraints aremodeled using linear equalities and inequalities The resultsfrom the simulations indicate that the controller performsvery well and is considered feasible With this perceivedfeasibility LMPCoffers the added advantage that it can handlesystems where rapid sampling and more complicated processdynamics are required [5 10] By selecting appropriate valuesof 119886 and119873 LMPC reduces the number of parameters requiredfor accurate prediction when using the traditional (MPC)approach This is a big advantage in that with the reducednumber of parameters online implementation might bepossible where the traditional MPC would have failed

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper

Acknowledgment

This work was supported by the National Research Foun-dation of Korea (NRF) grant funded by the Koreangovernment (MEST) (no 2013R1A2A2A01068127 and no2013R1A1A2A10009458)

References

[1] J M Maciejowski Predictive Control with Constraints PrenticeHall New York NY USA 1st edition 2002

[2] L Wang ldquoDiscrete time model predictive control design usingLaguerre functionsrdquo in Proceedings of the American ControlConference pp 2430ndash2435 Arlington Va USA June 2001

[3] K Alexis G Nikolakopoulos and A Tzes ldquoExperimentalmodel predictive attitude tracking control of a quadrotorhelicopter subject to wind-gustsrdquo in Proceedings of the 18thMediterranean Conference on Control amp Automation (MED rsquo10)pp 1461ndash1466 IEEE Marrakech Morocco June 2010

[4] G V RaffoM G Ortega and F R Rubio ldquoMPCwith nonlinear119867infin

control for path tracking of a quad-rotor helicopterrdquo inProceedings of the 17th World Congress International Federationof Automatic Control (IFAC rsquo08) July 2008

[5] A M Singh D J Lee D P Hong and K T Chong ldquoSucces-sive loop closure based controller design for an autonomousquadrotor vehiclerdquo Applied Mechanics and Materials vol 483pp 361ndash367 2014

[6] L Wang Model Predictive Control Design and ImplementationUsing MATLAB Advances in Industrial Control Springer NewYork NY USA 1st edition 2009

[7] A G Wills ldquoTechnical report EE04025-Notes on linear modelpredictive controlrdquo December 2004

[8] Y Gao C G Lee and K T Chong ldquoReceding horizon trackingcontrol for wheeled mobile robots with time-delayrdquo Journal ofMechanical Science and Technology vol 22 no 12 pp 2403ndash2416 2008

[9] B D O Anderson and J B Moore Linear Optimal ControlPrentice-Hall 1971

[10] J A Rossiter and L Wang ldquoExploiting Laguerre functions toimprove the feasibilityperformance compromise in MPCrdquo inProceedings of the 47th IEEE Conference onDecision and Control(CDC rsquo08) pp 4737ndash4742 December 2008

Submit your manuscripts athttpwwwhindawicom

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical Problems in Engineering

Hindawi Publishing Corporationhttpwwwhindawicom

Differential EquationsInternational Journal of

Volume 2014

Applied MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

OptimizationJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Operations ResearchAdvances in

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Function Spaces

Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of Mathematics and Mathematical Sciences

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Algebra

Discrete Dynamics in Nature and Society

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Decision SciencesAdvances in

Discrete MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Stochastic AnalysisInternational Journal of

Page 6: Research Article Trajectory Tracking and ... - Hindawi

6 Abstract and Applied Analysis

514 Cost Function The prime goal in MPC is to rejectdisturbances whilst tracking a reference signal But at eachinstant it has to ensure that the control signal is withinreasonable range that is practical for actuation An objectivefunction that combines these two tasks is

119869 (119909119896+1|119896

119880119896) =

1

2

119873

sum

119899=1

1003817100381710038171003817119910119896+119899|119896 minus 119903119896+119899

1003817100381710038171003817

2

119876+1003817100381710038171003817119906119896+119899|119896 minus 119906

119896+119899minus1|119896

1003817100381710038171003817

2

119878

(34)

where both119876 and 119878 are assumed to be symmetric and positivedefinite

52 Laguerre-Based MPC (LMPC) Model predictive controldesigned using Laguerre functions is developed and summa-rized in [2] The author presented this design technique forboth single-variable and multivariable systems Fortunatelythe derivations for the single-variable case and the multi-variable case are very similar and knowing one would giveenough insight into the derivation of the other For brevityonly the single-variable case is presented and it is hoped thatthis is enough to set forth the LMPC design technique

Consider a plant with 119901 inputs 119902 outputs and 119899 states asdescribed by (35) where the subscript119898 stands for model

119909119898(119896 + 1) = 119860

119898119909119898(119896) + 119861

119898119906 (119896) + 119861

119889120596 (119896)

119910 (119896) = 119862119898119909 (119896)

(35)

where 119906(119896) is the input variable 119910(119896) is the process outputand 119909

119898(119896) is the state vector 120596(119896) is the input disturbance

and is assumed to be a sequence of integrated white noiseThe plant described by (35) can be expressed in aug-

mented state-space form [2 6] as

119909 (119896 + 1) = 119860119909 (119896) + 119861Δ119906 (119896) + 119861120598120598 (119896)

119910 (119896) = 119862119909 (119896)

(36)

where 119860 = [119860119898

0119899times119902

119862119898119860119898119868119902times119902

] 119861 = [119861119898

119862119898119861119898

] 119861120598= [

119861119889

119862119898119861119889

] 119862 =

[0119902times119899

119868119902times119902

] and the state 119909(119896) = [Δ119909119898(119896) 119910(119896)]

119879 120598(119896) is azero mean white noise sequence related to the disturbance bythe difference equation 120598(119896) = 120596(119896) minus 120596(119896 minus 1) [6]

521 Design Framework In designing MPC using Laguerrefunctions the control trajectory Δ119880 is expressed using a setof orthonormal functions called Laguerre functions Since thestate and output vectors can also be described in terms ofΔ119880 it follows that they too can be expressed using Laguerrefunctions

At sampling instant 119896119894 the state variable 119909(119896

119894) is available

through measurement The future control trajectory is givenby

Δ119880 = [Δ119906 (119896119894) Δ119906 (119896

119894+ 1) Δ119906 (119896

119894+ 119873

119888minus 1)] (37)

where119873119888is the control horizon

Laguerre functions can approximate the incrementalterms contained inΔ119880The 119911-transfroms of the discrete-timeLaguerre functions are written as

Γ1(119911) =

radic1 minus 1198862

1 minus 119886119911minus1

Γ2(119911) =

radic1 minus 1198862

1 minus 119886119911minus1(

119911minus1

minus 119886

1 minus 119886119911minus1)

Γ119873(119911) =

radic1 minus 1198862

1 minus 119886119911minus1(

119911minus1

minus 119886

1 minus 119886119911minus1)

119873minus1

(38)

In the discrete-time Laguerre network of (38) 119886 is the poleof the discrete-time Laguerre network and 0 le 119886 lt 1 forstability of the network The parameter 119886 is called the scalingfactor and 119873 = 1 2 3 is the number of Laguerre termsused in the network Note that

Γ119896(119911) = Γ

119896minus1(119911) (

119911minus1

minus 119886

1 minus 119886119911minus1) (39)

with the first term as Γ1(119911) = radic1 minus 1198862(1 minus 119886119911

minus1

)Let 119897

119895(119896) be the inverse 119911-transform of the 119895th term in

the discrete Laguerre network and 119871(119896) the vector containingall inverse 119911-transform terms Then taking advantage of (39)successive inverse 119911-transform vectors are obtained throughthe difference equation

119871 (119896 + 1) = 119860119897119871 (119896) (40)

Thematrix119860119897has size119873times119873 and is a function of parameters

119886 and 120573 = 1 minus 1198862 The initial condition is given by

119871 (0)⊤

= radic120573 [1 minus119886 1198862

sdot sdot sdot (minus1)119873minus1

119886119873minus1

] (41)

In the case where119873 = 5 matrix 119860119897and the initial condition

119871(0) are

[[[[[

[

119886 0 0 0 0

120573 119886 0 0 0

minus119886120573 120573 119886 0 0

1198862

120573 minus119886120573 120573 119886 0

minus1198863

120573 1198862

120573 minus119886120573 120573 119886

]]]]]

]

(42)

119871 (0) = radic120573

[[[[[

[

1

minus119886

1198862

minus1198863

1198864

]]]]]

]

(43)

respectivelyAt sampling instant 119896

119894 the control trajectory is described

using Laguerre functions as in

Δ119906 (119896119894+ 119896) =

119873

sum

119895=1

119888119895(119896119894) 119897119895(119896119894) (44)

Abstract and Applied Analysis 7

where 119896 = 0 1 2 119873119901with 119873

119901as the prediction horizon

119873 terms used in the expansion and 119897119895(119896119894) is the inverse 119911-

transform of the 119895th term in the discrete Laguerre networkEquation (44) can be rewritten as

Δ119906 (119896119894+ 119896) = 119871 (119896)

120578 (45)

where 119871(119896) = [1198971(119896) 119897

2(119896) sdot sdot sdot 119897

119873(119896)]

119879 120578 = [11988811198882sdot sdot sdot 119888

119873]119879

and the coefficients 1198881 1198882 119888

119873are obtained from system

dataAt an arbitrary future instant 119898 the state is described

using Laguerre functions as

119909 (119896119894+ 119898 | 119896

119894) = 119860

119898

119909 (119896119894) +

119898minus1

sum

119894=0

119860119898minus119894minus1

119861119871 (119894)119879

120578 (46)

Similarly the output is described as

119910 (119896119894+ 119898 | 119896

119894) = 119862119860

119898

119909 (119896119894) +

119898minus1

sum

119894=0

119862119860119898minus119894minus1

119861119871 (119894)119879

120578 (47)

522 Cost Function The cost function is used to choose theoptimal control trajectory Δ119880 to bring the predicted outputas close as possible to the set-point The cost function

119869 =

119873119901

sum

119898=1

119909 (119896119894+ 119898 | 119896

119894)119879

119876119909 (119896119894+ 119898 | 119896

119894) + 120578

119879

119877119871120578 (48)

minimizes the error between the set-point signal and theoutput in the shortest possible time by carefully tuning theweighting matrices 119876 ge 0 and 119877

119871gt 0

523 Cost Function Minimization The state variable in (46)can be rewritten as

119909 (119896119894+ 119898 | 119896

119894) = 119860

119898

119909 (119896119894) + 120601 (119898)

119879

120578 (49)

where 120601(119898)119879

= sum119898minus1

119894=0119860119898minus119894minus1

119861119871(119894)119879

By substituting (49) into (48) and performing the partialderivative 120597119869120597120578 = 0 the Laguerre coefficients vector is foundto be

120578 = minusΩminus1

Ψ119909 (119896119894) (50)

withΩ = sum119873119901

119898=1120601(119898)119876120601(119898)

119879

+ 119877119871and Ψ = 120601(119898)119876119860

119898

524 Receding Horizon Control In receding horizon control(RHC) only the first term in Δ119880 that is Δ119906(119896

119894) is imple-

mented at instant 119896119894 The rest of the sequence is ignored

Only the most recent measurement is taken to form the statevector for calculation of the control signal This procedure isrepeated in real-time to give the receding horizon control law[6 8]

525 Stability In stability analysis we make use of the tech-nique of exponential data weighting originated by Andersonand Moore [9] and applied to MPC in [6] More specifically

we will concentrate on the discrete exponential factor 119890120582Δ119905where Δ119905 is the sampling interval and the discrete weightsform a geometric sequence 120572119895 119895 = 0 1 2

The proposed cost function is similar to the one usedin linear quadratic regulator (LQR) systems but with theinclusion of discrete weights

119869119908=

119873119901

sum

119895=1

120572minus2119895

119909 (119896119894+ 119895 | 119896

119894)119879

119876119909 (119896119894+ 119895 | 119896

119894)

+

119873119901

sum

119895=0

120572minus2119895

Δ119906 (119896119894+ 119895)

119879

119877Δ119906 (119896119894+ 119895)

(51)

For 120572 gt 1 the exponential weights 120572minus2119895 119895 = 1 2 3 119873119901

put more emphasis on the current state 119909(119896119894+ 119895 | 119896

119894) and less

emphasis on subsequent future statesThe exponentially weighted cost function can be

expressed more compactly as

119869119908=

119873119901

sum

119895=1

119909 (119896119894+ 119895 | 119896

119894)119879

119876119909 (119896119894+ 119895 | 119896

119894)

+

119873119901

sum

119895=0

Δ (119896119894+ 119895)

119879

119877Δ (119896119894+ 119895)

(52)

with state equation119909 (119896 + 1) = 119860

120572119909 (119896) + 119861

120572Δ (119896) (53)

and 119860120572= 119860120572 and 119861

120572= 119861120572

With 119876 ge 0 119877 gt 0 and 119873119901

rarr infin minimizing thecost function 119869

119908is equivalent to the DLQR problem which is

solved using algebraic Riccati equation (54)Thepair (119860120572 119861

120572)

is assumed to be controllable and (119860120572 119862) observable with

119876 = 119862119879

119862 Then there is a stabilizing state feedback controlgain matrix119870

119908

119870119908= (119877 + 120572

minus2

119861119879

119875119908119861)

minus1

120572minus2

119861119879

119875119908119860

119860119879

120572[119875

119908minus 119875

119908

119861

120572(119877 +

119861119879

120572119875119908

119861

120572)

minus1

119861119879

120572119875119908]119860

120572+ 119876 minus 119875

119908= 0

(54)that gives a stable closed loop system with all its eigenvaluesinside the unit circle and the the closed loop system beingdescribed by

119909 (119896119894+ 119895 + 1 | 119896

119894) = 120572

minus1

(119860 minus 119861119870119908) 119909 (119896

119894+ 119895 | 119896

119894) (55)

From (55) the transformed system has all its eigenvaluesinside the unit circle by taking119873

119901rarr infin So

120572minus1 1003816100381610038161003816120582max (119860 minus 119861119870

119908)1003816100381610038161003816 lt 1 (56)

which gives1003816100381610038161003816120582max (119860 minus 119861119870

119908)1003816100381610038161003816 lt 120572 (57)

Thus by choosing 120572 gt 1 there is a great chance that the systemwill be stable Several simulations on the quadrotor systemindicate that a choice of 120572 slightly greater than unity makesthe system stable almost all the time

8 Abstract and Applied Analysis

Table 1

Parameter ValueMass119898 07 kgLength 119897 0275m119869119909

01063 kgsdotm2

119869119910

01063 kgsdotm2

119869119911

02122 kgsdotm2

Table 2

Control horizon119873119888

119873 Required 119886

10 5 0606515 5 0716520 5 0778825 5 0818750 5 09048

6 Simulation Parameters and Results

In order to illustrate the controllerrsquos stability we will checkif the eigenvalues of each of the three individual controllersappear inside a unit circle Andwewill use a trajectory in a 3Dplane to check the overall controllerrsquos ability to track a desiredtrajectory

Table 1 shows the parameters of the quadrotor used insimulation

61 Stability Analysis In this section we look at the locationof eigenvalues of LMPC and check if they fall within the unitcircle for stability of the system We also compare them tothose obtained from the optimal DLQR system To ensurestability as explained in Section 525 we use 120572 = 12

By looking at Figure 4 we note that all the eigenvaluesappear inside the unit circle as required Also the eigenvaluesobtained from LMPC closely match with those of the optimalDLQRThis not only shows the system is stable but also showsthe controllers perform optimally

62 Trajectory Tracking In this section we look at theperformance of LMPC when used to track a 3D trajectoryAlso LMPC is compared to SS-MPC and individual statetrajectories are observed The starting point of the trajectoryis (119909 119910 119911) = (0 0 0) and final point is (119909 119910 119911) = (5 5 10)Parameter 119886 = 08187 while119873 = 5 See Figure 5

Clearly both LMPC and SS-MPC track the desired tra-jectory very well See Figures 5 6 and 7 However LMPCperforms better than SS-MPC in that it requires only fiveparameters (119873 = 5) to capture the control trajectorycompared to SS-MPCrsquosminimumof 25 (119873

119888= 25) parameters

(see Table 2 for relationship of119873 and119873119888with 119886 = 08187)

63 Control Horizon in Relation to 119886 and 119873 The controlhorizon (119873

119888) is related to the parameters 119886 and119873 [2] by

119886 asymp 119890minus119873119873

119888 (58)

minus1 minus08 minus06 minus04 minus02 0 02 04 06 08 1minus1

minus08

minus06

minus04

minus02

0

02

04

06

08

1

Real

Imag

inar

yLMPCDLQR

Figure 4 Eigenvalues for DLQR and LMPC in altitude control

0 1 2 3 4 5 6

02

46

0

2

4

6

8

10

xy

z

DesiredSS-MPCLMPC

Figure 5 Tracking a 3D trajectory

631 Constant 119873 Using (58) and choosing a constantparameter119873 = 5 we get Table 2

Thus we can increase the control horizon by increasingthe parameter 119886 without necessarily changing the order119873

632 Constant Control Horizon 119873119888 Assuming we want to

achieve a control horizon of 30 we choose one parameterusually 119873 because it is an integer and directly defines theorder of the discrete Laguerre networkTherefater we simplyuse (58) to find the corresponding scaling factor 119886 as shownin Table 3

Abstract and Applied Analysis 9

0 500 1000 1500 2000 2500 3000 3500 40000

1

2

3

4

5

6

Time (ms)

x p

ositi

on

DesiredSS-MPCLMPC

(a)

0 500 1000 1500 2000 2500 3000 3500 4000Time (ms)

0

1

2

3

4

5

6

y p

ositi

on

DesiredSS-MPCLMPC

(b)

Figure 6 Tracking 119909 (a) and 119910 in (b)

2

4

6

8

10

12

00

500 1000 1500 2000 2500 3000 3500 4000Time (ms)

z p

ositi

on (m

)

DesiredSS-MPCLMPC

(a)

0

01

02

03

04

05

0 500 1000 1500 2000 2500 3000 3500 4000Time (ms)

Hea

ding

angl

e120595

DesiredSS-MPCLMPC

(b)

Figure 7 Altitude (119911) (a) and heading angle (120595) (b)

Table 3

Target control horizon119873119888

Chosen119873 Required 119886

30 1 0967230 3 0904830 5 0846530 7 0791930 9 07408

Figures 8 9 10 11 12 and 13 compare two LMPC designsboth of which yield a control horizon of 30 One designuses 119873 = 1 and the other 119873 = 9 Thus we can choose aLaguerre network with lower number of terms119873 (that gives

lower computation burden) but with a larger scaling factor119886 to achieve the same control horizon The computationalcost is lower if a smaller number of parameters are usedFor 119873 = 1 only one Laguerre term is used to capture thecontrol trajectory while119873 = 9 requires nine Laguerre termsto capture the same control trajectory

7 Conclusion

This paper has presented a solution to stability and trajectorytracking of quadrotor systems using a model predictivecontroller designed by using a special type of orthonor-mal functions called Laguerre functions A quadratic cost

10 Abstract and Applied Analysis

0 05 1 15 2 25 3 35 40

1

2

3

4

5

6

Time (s)

x (m

)

DesiredLMPC

Figure 8 119909 trajectory119873 = 1

0 05 1 15 2 25 3 35 40

1

2

3

4

5

6

Time (s)

x (m

)

DesiredLMPC

Figure 9 119909 trajectory119873 = 9

0 05 1 15 2 25 3 35 40

1

2

3

4

5

6

Time (s)

y (m

)

DesiredLMPC

Figure 10 119910 trajectory119873 = 1

0 05 1 15 2 25 3 35 40

1

2

3

4

5

6

Time (s)

y (m

)

DesiredLMPC

Figure 11 119910 trajectory119873 = 9

0

2

4

6

8

10A

ltitu

de (m

)

Altitude

0 05 1 15 2 25 3 35 4Time (s)

DesiredLMPC

Figure 12 119911 trajectory119873 = 1

0

2

4

6

8

10

Alti

tude

(m)

Altitude

0 05 1 15 2 25 3 35 4Time (s)

DesiredLMPC

Figure 13 119911 trajectory119873 = 9

Abstract and Applied Analysis 11

function similar to that used in linear quadratic regulator(LQR) has been used In stability analysis LMPC has beencompared to the optimal DLQR system whereas in trajectorytracking LMPC has been compared to a popular linear state-space MPC desgin technique in which plant constraints aremodeled using linear equalities and inequalities The resultsfrom the simulations indicate that the controller performsvery well and is considered feasible With this perceivedfeasibility LMPCoffers the added advantage that it can handlesystems where rapid sampling and more complicated processdynamics are required [5 10] By selecting appropriate valuesof 119886 and119873 LMPC reduces the number of parameters requiredfor accurate prediction when using the traditional (MPC)approach This is a big advantage in that with the reducednumber of parameters online implementation might bepossible where the traditional MPC would have failed

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper

Acknowledgment

This work was supported by the National Research Foun-dation of Korea (NRF) grant funded by the Koreangovernment (MEST) (no 2013R1A2A2A01068127 and no2013R1A1A2A10009458)

References

[1] J M Maciejowski Predictive Control with Constraints PrenticeHall New York NY USA 1st edition 2002

[2] L Wang ldquoDiscrete time model predictive control design usingLaguerre functionsrdquo in Proceedings of the American ControlConference pp 2430ndash2435 Arlington Va USA June 2001

[3] K Alexis G Nikolakopoulos and A Tzes ldquoExperimentalmodel predictive attitude tracking control of a quadrotorhelicopter subject to wind-gustsrdquo in Proceedings of the 18thMediterranean Conference on Control amp Automation (MED rsquo10)pp 1461ndash1466 IEEE Marrakech Morocco June 2010

[4] G V RaffoM G Ortega and F R Rubio ldquoMPCwith nonlinear119867infin

control for path tracking of a quad-rotor helicopterrdquo inProceedings of the 17th World Congress International Federationof Automatic Control (IFAC rsquo08) July 2008

[5] A M Singh D J Lee D P Hong and K T Chong ldquoSucces-sive loop closure based controller design for an autonomousquadrotor vehiclerdquo Applied Mechanics and Materials vol 483pp 361ndash367 2014

[6] L Wang Model Predictive Control Design and ImplementationUsing MATLAB Advances in Industrial Control Springer NewYork NY USA 1st edition 2009

[7] A G Wills ldquoTechnical report EE04025-Notes on linear modelpredictive controlrdquo December 2004

[8] Y Gao C G Lee and K T Chong ldquoReceding horizon trackingcontrol for wheeled mobile robots with time-delayrdquo Journal ofMechanical Science and Technology vol 22 no 12 pp 2403ndash2416 2008

[9] B D O Anderson and J B Moore Linear Optimal ControlPrentice-Hall 1971

[10] J A Rossiter and L Wang ldquoExploiting Laguerre functions toimprove the feasibilityperformance compromise in MPCrdquo inProceedings of the 47th IEEE Conference onDecision and Control(CDC rsquo08) pp 4737ndash4742 December 2008

Submit your manuscripts athttpwwwhindawicom

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical Problems in Engineering

Hindawi Publishing Corporationhttpwwwhindawicom

Differential EquationsInternational Journal of

Volume 2014

Applied MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

OptimizationJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Operations ResearchAdvances in

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Function Spaces

Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of Mathematics and Mathematical Sciences

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Algebra

Discrete Dynamics in Nature and Society

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Decision SciencesAdvances in

Discrete MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Stochastic AnalysisInternational Journal of

Page 7: Research Article Trajectory Tracking and ... - Hindawi

Abstract and Applied Analysis 7

where 119896 = 0 1 2 119873119901with 119873

119901as the prediction horizon

119873 terms used in the expansion and 119897119895(119896119894) is the inverse 119911-

transform of the 119895th term in the discrete Laguerre networkEquation (44) can be rewritten as

Δ119906 (119896119894+ 119896) = 119871 (119896)

120578 (45)

where 119871(119896) = [1198971(119896) 119897

2(119896) sdot sdot sdot 119897

119873(119896)]

119879 120578 = [11988811198882sdot sdot sdot 119888

119873]119879

and the coefficients 1198881 1198882 119888

119873are obtained from system

dataAt an arbitrary future instant 119898 the state is described

using Laguerre functions as

119909 (119896119894+ 119898 | 119896

119894) = 119860

119898

119909 (119896119894) +

119898minus1

sum

119894=0

119860119898minus119894minus1

119861119871 (119894)119879

120578 (46)

Similarly the output is described as

119910 (119896119894+ 119898 | 119896

119894) = 119862119860

119898

119909 (119896119894) +

119898minus1

sum

119894=0

119862119860119898minus119894minus1

119861119871 (119894)119879

120578 (47)

522 Cost Function The cost function is used to choose theoptimal control trajectory Δ119880 to bring the predicted outputas close as possible to the set-point The cost function

119869 =

119873119901

sum

119898=1

119909 (119896119894+ 119898 | 119896

119894)119879

119876119909 (119896119894+ 119898 | 119896

119894) + 120578

119879

119877119871120578 (48)

minimizes the error between the set-point signal and theoutput in the shortest possible time by carefully tuning theweighting matrices 119876 ge 0 and 119877

119871gt 0

523 Cost Function Minimization The state variable in (46)can be rewritten as

119909 (119896119894+ 119898 | 119896

119894) = 119860

119898

119909 (119896119894) + 120601 (119898)

119879

120578 (49)

where 120601(119898)119879

= sum119898minus1

119894=0119860119898minus119894minus1

119861119871(119894)119879

By substituting (49) into (48) and performing the partialderivative 120597119869120597120578 = 0 the Laguerre coefficients vector is foundto be

120578 = minusΩminus1

Ψ119909 (119896119894) (50)

withΩ = sum119873119901

119898=1120601(119898)119876120601(119898)

119879

+ 119877119871and Ψ = 120601(119898)119876119860

119898

524 Receding Horizon Control In receding horizon control(RHC) only the first term in Δ119880 that is Δ119906(119896

119894) is imple-

mented at instant 119896119894 The rest of the sequence is ignored

Only the most recent measurement is taken to form the statevector for calculation of the control signal This procedure isrepeated in real-time to give the receding horizon control law[6 8]

525 Stability In stability analysis we make use of the tech-nique of exponential data weighting originated by Andersonand Moore [9] and applied to MPC in [6] More specifically

we will concentrate on the discrete exponential factor 119890120582Δ119905where Δ119905 is the sampling interval and the discrete weightsform a geometric sequence 120572119895 119895 = 0 1 2

The proposed cost function is similar to the one usedin linear quadratic regulator (LQR) systems but with theinclusion of discrete weights

119869119908=

119873119901

sum

119895=1

120572minus2119895

119909 (119896119894+ 119895 | 119896

119894)119879

119876119909 (119896119894+ 119895 | 119896

119894)

+

119873119901

sum

119895=0

120572minus2119895

Δ119906 (119896119894+ 119895)

119879

119877Δ119906 (119896119894+ 119895)

(51)

For 120572 gt 1 the exponential weights 120572minus2119895 119895 = 1 2 3 119873119901

put more emphasis on the current state 119909(119896119894+ 119895 | 119896

119894) and less

emphasis on subsequent future statesThe exponentially weighted cost function can be

expressed more compactly as

119869119908=

119873119901

sum

119895=1

119909 (119896119894+ 119895 | 119896

119894)119879

119876119909 (119896119894+ 119895 | 119896

119894)

+

119873119901

sum

119895=0

Δ (119896119894+ 119895)

119879

119877Δ (119896119894+ 119895)

(52)

with state equation119909 (119896 + 1) = 119860

120572119909 (119896) + 119861

120572Δ (119896) (53)

and 119860120572= 119860120572 and 119861

120572= 119861120572

With 119876 ge 0 119877 gt 0 and 119873119901

rarr infin minimizing thecost function 119869

119908is equivalent to the DLQR problem which is

solved using algebraic Riccati equation (54)Thepair (119860120572 119861

120572)

is assumed to be controllable and (119860120572 119862) observable with

119876 = 119862119879

119862 Then there is a stabilizing state feedback controlgain matrix119870

119908

119870119908= (119877 + 120572

minus2

119861119879

119875119908119861)

minus1

120572minus2

119861119879

119875119908119860

119860119879

120572[119875

119908minus 119875

119908

119861

120572(119877 +

119861119879

120572119875119908

119861

120572)

minus1

119861119879

120572119875119908]119860

120572+ 119876 minus 119875

119908= 0

(54)that gives a stable closed loop system with all its eigenvaluesinside the unit circle and the the closed loop system beingdescribed by

119909 (119896119894+ 119895 + 1 | 119896

119894) = 120572

minus1

(119860 minus 119861119870119908) 119909 (119896

119894+ 119895 | 119896

119894) (55)

From (55) the transformed system has all its eigenvaluesinside the unit circle by taking119873

119901rarr infin So

120572minus1 1003816100381610038161003816120582max (119860 minus 119861119870

119908)1003816100381610038161003816 lt 1 (56)

which gives1003816100381610038161003816120582max (119860 minus 119861119870

119908)1003816100381610038161003816 lt 120572 (57)

Thus by choosing 120572 gt 1 there is a great chance that the systemwill be stable Several simulations on the quadrotor systemindicate that a choice of 120572 slightly greater than unity makesthe system stable almost all the time

8 Abstract and Applied Analysis

Table 1

Parameter ValueMass119898 07 kgLength 119897 0275m119869119909

01063 kgsdotm2

119869119910

01063 kgsdotm2

119869119911

02122 kgsdotm2

Table 2

Control horizon119873119888

119873 Required 119886

10 5 0606515 5 0716520 5 0778825 5 0818750 5 09048

6 Simulation Parameters and Results

In order to illustrate the controllerrsquos stability we will checkif the eigenvalues of each of the three individual controllersappear inside a unit circle Andwewill use a trajectory in a 3Dplane to check the overall controllerrsquos ability to track a desiredtrajectory

Table 1 shows the parameters of the quadrotor used insimulation

61 Stability Analysis In this section we look at the locationof eigenvalues of LMPC and check if they fall within the unitcircle for stability of the system We also compare them tothose obtained from the optimal DLQR system To ensurestability as explained in Section 525 we use 120572 = 12

By looking at Figure 4 we note that all the eigenvaluesappear inside the unit circle as required Also the eigenvaluesobtained from LMPC closely match with those of the optimalDLQRThis not only shows the system is stable but also showsthe controllers perform optimally

62 Trajectory Tracking In this section we look at theperformance of LMPC when used to track a 3D trajectoryAlso LMPC is compared to SS-MPC and individual statetrajectories are observed The starting point of the trajectoryis (119909 119910 119911) = (0 0 0) and final point is (119909 119910 119911) = (5 5 10)Parameter 119886 = 08187 while119873 = 5 See Figure 5

Clearly both LMPC and SS-MPC track the desired tra-jectory very well See Figures 5 6 and 7 However LMPCperforms better than SS-MPC in that it requires only fiveparameters (119873 = 5) to capture the control trajectorycompared to SS-MPCrsquosminimumof 25 (119873

119888= 25) parameters

(see Table 2 for relationship of119873 and119873119888with 119886 = 08187)

63 Control Horizon in Relation to 119886 and 119873 The controlhorizon (119873

119888) is related to the parameters 119886 and119873 [2] by

119886 asymp 119890minus119873119873

119888 (58)

minus1 minus08 minus06 minus04 minus02 0 02 04 06 08 1minus1

minus08

minus06

minus04

minus02

0

02

04

06

08

1

Real

Imag

inar

yLMPCDLQR

Figure 4 Eigenvalues for DLQR and LMPC in altitude control

0 1 2 3 4 5 6

02

46

0

2

4

6

8

10

xy

z

DesiredSS-MPCLMPC

Figure 5 Tracking a 3D trajectory

631 Constant 119873 Using (58) and choosing a constantparameter119873 = 5 we get Table 2

Thus we can increase the control horizon by increasingthe parameter 119886 without necessarily changing the order119873

632 Constant Control Horizon 119873119888 Assuming we want to

achieve a control horizon of 30 we choose one parameterusually 119873 because it is an integer and directly defines theorder of the discrete Laguerre networkTherefater we simplyuse (58) to find the corresponding scaling factor 119886 as shownin Table 3

Abstract and Applied Analysis 9

0 500 1000 1500 2000 2500 3000 3500 40000

1

2

3

4

5

6

Time (ms)

x p

ositi

on

DesiredSS-MPCLMPC

(a)

0 500 1000 1500 2000 2500 3000 3500 4000Time (ms)

0

1

2

3

4

5

6

y p

ositi

on

DesiredSS-MPCLMPC

(b)

Figure 6 Tracking 119909 (a) and 119910 in (b)

2

4

6

8

10

12

00

500 1000 1500 2000 2500 3000 3500 4000Time (ms)

z p

ositi

on (m

)

DesiredSS-MPCLMPC

(a)

0

01

02

03

04

05

0 500 1000 1500 2000 2500 3000 3500 4000Time (ms)

Hea

ding

angl

e120595

DesiredSS-MPCLMPC

(b)

Figure 7 Altitude (119911) (a) and heading angle (120595) (b)

Table 3

Target control horizon119873119888

Chosen119873 Required 119886

30 1 0967230 3 0904830 5 0846530 7 0791930 9 07408

Figures 8 9 10 11 12 and 13 compare two LMPC designsboth of which yield a control horizon of 30 One designuses 119873 = 1 and the other 119873 = 9 Thus we can choose aLaguerre network with lower number of terms119873 (that gives

lower computation burden) but with a larger scaling factor119886 to achieve the same control horizon The computationalcost is lower if a smaller number of parameters are usedFor 119873 = 1 only one Laguerre term is used to capture thecontrol trajectory while119873 = 9 requires nine Laguerre termsto capture the same control trajectory

7 Conclusion

This paper has presented a solution to stability and trajectorytracking of quadrotor systems using a model predictivecontroller designed by using a special type of orthonor-mal functions called Laguerre functions A quadratic cost

10 Abstract and Applied Analysis

0 05 1 15 2 25 3 35 40

1

2

3

4

5

6

Time (s)

x (m

)

DesiredLMPC

Figure 8 119909 trajectory119873 = 1

0 05 1 15 2 25 3 35 40

1

2

3

4

5

6

Time (s)

x (m

)

DesiredLMPC

Figure 9 119909 trajectory119873 = 9

0 05 1 15 2 25 3 35 40

1

2

3

4

5

6

Time (s)

y (m

)

DesiredLMPC

Figure 10 119910 trajectory119873 = 1

0 05 1 15 2 25 3 35 40

1

2

3

4

5

6

Time (s)

y (m

)

DesiredLMPC

Figure 11 119910 trajectory119873 = 9

0

2

4

6

8

10A

ltitu

de (m

)

Altitude

0 05 1 15 2 25 3 35 4Time (s)

DesiredLMPC

Figure 12 119911 trajectory119873 = 1

0

2

4

6

8

10

Alti

tude

(m)

Altitude

0 05 1 15 2 25 3 35 4Time (s)

DesiredLMPC

Figure 13 119911 trajectory119873 = 9

Abstract and Applied Analysis 11

function similar to that used in linear quadratic regulator(LQR) has been used In stability analysis LMPC has beencompared to the optimal DLQR system whereas in trajectorytracking LMPC has been compared to a popular linear state-space MPC desgin technique in which plant constraints aremodeled using linear equalities and inequalities The resultsfrom the simulations indicate that the controller performsvery well and is considered feasible With this perceivedfeasibility LMPCoffers the added advantage that it can handlesystems where rapid sampling and more complicated processdynamics are required [5 10] By selecting appropriate valuesof 119886 and119873 LMPC reduces the number of parameters requiredfor accurate prediction when using the traditional (MPC)approach This is a big advantage in that with the reducednumber of parameters online implementation might bepossible where the traditional MPC would have failed

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper

Acknowledgment

This work was supported by the National Research Foun-dation of Korea (NRF) grant funded by the Koreangovernment (MEST) (no 2013R1A2A2A01068127 and no2013R1A1A2A10009458)

References

[1] J M Maciejowski Predictive Control with Constraints PrenticeHall New York NY USA 1st edition 2002

[2] L Wang ldquoDiscrete time model predictive control design usingLaguerre functionsrdquo in Proceedings of the American ControlConference pp 2430ndash2435 Arlington Va USA June 2001

[3] K Alexis G Nikolakopoulos and A Tzes ldquoExperimentalmodel predictive attitude tracking control of a quadrotorhelicopter subject to wind-gustsrdquo in Proceedings of the 18thMediterranean Conference on Control amp Automation (MED rsquo10)pp 1461ndash1466 IEEE Marrakech Morocco June 2010

[4] G V RaffoM G Ortega and F R Rubio ldquoMPCwith nonlinear119867infin

control for path tracking of a quad-rotor helicopterrdquo inProceedings of the 17th World Congress International Federationof Automatic Control (IFAC rsquo08) July 2008

[5] A M Singh D J Lee D P Hong and K T Chong ldquoSucces-sive loop closure based controller design for an autonomousquadrotor vehiclerdquo Applied Mechanics and Materials vol 483pp 361ndash367 2014

[6] L Wang Model Predictive Control Design and ImplementationUsing MATLAB Advances in Industrial Control Springer NewYork NY USA 1st edition 2009

[7] A G Wills ldquoTechnical report EE04025-Notes on linear modelpredictive controlrdquo December 2004

[8] Y Gao C G Lee and K T Chong ldquoReceding horizon trackingcontrol for wheeled mobile robots with time-delayrdquo Journal ofMechanical Science and Technology vol 22 no 12 pp 2403ndash2416 2008

[9] B D O Anderson and J B Moore Linear Optimal ControlPrentice-Hall 1971

[10] J A Rossiter and L Wang ldquoExploiting Laguerre functions toimprove the feasibilityperformance compromise in MPCrdquo inProceedings of the 47th IEEE Conference onDecision and Control(CDC rsquo08) pp 4737ndash4742 December 2008

Submit your manuscripts athttpwwwhindawicom

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical Problems in Engineering

Hindawi Publishing Corporationhttpwwwhindawicom

Differential EquationsInternational Journal of

Volume 2014

Applied MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

OptimizationJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Operations ResearchAdvances in

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Function Spaces

Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of Mathematics and Mathematical Sciences

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Algebra

Discrete Dynamics in Nature and Society

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Decision SciencesAdvances in

Discrete MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Stochastic AnalysisInternational Journal of

Page 8: Research Article Trajectory Tracking and ... - Hindawi

8 Abstract and Applied Analysis

Table 1

Parameter ValueMass119898 07 kgLength 119897 0275m119869119909

01063 kgsdotm2

119869119910

01063 kgsdotm2

119869119911

02122 kgsdotm2

Table 2

Control horizon119873119888

119873 Required 119886

10 5 0606515 5 0716520 5 0778825 5 0818750 5 09048

6 Simulation Parameters and Results

In order to illustrate the controllerrsquos stability we will checkif the eigenvalues of each of the three individual controllersappear inside a unit circle Andwewill use a trajectory in a 3Dplane to check the overall controllerrsquos ability to track a desiredtrajectory

Table 1 shows the parameters of the quadrotor used insimulation

61 Stability Analysis In this section we look at the locationof eigenvalues of LMPC and check if they fall within the unitcircle for stability of the system We also compare them tothose obtained from the optimal DLQR system To ensurestability as explained in Section 525 we use 120572 = 12

By looking at Figure 4 we note that all the eigenvaluesappear inside the unit circle as required Also the eigenvaluesobtained from LMPC closely match with those of the optimalDLQRThis not only shows the system is stable but also showsthe controllers perform optimally

62 Trajectory Tracking In this section we look at theperformance of LMPC when used to track a 3D trajectoryAlso LMPC is compared to SS-MPC and individual statetrajectories are observed The starting point of the trajectoryis (119909 119910 119911) = (0 0 0) and final point is (119909 119910 119911) = (5 5 10)Parameter 119886 = 08187 while119873 = 5 See Figure 5

Clearly both LMPC and SS-MPC track the desired tra-jectory very well See Figures 5 6 and 7 However LMPCperforms better than SS-MPC in that it requires only fiveparameters (119873 = 5) to capture the control trajectorycompared to SS-MPCrsquosminimumof 25 (119873

119888= 25) parameters

(see Table 2 for relationship of119873 and119873119888with 119886 = 08187)

63 Control Horizon in Relation to 119886 and 119873 The controlhorizon (119873

119888) is related to the parameters 119886 and119873 [2] by

119886 asymp 119890minus119873119873

119888 (58)

minus1 minus08 minus06 minus04 minus02 0 02 04 06 08 1minus1

minus08

minus06

minus04

minus02

0

02

04

06

08

1

Real

Imag

inar

yLMPCDLQR

Figure 4 Eigenvalues for DLQR and LMPC in altitude control

0 1 2 3 4 5 6

02

46

0

2

4

6

8

10

xy

z

DesiredSS-MPCLMPC

Figure 5 Tracking a 3D trajectory

631 Constant 119873 Using (58) and choosing a constantparameter119873 = 5 we get Table 2

Thus we can increase the control horizon by increasingthe parameter 119886 without necessarily changing the order119873

632 Constant Control Horizon 119873119888 Assuming we want to

achieve a control horizon of 30 we choose one parameterusually 119873 because it is an integer and directly defines theorder of the discrete Laguerre networkTherefater we simplyuse (58) to find the corresponding scaling factor 119886 as shownin Table 3

Abstract and Applied Analysis 9

0 500 1000 1500 2000 2500 3000 3500 40000

1

2

3

4

5

6

Time (ms)

x p

ositi

on

DesiredSS-MPCLMPC

(a)

0 500 1000 1500 2000 2500 3000 3500 4000Time (ms)

0

1

2

3

4

5

6

y p

ositi

on

DesiredSS-MPCLMPC

(b)

Figure 6 Tracking 119909 (a) and 119910 in (b)

2

4

6

8

10

12

00

500 1000 1500 2000 2500 3000 3500 4000Time (ms)

z p

ositi

on (m

)

DesiredSS-MPCLMPC

(a)

0

01

02

03

04

05

0 500 1000 1500 2000 2500 3000 3500 4000Time (ms)

Hea

ding

angl

e120595

DesiredSS-MPCLMPC

(b)

Figure 7 Altitude (119911) (a) and heading angle (120595) (b)

Table 3

Target control horizon119873119888

Chosen119873 Required 119886

30 1 0967230 3 0904830 5 0846530 7 0791930 9 07408

Figures 8 9 10 11 12 and 13 compare two LMPC designsboth of which yield a control horizon of 30 One designuses 119873 = 1 and the other 119873 = 9 Thus we can choose aLaguerre network with lower number of terms119873 (that gives

lower computation burden) but with a larger scaling factor119886 to achieve the same control horizon The computationalcost is lower if a smaller number of parameters are usedFor 119873 = 1 only one Laguerre term is used to capture thecontrol trajectory while119873 = 9 requires nine Laguerre termsto capture the same control trajectory

7 Conclusion

This paper has presented a solution to stability and trajectorytracking of quadrotor systems using a model predictivecontroller designed by using a special type of orthonor-mal functions called Laguerre functions A quadratic cost

10 Abstract and Applied Analysis

0 05 1 15 2 25 3 35 40

1

2

3

4

5

6

Time (s)

x (m

)

DesiredLMPC

Figure 8 119909 trajectory119873 = 1

0 05 1 15 2 25 3 35 40

1

2

3

4

5

6

Time (s)

x (m

)

DesiredLMPC

Figure 9 119909 trajectory119873 = 9

0 05 1 15 2 25 3 35 40

1

2

3

4

5

6

Time (s)

y (m

)

DesiredLMPC

Figure 10 119910 trajectory119873 = 1

0 05 1 15 2 25 3 35 40

1

2

3

4

5

6

Time (s)

y (m

)

DesiredLMPC

Figure 11 119910 trajectory119873 = 9

0

2

4

6

8

10A

ltitu

de (m

)

Altitude

0 05 1 15 2 25 3 35 4Time (s)

DesiredLMPC

Figure 12 119911 trajectory119873 = 1

0

2

4

6

8

10

Alti

tude

(m)

Altitude

0 05 1 15 2 25 3 35 4Time (s)

DesiredLMPC

Figure 13 119911 trajectory119873 = 9

Abstract and Applied Analysis 11

function similar to that used in linear quadratic regulator(LQR) has been used In stability analysis LMPC has beencompared to the optimal DLQR system whereas in trajectorytracking LMPC has been compared to a popular linear state-space MPC desgin technique in which plant constraints aremodeled using linear equalities and inequalities The resultsfrom the simulations indicate that the controller performsvery well and is considered feasible With this perceivedfeasibility LMPCoffers the added advantage that it can handlesystems where rapid sampling and more complicated processdynamics are required [5 10] By selecting appropriate valuesof 119886 and119873 LMPC reduces the number of parameters requiredfor accurate prediction when using the traditional (MPC)approach This is a big advantage in that with the reducednumber of parameters online implementation might bepossible where the traditional MPC would have failed

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper

Acknowledgment

This work was supported by the National Research Foun-dation of Korea (NRF) grant funded by the Koreangovernment (MEST) (no 2013R1A2A2A01068127 and no2013R1A1A2A10009458)

References

[1] J M Maciejowski Predictive Control with Constraints PrenticeHall New York NY USA 1st edition 2002

[2] L Wang ldquoDiscrete time model predictive control design usingLaguerre functionsrdquo in Proceedings of the American ControlConference pp 2430ndash2435 Arlington Va USA June 2001

[3] K Alexis G Nikolakopoulos and A Tzes ldquoExperimentalmodel predictive attitude tracking control of a quadrotorhelicopter subject to wind-gustsrdquo in Proceedings of the 18thMediterranean Conference on Control amp Automation (MED rsquo10)pp 1461ndash1466 IEEE Marrakech Morocco June 2010

[4] G V RaffoM G Ortega and F R Rubio ldquoMPCwith nonlinear119867infin

control for path tracking of a quad-rotor helicopterrdquo inProceedings of the 17th World Congress International Federationof Automatic Control (IFAC rsquo08) July 2008

[5] A M Singh D J Lee D P Hong and K T Chong ldquoSucces-sive loop closure based controller design for an autonomousquadrotor vehiclerdquo Applied Mechanics and Materials vol 483pp 361ndash367 2014

[6] L Wang Model Predictive Control Design and ImplementationUsing MATLAB Advances in Industrial Control Springer NewYork NY USA 1st edition 2009

[7] A G Wills ldquoTechnical report EE04025-Notes on linear modelpredictive controlrdquo December 2004

[8] Y Gao C G Lee and K T Chong ldquoReceding horizon trackingcontrol for wheeled mobile robots with time-delayrdquo Journal ofMechanical Science and Technology vol 22 no 12 pp 2403ndash2416 2008

[9] B D O Anderson and J B Moore Linear Optimal ControlPrentice-Hall 1971

[10] J A Rossiter and L Wang ldquoExploiting Laguerre functions toimprove the feasibilityperformance compromise in MPCrdquo inProceedings of the 47th IEEE Conference onDecision and Control(CDC rsquo08) pp 4737ndash4742 December 2008

Submit your manuscripts athttpwwwhindawicom

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical Problems in Engineering

Hindawi Publishing Corporationhttpwwwhindawicom

Differential EquationsInternational Journal of

Volume 2014

Applied MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

OptimizationJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Operations ResearchAdvances in

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Function Spaces

Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of Mathematics and Mathematical Sciences

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Algebra

Discrete Dynamics in Nature and Society

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Decision SciencesAdvances in

Discrete MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Stochastic AnalysisInternational Journal of

Page 9: Research Article Trajectory Tracking and ... - Hindawi

Abstract and Applied Analysis 9

0 500 1000 1500 2000 2500 3000 3500 40000

1

2

3

4

5

6

Time (ms)

x p

ositi

on

DesiredSS-MPCLMPC

(a)

0 500 1000 1500 2000 2500 3000 3500 4000Time (ms)

0

1

2

3

4

5

6

y p

ositi

on

DesiredSS-MPCLMPC

(b)

Figure 6 Tracking 119909 (a) and 119910 in (b)

2

4

6

8

10

12

00

500 1000 1500 2000 2500 3000 3500 4000Time (ms)

z p

ositi

on (m

)

DesiredSS-MPCLMPC

(a)

0

01

02

03

04

05

0 500 1000 1500 2000 2500 3000 3500 4000Time (ms)

Hea

ding

angl

e120595

DesiredSS-MPCLMPC

(b)

Figure 7 Altitude (119911) (a) and heading angle (120595) (b)

Table 3

Target control horizon119873119888

Chosen119873 Required 119886

30 1 0967230 3 0904830 5 0846530 7 0791930 9 07408

Figures 8 9 10 11 12 and 13 compare two LMPC designsboth of which yield a control horizon of 30 One designuses 119873 = 1 and the other 119873 = 9 Thus we can choose aLaguerre network with lower number of terms119873 (that gives

lower computation burden) but with a larger scaling factor119886 to achieve the same control horizon The computationalcost is lower if a smaller number of parameters are usedFor 119873 = 1 only one Laguerre term is used to capture thecontrol trajectory while119873 = 9 requires nine Laguerre termsto capture the same control trajectory

7 Conclusion

This paper has presented a solution to stability and trajectorytracking of quadrotor systems using a model predictivecontroller designed by using a special type of orthonor-mal functions called Laguerre functions A quadratic cost

10 Abstract and Applied Analysis

0 05 1 15 2 25 3 35 40

1

2

3

4

5

6

Time (s)

x (m

)

DesiredLMPC

Figure 8 119909 trajectory119873 = 1

0 05 1 15 2 25 3 35 40

1

2

3

4

5

6

Time (s)

x (m

)

DesiredLMPC

Figure 9 119909 trajectory119873 = 9

0 05 1 15 2 25 3 35 40

1

2

3

4

5

6

Time (s)

y (m

)

DesiredLMPC

Figure 10 119910 trajectory119873 = 1

0 05 1 15 2 25 3 35 40

1

2

3

4

5

6

Time (s)

y (m

)

DesiredLMPC

Figure 11 119910 trajectory119873 = 9

0

2

4

6

8

10A

ltitu

de (m

)

Altitude

0 05 1 15 2 25 3 35 4Time (s)

DesiredLMPC

Figure 12 119911 trajectory119873 = 1

0

2

4

6

8

10

Alti

tude

(m)

Altitude

0 05 1 15 2 25 3 35 4Time (s)

DesiredLMPC

Figure 13 119911 trajectory119873 = 9

Abstract and Applied Analysis 11

function similar to that used in linear quadratic regulator(LQR) has been used In stability analysis LMPC has beencompared to the optimal DLQR system whereas in trajectorytracking LMPC has been compared to a popular linear state-space MPC desgin technique in which plant constraints aremodeled using linear equalities and inequalities The resultsfrom the simulations indicate that the controller performsvery well and is considered feasible With this perceivedfeasibility LMPCoffers the added advantage that it can handlesystems where rapid sampling and more complicated processdynamics are required [5 10] By selecting appropriate valuesof 119886 and119873 LMPC reduces the number of parameters requiredfor accurate prediction when using the traditional (MPC)approach This is a big advantage in that with the reducednumber of parameters online implementation might bepossible where the traditional MPC would have failed

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper

Acknowledgment

This work was supported by the National Research Foun-dation of Korea (NRF) grant funded by the Koreangovernment (MEST) (no 2013R1A2A2A01068127 and no2013R1A1A2A10009458)

References

[1] J M Maciejowski Predictive Control with Constraints PrenticeHall New York NY USA 1st edition 2002

[2] L Wang ldquoDiscrete time model predictive control design usingLaguerre functionsrdquo in Proceedings of the American ControlConference pp 2430ndash2435 Arlington Va USA June 2001

[3] K Alexis G Nikolakopoulos and A Tzes ldquoExperimentalmodel predictive attitude tracking control of a quadrotorhelicopter subject to wind-gustsrdquo in Proceedings of the 18thMediterranean Conference on Control amp Automation (MED rsquo10)pp 1461ndash1466 IEEE Marrakech Morocco June 2010

[4] G V RaffoM G Ortega and F R Rubio ldquoMPCwith nonlinear119867infin

control for path tracking of a quad-rotor helicopterrdquo inProceedings of the 17th World Congress International Federationof Automatic Control (IFAC rsquo08) July 2008

[5] A M Singh D J Lee D P Hong and K T Chong ldquoSucces-sive loop closure based controller design for an autonomousquadrotor vehiclerdquo Applied Mechanics and Materials vol 483pp 361ndash367 2014

[6] L Wang Model Predictive Control Design and ImplementationUsing MATLAB Advances in Industrial Control Springer NewYork NY USA 1st edition 2009

[7] A G Wills ldquoTechnical report EE04025-Notes on linear modelpredictive controlrdquo December 2004

[8] Y Gao C G Lee and K T Chong ldquoReceding horizon trackingcontrol for wheeled mobile robots with time-delayrdquo Journal ofMechanical Science and Technology vol 22 no 12 pp 2403ndash2416 2008

[9] B D O Anderson and J B Moore Linear Optimal ControlPrentice-Hall 1971

[10] J A Rossiter and L Wang ldquoExploiting Laguerre functions toimprove the feasibilityperformance compromise in MPCrdquo inProceedings of the 47th IEEE Conference onDecision and Control(CDC rsquo08) pp 4737ndash4742 December 2008

Submit your manuscripts athttpwwwhindawicom

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical Problems in Engineering

Hindawi Publishing Corporationhttpwwwhindawicom

Differential EquationsInternational Journal of

Volume 2014

Applied MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

OptimizationJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Operations ResearchAdvances in

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Function Spaces

Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of Mathematics and Mathematical Sciences

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Algebra

Discrete Dynamics in Nature and Society

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Decision SciencesAdvances in

Discrete MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Stochastic AnalysisInternational Journal of

Page 10: Research Article Trajectory Tracking and ... - Hindawi

10 Abstract and Applied Analysis

0 05 1 15 2 25 3 35 40

1

2

3

4

5

6

Time (s)

x (m

)

DesiredLMPC

Figure 8 119909 trajectory119873 = 1

0 05 1 15 2 25 3 35 40

1

2

3

4

5

6

Time (s)

x (m

)

DesiredLMPC

Figure 9 119909 trajectory119873 = 9

0 05 1 15 2 25 3 35 40

1

2

3

4

5

6

Time (s)

y (m

)

DesiredLMPC

Figure 10 119910 trajectory119873 = 1

0 05 1 15 2 25 3 35 40

1

2

3

4

5

6

Time (s)

y (m

)

DesiredLMPC

Figure 11 119910 trajectory119873 = 9

0

2

4

6

8

10A

ltitu

de (m

)

Altitude

0 05 1 15 2 25 3 35 4Time (s)

DesiredLMPC

Figure 12 119911 trajectory119873 = 1

0

2

4

6

8

10

Alti

tude

(m)

Altitude

0 05 1 15 2 25 3 35 4Time (s)

DesiredLMPC

Figure 13 119911 trajectory119873 = 9

Abstract and Applied Analysis 11

function similar to that used in linear quadratic regulator(LQR) has been used In stability analysis LMPC has beencompared to the optimal DLQR system whereas in trajectorytracking LMPC has been compared to a popular linear state-space MPC desgin technique in which plant constraints aremodeled using linear equalities and inequalities The resultsfrom the simulations indicate that the controller performsvery well and is considered feasible With this perceivedfeasibility LMPCoffers the added advantage that it can handlesystems where rapid sampling and more complicated processdynamics are required [5 10] By selecting appropriate valuesof 119886 and119873 LMPC reduces the number of parameters requiredfor accurate prediction when using the traditional (MPC)approach This is a big advantage in that with the reducednumber of parameters online implementation might bepossible where the traditional MPC would have failed

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper

Acknowledgment

This work was supported by the National Research Foun-dation of Korea (NRF) grant funded by the Koreangovernment (MEST) (no 2013R1A2A2A01068127 and no2013R1A1A2A10009458)

References

[1] J M Maciejowski Predictive Control with Constraints PrenticeHall New York NY USA 1st edition 2002

[2] L Wang ldquoDiscrete time model predictive control design usingLaguerre functionsrdquo in Proceedings of the American ControlConference pp 2430ndash2435 Arlington Va USA June 2001

[3] K Alexis G Nikolakopoulos and A Tzes ldquoExperimentalmodel predictive attitude tracking control of a quadrotorhelicopter subject to wind-gustsrdquo in Proceedings of the 18thMediterranean Conference on Control amp Automation (MED rsquo10)pp 1461ndash1466 IEEE Marrakech Morocco June 2010

[4] G V RaffoM G Ortega and F R Rubio ldquoMPCwith nonlinear119867infin

control for path tracking of a quad-rotor helicopterrdquo inProceedings of the 17th World Congress International Federationof Automatic Control (IFAC rsquo08) July 2008

[5] A M Singh D J Lee D P Hong and K T Chong ldquoSucces-sive loop closure based controller design for an autonomousquadrotor vehiclerdquo Applied Mechanics and Materials vol 483pp 361ndash367 2014

[6] L Wang Model Predictive Control Design and ImplementationUsing MATLAB Advances in Industrial Control Springer NewYork NY USA 1st edition 2009

[7] A G Wills ldquoTechnical report EE04025-Notes on linear modelpredictive controlrdquo December 2004

[8] Y Gao C G Lee and K T Chong ldquoReceding horizon trackingcontrol for wheeled mobile robots with time-delayrdquo Journal ofMechanical Science and Technology vol 22 no 12 pp 2403ndash2416 2008

[9] B D O Anderson and J B Moore Linear Optimal ControlPrentice-Hall 1971

[10] J A Rossiter and L Wang ldquoExploiting Laguerre functions toimprove the feasibilityperformance compromise in MPCrdquo inProceedings of the 47th IEEE Conference onDecision and Control(CDC rsquo08) pp 4737ndash4742 December 2008

Submit your manuscripts athttpwwwhindawicom

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical Problems in Engineering

Hindawi Publishing Corporationhttpwwwhindawicom

Differential EquationsInternational Journal of

Volume 2014

Applied MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

OptimizationJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Operations ResearchAdvances in

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Function Spaces

Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of Mathematics and Mathematical Sciences

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Algebra

Discrete Dynamics in Nature and Society

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Decision SciencesAdvances in

Discrete MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Stochastic AnalysisInternational Journal of

Page 11: Research Article Trajectory Tracking and ... - Hindawi

Abstract and Applied Analysis 11

function similar to that used in linear quadratic regulator(LQR) has been used In stability analysis LMPC has beencompared to the optimal DLQR system whereas in trajectorytracking LMPC has been compared to a popular linear state-space MPC desgin technique in which plant constraints aremodeled using linear equalities and inequalities The resultsfrom the simulations indicate that the controller performsvery well and is considered feasible With this perceivedfeasibility LMPCoffers the added advantage that it can handlesystems where rapid sampling and more complicated processdynamics are required [5 10] By selecting appropriate valuesof 119886 and119873 LMPC reduces the number of parameters requiredfor accurate prediction when using the traditional (MPC)approach This is a big advantage in that with the reducednumber of parameters online implementation might bepossible where the traditional MPC would have failed

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper

Acknowledgment

This work was supported by the National Research Foun-dation of Korea (NRF) grant funded by the Koreangovernment (MEST) (no 2013R1A2A2A01068127 and no2013R1A1A2A10009458)

References

[1] J M Maciejowski Predictive Control with Constraints PrenticeHall New York NY USA 1st edition 2002

[2] L Wang ldquoDiscrete time model predictive control design usingLaguerre functionsrdquo in Proceedings of the American ControlConference pp 2430ndash2435 Arlington Va USA June 2001

[3] K Alexis G Nikolakopoulos and A Tzes ldquoExperimentalmodel predictive attitude tracking control of a quadrotorhelicopter subject to wind-gustsrdquo in Proceedings of the 18thMediterranean Conference on Control amp Automation (MED rsquo10)pp 1461ndash1466 IEEE Marrakech Morocco June 2010

[4] G V RaffoM G Ortega and F R Rubio ldquoMPCwith nonlinear119867infin

control for path tracking of a quad-rotor helicopterrdquo inProceedings of the 17th World Congress International Federationof Automatic Control (IFAC rsquo08) July 2008

[5] A M Singh D J Lee D P Hong and K T Chong ldquoSucces-sive loop closure based controller design for an autonomousquadrotor vehiclerdquo Applied Mechanics and Materials vol 483pp 361ndash367 2014

[6] L Wang Model Predictive Control Design and ImplementationUsing MATLAB Advances in Industrial Control Springer NewYork NY USA 1st edition 2009

[7] A G Wills ldquoTechnical report EE04025-Notes on linear modelpredictive controlrdquo December 2004

[8] Y Gao C G Lee and K T Chong ldquoReceding horizon trackingcontrol for wheeled mobile robots with time-delayrdquo Journal ofMechanical Science and Technology vol 22 no 12 pp 2403ndash2416 2008

[9] B D O Anderson and J B Moore Linear Optimal ControlPrentice-Hall 1971

[10] J A Rossiter and L Wang ldquoExploiting Laguerre functions toimprove the feasibilityperformance compromise in MPCrdquo inProceedings of the 47th IEEE Conference onDecision and Control(CDC rsquo08) pp 4737ndash4742 December 2008

Submit your manuscripts athttpwwwhindawicom

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical Problems in Engineering

Hindawi Publishing Corporationhttpwwwhindawicom

Differential EquationsInternational Journal of

Volume 2014

Applied MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

OptimizationJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Operations ResearchAdvances in

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Function Spaces

Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of Mathematics and Mathematical Sciences

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Algebra

Discrete Dynamics in Nature and Society

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Decision SciencesAdvances in

Discrete MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Stochastic AnalysisInternational Journal of

Page 12: Research Article Trajectory Tracking and ... - Hindawi

Submit your manuscripts athttpwwwhindawicom

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical Problems in Engineering

Hindawi Publishing Corporationhttpwwwhindawicom

Differential EquationsInternational Journal of

Volume 2014

Applied MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

OptimizationJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Operations ResearchAdvances in

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Function Spaces

Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of Mathematics and Mathematical Sciences

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Algebra

Discrete Dynamics in Nature and Society

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Decision SciencesAdvances in

Discrete MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Stochastic AnalysisInternational Journal of