47. geometric tracking control of a quadrotor uav on se(3)

Upload: naderjsa

Post on 11-Oct-2015

45 views

Category:

Documents


0 download

DESCRIPTION

This paper provides new results for the tracking control of a quadrotor unmanned aerial vehicle (UAV). TheUAV has four input degrees of freedom, namely the magnitudesof the four rotor thrusts, that are used to control the six translational and rotational degrees of freedom, and to achieve asymptotic tracking of four outputs, namely, three position variables for the vehicle center of mass and the direction of one vehicle body-fixed axis. A globally defined model of thequadrotor UAV rigid body dynamics is introduced as a basis for the analysis. A nonlinear tracking controller is developed on the special Euclidean group SE(3) and it is shown to have desirable closed loop properties that are almost global.Several numerical examples, including an example in which the quadrotor recovers from being initially upside down, illustrate the versatility of the controller.

TRANSCRIPT

  • Geometric Tracking Control of a Quadrotor UAV on SE(3)

    Taeyoung Lee, Melvin Leok, and N. Harris McClamroch

    Abstract This paper provides new results for the trackingcontrol of a quadrotor unmanned aerial vehicle (UAV). TheUAV has four input degrees of freedom, namely the magnitudesof the four rotor thrusts, that are used to control the sixtranslational and rotational degrees of freedom, and to achieveasymptotic tracking of four outputs, namely, three positionvariables for the vehicle center of mass and the direction ofone vehicle body-fixed axis. A globally defined model of thequadrotor UAV rigid body dynamics is introduced as a basisfor the analysis. A nonlinear tracking controller is developedon the special Euclidean group SE(3) and it is shown tohave desirable closed loop properties that are almost global.Several numerical examples, including an example in which thequadrotor recovers from being initially upside down, illustratethe versatility of the controller.

    I. INTRODUCTION

    A quadrotor unmanned aerial vehicle (UAV) consists oftwo pairs of counter-rotating rotors and propellers, locatedat the vertices of a square frame. It is capable of verticaltake-off and landing (VTOL), but it does not require com-plex mechanical linkages, such as swash plates or teeterhinges, that commonly appear in typical helicopters. Dueto its simple mechanical structure, it has been envisaged forvarious applications such as surveillance or mobile sensornetworks as well as for educational purposes. There areseveral university-level projects [1], [2], [3], [4], and com-mercial products [5], [6], [7] related to the development andapplication of quadrotor UAVs.

    Despite the substantial interest in quadrotor UAVs, littleattention has been paid to constructing nonlinear controlsystems for them, particularly to designing nonlinear trackingcontrollers. Linear control systems such as proportional-derivative controllers or linear quadratic regulators are widelyused to enhance the stability properties of an equilibrium [1],[3], [4], [8], [9]. A nonlinear controller is developed forthe linearized dynamics of a quadrotor UAV with saturatedpositions in [10]. Backstepping and sliding mode techniquesare applied in [11]. Since these controllers are based onEuler angles, they exhibit singularities when representingcomplex rotational maneuvers of a quadrotor UAV, therebyfundamentally restricting their ability to track nontrivialtrajectories.

    Taeyoung Lee, Mechanical and Aerospace Engineering, Florida Instituteof Technology, Melbourne, FL 39201 [email protected]

    Melvin Leok, Mathematics, University of California at San Diego, LaJolla, CA 92093 [email protected]

    N. Harris McClamroch, Aerospace Engineering, University of Michigan,Ann Arbor, MI 48109 [email protected] research has been supported in part by NSF under grants CMMI-1029551.This research has been supported in part by NSF under grants DMS-

    0726263, DMS-1001521, DMS-1010687, and CMMI-1029445.

    Geometric control is concerned with the development ofcontrol systems for dynamic systems evolving on nonlinearmanifolds that cannot be globally identified with Euclideanspaces [12], [13], [14]. By characterizing geometric proper-ties of nonlinear manifolds intrinsically, geometric controltechniques provide unique insights to control theory thatcannot be obtained from dynamic models represented usinglocal coordinates [15]. This approach has been applied tofully actuated rigid body dynamics on Lie groups to achievealmost global asymptotic stability [14], [16], [17], [18].

    In this paper, we develop a geometric controller fora quadrotor UAV. The dynamics of a quadrotor UAV isexpressed globally on the configuration manifold of thespecial Euclidean group SE(3). We construct a trackingcontroller to follow prescribed trajectories for the center ofmass and heading direction. It is shown that this controllerexhibits almost global exponential attractiveness to the zeroequilibrium of tracking errors. Since this is a coordinate-free control approach, it completely avoids singularities andcomplexities that arise when using local coordinates.

    Compared to other geometric control approaches for rigidbody dynamics, this is distinct in the sense that it controlsan underactuated quadrotor UAV to stabilize six translationaland rotational degrees of freedom using four thrust inputs,while asymptotically tracking four outputs consisting of itsposition and heading direction. We demonstrate that thiscontroller is particularly useful for complex, acrobatic ma-neuvers of a quadrotor UAV, such as recovering from beinginitially upside down.

    II. QUADROTOR DYNAMICS MODEL

    Consider a quadrotor vehicle model illustrated in Fig.1. This is a system of four identical rotors and propellerslocated at the vertices of a square, which generate a thrustand torque normal to the plane of this square.

    We choose an inertial reference frame {~i1,~i2,~i3} and abody-fixed frame {~b1,~b2,~b3}. The origin of the body-fixedframe is located at the center of mass of this vehicle. Thefirst and the second axes of the body fixed frame, ~b1,~b2,lie in the plane defined by the centers of the four rotors, asillustrated in Fig. 1. The third body fixed axis ~b3 is normalto this plane, and points downward, opposite to the directionof the total thrust. Definem R the total massJ R33 the inertia matrix with respect to the body-

    fixed frameR SO(3) the rotation matrix from the body-fixed frame

    to the inertial frame R3 the angular velocity in the body-fixed frame

    49th IEEE Conference on Decision and ControlDecember 15-17, 2010Hilton Atlanta Hotel, Atlanta, GA, USA

    978-1-4244-7744-9/10/$26.00 2010 IEEE 5420

  • ~i1

    ~i2~i3

    ~b1

    ~b2

    ~b3

    f1

    f2

    f3

    f4

    xR

    Fig. 1. Quadrotor model

    x R3 the location of the center of mass in the inertialframe

    v R3 the velocity of the center of mass in the inertialframe

    d R the distance from the center of mass to thecenter of each rotor in the ~b1,~b2 plane

    fi R the thrust generated by the i-th propeller alongthe ~b3 axis

    i R the torque generated by the i-th propeller aboutthe ~b3 axis

    f R the total thrust, i.e., f = 4i=1 fiM R3 the total moment in the body-fixed frame

    The configuration of this quadrotor UAV is defined by thelocation of the center of mass and the attitude with respect tothe inertial frame. Therefore, the configuration manifold isthe special Euclidean group SE(3), which is the semidirectproduct of R3 and the special orthogonal group SO(3) ={R R33 |RTR = I, detR = 1}.

    We assume that the thrust of each propeller is directlycontrolled, i.e., we do not consider the dynamics of rotorsand propellers, and the direction of the thrust is normal tothe quadrotor plane. The total thrust is f =

    4i=1 fi, which

    acts along the direction of ~b3. According to the definitionof the rotation matrix R SO(3), the direction of the i-thbody fixed axis~bi is given by Rei in the inertial frame, wheree1 = [1; 0; 0], e2 = [0; 1; 0], e3 = [0; 0; 1] R3. Therefore,the total trust is given by fRe3 R3 in the inertial frame.

    We also assume that the torque generated by each propelleris directly proportional to its thrust. Since it is assumed thatthe first and the third propellers rotate clockwise, and thesecond and the fourth propellers rotate counterclockwise,when they are generating a positive thrust fi along ~b3, thetorque generated by the i-th propeller can be written as i =(1)icffi for a fixed constant cf . All of these assumptionsare common [19], [4], and the presented control system canreadily be extended to include linear rotor dynamics studiedin [11]. Under these assumptions, the total thrust f and thetotal moment M can be written as

    fM1M2M3

    =

    1 1 1 10 d 0 dd 0 d 0cf cf cf cf

    f1f2f3f4

    . (1)

    The determinant of the above 4 4 matrix is 8cfd2, so itis invertible when d 6= 0 and cf 6= 0. Therefore, for a givenf,M , the thrust of each rotor fi can be obtained from (1).Using this equation, the total thrust f R and the momentM R3 are considered as control inputs in this paper.

    The equations of motion of this quadrotor UAV can bewritten as

    x = v, (2)mv = mge3 fRe3, (3)

    R = R, (4)

    J + J = M, (5)where the hat map : R3 so(3) is defined by the conditionthat xy = x y for all x, y R3.

    III. GEOMETRIC TRACKING CONTROL ON SE(3)

    We develop a controller to follow a prescribed trajectoryof the location of the center of mass, xd(t), and the desireddirection of the first body-fixed axis, ~b1d(t).

    The overall controller structure is as follows. The trans-lational dynamics of a quadrotor UAV is controlled by thetotal thrust fRe3, where the magnitude of the total thrustf is directly controlled, and the direction of the total thrustRe3 is along the third body-fixed axis ~b3. For a giventranslational command xd(t), we select the total thrust f ,and the desired direction of the third body-fixed axis ~b3d tostabilize the translational dynamics.

    Once the desired direction of the third body-fixed frame~b3d is chosen, there is one remaining degree of freedom inselecting the desired attitude, Rd SO(3). This correspondsto the heading direction of the quadrotor UAV in the planenormal to ~b3d , and it is determined by the desired directionof the first body-fixed axis, ~b1d(t). More explicitly, weassume that ~b1d is not parallel to ~b3d , and we project itonto the plane normal to ~b3d to obtain the complete desiredattitude: Rd = [~b2d ~b3d ,~b2d ,~b3d ] SO(3), where ~b2d =(~b3d ~b1d)/~b3d ~b1d. The control moment M is selectedto follow this desired attitude.

    In short, four-dimensional control inputs are designed tofollow a three-dimensional translational command, and aone-dimensional heading direction, i.e., we guarantee thatx(t) xd(t) and Proj[~b1(t)] Proj[~b1d(t)] as t ,where Proj[] denotes the normalized projection onto theplane orthogonal to ~b3d . The overall controller structure andthe definition of the heading direction are illustrated in Fig.2 and 3.

    Trajectorytracking

    Attitudetracking

    --

    -

    - -QuadrotorDynamics

    -f

    M

    ~b3dxd

    ~b1d

    x, v,R,

    6 -q qController

    Fig. 2. Controller structure

    5421

  • ~b3d

    ~b1d

    ~b2d =~b3d~b1d~b3d~b1d

    Proj[~b1d ] =~b2d ~b3dPlane

    normal to ~b3d

    Fig. 3. Definition of the desired heading direction

    We develop this controller directly on the nonlinear con-figuration Lie group and thereby avoid any singularities andcomplexities that arise in local coordinates. As a result, weare able to achieve almost global exponential attractivenessto the zero equilibrium of tracking errors. Due to page limitconstraint, all of the proofs are relegated to [20].

    A. Tracking ErrorsWe define the tracking errors for x, v,R, as follows. The

    tracking errors for the position and the velocity are given by:t

    ex = x xd, (6)ev = v vd. (7)

    The attitude and angular velocity tracking error should becarefully chosen as they evolve on the tangent bundle ofthe nonlinear space SO(3). The error function on SO(3) ischosen to be

    (R,Rd) =1

    2tr[I RTdR

    ]. (8)

    This is locally positive-definite about R = Rd within theregion where the rotation angle between R and Rd isless than 180 [14]. This set can be represented by thesublevel set of where < 2, namely L2 = {Rd, R SO(3) |(R,Rd) < 2}, which almost covers SO(3). Whenthe variation of the rotation matrix is expressed as R = Rfor R3, the derivative of the error function is given by

    DR(R,Rd) R = 12

    tr[RTdR

    ]=

    1

    2(RTdRRTRd) , (9)

    where the vee map : so(3) R3 is the inverse of thehat map. We used the fact that 12 tr[xy] = xT y for anyx, y R3. From this, the attitude tracking error eR is chosento be

    eR =1

    2(RTdRRTRd). (10)

    The tangent vectors R TRSO(3) and Rd TRdSO(3)cannot be directly compared since they lie in differenttangent spaces. We transform Rd into a vector in TRSO(3),and we compare it with R as follows:

    R Rd(RTdR) = RRddRTdR = R(RTRdd).We choose the tracking error for the angular velocity asfollows:

    e = RTRdd. (11)We can show that e is the angular velocity of the rotationmatrix RTdR, represented in the body-fixed frame, sinceddt (R

    TdR) = (R

    TdR) e.

    B. Tracking Controller

    For given smooth tracking commands xd(t),~b1d(t), andsome positive constants kx, kv, kR, k, we define

    ~b3d = kxex kvev mge3 +mxdkxex kvev mge3 +mxd , (12)

    where we assume that

    kxex kvev mge3 +mxd 6= 0. (13)We also assume that ~b1d is not parallel to ~b3d . The desiredattitude is given by Rd = [~b2d~b3d ,~b2d ,~b3d ] SO(3), where~b2d = (

    ~b3d~b1d)/~b3d~b1d. The desired trajectory satisfies mge3 +mxd < B (14)

    for a given positive constant B. The control inputs f,M arechosen as follows:

    f = (kxex kvev mge3 +mxd) Re3, (15)M = kReR ke + J

    J(RTRdd RTRdd). (16)The control moment M given in (16) corresponds to a

    tracking controller on SO(3). For the attitude dynamics of arigid body described by (4), (5), this controller exponentiallystabilizes the zero equilibrium of the attitude tracking errors.

    Similarly, the expression in the parentheses in (15) corre-sponds to a tracking controller for the translational dynamicson R3. The total thrust f and the desired direction ~b3d ofthe third body-fixed axis are chosen such that if there isno attitude tracking error, the thrust vector term fRe3in the translational dynamics of (3) becomes this trackingcontroller in R3. Therefore, the translational tracking errorwill converge to zero provided that the attitude tracking erroris identically zero.

    Certainly, the attitude tracking error may not be zero at anyinstant. As the attitude tracking error increases, the directionof the control input term fRe3 of the translational dynamicsdeviates from the desired direction Rde3. This may causeinstability in the complete dynamics. In (15), we carefullydesign the magnitude of the total thrust f so that it is reducedwhen there is a large attitude tracking error. The expressionof f includes the dot product of the desired third body-fixedaxis ~b3d = Rde3 and the current third body-fixed axis ~b3 =Re3. Therefore, the magnitude of f is reduced when theangle between those two axes becomes larger. These effectsare carefully analyzed in the stability proof for the completedynamics in [20].

    In short, this control system is designed so that theposition tracking error converges to zero when there is noattitude tracking error, and it is properly adjusted for non-zero attitude tracking errors to achieve asymptotic stabilityof the complete dynamics.

    C. Exponential Asymptotic Stability

    We first show exponential stability of the attitude dynamicsin the sublevel set L2 = {Rd, R SO(3) |(R,Rd) 0 such that

    (R(t), Rd(t)) min{

    2, 2e2t} . (19)

    Proof: See [20].In this proposition, (17), (18) represent a region of attrac-

    tion for the attitude dynamics. This requires that the initialattitude error should be less than 180. Therefore, the regionof attraction for the attitude almost covers SO(3), and theregion of attraction for the angular velocity can be increasedby choosing a larger controller gain kR in (18).

    Since the direction of the total thrust is the third body-fixed axis, the stability of the translational dynamics dependson the attitude tracking error. More precisely, the positiontracking performance is affected by the difference between~b3 = Re3 and ~b3d = Rde3. In the proceeding stabilityanalysis, it turns out that for the stability of the completetranslational and rotational dynamics, the attitude error func-tion should be less than 1, which states that the initialattitude error should be less than 90. For the stability ofthe complete system, we restrict the initial attitude error toobtain the following proposition.

    Proposition 2: (Exponential Stability of the Complete Dy-namics) Consider the control force f and moment M definedin (15), (16). Suppose that the initial condition satisfies

    (R(0), Rd(0)) 1 < 1 (20)

    for a fixed constant 1. Define W1,W12,W2 R22 to be

    W1 =

    [c1kxm c1kv2m (1 + )

    c1kv2m (1 + ) kv(1 ) c1

    ], (21)

    W12 =

    [kxevmax +

    c1mB 0

    B 0

    ], (22)

    W2 =

    [c2kR

    max(J) c2k2min(J)

    c2k2min(J) k c2

    ], (23)

    where =1(2 1), evmax = max{ev(0), Bkv(1)},

    c1, c2 R. For any positive constants kx, kv , we choosepositive constants c1, c2, kR, k such that

    c1 < min

    {kv(1 ), 4mkxkv(1 )

    k2v(1 + )2 + 4mkx

    ,kxm

    },

    (24)

    c2 < min

    {k,

    4kkRmin(J)2

    k2max(J) + 4kRmin(J)2,

    kRmin(J),

    2

    2 1 kRmax(J)},

    (25)

    min(W2) >4W122min(W1)

    . (26)

    Then, the zero equilibrium of the tracking errors of the com-plete system is exponentially stable. The region of attractionis characterized by (20) and

    e(0)2 < 2max(J)

    kR(1(R(0), Rd(0))). (27)Proof: See [20].

    D. Almost Global Exponential AttractivenessProposition 2 requires that the initial attitude error is

    less than 90 to achieve exponential stability of the com-plete dynamics. Suppose that this is not satisfied, i.e. 1 (R(0), Rd(0)) < 2. From Proposition 1, we are guaranteedthat the attitude error function exponentially decreases, andtherefore, it enters the region of attraction of Proposition2 in a finite time. Therefore, by combining the results ofProposition 1 and 2, we can show almost global exponentialattractiveness.

    Definition 1: (Exponential Attractiveness [21]) An equi-librium point z = 0 of a dynamic systems is exponentiallyattractive if, for some > 0, there exists a constant () > 0and > 0 such that z(0) < z(t) ()et forany t > 0.

    This should be distinguished from the stronger notion ofexponential stability, in which the constant () in the abovebound is replaced by () z(0).

    Proposition 3: (Almost Global Exponential Attractivenessof the Complete Dynamics) Consider a control system de-signed according to Proposition 2. Suppose that the initialcondition satisfies

    1 (R(0), Rd(0)) < 2, (28)e(0)2 < 2

    max(J)kR(2(R(0), Rd(0))). (29)

    Then, the zero equilibrium of the tracking errors of thecomplete dynamics is exponentially attractive.

    Proof: See [20].Since the region of attraction given by (28) for the

    attitude almost covers SO(3), this is referred to as almostglobal exponential attractiveness in this paper. The regionof attraction for the angular velocity can be expanded bychoosing a large gain kR in (29).

    E. Properties and ExtensionsOne of the unique properties of the presented controller

    is that it is directly developed on SE(3) using rotation ma-trices. Therefore, it avoids the complexities and singularitiesassociated with local coordinates of SO(3), such as Eulerangles. It also avoids the ambiguities that arise when usingquaternions to represent the attitude dynamics. As the three-sphere S3 double covers SO(3), any attitude feedback con-troller designed in terms of quaternions could yield different

    5423

  • control inputs depending on the choice of quaternion vectors.The corresponding stability analysis would need to carefullyconsider the fact that convergence to a single attitude impliesconvergence to either of the two disconnected, antipodalpoints on S3 [22]. This requires a continuous selection of thesign of quaternions or a discontinuous control system, whichare shown to be sensitive to small measurement noise [23].Without these considerations, a quaternion-based controllercan exhibit an unwinding phenomenon, where the controllerunnecessarily rotates the attitude through large angles [15]. Inthis paper, the use of rotation matrices in the controller designand stability analysis completely eliminates these difficulties.

    Another novelty of the presented controller is the choiceof the total thrust in (15). This is designed to follow positiontracking commands, but it is also carefully designed toguarantee the overall stability of the complete dynamics byfeedback control of the direction of the third body-fixed axis.This consideration is natural as each column of a rotationmatrix represents the direction of each body-fixed axis.Therefore, another advantage of using rotation matrices isthat the controller has a well-defined physical interpretation.

    In Propositions 1 and 3, exponential stability and exponen-tial attractiveness are guaranteed for almost all initial attitudeerrors, respectively. The attitude error function defined in (8)has the following critical points: the identity matrix, androtation matrices that can be written as exp(piv) for anyv S2. These non-identity critical points of the attitudeerror function lie outside of the region of attraction. As it isa two-dimensional subspace of the three-dimensional SO(3),we claim that the presented controller exhibits almost globalproperties in SO(3). It is impossible to construct a smoothcontroller on SO(3) that has global asymptotic stability. Thetwo-dimensional family of non-identity critical points can bereduced to four points by modifying the error function to be12 tr[G(IRTdR)] for a matrix G 6= I R33. The presentedcontroller can be modified accordingly.

    IV. NUMERICAL EXAMPLE

    The parameters of the quadrotor UAV are chosen accord-ing to a quadrotor UAV developed in [2].

    J = [0.0820, 0.0845, 0.1377] kgm2, m = 4.34 kg

    d = 0.315 m, cf = 8.004 104 m.The controller parameters are chosen as follows:

    kx = 16m, kv = 5.6m, kR = 8.81, k = 2.54.

    We consider the following two cases.(I) This maneuver follows an elliptical helix while rotating

    the heading direction at a fixed rate. Initial conditionsare chosen as

    x(0) = [0, 0, 0], v(0) = [0, 0, 0],

    R(0) = I, (0) = [0, 0, 0].

    The desired trajectory is as follows.

    xd(t) = [0.4t, 0.4 sinpit, 0.6 cospit],

    ~b1d(t) = [cospit, sinpit, 0].

    (II) This maneuver recovers from being initially upsidedown. Initial conditions are chosen as

    x(0) = [0, 0, 0], v(0) = [0, 0, 0],

    R(0) =

    1 0 00 0.9995 0.03140 0.0314 0.9995

    , (0) = [0, 0, 0].The desired trajectory is as follows.

    xd(t) = [0, 0, 0], ~b1d(t) = [1, 0, 0].

    Simulation results are presented in Figures 4 and 5. ForCase (I), the initial value of the attitude error function (0) isless than 0.15. This satisfies the conditions for Proposition 2,and exponential asymptotic stability is guaranteed. As shownin Figure 4, the tracking errors exponentially converge tozero. This example illustrates that the proposed controlledquadrotor UAV can follow a complex trajectory that involvelarge angle rotations and nontrivial translations accurately.

    In Case (II), the initial attitude error is 178, which yieldsthe initial attitude error function (0) = 1.995 > 1. Thiscorresponds to Proposition 3, which implies almost globalexponential attractiveness. In Figure 5(b), the attitude errorfunction decreases, and it becomes less than 1 at t =0.88 seconds. After that instant, the position tracking errorand the angular velocity error converge to zero as shownin Figures 5(c) and 5(d). The region of attraction of theproposed control system almost covers SO(3), so that thecorresponding controlled quadrotor UAV can recover frombeing initially upside down.

    V. CONCLUSION

    We presented a global dynamic model for a quadrotorUAV, and we developed a geometric tracking controllerdirectly on the special Euclidean group that is intrinsic andcoordinate-free, thereby avoiding the singularities of Eulerangles and the ambiguities of quaternions in representingattitude. It exhibits exponential stability when the initialattitude error is less than 90, and it yields almost globalexponentially attractiveness when the initial attitude error isless than 180. These are illustrated by numerical examples.

    This controller can be extended as follows. In this paper,four input degrees of freedom are used to track a three-dimensional position, and a one-dimensional heading direc-tion. But, without changing the controller structure, theycan be used to follow arbitrary three-dimensional attitudecommands. The remaining one input degree of freedom canbe used to maintain the altitude as much as possible. Byconstructing a hybrid controller based on these two trackingmodes, we can generate complicated acrobatic maneuvers ofa quadrotor UAV.

    REFERENCES

    [1] M. Valenti, B. Bethke, G. Fiore, and J. How, Indoor multi-vehicleflight testbed for fault detection, indoor multi-vehicle flight testbed forfault detection, isolation, and recovery, in Proceedings of the AIAAGuidance, Navigation and Control Conference, 2006.

    5424

  • (a) Snapshots for 2 t 2.6 (an animation illustrating this maneuveris available at http://my.fit.edu/ taeyoung)

    0 5 100

    0.05

    0.1

    0.15

    0.2

    (b) Attitude error function

    0 5 10024

    0 5 100.50

    0.5

    0 5 10101

    (c) Position (x:solid, xd:dotted, (m))

    505

    505

    0 5 1005

    10

    (d) Angular velocity (:solid,d:dotted, (rad/sec))

    2000

    200

    2000

    200

    2000

    200

    0 5 102000

    200

    (e) Thrust of each rotor (N)

    Fig. 4. Case I: following an elliptic helix (horizontal axes representsimulation time in seconds)

    [2] P. Pounds, R. Mahony, and P. Corke, Modeling and control of a largequadrotor robot, Control Engineering Practice, vol. 18, pp. 691699,2010.

    [3] G. Hoffmann, H. Huang, S. Waslander, and C. Tomlin, Quadrotorhelicopter flight dynamics and control: Theory and experiment, inProceedings of the AIAA Guidance, Navigation, and Control Confer-ence, 2007, AIAA 2007-6461.

    [4] P. Castillo, R. Lozano, and A. Dzul, Stabilization of a mini rotorcraftwith four rotors, IEEE Control System Magazine, pp. 4555, 2005.

    [5] Mikrokopter. [Online]. Available: http://www.mikrokopter.de/[6] Microdrone-bulgaria. [Online]. Available: http://www.

    microdrones-bulgaria.com/[7] Dragonfly innovations. [Online]. Available: http://www.draganfly.com/[8] S. Bouabdalla, P. Murrieri, and R. Siegward, Towards autonomous

    indoor micro VTOL, Autonomous Robots, vol. 18, no. 2, pp. 171183,2005.

    [9] E. Nice, Design of a four rotor hovering vehicle, Masters thesis,Cornell University, 2004.

    [10] N. Guenard, T. Hamel, and V. Moreau, Dynamic modeling andintuitive control strategy for an X4-flyer, in Proceedings of the IEEEInternational Conference on Control and Application, 2005.

    [11] S. Bouabdalla and R. Siegward, Backstepping and sliding-modetechniques applied to an indoor micro quadrotor, in Proceedings ofthe IEEE International Conference on Robotics and Automation, 2005,pp. 22592264.

    [12] V. Jurdjevic, Geometric Control Theory. Cambridge University, 1997.[13] A. Bloch, Nonholonomic Mechanics and Control, ser. Interdisciplinary

    Applied Mathematics. Springer-Verlag, 2003, vol. 24.[14] F. Bullo and A. Lewis, Geometric control of mechanical systems, ser.

    Texts in Applied Mathematics. New York: Springer-Verlag, 2005,

    (a) Snapshots for 0.5 t 4 (Snapshots are shifted forward torepresent the evolution of time. In reality, the quadrotor is flipped at afixed position. An animation is available at http://my.fit.edu/ taeyoung)

    0 2 4 60.5

    0

    0.5

    1

    1.5

    2

    (b) Attitude error function

    0 2 4 6101

    0 2 4 60.50

    0.5

    0 2 4 6101

    (c) Position (x:solid, xd:dotted, (m))

    100

    10

    101

    0 2 4 6101

    (d) Angular velocity (:solid,d:dotted, (rad/sec))

    500

    50

    500

    50

    500

    50

    0 2 4 6500

    50

    (e) Thrust of each rotor (N)

    Fig. 5. Case II: recovering from an initially upside down attitude (horizontalaxes represent simulation time in seconds)

    vol. 49, modeling, analysis, and design for simple mechanical controlsystems.

    [15] S. Bhat and D. Bernstein, A topological obstruction to continuousglobal stabilization of rotational motion and the unwinding phe-nomenon, Systems and Control Letters, vol. 39, no. 1, pp. 6673,2000.

    [16] D. Maithripala, J. Berg, and W. Dayawansa, Almost global trackingof simple mechanical systems on a general class of Lie groups, IEEETransactions on Automatic Control, vol. 51, no. 1, pp. 216225, 2006.

    [17] D. Cabecinhas, R. Cunha, and C. Silvestre, Output-feedback controlfor almost global stabilization of fully-acuated rigid bodies, in Pro-ceedings of IEEE Conference on Decision and Control, 3583-3588,Ed., 2008.

    [18] N. Chaturvedi, N. H. McClamroch, and D. Bernstein, Asymptoticsmooth stabilization of the inverted 3-D pendulum, IEEE Transac-tions on Automatic Control, vol. 54, no. 6, pp. 12041215, 2009.

    [19] A. Tayebi and S. McGilvray, Attitude stabilization of a VTOLquadrotor aircraft, IEEE Transactions on Control System Technology,vol. 14, no. 3, pp. 562571, 2006.

    [20] T. Lee, M. Leok, and N. McClamroch, Geometric tracking control ofa quadrotor UAV on SE(3), arXiv:1003.2005v1. [Online]. Available:http://arxiv.org/abs/1003.2005v1

    [21] Z. Qu, Robust Control of Nonlinear Uncertain Systems. New York,NY, USA: John Wiley & Sons, Inc., 1998.

    [22] C. Mayhew, R. Sanfelice, and A. Teel, Robust global asymptoticattitude stabilization of a rigid body by quaternion-based hybrid feed-back, in Proceedings of IEEE Conference on Decision and Control,2009, pp. 25222527.

    [23] R. Sanfelice, M. Messian, S. Tuna, and A. Teel, Robust hybridcontroller for continous-time systems with applications to obstacleavoidance and regulation to disconnected set of points, in Proceedingof the American Control Conference, 2006, pp. 33523357.

    5425