Next Article in Journal
Objective Image Quality Measures for Disparity Maps Evaluation
Previous Article in Journal
Exploring the Effects of Scale and Color Differences on Users’ Perception for Everyday Mixed Reality (MR) Experience: Toward Comparative Analysis Using MR Devices
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Disturbance Observer-Based Control for Trajectory Tracking of a Quadrotor

1
Morai Incorporation, Seoul 06168, Korea
2
Division of Electrical, Electronic, and Control Engineering and Institute of IT Convergence Technology, Kongju National University, Cheonan 31080, Korea
*
Author to whom correspondence should be addressed.
Electronics 2020, 9(10), 1624; https://doi.org/10.3390/electronics9101624
Submission received: 10 September 2020 / Revised: 25 September 2020 / Accepted: 29 September 2020 / Published: 2 October 2020
(This article belongs to the Section Systems & Control Engineering)

Abstract

:
This paper presents a new control approach for the trajectory tracking of a quadrotor in the presence of external disturbances. Unlike in previous studies using hierarchical control strategies, a nonlinear controller is designed by introducing new state transformations that can use Euler angles as virtual control inputs. Thus, the proposed method can eliminate the timescale separation assumption of hierarchical control strategies. To estimate the external disturbances involved in the translational and rotational dynamics of the quadrotor, disturbance observers are developed. Using state transformations and estimates of external disturbances, we design a robust nonlinear controller based on the dynamic surface control method. The stability of the closed-loop system is analyzed without separation into two subsystems. From the Lyapunov stability theory, it is proven that all error signals in the closed-loop system are uniformly ultimately bounded and can be made arbitrarily small. Finally, simulation results are presented to demonstrate the performance of the proposed controller.

1. Introduction

Quadrotors are widely used for military and commercial purposes because of their capabilities of vertical take-off and landing (VTOL) and free mobility [1]. A quadrotor requires position and attitude control for autonomous flight. However, it is difficult to design an appropriate controller because the quadrotor model is underactuated and has strong nonlinear couplings between its dynamic states [2]. Furthermore, robustness against disturbances such as wind gusts during the operation of the quadrotor is essential for control performance [3]. Therefore, various control methods have been proposed to solve these problems.
To address the nonlinear coupling problem, linear control methods such as PID [4,5,6], LQR [7,8], and H [9,10] based on linearized models were proposed. To obtain a linearized model, the assumption that the quadrotor is moving around a hovering position is required, which causes the performance of linear control methods to degrade when aggressive maneuvers and external disturbances are applied [11]. Therefore, as an alternative, nonlinear control methods have received considerable attention recently. The main difficulty in designing nonlinear controllers is that a quadrotor is an underactuated system with six DOFs and four control inputs. For such an underactuated system, methods of designing controllers in accordance with particular flight modes were proposed in [12,13]. However, it is difficult to prove the overall stability and/or different flight control modes cannot be used at the same time. To overcome this drawback, a hierarchical control strategy based on inner- and outer-loop subsystems is generally used [14,15,16,17,18,19,20,21,22,23]. Using this strategy, it is possible to prove the stability of the closed-loop system and control the position and attitude of the quadrotor simultaneously. Therefore, nonlinear controllers such as backstepping [16], adaptive [17,18], sliding mode [19,20,21], and neural-network-based controllers [22,23] have all been proposed using hierarchical control strategies. In a hierarchical control strategy, the control system is divided into two subsystems. First, a position controller is designed to track the desired position. Then, the thrust force and desired Euler angles are derived by the position controller under the assumption that the Euler angles track the desired angles instantaneously. Furthermore, the desired Euler angles are derived without considering the disturbances involved in the translational dynamics of the quadrotor, which can degrade the tracking performance. Thus, the control performance of the position controller is directly affected by the convergence rate and accuracy of the attitude controller. For a fast response of the attitude controller, sufficiently large gains are required, but this can lead to a large overshoot of the control inputs [24]. It is well known that physical systems have limited control inputs and that a large overshoot of the control inputs is impractical. Although command filter [24,25], finite-time control [26,27], and invariant dynamic surface [28] methods were proposed to enable fast convergence of the attitude controller, the final control systems are still designed using hierarchical strategies. Moreover, the stability analysis is performed separately for the two subsystems due to the nature of hierarchical control.
Motivated by these observations, we propose a new theoretical control approach different from hierarchical control for the trajectory tracking of a quadrotor in the presence of disturbances. In the proposed approach, the controller is designed using new state transformations to handle the properties of underactuation, nonlinearity, and strong coupling, and a fast attitude control response is not required. Furthermore, disturbances in the translational dynamics of the quadrotor are considered to obtain the desired Euler angles. This implies that unlike a hierarchical strategy, the proposed method can achieve the desired tracking performance even if we choose low gains and disturbances exist in the translational dynamics. To address disturbances including wind and unstructured uncertainty, a disturbance-observer-based nonlinear controller is designed. From the Lyapunov stability theory, the stability of the proposed method is established without separation into two subsystems. The main contributions of this paper are twofold.
(1)
A new control approach different from a hierarchical strategy is presented based on state transformations. Since the proposed method does not require the instantaneous convergence of attitude control and obtains the desired Euler angles while considering disturbances, the desired tracking performance can be achieved with low gains.
(2)
The stability of the proposed method is analyzed without separation into two subsystems. Thus, the controller is designed without the restrictive assumption known as timescale separation (see details in [29]).
This paper is organized as follows. The problem formulation is described in Section 2. The disturbance-observer-based nonlinear controller is presented in Section 3. Simulation results are provided in Section 4. Finally, conclusions are given in Section 5.

2. Problem Formulation

Consider the quadrotor configuration shown in Figure 1. A rigid-body model of the quadrotor can be given as follows [30]:
p ¨ = R ( q ) F m + d G ,
q ¨ = J 1 C ( q ˙ ) + J 1 τ + τ d ,
where p = [ x , y , z ] is the position vector of the center of mass in the inertial frame, q = [ ϕ , θ , ψ ] is the Euler angle vector that describes the orientation of the body-fixed frame with respect to the inertial frame, G = [ 0 , 0 , g ] is the gravitational acceleration vector, J = diag ( J x x , J y y , J z z ) is the inertia matrix with respect to the body-fixed frame, d = [ d 1 , d 2 , d 3 ] is the disturbance vector for the translational dynamics, τ d = [ τ d 1 , τ d 2 , τ d 3 ] is the disturbance vector for the rotational dynamics, m is the total mass of the quadrotor, F is the total thrust force exerted by the rotors, and τ = [ τ 1 , τ 2 , τ 3 ] is the torque vector in the body-fixed frame. The vectors R ( q ) and C ( q ˙ ) are given below:
R ( q ) = sin ψ sin ϕ + cos ψ sin θ cos ϕ sin ψ sin θ cos ϕ cos ψ sin ϕ cos θ cos ϕ , C ( q ˙ ) = ( J y y J z z ) θ ˙ ψ ˙ ( J z z J x x ) ϕ ˙ ψ ˙ ( J x x J y y ) ϕ ˙ θ ˙ .
The angular velocity ω i of each rotor for i = 1 , , 4 can be calculated from the control inputs F and τ . The relationship is given by
F τ 1 τ 2 τ 3 = b b b b 0 l b 0 l b l b 0 l b 0 c c c c ω 1 2 ω 2 2 ω 3 2 ω 4 2 ,
where b is the lift coefficient, c is the anti-torque coefficient, and l is the distance from the rotor to the center of mass. In this paper, we will focus on designing the control inputs F and τ .
Assumption 1.
The time derivatives of d and τ d are bounded such that d ˙ δ d and τ ˙ d δ τ , where δ d and δ τ are unknown positive constants.
The control objective is to design the control inputs F and τ to track the reference trajectory given by a reference position vector p r = [ x r , y r , z r ] and a reference yaw angle ψ r . That is, we will design the control inputs to guarantee that
lim t p p r μ 0 ,
where μ 0 is a positive constant.
Assumption 2.
The reference signals p r and ψ r are chosen to be three times differentiable, and p r + p ˙ r + p ¨ r + p r + | ψ r | + | ψ ˙ r | + | ψ ¨ r | μ 1 for any positive constant μ 1 .
Remark 1.
(i) Assumption 1 is commonly found in some works of the disturbance observer (DOB)-based control for mechanical systems [31,32,33]. This assumption is reasonable when taking into account the finite available energy of the disturbance [34]. (ii) Assumption 2 ensures that we can use the dynamic surface control method for controller design and stability analysis for continuous systems. This assumption is valid because the reference signals can be chosen arbitrarily by the operator.

3. Main Result

The translational dynamics described by (1) are underactuated and involve strong nonlinear couplings between the dynamic states. To address these problems, previously proposed controllers have been designed using a linearized version of (1) under the assumption that the quadrotor is operating very near a hovering position. However, this assumption restricts the quadrotor’s ability to execute complex flight maneuvers [12]. Although nonlinear control using a hierarchical control strategy can solve this problem, it requires the timescale separation assumption. To overcome these limitations, we introduce the following state transformations:
ϕ ¯ = tan ϕ , θ ¯ = tan θ ,
where ϕ ¯ and θ ¯ are new state variables.
Remark 2.
The state variables ϕ ¯ and θ ¯ are used as virtual controls. Then, the 3-DOF translational dynamics given in (1) involves two virtual controls and one actual control input. This means that the underactuation problem of the translational dynamics can be solved by using the state transformations in (5).
From (5), we obtain
cos ϕ = 1 1 + ϕ ¯ 2 , sin ϕ = ϕ ¯ 1 + ϕ ¯ 2 , cos θ = 1 1 + θ ¯ 2 , sin θ = θ ¯ 1 + θ ¯ 2 .
Substituting (6) into (1) yields
x ¨ = ϕ ¯ sin ψ 1 + ϕ ¯ 2 + θ ¯ cos ψ 1 + θ ¯ 2 1 1 + ϕ ¯ 2 F m + d 1 , y ¨ = θ ¯ sin ψ 1 + θ ¯ 2 1 1 + ϕ ¯ 2 ϕ ¯ cos ψ 1 + ϕ ¯ 2 F m + d 2 , z ¨ = g + 1 1 + θ ¯ 2 1 1 + ϕ ¯ 2 F m + d 3 .
To design the controller, let us define the following errors:
e 1 = [ e 11 , e 12 , e 13 ] = Φ ( ψ ) ( e ˙ p + Γ p e p ) ,
e 2 = [ e 21 , e 22 , e 23 ] = q ¯ α ¯ 1 ψ r ,
e 3 = [ e 31 , e 32 , e 33 ] = q ˙ α ¯ 2 ,
ϖ 1 = [ ϖ 11 , ϖ 12 ] = α ¯ 1 α 1 , ϖ 2 = α ¯ 2 α 2 ,
where e p = p p r = [ e x , e y , e z ] , q ¯ = [ ϕ ¯ , θ ¯ , ψ ] , α 1 = [ α 11 , α 12 ] and α 2 = [ α 21 , α 22 , α 23 ] are virtual controls and α ¯ i for i = 1 , 2 is the signal passed through a first-order filter, i.e., Γ i α ¯ ˙ i + α ¯ i = α i and α ¯ i ( 0 ) = α i ( 0 ) . In these expressions, Γ p = diag ( γ p 1 , γ p 2 , γ p 3 ) , Γ 1 R 2 × 2 , and Γ 2 R 3 × 3 are positive-definite symmetric matrices, and the matrix Φ ( ψ ) is given below:
Φ ( ψ ) = cos ψ sin ψ 0 sin ψ cos ψ 0 0 0 1 .
Step 1: Using (7), (8), (9), and (11), we can write the error dynamics of e 1 as
e ˙ 11 = ( e 22 + ϖ 12 + α 12 ) F m 1 + θ ¯ 2 1 + ϕ ¯ 2 ψ ˙ e 12 + f 11 + d 1 cos ψ + d 2 sin ψ , e ˙ 12 = ( e 21 + ϖ 11 + α 11 ) F m 1 + ϕ ¯ 2 + ψ ˙ e 11 + f 12 + d 1 sin ψ d 2 cos ψ , e ˙ 13 = F m 1 + θ ¯ 2 1 + ϕ ¯ 2 + f 13 + d 3 ,
where f 11 = cos ψ ( γ p 1 e ˙ x x ¨ r ) + sin ψ ( γ p 2 e ˙ y y ¨ r ) , f 12 = sin ψ ( γ p 1 e ˙ x x ¨ r ) cos ψ ( γ p 2 e ˙ y y ¨ r ) , and f 13 = g z ¨ r + γ p 3 e ˙ z . To design the control laws F and α 1 , we take the Lyapunov function
V 1 = 1 2 ( e 1 e 1 + d ˜ d ˜ ) ,
where d ˜ = d d ^ , with d ^ = [ d ^ 1 , d ^ 2 , d ^ 3 ] being the estimate of the disturbance vector d . Differentiating both sides of (13) along the solution of (12) yields
V ˙ 1 = e 11 ( e 22 + ϖ 12 + α 12 ) F m 1 + θ ¯ 2 1 + ϕ ¯ 2 ψ ˙ e 12 + f 11 + d 1 cos ψ + d 2 sin ψ + e 12 ( e 21 + ϖ 11 + α 11 ) F m 1 + ϕ ¯ 2 + ψ ˙ e 11 + f 12 + d 1 sin ψ d 2 cos ψ + e 13 F m 1 + θ ¯ 2 1 + ϕ ¯ 2 + f 13 + d 3 + d ˜ ( d ˙ d ^ ˙ ) .
From (14), we choose F and α 1 to be
F = m ζ 1 + θ ¯ 2 1 + ϕ ¯ 2 , α 1 = 1 ζ 1 + θ ¯ 2 ( k 12 e 12 f 12 d ^ 1 sin ψ + d ^ 2 cos ψ ) 1 ζ ( k 11 e 11 f 11 d ^ 1 cos ψ d ^ 2 sin ψ ) , ζ = ε 1 + ε 2 ( 1 | sgn ( ε 1 ) | ) ,
where ε 1 = k 13 e 13 f 13 d ^ 3 ; ε 2 , k 11 , k 12 , and k 13 are positive design constants; sgn ( · ) is the signum function; and d ^ is obtained from the following disturbance observer:
d ^ = ρ 1 + L 1 p ˙ , ρ ˙ 1 = L 1 R ( q ) F m L 1 d ^ + Φ ( ψ ) e 1 + L 1 G ,
with a positive-definite symmetric matrix L 1 R 3 × 3 . Using (1) and (16), we have
d ^ ˙ = L 1 d ˜ + Φ ( ψ ) e 1 .
Note that the positive design constant ε 2 is used to prevent the singularity of the virtual control α 1 in (15).
Substituting (15) and (17) into (14) results in
V ˙ 1 e 1 K 1 e 1 d ˜ L 1 d ˜ + d ˜ d ˙ + ( e 22 + ϖ 12 ) e 11 ζ + ( e 21 + ϖ 11 ) e 12 ζ 1 + θ ¯ 2 + ε 2 | e 13 | ,
where K 1 = diag ( k 11 , k 12 , k 13 ) .
Remark 3.
The filtered signal of the virtual control α 1 will be used as the desired Euler angles to be tracked in the next step. Unlike in hierarchical control, the Euler angles do not need to be the same as the desired angles, and disturbances are considered when deriving the virtual control α 1 . Therefore, the proposed method does not require instantaneous convergence of the attitude errors and can achieve improved tracking performance.
Remark 4.
If we use the backstepping technique, the time derivative of the virtual control α 1 is required to design the actual torque τ in the next step; however, we can see from (15) that the time derivative of α 1 includes the second time derivative of p with an unknown disturbance d . The dynamic surface control (DSC) method [35] can be used to address this problem because it does not require the time derivative of the virtual control. Thus, the DSC method is applied to design the virtual control α 1 .
Step 2: Using (5), (9), (10), and (11), we can write the error dynamics of e 2 as
e ˙ 2 = Υ ( q ) ( e 3 + α 2 + ϖ 2 ) + Γ 1 1 ϖ 1 ψ ˙ r ,
where Υ ( q ) = diag ( sec 2 ϕ , sec 2 θ , 1 ) . To design the virtual control α 2 , we take the Lyapunov function
V 2 = 1 2 e 2 e 2 .
The time derivative of (20) along the solution of (19) is
V ˙ 2 = e 2 Υ ( q ) ( e 3 + α 2 + ϖ 2 ) + Γ 1 1 ϖ 1 ψ ˙ r .
From (21), we choose α 2 to be
α 2 = Υ 1 ( q ) K 2 e 2 Γ 1 1 ϖ 1 ψ ˙ r e 12 ζ 1 + θ ¯ 2 e 11 ζ 0 ,
where K 2 R 3 × 3 is a positive gain. Substituting (22) into (21) yields
V ˙ 2 = e 2 K 2 e 2 + e 2 Υ ( q ) ( e 3 + ϖ 2 ) e 21 e 12 ζ 1 + θ ¯ 2 e 22 e 11 ζ
Step 3: Using (2), (10), and (11), we can write the error dynamics of e 3 as
e ˙ 3 = J 1 C ( q ˙ ) + J 1 τ + τ d + Γ 2 1 ϖ 2 .
To design the actual control τ , we take the Lyapunov function
V 3 = 1 2 ( e 3 e 3 + τ ˜ d τ ˜ d ) ,
where τ ˜ = τ d τ ^ d , with τ ^ d being the estimate of the disturbance vector τ d . Differentiating both sides of (25) along the solution of (24) results in
V ˙ 3 = e 3 ( J 1 C ( q ˙ ) + J 1 τ + τ d + Γ 2 1 ϖ 2 ) + τ ˜ d ( τ ˙ d τ ^ ˙ d ) .
From (26), we choose the actual control τ to be
τ = J K 3 e 3 τ ^ d Γ 2 1 ϖ 2 Υ ( q ) e 2 C ( q ˙ ) ,
where K 3 R 3 × 3 is a positive gain and τ ^ d is obtained from the following disturbance observer:
τ ^ d = ρ 2 + L 2 q ˙ , ρ ˙ 2 = L 2 J 1 ( τ + C ( q ˙ ) ) L 2 τ ^ d + e 3 ,
with a positive-definite symmetric matrix L 2 R 3 × 3 .
Using (2) and (28), we have
τ ^ ˙ d = L 2 τ ˜ d + e 3 .
Substituting (27) and (29) into (26) yields
V ˙ 3 = e 3 K 3 e 3 τ ˜ d L 2 τ ˜ d + τ ˜ d τ ˙ d e 3 Υ ( q ) e 2 .
Let V T = V 1 + V 2 + V 3 + 1 2 ( ϖ 1 ϖ 1 + ϖ 2 ϖ 2 ) . We now present the main result of our paper in the following theorem.
Theorem 1.
Consider the quadrotor model given in (1) and (2), controlled by the control inputs F and τ given in (15) and (27) together with the disturbance observers given in (16) and (28) under Assumptions 1 and 2. For any initial conditions satisfying V T ( 0 ) μ 2 , where μ 2 is a positive constant, it is ensured that V T ( t ) μ 2 for all t > 0 and lim t p p r μ 0 , where μ 0 is a positive constant that can be made arbitrarily small.
Proof. 
The time derivative of V T along the solutions of (18), (23), and (30) is
V ˙ T e 1 K 1 e 1 d ˜ L 1 d ˜ + d ˜ d ˙ + ϖ 12 e 11 ζ + ϖ 11 e 12 ζ 1 + θ ¯ 2 + ε 2 | e 13 | e 2 K 2 e 2 + e 2 Υ ( q ) ϖ 2 e 3 K 3 e 3 τ ˜ d L 2 τ ˜ d + τ ˜ d τ ˙ d ϖ 1 Γ 1 1 ϖ 1 ϖ 1 α ˙ 1 ϖ 2 Γ 2 1 ϖ 2 ϖ 2 α ˙ 2 .
From (15) and (22), one can show that α ˙ 1 η 1 ( e 1 , e 2 , e 3 , ϖ 1 , ϖ 2 , d ˜ , p r , p ˙ r , p ¨ r , p r ) and α ˙ 2 η 2 ( e 1 , e 2 , e 3 , ϖ 1 , ϖ 2 , d ˜ , p r , p ˙ r , p ¨ r , p r , ψ r , ψ ˙ r , ψ ¨ r ) for some continuous functions η 1 and η 2 . By Assumption 2, there exists a set Q 1 : = { p r + p ˙ r + p ¨ r + p r + | ψ r | + | ψ ˙ r | + | ψ ¨ r | μ 1 } . Consider the set Q 2 : = { e 1 e 1 + e 2 e 2 + e 3 e 3 + ϖ 1 ϖ 1 + ϖ 2 ϖ 2 + d ˜ d ˜ 2 μ 2 } . Since Q 1 and Q 2 are compact, there exist positive constants β 1 and β 2 such that η 1 β 1 and η 2 β 2 on Q 1 × Q 2 . Then, by Assumption 1 and Young’s inequality, (31) can be written as
V ˙ T e 1 K 1 1 2 I 3 e 1 e 2 K 2 1 2 I 3 e 2 e 3 K 3 e 3 d ˜ L 1 1 2 I 3 d ˜ τ ˜ d L 2 1 2 I 3 τ ˜ d ϖ 1 Γ 1 1 β 1 2 2 ϵ I 2 1 2 Ψ ϖ 1 ϖ 2 Γ 2 1 β 2 2 2 ϵ I 3 1 2 I 3 ϖ 2 + δ d 2 2 + δ τ 2 2 + ε 2 2 2 + ϵ ,
where I 2 R 2 × 2 and I 3 R 3 × 3 are identity matrices, ϵ is a positive constant, and Ψ = diag ( ζ 2 ( 1 + θ ¯ 2 ) , ζ 2 ) . Choosing K 1 = 1 / 2 I 3 + K 1 * , K 2 = 1 / 2 I 3 + K 2 * , L 1 = 1 / 2 I 3 + L 1 * , L 2 = 1 / 2 I 3 + L 2 * , Γ 1 1 = β 1 2 / ( 2 ϵ ) I 2 + 1 / 2 Ψ + Γ 1 * , and Γ 2 1 = β 2 2 / ( 2 ϵ ) I 3 + 1 / 2 I 3 + Γ 2 * results in
V ˙ T c 0 V T + c 1 ,
where c 0 = min { λ K 1 * , λ K 2 * , λ K 3 , λ L 1 * , λ L 2 * , λ Γ 1 * , λ Γ 2 * } and c 1 = ( δ d 2 + δ τ 2 + ε 2 2 ) / 2 + ϵ . Integrating both sides of (33) yields
V T ( t ) V T ( 0 ) c 1 c 0 e c 0 t + c 1 c 0 .
One can design the control gains to ensure that c 1 / c 0 < μ 2 . Therefore, from (34), V T ( t ) μ 2 for all t > 0 . Additionally, V T ( ) μ 0 where μ 0 = c 1 / c 0 and thus, lim t p p r μ 0 . By properly choosing c 0 , we can make μ 0 arbitrarily small. This completes the proof. □
Remark 5.
As shown in the proof of Theorem 1, the overall stability of the proposed method is proven without separation into the inner- and outer-loop subsystems commonly used in hierarchical control strategies. Therefore, the timescale separation assumption is not required. Furthermore, unlike [26,27,28], there is no need to prove in advance that the attitude errors are bounded.

4. Simulations

In this section, we present simulations conducted to demonstrate the performance of the proposed method. For comparison, simulation results for the robust backstepping sliding mode control (RB-SMC) method [36] using a hierarchical control strategy are also given. To reduce chattering, we modified the RB-SMC algorithm to use the hyperbolic tangent function instead of the signum function in the simulations. The physical parameters of the quadrotor taken from [37] are summarized as follows: m = 4.34 kg, J x x = 0.082 kg·m 2 , J y y = 0.0845 kg· m 2 , J z z = 0.1377 kg·m 2 , and g = 9.8 m/s 2 . To verify the robustness of the proposed controller, external disturbances d = [ 2.5 , 1.25 , 2 ] and τ d = [ sin ( 8 π t ) / 3 / J x x , sin ( π t ) / 3 / J y y , cos ( 4 π t ) / 3 / J z z ] were considered in the simulations. The initial position of the quadrotor and the reference trajectory were chosen to be p = [ 0 , 3 , 1 ] and p r = [ 5 cos ( π t / 10 ) , 4 sin ( π t / 10 ) , 5 sin ( π t / 60 ) ] , respectively. The reference yaw angle ψ r was set to π / 4 . The design parameters of the proposed method were selected to be K 1 = diag ( 3 , 3 , 3 ) , K 2 = K 3 = diag ( 5 , 5 , 5 ) , L 1 = L 2 = diag ( 10 , 10 , 10 ) , Γ p = diag ( 1 , 1 , 1 ) , Γ 1 = Γ 2 = diag ( 0.01 , 0.01 , 0.01 ) , and ε 2 = 0.5 . To show the efficiency of the proposed method, we selected the control gains of the RB-SMC method necessary to achieve the same position tracking results as our method through trial and error.
The tracking results are provided in Figure 2 and Figure 3. These figures show that both methods can track the desired trajectory successfully and that there are no constraints on the Euler angles. The steady-state root mean square errors are 0.003 and 0.024 , with the proposed method being slightly more accurate. The main difference can be seen from Figure 2d and Figure 3d, namely, the settling time of the RB-SMC method is more than two times as fast as that of our method. This observation indicates that the proposed method can achieve results similar to those achieved through hierarchical control without requiring fast convergence of the attitude errors. Thus, we can obtain a smaller overshoot of the control inputs that can be achieved with the hierarchical control strategy because it is possible to design the controller with low gains. This is verified by Figure 4. In Figure 2e,f, the disturbance errors d ˜ and τ ˜ converge to the bounds of 0.001 and 0.05 , respectively. Figure 5 shows the linear and angular velocities of the quadrotor. It is demonstrated that both constant and time-varying disturbances can be effectively estimated by the disturbance observers.
To make the simulation results more realistic, we added normally distributed random noise with mean 0 and covariance 0.001 to the measurements of the Euler angle vector q and the angular velocity vector q ˙ . The tracking results in a noisy environment are depicted in Figure 6. These figures show that even if there is noise, good tracking performance can be achieved with the proposed method. Therefore, we can conclude that the proposed controller is effective for the trajectory tracking of a quadrotor in the presence of external disturbances.

5. Conclusions

A disturbance observer-based nonlinear controller has been presented for the trajectory tracking of a quadrotor in the presence of external disturbances. New state transformations are introduced to design the controller without using a hierarchical control strategy, and disturbance observers are developed to estimate external disturbances. Since the instantaneous convergence of attitude control is not required, the desired tracking performance is achieved with low gains. The stability of the proposed method is analyzed without separation into the inner- and outer-loop subsystems. Thus, the controller is designed without the restrictive assumption known as timescale separation. From the Lyapunov stability theorem, it is proven that all error signals in the closed-loop system are uniformly ultimately bounded. Simulation results, including a comparison, demonstrate that the proposed controller is effective for the trajectory tracking of the quadrotor in the presence of external disturbances. In future work, we will validate the performance of the proposed method based on experimental results.

Author Contributions

The authors contributed to this work as follows. S.W.H. and B.S.P. contributed to writing—original draft; formal analysis; investigation; software and methodology. All authors have read and agreed to the published version of the manuscript.

Funding

This work was supported by the National Research Foundation of Korea (NRF) grant funded by the Korea government (NRF-2019R1A2C1087552).

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Altug, E.; Ostrowski, J.P.; Mahony, R. Control of a quadrotor helicopter using visual feedback. In Proceedings of the IEEE International Conference Robotics and Automation, Washington, DC, USA, 11–15 May 2002; pp. 72–77. [Google Scholar]
  2. Shao, X.; Liu, N.; Liu, J.; Wang, H. Model-assisted extended state observer and dynamic surface control-based trajectory tracking for quadrotors via output-feedback mechanism. Int. J. Robust Nonlinear Control 2018, 28, 2404–2423. [Google Scholar] [CrossRef]
  3. Xiao, B.; Yin, S. A new disturbance attenuation control scheme for quadrotor unmanned aerial vehicles. IEEE Trans. Ind. Inform. 2017, 13, 2922–2932. [Google Scholar] [CrossRef]
  4. Tayebi, A.; McGilvray, S. Attitude stabilization of a VTOL quadrotor aircraft. IEEE Trans. Control Syst. Technol. 2006, 14, 562–571. [Google Scholar] [CrossRef] [Green Version]
  5. Grzonka, S.; Grisetti, G.; Burgard, W. A fully autonomous indoor quadrotor. IEEE Trans. Robot. 2012, 28, 90–100. [Google Scholar] [CrossRef] [Green Version]
  6. Mahony, R.; Kumar, V.; Corke, P. Modeling, estimation, and control of quadrotor. IEEE Trans. Robot. Autom. Mag. 2012, 19, 20–32. [Google Scholar] [CrossRef]
  7. Bouabdallah, S.; Noth, A.; Siegwart, R. PID vs LQ control techniques applied to an indoor micro quadrotor. In Proceedings of the IEEE/RSJ International Conference on Intelligent Robots, Sendai, Japan, 28 September–2 October 2004; pp. 2451–2456. [Google Scholar]
  8. Liu, H.; Lu, G.; Zhong, Y. Robust LQR attitude control of a 3-DOF laboratory helicopter for aggressive maneuvers. IEEE Trans. Ind. Electron. 2013, 60, 4627–4636. [Google Scholar] [CrossRef]
  9. Raffo, G.V.; Ortega, M.G.; Rubio, F.R. An underactuated H control strategy for a quadrotor helicopter. In Proceedings of the European Control Conference, Budapest, Hungary, 23–26 August 2009; pp. 3845–3850. [Google Scholar]
  10. Gadewadikar, J.; Lewis, F.L.; Subbarao, K.; Peng, K.; Chen, B.M. H-infinity static output-feedback control for rotorcraft. J. Int. Robot. Syst. 2009, 54, 629–646. [Google Scholar] [CrossRef]
  11. Mellinger, D.; Kumar, V. Minimum snap trajectory generation and control for quadrotors. In Proceedings of the IEEE International Conference on Robotics Automation, Shanghai, China, 9–13 May 2011; pp. 2520–2525. [Google Scholar]
  12. Lee, T.; Leok, M.; McClamroch, N.H. Nonlinear robust tracking control of a quadrotor UAV on SE(3). Asian J. Control 2013, 15, 391–408. [Google Scholar] [CrossRef] [Green Version]
  13. Hua, M.D.; Hamel, T.; Morin, P.; Samson, C. A control approach for thrust-propelled underactuated vehicles and its application to VTOL drones. IEEE Trans. Autom. Control 2009, 54, 1837–1853. [Google Scholar]
  14. Hua, M.D.; Hamel, T.; Morin, P.; Samson, C. Introduction to feedback control of underactuated VTOL vehicles: A review of basic control design ideas and principles. IEEE Trans. Control Syst. Technol. 2013, 33, 61–75. [Google Scholar]
  15. Zou, Y. Nonlinear robust adaptive hierarchical sliding mode control approach for quadrotors. Int. J. Robust Nonlinear Control 2017, 27, 925–941. [Google Scholar] [CrossRef]
  16. Chen, F.; Lei, W.; Zhang, K.; Tao, G.; Jiang, B. A novel nonlinear resilient control for a quadrotor UAV via back-stepping control and nonlinear disturbance observer. Nonlinear Dyn. 2016, 85, 1281–1295. [Google Scholar] [CrossRef]
  17. Lee, C.T.; Tsai, C.C. Adaptive backstepping integral control of a small-scale helicopter for airdrop missions. Asian J. Control 2010, 12, 531–541. [Google Scholar] [CrossRef]
  18. Zhao, B.; Xian, B.; Zhang, Y.; Zhang, X. Nonlinear robust adaptive tracking control of a quadrotor UAV via immersion and invariance methodology. IEEE Trans. Ind. Electron. 2015, 62, 2891–2902. [Google Scholar] [CrossRef]
  19. Xiong, J.; Zheng, E. Position and attitude tracking control for a quadrotor. ISA Trans. 2014, 53, 725–731. [Google Scholar] [CrossRef]
  20. Almakhles, D.J. Robust backstepping sliding mode control for a quadrotor trajectory tracking application. IEEE Access 2020, 8, 5515–5525. [Google Scholar] [CrossRef]
  21. Castan˜eda, H.; Gordillo, J.L. Embedded flight control based on adaptive sliding mode strategy for a quadrotor micro air vehicle. Electronics 2019, 8, 793. [Google Scholar] [CrossRef] [Green Version]
  22. Dierks, T.; Jagannathan, S. Output feedback control of a quadrotor UAV using neural networks. IEEE Trans. Neural Netw. 2010, 21, 50–66. [Google Scholar] [CrossRef]
  23. Shin, J.; Kim, H.J.; Kim, Y.; Dixon, W.E. Autonomous flight of the rotorcraft-based UAV using RISE feedback and NN feedforward terms. IEEE Trans. Control Syst. Technol. 2012, 20, 1392–1399. [Google Scholar] [CrossRef] [Green Version]
  24. Hu, J.; Zhang, H. Immersion and invariance based command-filtered adaptive backstepping control of VTOL vehicles. Automatica 2013, 49, 2160–2167. [Google Scholar] [CrossRef]
  25. Zou, Z. Trajectory tracking control design with command-filtered compensation for a quadrotor. IET Control Theory Appl. 2010, 4, 2343–2355. [Google Scholar]
  26. Jiang, T.; Lin, D.; Song, T. Finite-time backstepping control for quadrotors with disturbances and input constraints. IEEE Access 2018, 6, 62037–62049. [Google Scholar] [CrossRef]
  27. Tian, B.; Lu, H.; Zou, Z.; Zong, Q.; Zhang, Y. Multivariable finite-time output feedback trajectory tracking control of quadrotor helicopters. Int. J. Robust Nonlinear Control 2018, 28, 281–295. [Google Scholar] [CrossRef]
  28. Kim, S.; Ahn, C.K.; Shi, P. Performance recovery tracking-controller for quadcopters via invariant dynamic surface approach. IEEE Trans. Ind. Inform. 2019, 15, 5235–5243. [Google Scholar] [CrossRef]
  29. Lee, T.; Kim, Y. Nonlinear adaptive flight control using backstepping and neural networks controller. J. Guid. Control Dyn. 2001, 24, 675–682. [Google Scholar] [CrossRef]
  30. Bouabdallah, S.; Siegwart, R. Backstepping and sliding-mode techniques applied to an indoor micro quadrotor. In Proceedings of the IEEE International Conference on Robotics Automatic, Barcelona, Spain, 18–22 April 2005; pp. 2247–2252. [Google Scholar]
  31. Do, K.K. Practical formation control of multiple underactuated ships with limited sensing ranges. Robot. Auton. Syst. 2011, 59, 457–471. [Google Scholar] [CrossRef]
  32. Mohammadia, A.; Tavakoli, M.; Marquez, H.J.; Hashemzadeh, F. Nonlinear disturbance observer design for robotic manipulators. Control Eng. Pract. 2013, 21, 253267. [Google Scholar] [CrossRef] [Green Version]
  33. Chen, W.H.; Ballance, D.J.; Gawthrop, P.J.; O’Reilly, J. A nonlinear disturbance observer for robotic manipulators. IEEE Trans. Ind. Electron. 2000, 47, 932–938. [Google Scholar] [CrossRef] [Green Version]
  34. Chen, M.; Shi, P.; Lim, C. Robust constrained control for MIMO nonlinear systems based on disturbance observer. IEEE Trans. Autom. Control 2015, 60, 3281–3286. [Google Scholar] [CrossRef]
  35. Swaroop, D.; Hedrick, J.K.; Yip, P.P.; Gerdes, J.C. Dynamic surface control for a class of nonlinear systems. IEEE Trans. Autom. Control 2000, 45, 1893–1899. [Google Scholar] [CrossRef] [Green Version]
  36. Chen, F.; Jiang, R.; Zhang, K.; Jiang, B.; Tao, G. Robust backstepping sliding mode control and observer-based fault estimation for a quadrotor UAV. IEEE Trans. Ind. Electron. 2016, 63, 5044–5056. [Google Scholar] [CrossRef]
  37. Pounds, P.; Mahony, R.; Corke, P. Modeling and control of a large quadrotor robot. Control Eng. Pract. 2010, 18, 691–699. [Google Scholar] [CrossRef] [Green Version]
Figure 1. Quadrotor configuration frame system with body fixed frame B and inertial frame E.
Figure 1. Quadrotor configuration frame system with body fixed frame B and inertial frame E.
Electronics 09 01624 g001
Figure 2. Tracking results of the proposed method: (a) Three-dimensional trajectory; (b) Euler angles q ; (c) Position tracking errors; (d) Attitude tracking errors; (e) d ˜ (solid: d ˜ 1 , dashed: d ˜ 2 , dotted: d ˜ 3 ); (f) τ ˜ d (solid: τ ˜ d 1 , dashed: τ ˜ d 2 , dotted: τ ˜ d 3 ).
Figure 2. Tracking results of the proposed method: (a) Three-dimensional trajectory; (b) Euler angles q ; (c) Position tracking errors; (d) Attitude tracking errors; (e) d ˜ (solid: d ˜ 1 , dashed: d ˜ 2 , dotted: d ˜ 3 ); (f) τ ˜ d (solid: τ ˜ d 1 , dashed: τ ˜ d 2 , dotted: τ ˜ d 3 ).
Electronics 09 01624 g002
Figure 3. Tracking results of the robust backstepping sliding mode control (RB-SMC) method: (a) Three-dimensional trajectory; (b) Euler angles q ; (c) Position tracking errors; (d) Attitude tracking errors.
Figure 3. Tracking results of the robust backstepping sliding mode control (RB-SMC) method: (a) Three-dimensional trajectory; (b) Euler angles q ; (c) Position tracking errors; (d) Attitude tracking errors.
Electronics 09 01624 g003
Figure 4. Control inputs: (a) Proposed method; (b) RBS-SMC method.
Figure 4. Control inputs: (a) Proposed method; (b) RBS-SMC method.
Electronics 09 01624 g004
Figure 5. Velocities: (a) Linear velocities (solid: x ˙ , dotted: y ˙ , dashed: z ˙ ); (b) angular velocities (solid: ϕ ˙ , dotted: θ ˙ , dashed: ψ ˙ ).
Figure 5. Velocities: (a) Linear velocities (solid: x ˙ , dotted: y ˙ , dashed: z ˙ ); (b) angular velocities (solid: ϕ ˙ , dotted: θ ˙ , dashed: ψ ˙ ).
Electronics 09 01624 g005
Figure 6. Tracking results in noise environment: (a) Three-dimensional trajectory; (b) Euler angles q ; (c) position tracking errors; (d) attitude tracking errors.
Figure 6. Tracking results in noise environment: (a) Three-dimensional trajectory; (b) Euler angles q ; (c) position tracking errors; (d) attitude tracking errors.
Electronics 09 01624 g006

Share and Cite

MDPI and ACS Style

Ha, S.W.; Park, B.S. Disturbance Observer-Based Control for Trajectory Tracking of a Quadrotor. Electronics 2020, 9, 1624. https://doi.org/10.3390/electronics9101624

AMA Style

Ha SW, Park BS. Disturbance Observer-Based Control for Trajectory Tracking of a Quadrotor. Electronics. 2020; 9(10):1624. https://doi.org/10.3390/electronics9101624

Chicago/Turabian Style

Ha, Sang Wook, and Bong Seok Park. 2020. "Disturbance Observer-Based Control for Trajectory Tracking of a Quadrotor" Electronics 9, no. 10: 1624. https://doi.org/10.3390/electronics9101624

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop