Profile
International Journal of Mechanical Systems Engineering Volume 2 (2016), Article ID 2:IJMSE-117, 7 pages
http://dx.doi.org/10.15344/2455-7412/2016/117
Research Article
Modeling and Adaptive Backstepping Control for Quadrotor Robots with Blade Flapping

Lih-Chang Lin&* and Wen-Cong Xu

Department of Mechanical Engineering, National Chung Hsing University, Taichung, Taiwan 402, R.O.C.
Prof. Lih-Chang Lin, Department of Mechanical Engineering, National Chung Hsing University, Taichung, Taiwan 402, R.O.C; E-mail: lclin@mail.nchu.edu.tw
15 December 2015; 04 July 2016; 06 July 2016
Lin LC, Xu WC (2016) Modeling and Adaptive Backstepping Control for Quadrotor Robots with Blade Flapping. Int J Mech Syst Eng 2: 117. http://dx.doi.org/10.15344/2455-7412/2016/117
This research was supported by the R.O.C. Ministry of Science and Technology Grant MOST 104-2221-E- 005-030.

Abstract

Dynamics modeling and control for quadrotor aerial robots are considered in this paper. The threedimensional dynamics model of the quadrotor is first derived using the Newton-Euler approach. When the propelling rotor rotating with respect to the moving robot, the rotating blades could be deflected with an effect on the aerial vehicles known as flapping. The modeling with blade flapping is considered. Then a nonlinear stable adaptive control with flapping parameters estimation is proposed using the backstepping technique for the position and yaw angle trajectory tracking. Finally, computer simulation is used to validate the performance of the proposed control strategy. In the simulation study, the desired trajectory is constructed using the cubic spline interpolation.


1. Introduction

Quadrotor aerial vehicles are highly maneuverable and have enabled a number of indoor and outdoor applications, e.g., three-dimensional (3D) environment exploring, mapping, navigation, transporting, military and commercial opportunities. The ability of 3D movement brings great research interest in the field of mobile robotics.

Corke [1] provides a comprehensive introduction to the 3D dynamics model of quadrotor robots using Newton’s second law and Euler equations. And a PID-based inner-loop/outer-loop scheme is proposed for the 3D translation and yaw control. Mahony et al. [2] propose a tutorial introduction to the rigid-body dynamics modeling, estimation, and control for multirotor aerial vehicles including the quadrotor case. They also give a physical discussion about the rotor blade flapping referring to [3,4], and then presented a disturbed external force model due to the blade flapping effect. Beard [5] considers the problems of dynamics, state estimation, and control of a quadrotor aerial vehicle.

In Yesildirek et al. [7], the quadrotor system is decomposed into three fully actuated subsystems in pitch, roll and yaw domains. They propose a multi Lyapunov function based switching control algorithm to achieve tracking of Cartesian space motion and the heading angle of the quadrotor. Hao et al. [8] propose a change in describing the dynamics of the quadrotor and separate the dynamics into three sub-groups. Then combined with a coordinate transformation, they propose a trajectory tracking control design using the backstepping technique. Zhao et al. [9] present an asymptotic tracking controller for the quadrotor using the robust integral of the signum of the error (RISE) method and an immersion and invariance (I&I)-based adaptive control methodology. The proposed control system is composed of two parts: the inner loop for attitude control (using the RISE approach) and the outer loop for position control (using the I&I adaptive control methodology. The proposed control system is composed of two parts: the inner loop for attitude control (using the RISE approach) and the outer loop for position control (using the I&I approach).

This paper will consider the 3D dynamics modeling of the quadrotor with blade flapping effect via the Newton-Euler approach and the position and yaw angle trajectory tracking control design using the backstepping technique. Computer simulation is conducted to illustrate the trajectory tracking performance of the 3D translation and yaw motion.

2. Dynamics Model of a Quadrotor Robot

Refer to Figure 1, the quadrotor robot comprised of a main frame structure and four blade rotors (numbered 1, 2, 3, and 4 clockwise) is considered as a rigid body, where the body coordinate system {B} is defined with its origin G attached to the center of mass of the whole robot, and the inertia (world) coordinate frame {W} with origin at O is fixed on the earth surface. The positive direction of axis is defined along the heading direction of the vehicle. Rotors 1 and 3 rotate clockwise, and rotors 2 and 4 rotate counterclockwise. In the dynamics modeling, we consider the gravity force along the negative Zw direction, and the four thrust forces T i = C f ω i 2 , i = 1,2,3,4 along ZB axis, where Cf is the aerodynamic thrust coefficient and ωi is the rotor (blade) rotating speed. The resisting torque about the blade axis is τ i = C q ω i 2 , i = 1,2,3,4, where Cq is the aerodynamic drag coefficient. Thus, the total thrust force and the roll, pitch and yaw torques τr, τp, and τy are as follows [12].

T f = C f ( ω 1 2 + ω 2 2 + ω 3 2 + ω 4 2 ) τ r = l 2 C f ( ω 1 2 ω 2 2 ω 3 2 + ω 4 2 ) τ p = l 2 C f ( ω 1 2 ω 2 2 + ω 3 2 + ω 4 2 ) τ y = C q ( ω 1 2 ω 2 2 + ω 3 2 ω 4 2 )

figure 1
Figure 1: Forces and torques acting on a quadrotor robot.

where l is the distance from the center of mass G to each rotating axis.

ZYX Euler angles (ψ, θ, ϕ) are used for representing the orientation of the quadrotor vehicle’s body frame with respect to the world frame R W B . The first rotation is the yaw angle ψ about ZE axis, then the second rotation is the pitch angle θ about YE axis, and the third rotation is the roll angle ϕ about XE axis. Thus R W B can be represented as [13]

R W B R Z ( ψ ) R Y ( θ ) R X ( ϕ )      = [ cψcθ sψcϕ+cψsθsϕ sψsϕ+cψsθcϕ sψcθ cψcϕ+sψsθsϕ cψsϕ+sψsθcϕ sθ cθsϕ cθcϕ ]

Where sϕ=sinϕ, cϕ=cosϕ , etc.

Define t = [x,yz]T as the position vector of the center of mass G of the quadrotor robot in terms of the world frame, and assume that the robot structure is symmetrical about the coordinate system. Consider the quadrotor robot being under normal flight conditions, i.e., the roll and pitch angles are very small, and the flight drag force is negligible. By the Newton’s second law and Euler equations of motion, we can derive the dynamics model of the quadrotor robot as follows: [1,14]

{ x ¨ =(sψsϕ+cψsθcϕ) T f m y ¨ =(cψsϕ+sψsθcϕ) T f m z ¨ =g+cθcϕ T f m

{ ϕ ¨ =( I yy I zz I xx ) θ ˙ ψ ˙ + τ r I xx θ ¨ =( I zz I xx I yy ) ψ ˙ ϕ ˙ + τ p I yy ψ ¨ =( I xx I yy I zz ) ϕ ˙ θ ˙ + τ y I zz

where m is the mass of the quadrotor robot, g is the gravitation acceleration constant, I = diag[Ixx, Iyy, Izz] is the mass inertia matrix about the body frame {B}, Ixx, Iyy, and Izz are the moments of inertia about ZB axes, respectively.

Mahony et al. [2] considered the blade flapping effect and proposed a simplified flapping model. Neglecting the effect of the vertical velocity component, we consider the quadrotor robot being with a flight velocity vector νB = [u, ν, 0]τ. In order to simplify the flapping model, the four rotors are assumed with same conditions. The aerodynamic disturbance forces resulting from the deflection of the rotor blades in the XBYB plane can be derived as follows. As shown in Figure 2, define the flapping angles β and β as [2]

β= μ A 1c (1 1 2 μ 2 ) ; β = μ A 1s (1+ 1 2 μ 2 )

figure 2
Figure 2: Blade flapping angle.

where β is the tilt angle of the rotor away from the incoming apparent wind, and β is the tilt orthogonal to the incident wind; A1c and A1s are positive constants; μ= u 2 + v 2 / ( ωr ) is the advance ratio (ratio of the robot translational speed to the blade’s tip tangential speed relative to the robot). Consider the case of small advance ratio μ, thus μ2 ≈ 0, and the flapping angles are small and become as follows:

β=μ A 1c ; β =μ A 1s

Define the sensitivity matrix Aflap of the flapping effect to the apparent wind:

A flap = 1 ωr [ A 1c A 1s 0 A 1s A 1c 0 0 0 0 ]

then the total force acting on the quadrotor robot can be represented as:

F B =[ 0 0 T f ] T f A flap v B

Substituting Aflap and Equation (4) into Equation (5), the translational equations of motion of the quadrotor robot can be derived as follows using the Newton’s second law:

x ¨ =[cψcθ(βcosα+β sinα)       +(sψcϕ+cψsθsϕ)(β cosα+βsinα)       +(sψsϕ+cψsθcϕ)] T f /m y ¨ =[sψcθ(βcosα+β sinα)           +(cψcϕ+sψsθsϕ)(β cosα+βsinα)           +(cψsϕ+sψsθcϕ)] T f /m z ¨ =[sθ(βcosα+β sinα)           +cθsϕ(β cosα+βsinα)+cθcϕ] T f /m g

where α = atan2(ν,u) is the angle between the velocity vector υs and XB axis. And the rotational equations of the robot are still expressed by Equations (2b).

3. Adaptive Control via Backstepping for Quadrotors with Blade Flapping

Since a quadrotor aerial vehicle has only four rotor actuators, it is an underactuated system and difficult to control it to have arbitrary six degrees-of-freedom motion in the free Cartesian space. Due to the limit of only four rotors, it is natural to choose the four important motions including the three translational components and the heading rotation (i.e., the yaw angle) as the control objectives. That is, we can set four arbitrary desired trajectories: xd(t), yd(t), yd(t) and ψd(t), and propose a suitable stable control law to obtain the trajectory tracking control objective.

In this paper, we will propose a nonlinear stable adaptive control design using the backstepping approach [6,15] for quadrotor robots considering the blade flapping effect. Based on the dynamics model: Equations (6) and (2b), and after substituting (1) into the model, we can first define the following four control input variables:

{ U 1 = C f ( ω 1 2 + ω 2 2 + ω 3 2 + ω 4 2 ) U 2 = C f ( ω 1 2 ω 2 2 ω 3 2 + ω 4 2 ) U 3 = C f ( ω 1 2 ω 2 2 + ω 3 2 + ω 4 2 ) U 4 = C q ( ω 1 2 ω 2 2 + ω 3 2 ω 4 2 )

and choose the state vector x= [ x 1 T   x 2 T ] T with x 1 = [ x y z ϕ θ ψ ] T ,  x 2 = [ x ˙   y ˙   z ˙   ϕ ˙   θ ˙   ψ ˙ ] T After defining the regression vectors as:

{ φ z = [ sθcα+cθsϕsα sθsαcθsϕcα ] T φ x = [ cψcθcα+( sψcϕ+cψsθsϕ )sα cψcθsα+( sψcϕcψsθsϕ )cα ] T φ y = [ sψcθcα+( cψcϕ+sψsθsϕ )sα sψcθsα( cψcϕ+sψsθsϕ )cα ] T

and the unknown flapping angles vector as:

ξ= [ β  β ] T

Equations (6) can be expressed as the regression model:

{ x ¨ = 1 m ( φ x T ξ+ u x ) U 1 y ¨ = 1 m ( φ y T ξ+ u y ) U 1 z ¨ =g+ 1 m ( φ z T ξ+cθcϕ ) U 1

where u x =sψsϕ+cψsθcϕ,  u y =cψsϕ+sψsθcϕ.

And d x = φ x T ξ d y = φ y T ξ and  d z = φ z T ξ the flapping disturbance terms along the axes, respectively. Equations (2b) can be expressed as

{ ϕ ¨ = I yy I zz I xx θ ˙ ψ ˙ + l 2 I xx U 2 θ ¨ = I zz I xx I yy ψ ˙ ϕ ˙ + l 2 I yy U 3 ψ ¨ = I xx I yy I zz ϕ ˙ θ ˙ + 1 I zz U 4

In the derivation of stable adaptive control law, the estimate of the unknown flapping angles is defined as ξ ^ = [ β ^ β ^ ] T , and the estimation error is defined as ξ ˜ =ξ ξ ^ . The estimates of the flapping disturbances are defined as: d ^ x = φ x T ξ ^ ,  d ^ y = φ y T ξ ^ ,  d ^ z = φ z T ξ ^

3.1 Z-axis motion control design

First, consider the x ˙ 3 = x 9 subsystem. Introducing the virtual input β 1 , we have:

x ˙ 3 = β 1

Define the tracking error

e 1 = z d x 3

where Zd(t) is the desired trajectory for .Taking the time derivative, we have:

e ˙ 1 = z ˙ d x ˙ 3 = z ˙ d β 1

Choosing Lyapunov function candidate as:

V 1 = 1 2 [ e 1 2 + λ 1 ( 0 t e 1 (τ)dτ ) 2 ],  λ 1 >0

we can obtain the time derivative as follows:

By choosing the virtual input β 1 as:

β 1 = z ˙ d + λ 1 0 t e 1 (τ)dτ + c 1 e 1 ,  c 1 >0

we have

V ˙ 1 = c 1 e 1 2 0

Consider the subsystem:

{ x ˙ 3 = x 9 x ˙ 9 =g+ 1 m ( φ z T ξ+cθcϕ ) U 1

And define

e 2 = β 1 x 9 = z ˙ d + λ 1 0 t e 1 (τ)dτ + c 1 e 1 x 9

we can obtain:

e ˙ 2 = z ¨ d + λ 1 e 1 + c 1 e ˙ 1 x ˙ 9

Choosing Lyapunov function candidate:

V 2 = V 1 + 1 2 e 2 2 = 1 2 [ e 1 2 + λ 1 ( 0 t e 1 (τ)dτ ) 2 + e 2 2 ]

and taking the time derivative, we have:

V ˙ 2 = c 1 e 1 2 + e 2 [ ( 1+ λ 1 c 1 2 ) e 1 + c 1 e 2 + z ¨ d c 1 λ 1 0 t e 1 (τ)dτ +g 1 m ( φ z T ξ ˜ + φ z T ξ ^ +cθcϕ ) U 1 ]

Hence, we can choose the control law:

U 1 = m φ z T ξ ^ +cθcϕ [ g+( 1+ λ 1 c 1 2 ) e 1 + c 1 e 2 + z ¨ d c 1 λ 1 0 t e 1 (τ)dτ + c 2 e 2 ],  c 2 >0

and obtain:

V ˙ 2 = c 1 e 1 2 c 2 e 2 2 e 2 U 1 m φ z T ξ ˜

3.2 x-axis subsystem control design

Similarly as the z-axis design procedure, the x-axis subsystem can be considered by introducing the virtual inputs β 2 β ux  for  x 7  and  u x , respectively, and defining the errors:

{ e 3 = x d x 1 e 4 = β 2 x 7

where xd(t) is the desired trajectory for x. Choose Lyapunov function candidates:

V 3 = 1 2 [ e 3 2 + λ 2 ( 0 t e 3 (τ)dτ ) 2 ],    λ 2 >0 V 4 = 1 2 [ e 3 2 + λ 2 ( 0 t e 3 (τ)dτ ) 2 + e 4 2 ]

After taking their time derivatives and choosing β2 and βux as:

β 2 = x ˙ d + λ 2 0 t e 3 (τ)dτ + c 3 e 3 ,   c 3 >0  β ux = m U 1 [ ( 1+ λ 2 c 3 2 ) e 3 + c 3 e 4 + x ¨ d c 3 λ 2 0 t e 3 (τ)dτ + c 4 e 4 ] φ x T ξ ^ ,  c 4 >0

we can obtain:

V ˙ 3 = c 3 e 3 2 0 V ˙ 4 = c 3 e 3 2 c 4 e 4 2 e 4 U 1 m φ x T ξ ˜

3.3 y-axis subsystem control design

Similarly, the y-axis subsystem can be considered by introducing the virtual inputs β3, βuy for x8 and uy respectively, and defining the errors:

{ e 5 = y d x 2 e 6 = β 3 x 8

where Yd(t) is the desired trajectory for y. Choose Lyapunov function candidates:

V 5 = 1 2 [ e 5 2 + λ 3 ( 0 t e 5 (τ)dτ ) 2 ],    λ 3 >0 V 6 = 1 2 [ e 5 2 + λ 3 ( 0 t e 5 (τ)dτ ) 2 + e 6 2 ]

After taking their time derivatives and choosing β3 and βuy as:

β 3 = y ˙ d + λ 3 0 t e 5 (τ)dτ + c 5 e 5 ,   c 5 >0 β uy = m U 1 [ ( 1+ λ 3 c 5 2 ) e 5 + c 5 e 6 + y ¨ d c 5 λ 3 0 t e 5 (τ)dτ + c 6 e 6 ] φ y T ξ ^ ,  c 6 >0

we can obtain:

V ˙ 6 = c 5 e 5 2 c 6 e 6 2 e 6 U 1 m φ y T ξ ˜

Flapping Angles Estimator Design

Choose Lyapunov function candidate:

V t = V 2 + V 4 + V 6 + 1 2 ξ ˜ T Γ 1 ξ ˜

where Γ is a 2×2 positive-definite weight matrix. Taking the time derivative and substituting into U1, βux, and ξ ˙ 0 , and using the assumption of , i.e., , ξ ˜ ˙ = ξ ^ ˙ , we can obtain:

V ˙ t = c 1 e 1 2 c 2 e 2 2 c 3 e 3 2 c 4 e 4 2 c 5 e 5 2 c 6 e 6 2 [ U 1 m ( e 2 φ z T + e 4 φ x T + e 6 φ y T )+ ξ ^ ˙ T Γ 1 ] ξ ˜

Thus, we can choose the unknown flapping angles estimator as:

ξ ^ ˙ = U 1 m Γ ( e 2 φ z + e 4 φ x + e 6 φ y )

and obtain

V ˙ t = i=1 6 c i e i 2 0

Since V ˙ t is negative definite, the adaptive translation subsystem is asymptotically stable [16].

4. Pitch Subsystem Control Design

Consider the pitch subsystem and introduce virtual input β for x11. Define the error

e ux = β ux u x = β ux ( sψsϕ+cψsθcϕ )

and choose Lyapunov function candidate:

V 7 = V t + 1 2 K ux e ux 2 ,   K ux >0 

In order to make the time derivative V ˙ 7 negative definite, we can select βe as:

β θ = 1 cψcθcϕ [ β ˙ ux +( sψsθcϕcψsϕ ) x 12 +( cψsθsϕsψcϕ ) x 10 + 1 K ux ( 1 m e 4 U 1 + c ux e ux ) ]

where c ux >0 .

Define the error e βθ = β θ x 11 , and choose Lyapunov function candidate as:

V 8 = V 7 + 1 2 K βθ e βθ 2 ,   K βθ >0

In order to make the time derivative V ˙ 8 negative definite, we can select the control law U3 as follows:

U 3 = 2 I yy l [ β ˙ θ ( I zz I xx I yy x 12 x 10 ) + 1 K βθ ( K ux e ux cψcθcϕ+ c βθ e βθ ) ],  c βθ >0

5. Roll Subsystem Control Design

Consider the roll subsystem and introduce virtual input input βϕ for x10. Define the error

e uy = β uy u y = β uy ( cψsϕ+sψsθcϕ )

and choose Lyapunov function candidate:

V 9 = V t + 1 2 K uy e uy 2 ,   K uy >0

To make V ˙ 9 negative definite, we can select βϕ as:

β ϕ = 1 cψcϕ+sψsθsϕ [ β ˙ uy +( sψsϕ+cψsθcϕ ) x 12 +sψcθcϕ x 11 + 1 K uy ( 1 m e 6 U 1 c uy e uy ) ],  c uy >0

Define the error e βϕ = β ϕ x 10 , and choose Lyapunov function candidate as:

V 10 = V 9 + 1 2 K βϕ e βϕ 2 ,   K βϕ >0

In order to make the time derivative V ˙ 10 negative definite, we can select the control law U2 as follows:

U 2 = 2 I xx l [ β ˙ ϕ ( I yy I zz I xx x 11 x 12 ) + 1 K βϕ ( K uy e uy ( cψcϕ+sψsθsϕ )+ c βϕ e βϕ ) ],  c βϕ >0

6. Yaw Subsystem Control Design

Finally, consider the control of the yaw subsystem:

{ x ˙ 6 = x 12 x ˙ 12 = I xx I yy I zz x 10 x 11 + U 4 I zz

First, introduce the virtual input β4 for x12, and consider:

x ˙ 6 = β 4

Define the yaw tracking error:

e 7 = ψ d x 6

where ψ d ( t ) is the desired trajectory for x6. Consider Lyapunov function candidate:

V 11 = 1 2 [ e 7 2 + λ 4 ( 0 t e 7 (τ)dτ ) 2 ],   λ 4 >0

After taking the time derivative V ˙ 11 and selecting

β 4 = ψ ˙ d + λ 4 0 t e 7 (τ)dτ + c 7 e 7 ,   c 7 >0

we can obtain:

V ˙ 11 = c 7 e 7 2 0

Then define the error

e 8 = β 4 x 12

and choose Lyapunov function candidate:

V 12 = 1 2 [ e 7 2 + λ 4 ( 0 t e 7 (τ)dτ ) 2 + e 8 2 ]

After taking the time derivative V ˙ 12 and selecting the control law U4 as follows:

U 4 = I zz [ I xx I yy I zz x 10 x 11 +( 1+ λ 4 c 7 2 ) e 7 + c 7 e 8 + ψ ¨ d c 7 λ 4 0 t e 7 (τ)dτ + c 8 e 8 ],  c 8 >0

we can obtain:

V ˙ 12 = c 7 e 7 2 c 8 e 8 2 0

Thus, the closed-loop yaw subsystem is asymptotically stable.

The proposed overall control system for a quadrotor robot can be summarized as shown in Figure 3.

figure 3
Figure 3: Matlab/Simulink control block diagram.

7. Computer Simulation and Discussion

The tracking performance of the proposed adaptive control system with flapping compensation is tested via computer simulation using Matlab/Simulink as shown in Figure 3. Consider the desired trajectory created using the cubic spline method as shown in Figure 4. The quadrotor is requested to flight straightly up to a height of 4 m from the origin of the world coordinate system in 10 seconds, and then move counterclockwise in a circle with radius 5 m keeping the same height in 50 seconds. Then the quadrotor is required to maintain a steady hover in the final 10 seconds. The yaw angle is kept constant at in the whole flight.

figure 4
Figure 4: Desired and response trajectories.

In the simulation study, the parameters of the quadrotor robot are selected as follows m=0.8 kg, r=0.1 m, g=9.81 m/s2 , l =0.5 m, A1c = A15= 1.5,

I=diag[ 1.5× 10 3  1.5× 10 3  1.5× 10 3 ] kg- m 2 ,

C f =1.2459× 10 6 N/rp m 2 ,  C q =3.29× 10 11 Nm/rp m 2 .

The parameters of the controller used are as follows:

λ 1 =5× 10 5 ,  λ 2 =4× 10 5 ,  λ 3 =5× 10 5 ,  λ 4 =2× 10 3 , c 1 =2.7,  c 2 =2.5,  c 3 =6,  c 4 =5.5,  c 5 =6,  c 6 =5, c 7 =3,  c 8 =2,  K ux =0.6,  K uy =0.9,  K βθ =0.5, K βϕ =0.8,  c ux =16,  c uy =15,  c βθ =16,  c βϕ =22, and Γ=diag[ 7× 10 5 ,7× 10 5 ].

The three-dimensional tracking result of the whole trajectory is shown in Figure 4. The trajectory tracking in the , , and axes and the yaw angle tracking are shown in Figure 4.1. The tracking errors are shown in Figure 4.2. The induced roll and pitch angles during the flight are shown in Figure 4.3. Equation (7) describes the relation between the control variables and the squared rotor speeds. Using the inverse transform we can find the required squared rotor speeds corresponding to the control signals In order to get all positive the parameters of the controller must be suitably chosen. In this work, the response in the y-axis is thus lagged the desired trajectory approximately from s and has larger tracking error and the largest tracking error is approximately 0.23 m. From Figure 4.3, we know that the roll and pitch angles are small and reasonable, thus the flight is stable. The largest tracking errors in the and z axes are approximately 0.05 m and 0.02 m, respectively. The yaw angle can be kept at as shown in Figures 4.1 and 4.2. Figure 4.3 shows that in order to keep steady hovering, the required roll and pitch angles are larger during the hovering period. The estimates of the flapping angles are shown in Figure 4.4, and the estimate errors are larger in the hovering period.

figure 4.1
Figure 4.1: Tracking results of the position and yaw.
figure 4.2
Figure 4.2: Tracking errors of the position and yaw.
figure 4.3
Figure 4.3: Roll and pitch angle responses.
figure 4.4
Figure 4.4: Actual and estimated flapping angles.

8. Conclusion

This article considers the dynamics modeling and nonlinear stable adaptive control design with blade flapping compensation for the quadrotor robots. The quadrotor robot is under-actuated since it has only four rotor actuators for three-dimensional flight maneuvering. It is rather difficult to construct an arbitrary six- dimensional flight control, so the usual approach to the control design adopts only the three-dimensional translation and yaw angle tracking control. The dynamic x-axis motion of a quadrotor could be induced by suitable small pitch rotation, and the y-axis motion could be affected by the roll motion. Based on these characteristics, this paper proposes a backstepping-based stable adaptive control design considering the blade flapping effect. Computer simulation is conducted to illustrate the trajectory tracking performance of the 3D position and heading control. The roll and pitch angles generated by the controller are small enough, so the flight is stable and reasonable. In the simulation, the choice of the controller parameters is compromised for getting positive squared rotor speeds to compute practical rotor speed commands.

Competing Interests

The authors declare that they have no competing interests.

Author Contributions

All the authors substantially contributed to the study conception and design as well as the acquisition and interpretation of the data and drafting of the manuscript.


References

  1. Corke P (2013) Robotics, Vision and Control: Fundamental Algorithms in MATLAB. Springer. View
  2. Mahony RE, Kumar V, Corke P (2012) Multirotor aerial vehicles: modeling, estimation, and control of quadrotor. IEEE Robot Automat Mag 19: 20-32.
  3. Huang H, Hoffmann GM, Waslander SL, Tomlin CJ (2009) Aerodynamics and control of autonomous quadrotor helicopters in aggressive maneuvering. Proc IEEE Int Conf Robot Automat, 3277-3282. View
  4. Leishman J (2002) Principles of Helicopter Aerodynamics. Cambridge University Press. View
  5. Beard R (2008) Quadrotor dynamics and control Rev 0.1. All Faculty Publications. Paper 1325. View
  6. Benzaid K, Mansouri N, Labbani-Igbida, O (2013) Robust trajectory tracking control of a quadrotor UAV. Proc Int Conf third Syst Contr (ICSC), 206-211. View
  7. Yesildirek A, Imran B (2014) Nonlinear control of quadrotor using multi Lyapunov functions. American Control Conference, 3844-3849.
  8. Hao ND, Mohamed B, Rafaralahy H (2014) Trajectory-tracking control design for an under- actuated quadrotor. European Control Conference (ECC), 1765-1770. View
  9. Zhao B, Xian B, Zhang Y, Zhang X (2015) Nonlinear robust adaptive tracking control of a quadrotor UAV via immersion and invariance methodology. IEEE Trans Industrial Electronics 62: 2891-2902. View
  10. Sadr S, Moosavian SAA, Zarafshan P (2014) Dynamics modeling and control of a quadrotor with swing load. J Robotics 265897. View
  11. Rinaldi F, Chiesa S, Quagliotti F (2013) Linear quadratic control for quadrotors UAVs dynamics and formation flight. J Intell Robot Syst 70: 203-220. View
  12. Sun Y (2012) Modeling, Identification and Control of a Quad-rotor Drone Using Low-Resolution Sensing. Master’s Thesis, University of Illinois at Urbana- Champaign. View
  13. Craig JJ (1989) Introduction to Robotics: Mechanics and Control, (2nd Edn), Addison-Wesley. View
  14. Spong MW, Hutchinson S, Vidyasagar M (2006) Robot Modeling and Control, Wiley.
  15. Spooner JT, Maggiore M, Ordóñez R, Passino KM (2002) Adaptive Control and Estimation for Nonlinear Systems: Neural and Fuzzy Approximator Techniques. Wiley. View
  16. Slotine J-JE, Li W (2005) Applied Nonlinear Control. Pearson Education Taiwan Ltd.