You are on page 1of 6

2011 11th International Conference on Control, Automation and Systems Oct.

26-29, 2011 in KINTEX, Gyeonggi-do, Korea

Modeling and Altitude Control of Quad-rotor UAV


Keun Uk Lee1, Young Hun Yun1, Wook Chang2, Jin Bae Park1, and Yoon Ho Choi3
1

Department of Electrical and Electronic Engineering, Yonsei University, Seoul, 120-749, Korea (Tel : +82-2-2123-2773; E-mail: {lkucj, slowlearner, jbpark}@yonsei.ac.kr) 2 Sensible UI, Seoul, 120-749, Korea (Tel : +82-2-312-7857; E-mail: wook.chang@sensibleui.com) 3 Department of Electronic Engineering, Kyonggi University, Kyonggi-Do, 443-760, Korea (Tel : +82-31-249-9801; E-mail: yhchoi@yonsei.ac.kr)

Abstract: This paper deals with the modeling and altitude control of a quad-rotor unmanned aerial vehicles (UAVs). First, we derive a quad-rotor model using Euler-Lagrange equations and perform experiment to identify model parameter. Second, we design the altitude controller of a quad-rotor based on dynamic surface control (DSC) method. From the Lyapunov stability theory, we prove that all signals of a quad-rotor system are uniformly ultimately bounded(UUB). Finally, we present the simulation and experimental results to verify the effectiveness of the proposed control method. Keywords: Quad-rotor, unmanned aerial vehicles (UAVs), altitude control, dynamic surface control.

1. INTRODUCTION
Recently, various researches are carried out for developing unmanned aerial vehicles (UAVs). UAV can be applied to both the military and public services such as the aerial reconnaissance of enemy territory, the border patrol, the saving a life and the forest surveillance, where is highly risky for pilots. A quad-rotor is a kind of UAV, which has the advantage of easy implementation compared to other UAVs. A quad-rotor also has an ability of vertical take-off and landing (VTOL). It requires less spatial limitation in situation of take-off landing [1]. But, the stable altitude control is essential to take-off landing. For the altitude control of a quad-rotor, various control techniques have been proposed. First, the linear control methods such as PID control and LQR control are proposed [9-10]. But those linear control methods have not good performance for nonlinear quad-rotor systems. The problem of nonlinear control design has been addressed using several methods such as feedback linearization [8], sliding mode control [7] and back-stepping [6]. However, among those nonlinear control methods, the back-stepping algorithm has the explosion of complexity problem which is caused by the repeated differentiations of virtual controllers. To overcome this problem, Swaroop et al. proposed a dynamic surface control (DSC) technique adding a first-order low-pass filter at each step of the back-stepping design procedure. This paper deals with the modeling and altitude control of a quad-rotor UAV. First, we derive a quad-rotor model using Euler-Lagrange equations and perform experiment to identify model parameter. Second, we design the altitude controller of a quad-rotor based on DSC method. From the Lyapunov stability theory, we prove that all signals of a quad-rotor system are uniformly ultimately bounded (UUB). Finally through computer simulation and real experiment, we verify the performance of the proposed controller.

This paper is organized as follows. In Section 2, we describe the hardware and software configurations of the quad-rotor. In Section 3, the modeling of a quad-rotor is described and the parameter identification is performed through the experiment. In Section 4, we design the DSC controller for the altitude control of a quad-rotor. And in the Section 5, we carry out the simulation and the experiment to validate the performance of the proposed control method. Finally, in Section 6, we draw the conclusion of this paper.

2. QUAD-ROTOR SYSTEM CONFIGURATION


In this section, we describe the hardware/software configurations of a quad-rotor. The 330X model, manufactured by TSHGAUI, is chosen as a basic body frame as shown in Fig. 1. In addition, we need a specific structure for our experiment. That is for altitude control experiment using a profile. The quad-rotor can only move freely toward z-axis along four round bar in the center of the test-bed.

Fig. 1 The quad-rotor UAV The hardware architecture of a quad-rotor is depicted in Fig. 2, which is composed of a micro controller unit

978-89-93215-03-8 98560/11/$15 ICROS

1897

(MCU) board, sensors, a motor and a electrical speed controller (ESC).

Therefore, the dynamic model of a quad-rotor is obtained via the Euler-Lagrange equations as follows:
d L L =F dt q q (1)

where F = ( FP , ) . Here, FP = ( Fx , Fy , Fz )T denotes the external lift force applied to a quad-rotor and is the external torque. The external lift force FP generated by four rotor described originally operates on the z axis. As changing the orientation of a quad-rotor by the rotation of a rotor, we need to transform it with respect to the earth inertial frame E as follows:
0 FP = R 0 4 i =1 Fi

Fig. 2 Hardware architecture of a quad-rotor The MCU board is manufactured by ArduinoMega. The 330X has four brushless DC (BLDC) motors, GUEC GM-410. The ESC regulates the angular velocity of the motor through the connecting the output of the ESC to the BLDC motor. We use four ESCs, GUEC GE-010, equipped originally in 330X. The ultrasonic rangefinder, SRF05 is used to measure the distance between the quad-rotor and the ground. In simulation, we use MATLABTM program and use Arduino software for experiment. That uses a C-based language, so it is intuitive to write code.

where R is the transformation matrix from the earth inertial frame E , to the body fixed frame B , which is as follows:
R = Rz Ry Rx C C = C S S S S C C S S S S + C C C S C S C + S S C S S S C C C

3. MODELING AND IDENTIFICATION


3.1 Dynamics of Quad-rotor For the rigid body of a quad-rotor, we assume that the body fixed frame B is at the center of gravity of quad-rotor. And the quad-rotor system is represented with 6 degree of freedoms with respect to the earth inertial frame E [3]. The coordinate of a quad-rotor are as follows:
q = ( P, A)  6

where,

C(.)

and

S(.)

denote cos(.) and sin(.),

respectively. In addition, Fi is the lift force generated by each motor (i=1,2,3,4), and given as follows : Fi = ki wi 2 , i = 1, 2,3, 4 (2)

where, P = ( x, y, z )  3 is the vector which denotes the position of center of mass of a quad-rotor with respect to the frame E and A = ( , , )  3 denotes three Euler angles of the rigid body of a quad-rotor in the body fixed frame B which are pitch, yaw and roll, respectively. The Lagrangian is as follows:
L(q, q) = Ttrans + Trot U 1 1 = mPT P + JAT A mgz 2 2

where, ki (> 0) is the lift constant of each motor and wi is the angular velocity of each motor. And now, we can obtain the new equation of the total lift force as follows:
C C S + S S 4 FP = C S S C S Fi i =1 C C

The external torques on the Euler angles are as follows:


=

where, J is the inertia moment matrix, m is the mass of quad-rotor, g is gravity acceleration, z is the altitude of quad-rotor, Ttrans is the kinematic energy of translation, Trot is the kinematic energy of rotation motion, and U is the potential energy of a quad-rotor.

where , and are the external torque on the each Euler angle, , , , respectively, given as

1898

follows :

The control input is designed as follows:


u=

= l ( F1 F3 ) ,
= kd wi 2 ,
i =1 4

4 i =1

Fi

(5)

= l ( F4 F2 ).
Here, l is the distance between the rotation axis of a rotor and the center of the mass of a quad-rotor and kd is the drag coefficient of rotation. We obtain the two decoupled equations in terms of the lift force and the torque via solving the Euler-Lagrange equation (1) as follows:
mP + G + Ftd = FP JA + JA 1 ( AT JA) = 2 A (3)

3.2 Parameter Identification of Quad-rotor Before we carry out the experiment, we need to know parameters in Eqs. (2) and (3). So, in this section, we describe the process of parameter identification through the experimental measurement and the mathematical consideration. 3.2.1 Motor Thrust Factor We can carry out the experiment for the motor thrust factor. Using Ardupilot Mega, we generate the PWM signals to rotate each motor, and measure the angular speed rotation wi , of them. Then, we obtain the lift force Fi using the difference between the normal mass M 1 and the PWM signal induced mass M 2 . We can obtain the lift force Fi of a motor as follows:
Fi = ( M i1 M i 2 ) g / 1000 (6)

where G = (0 0 mg )T , and Ftd = ktd P is the drag force. Here, ktd is the translation drag coefficient with respect to three axis of the earth inertial frame. Let the Coriolis-central vector define as follows:
1 ( AT JA) V ( A, A) = JA 2 A

So, we can rewrite the second equation of (3) as follows:


JA + V ( A, A) =

where subscript i denote the number of each motor. We just calculate the ki by substituting Fi and wi into Eq. (4). But in the experiment, it is more important to know the relation between the PWM signal induced by Ardupilot and the lift force of each motor. Therefore, we perform the experiment to find out. The relation between the PWM signal and the lift force can be described as follows [4]:
Fi = ki1 PWM i + ki 2 , PWM i (110, 210)

The Coriolis-central force of a quad-rotor is very small. And, since the propeller of a quad-rotor is small, the drag coefficient ktd become very small. Therefore, those kinds of the forces have little effect on the quad-rotor dynamics. As a result, we can simplify the equation in terms of the torque as follows:
mP + G = FP JA =

where subscript i denote the number of each motor. The lift force measurements for each motor are shown in Fig. 3.
Motor lift force measurement
5 4.5 4 3.5 3 motor1 motor2 motor3 motor4

Then, the full dynamics of a quad-rotor can be obtained as follows:


4 F i =1 i (C C S + S S ) m 4 (C S S C S ) i =1 Fi m 4 q= F i i =1 g C C m / J y / J z / J x

Lift force

2.5 2 1.5 1

(4)

0.5 0 110

120

130

140

150

160

170

180

190

200

210

PWM

Fig. 3 Lift force measurement for each motor

1899

3.2.2 Inertia Moment The inertia matrix of a quad-rotor is as follows:


J xx J = J yx J zx
J xy J yy J zy J xz J yz J zz

Table 1 Model parameter of a quad-rotor

Parameter

Unit
kg

m
l Jx Jy Jz k11 k12 k21 k22 k31 k32 k41 k42

Value 5.947 101


1.620 101
5.486 10 3 5.425 10 3

m
kg m 2 kg m 2

Since the quad-rotor body is symmetric with respect to the xz-plane and yz-plane, we can let J xy = J yx = 0,
J xz = J zx = 0, and J yz = J zy = 0.

We calculate the inertia moment of a quad-rotor as follows :


J xx = J xx + mb ( y + z )
2 2

kg m2
N N N N N N N N

1.035 10 2 4.82 102 5.407


2.850 102

J yy = J yy + mb ( z 2 + x 2 ) J zz = J zz + mb ( x 2 + y 2 )

where J xx , J yy , J zz is the total inertia moment of motor and battery,

3.098
2.990 102

[x,

y , z ] is the distance between the

battery and the center of the mass of the quad-rotor, mb is the mass of the battery. We assume that the moment of inertia of a battery is a rectangular parallelepiped, and the motor is a cylinder. So the moment equation of the battery is as follows:
J bxx = J byy J bzz 1 mb (b 2 + c 2 ) 12 1 = mb (c 2 + a 2 ) 12 1 = mb (a 2 + b 2 ) 12

3.827
2.230 102

2.459

Name Mass of Quad-rotor Distance of Quad-rotors arm Inertia around x-axis Inertia around y-axis Inertia around z-axis Thrust Factor of Motor 1 Thrust Factor of Motor 1 Thrust Factor of Motor 2 Thrust Factor of Motor 2 Thrust Factor of Motor 3 Thrust Factor of Motor 3 Thrust Factor of Motor 4 Thrust Factor of Motor 4

4. ALTITUDE CONTROL DESIGN


(7)

4.1 Altitude Control Based on DSC

Through Eqs. (4) and (5), the dynamics of a quad-rotor about altitude is as follows :
z = uC C g
(9)

where

[ a , b, c ]

is the length, width and height,

respectively. The inertia of the motor is obtained as follows:


J mxx = J myy = J mzz 1 mm (3am 2 + Lm 2 ) 12 (8)

Since the values of and are to be zero, Eq. (9) becomes as follows :
z =ug
(10)

1 = mm am 2 12

Eq. (10) can be described as follows :


x1 = x2 x2 = u g
(11)

where mm is the mass of the motor, am is the radius, and Lm is the height of the motor. Therefore, the total inertia moments of motor and battery J xx , J yy , J zz are obtained easily by adding values of Eqs. (7) and (8). In Table 1, the whole model parameters of a quad-rotor are given.

where x1 = z . The object of control law is to stabilize the x1 tracking error dynamics so that a quad-rotor can track the command altitude xd . Thus, we initiate the DSC process at the altitude dynamics and assume that the command signals and their derivatives are available and continuous.

1900

At first, we define the first error surface S1 as follows :


S1 = x1 xd S1 = x1 xd = x2 xd

V=

1 2 ( S1 + S 2 2 + y 2 ) 2

The virtual control input x2 is chosen as follows :


x2 = k1 S1 + xd

Theorem 1 : Consider the dynamic model (11) about altitude of a quad-rotor controlled by the proposed control law (12), (14). Then, there exist the design parameters k1 , k2 such that all signals of the quad-rotor system are UUB and can be made arbitrarily small. Proof : Using (15)-(19), the time derivative of V can be obtained as follows :
V = S1 S1 + S2 S2 + y y = S1 ( S2 + y + x2 xd ) + S2 (u g x2 f ) + y y

(12)

where k1 is a positive design constant. We pass the above virtual control input x2 through the first order filter with small time constant to obtain the virtual control input x2 f .

(20)

2 x2 f + x2 f = x2 , x2 f (0) = x2 (0)

(13)

Using (12), (18) and (20) can be rewritten as follows :


V = S1 ( S 2 + y + k1 S1 ) + S 2 (u g x2 f ) + y y

where 2 is a positive design constant. And we define the second error surface as S 2 = x2 x2 d of which derivative is as follows :
S 2 = x2 x2 d = u g x2 d

(21)

Using (14), (21) can be rewritten as follows :


V = k1 S12 k2 S2 2 + y y

(22)

For S 2 0 , the actual control input u can be written as follows :


u = g + x2 d k2 S 2 S1

Eq. (18) can be rewritten as follows :


y= y x2

(14)

(23)

where k2 is a positive design constant.


4. 2 Stability Analysis

Cleary, we have
y+ y ( S1 , k1 , xd , xd )

Given the definitions of S1 and S 2 as in the preceding subsection, the dynamics of the derivative of error surface can be derived as follows :
S1 = x2 xd
(15)

For some continuous function , given any p > 0 and K 0 > 0 , we assume A := {S12 + S2 2 + y 2 2 p} and Q := {( xd , xd ) : xd 2 + xd 2 K 0 } . Therefore, has a maximum, say M on A Q . Eq. (22) can be rewritten as follows :
1 1 1 M2 V (k1 ) S12 k2 S2 2 ( ) y2 2 2 2 M 2 2 y 2 ( x2 ) 2 M 2 1 y + 2+ 2 2 2 M

S 2 = u g x2 d

(16)

and define the boundary layer of the error surface as follows : y = x2 f x2


y = x2 f x2

(17)
(18)

(23)

Combining (12) and (15), we have


S1 = S 2 + y + x2 xd

Eq. (23) can be rewritten as follows :


(19)
V k1* S12 k2 S2 2 k3 y 2 +

Consider the Lyapunov function as follows :

2 We can make k1* , k2 , k3 , positive to adjust values of

1901

k1 , k2 , 2 , M , . Accordingly, the errors S1 , S 2 , y are UUB.

5. SIMULATION AND EXPERIMENTAL RESULTS


In this section, we perform the simulation and the experiment for the altitude control of a quad-rotor to demonstrate the validity of the proposed control method. The physical parameters for a quad-rotor are chosen as Table 1. The controller parameters and time constant of filter for the proposed control system are chosen as k1 = 2 , k2 = 1 and 2 = 0.1 , respectively. And the initial value of altitude z (0) is set to 0. The reference signal is chosen as zd = 0.15 tanh(t - 5) + 0.15 .
Simulation Result
DSC method reference signal 0.25

This paper dealt with the modeling and altitude control of a quad-rotor UAVs. First, we derived the quad-rotor model using Euler-Lagrange equations and performed experiment to identify model parameter. Second, we designed the altitude controller of a quad-rotor based on DSC method. From the Lyapunov stability theory, we proved that all signals of a quad-rotor system are UUB. From the simulation and experimental results, we verified the effectiveness of the proposed control method.

ACKNOWLEAGEMENT
This work was supported by the New & Renewable Energy of the Korea Institute of Energy Technology Evaluation and Planning(KETEP) grant funded by the Korea government Ministry of Knowledge Economy.

REFERENCES
K. P. Valavanis, Adavances in Unmanned Aerial Vehicles: State of the Art and the Road to Autonomy, Springer, 2007. [2] K. Khalil, Nonlinear Systems, Prentice Hall, New Jersey. 1992. [3] S. Bouabdallah, P. Murrieri and R. Siegwart, Design and Control of an Indoor Micro Quadrotor, Proc. of Int. Conf. on Robotics and Automation, Vol. 5, pp. 4393-4398, 2004. [4] Y. Wu, Development and Implemenation of a Control System for a Quadrotor UAV, Master Thesis, Univ. of Applied Science Ravenburg -weingarten, Germany, 2009. [5] D. Swaroop, J. C. Gerdes, P. P. Yip and J. K. Hedrick, Dynamic Surface Control of Nonlinear Systems, Proc. of American Control Conference, pp. 3028-3034, 1997. [6] Tarek Madani and A. Benallegue, Backstepping Control for a Quadrotor Helicopter, Proc. of Int. Conf. on Intelligent Robots and Systems, pp. 3255-3260, 2006. [7] H. Bouadi, M. Bouchoucha and M.Tadjine, Sliding Mode Control Based on Backstepping Approach for an UAV Type-quadrotor, World Academy of Science., Engineering and Technology, 2007. [8] M. O. Efe , Robust Low Altitude Behavior Control of a Quadrotor Rotorcraft Through Sliding Modes, Proc. of Mediterranean Conf. on Control and Automation, 2007. [9] K. Oner, E. Cetinsoy, M. Unel, M. Aksit, I. Kandemir and K. Gulez, Dynamic Model and Control of a New Quadrotor UAV with Tilt-wing Mechanism, World Academy of Science, Engineering and Technology, 2008. [10] B. Erginer and E. Altug, Modeling and PD Control of a Quadrotor VTOL Vehicle, Proc. of IEEE Intelligent Vehicles Symp., pp. 894-899, 2007. [1]

0.2

Altitude (cm)

0.15

0.1

0.05

10

12

14

16

Time (s)

Fig. 4 Simulation result for DSC method


Experimental Result
0.4 reference DSCmethod 0.35

0.3

0.25

Altitude (cm)

0.2

0.15

0.1

0.05

10

12

14

16

Time (s)

Fig. 5 Experimental result for DSC method

Figs. 4 and 5 show the control results via simulation and experiment, respectively. From the simulation and experimental results, we verify the good performance of the proposed control method

6. CONCLUSIONS

1902

You might also like