Next Article in Journal
A Study on Anti-Jamming Algorithms in Low-Earth-Orbit Satellite Signal-of-Opportunity Positioning Systems for Unmanned Aerial Vehicles
Previous Article in Journal
Multi-Sensor 3D Survey: Aerial and Terrestrial Data Fusion and 3D Modeling Applied to a Complex Historic Architecture at Risk
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Saturated Trajectory Tracking Controller in the Body-Frame for Quadrotors

1
IDMEC —Institute of Mechanical Engineering, Instituto Superior Técnico, Universidade de Lisboa, 1049-001 Lisboa, Portugal
2
ISR—Institute for Systems and Robotics, Instituto Superior Técnico, Universidade de Lisboa, 1049-001 Lisboa, Portugal
3
Department of Electrical and Computer Engineering, Faculty of Science and Technology, University of Macau, Macao 999078, China
*
Author to whom correspondence should be addressed.
Drones 2024, 8(4), 163; https://doi.org/10.3390/drones8040163
Submission received: 26 February 2024 / Revised: 30 March 2024 / Accepted: 16 April 2024 / Published: 19 April 2024
(This article belongs to the Section Drone Design and Development)

Abstract

:
This paper introduces a quadrotor trajectory tracking controller comprising a steady-state optimal position controller with a normed input saturation and modular integrative action coupled with a backstepping attitude controller. First, the translational and rotational dynamical models are designed in the body-fixed frame to avoid external rotations and are partitioned into an underactuated position system and a quaternion-based attitude system. Secondly, a controller is designed separately for each subsystem, namely, (i) the position controller synthesis is derived from the Maximum Principle, Lyapunov, and linear quadratic regulator (LQR) theory, ensuring the global exponential stability and steady-state optimality of the controller within the linear region, and global asymptotic stability is guaranteed for the saturation region when coupled with any local exponential stable attitude controller, and (ii) the attitude system, with the quaternion angles and the angular velocity as the controlled variables, is designed in the error space through the backstepping technique, which renders the overall system, position, and attitude, with desirable closed-loop properties that are almost global. The overall stability of the system is achieved through the propagation of the position interconnection term to the attitude system. To enhance the robustness of the tracking system, integrative action is devised for both position and attitude, with emphasis on the modular approach for the integrative action on the position controller. The proposed method is experimentally validated on board an off-the-shelf quadrotor to assess the resulting performance.

1. Introduction

In recent years, quadrotors have emerged as versatile aerial platforms, with applications spanning from surveillance and inspection to aerial photography and autonomous exploration. The inherent agility and maneuverability of these vehicles have rendered them indispensable in various fields [1,2]. To fully exploit the capabilities of quadrotors in tracking tasks, precise and robust control strategies are paramount. The trajectory tracking problem for quadrotors is challenging due to their nonlinear dynamics and underactuated nature, and many control strategies have been devised [2,3].
With the purpose of taking the maximum benefit of the capabilities of these vehicles for tracking purposes, numerous controllers have been proposed [4,5,6]. In [7], successful implementation of linear control techniques, including the linear quadratic regulator (LQR), was achieved for low-speed indoor flights. However, these linear techniques often rely on the linearization of quadcopter dynamics, which can limit their ability to fully explore the vehicle’s flight envelope and establish a clear region of attraction for stability. In the literature, various nonlinear approaches are available, including feedback linearization [8], backstepping [9], differential flatness [10], and sliding mode control.
Nowadays, state-of-the-art research in quadrotor control blends hierarchical control with geometric feedback. This method entails the creation of a virtual feedback law at the acceleration level, which is subsequently extended to the inner attitude controller. A geometric approach for trajectory tracking with thrust vectoring capabilities is proposed in [11], where position tracking can be achieved by easing attitude tracking requirements. Asymptotic stability is proved for the entire system. In [12], the stability of the system is tackled through integral input-to-state stability. This method yields a quasi-time-optimal control law, which achieves global asymptotic stabilization for any initial position. As a result, it enhances transient performance compared with existing control designs. Recent significant contributions to quadrotor control, which combine hierarchical control with geometric feedback, can be found in [13,14,15,16].
The backstepping method has been extensively applied in various studies to control underactuated quadrotors, as documented in [17,18,19]. In these approaches, the attitude error is skillfully derived either from the error in the thrust direction or through traditional backstepping techniques. This results in the interconnection term being backstepped into the attitude control law, effectively canceling its influence.
In the field of quadrotor control, effectively handling system dynamics within the constraints of actuator limits is of paramount importance. The intrinsic underactuated nature of quadrotors necessitates sophisticated control strategies that can handle the nonlinear constraints imposed by actuator saturation. The formulation of control laws incorporating saturation for quadrotors typically aims to avert the singularity linked with a null thrust value, thereby ensuring well-posed attitude references [14,16,20]. This approach is critical, as it ensures that the system remains robustly stable and bounded, regardless of the given trajectory. Moreover, such control laws can provide large regions of attraction with disturbances rejection capability in a closed-form solution [21]. A recently emerging alternative strategy is the Explicit Reference Governor (ERG), which has gained traction in the field. This Lyapunov-based scheme acts as an add-on to prestabilized systems, from which the reference commands are modified to ensure the handling of constraints [22]. The ERG closed-form solutions are particularly advantageous for constraint applications with limited computational resources but may lead to conservative solutions [23]. This method has been successfully applied to underactuated Unnamed Air Vehicles (UAVs), demonstrating its efficacy in real-time constraint management [24,25].
This work presents a quadrotor trajectory tracking controller that integrates a steady-state optimal position controller with normed saturated input and a backstepping attitude controller. This approach is characterized by a blend of inner–outer loop theory and backstepping, enhancing transient performance. The dynamical models for translation and rotation are designed in the body-fixed frame to prevent external rotations (algebraic transformations to convert sensor data into inertial coordinates) and are split into underactuated position and quaternion-based attitude systems. Separate controllers are crafted for each subsystem. The position controller is synthesized with a modular integrative action using the Maximum Principle, Lyapunov, and linear quadratic regulator theory, ensuring global exponential stability and steady-state optimality in the linear region, with global asymptotic stability (GAS) guaranteed in the saturation region. On the other hand, the attitude system, with quaternion angles and angular velocity as controlled variables, is developed using the backstepping technique, ensuring desirable almost global closed-loop properties as a consequence of the double cover quaternion representation [26]. The position controllers are designed with a normed input saturation with the shown GAS property when coupled with any attitude controller with local exponential stability. This strategic approach ensures stability throughout the operation, preserving both GAS and local exponential stability for the overall system.
The proposed methodology incorporates rigid-body translational dynamics expressed in body-fixed coordinates, which is rooted in several compelling benefits. One of the notable advantages is the avoidance of algebraic transformations to convert sensor data into inertial coordinates. This avoidance is crucial as it helps minimize the amplification of noise and biases on attitude estimates, a viewpoint highlighted in [27]. Moreover, the present approach aligns well with sensor-based strategies and image-based algorithms often utilized in aerial vehicles, as they are designed in a similar frame. This synergy with existing strategies is advantageous, as it allows for seamless integration into various applications, such as visual servoing tasks [28]. Additionally, positioning dynamics in the body-fixed frame enable the direct utilization of accelerometer measurements for body acceleration estimation. This capability is vital in helping the system effectively deal with specific unmodeled dynamics, a feature that proves advantageous in real-world scenarios [29]. Furthermore, when addressing the position dynamics in the body-fixed frame, the interconnection term primarily depends on gravity and attitude error, thereby making it independent of how the inertial frame is defined [30]. This distinctive characteristic offers a fresh perspective on solving the thrust and desired attitude extraction problem, setting it apart from the majority of approaches in the literature. In essence, the decision to employ the body-fixed frame in constructing the controller is grounded in its multifaceted advantages, including noise reduction in attitude estimates, compatibility with existing sensor-based strategies, direct utilization of accelerometer data for robustness, and a unique approach to handling position and attitude dynamic interconnections.
Summarizing, the key contributions of this work encompass several aspects:
  • A position control law developed in the body-fixed frame, incorporating an input normed saturation with a modular integral control component. This innovative approach ensures global asymptotic stability and presents a novel way of addressing the thrust and desired attitude extraction problem, distinguishing it from the majority of existing methods in the literature.
  • The proposal of a novel trajectory tracking approach for quadrotors, characterized by almost global asymptotic stability and local exponential stability, exhibiting optimal steady-state properties within the linear region.
  • The design of the controller is fine-tuned using the linear quadratic regulator framework, which optimizes for energy efficiency over time.
This paper is organized as follows. Section 2 introduces the dynamics and kinematics of the quadrotor. The problem statement and the control objective are also provided. Section 3 provides the design of an optimal steady-state position control law to guarantee asymptotic convergence of the closed-loop error to zero. A saturated control law is devised to overcome singularities during the thrust and reference attitude extraction. The attitude controller design is also given with stability proof and explicitly takes into consideration the coupling between both systems. Section 4 details the implementation of the controllers, as well as some insight into the gain-tuning procedure. Section 5 provides simulation results to assess the proposed tracking law. In Section 6, the experimental results of the proposed control structure onboard an AR.Drone 2.0 are shown and its performance is analyzed. Concluding remarks are pointed out in Section 7.

Notation

Throughout this paper, bold lowercase letters (e.g., x , b ) denote column vectors, bold uppercase letters (e.g., X , K ) denote matrices, the symbol 0 denotes a matrix of zeros, and I is an identity matrix, both with appropriate dimensions. The vectors e 1 , e 2 , and e 3 denote the unit vectors codirectional with the x, y, and z axes, respectively. The i-th element of the vector x is denoted by x i . The time derivative of s is denoted by s ˙ . The Euclidean norm of vectors is denoted as x , x R n . In R 3 , the skew-symmetric matrix of a generic vector a R 3 is defined as [ a × ] and given by
[ a × ] = 0 a z a y a z 0 a x a y a x 0 .
The vector s expressed in the coordinate frame { E } is denoted by s E , and   I B R is a rotation matrix from the frame { I } to { B } . Finally, the transpose operator is denoted by the superscript ( · ) T .

2. Problem Statement

2.1. Quadrotor Dynamics and Kinematics

Consider the quadrotor vehicle model presented in Figure 1. The quadrotor equations are represented in the body-fixed frame since that is usually the frame of the available sensory data. Thus, unnecessary rotations are avoided. The equations of motion that govern the quadrotor [1], used throughout the paper, are given by
p ˙ = R v v ˙ = [ ω × ] v T m e 3 + R T g e 3 ,
where p = p x p y p z T R 3 is the inertial position, v R 3 is the linear body velocity, ω R 3 is the body angular velocity, T R 0 is the total thrust generated by the rotors, m is the total mass of the quadrotor, assumed constant, g is the gravitational acceleration, and R =   B I R R 3 is the rotation matrix from { B } to { I } . Let q = q v T q 4 T = q 1 q 2 q 3 q 4 T R 4 represent the orientation vector, in terms of quaternions, and λ = ψ θ ϕ T R 3 denote the equivalent orientation vector in terms of Euler angles. The rotation matrix follows the Euler sequence of rotation Z-Y-X and is given by
R ( λ ) = c θ c ψ s ϕ s θ c ψ c ϕ s ψ c ϕ s θ c ψ + s ϕ s ψ c θ s ψ s ϕ s θ s ψ + c ϕ c ψ c ϕ s θ s ψ s ϕ c ψ s θ s ϕ c θ c ϕ c θ ,
where c and s are the shorthand forms for the cosine and sine trigonometric functions and are equivalent to
R ( q ) = 1 2 q 2 2 + q 3 2 2 q 1 q 2 q 0 q 3 2 q 0 q 2 + q 1 q 3 2 q 1 q 2 + q 0 q 3 1 2 q 1 2 + q 3 2 2 q 2 q 3 q 0 q 1 2 q 1 q 3 q 0 q 2 2 q 0 q 1 + q 2 q 3 1 2 q 1 2 + q 2 2 .
Similarly, the exploited equations for the angular motion of the quadrotor are defined as follows:
q ˙ = 1 2 Ω ( ω ) q ω ˙ = J 1 [ ω × ] J ω + J 1 τ ,
where Ω ( ω ) = [ ω × ] ω ω T 0 , J R 3 × 3 corresponds to the quadrotor inertia tensor described in { B } , assumed to be constant, and τ = τ ψ τ θ τ ϕ T denotes the moments applied to the vehicle airframe by the aerodynamics of the rotors, described in { B } , which affect the rotation of the vehicle about the z B , y B , and x B axes, respectively. It is assumed that p , v , q , and ω are available from the sensor set.
The rigid-body equations of motion of the quadcopter (2) and (5) can be written, in compact state-space form, as
p ˙ v ˙ = 0 R 0 [ ω × ] p v + 0 0 T m I + g R T e 3
and
q ˙ ω ˙ = 0 1 2 Ξ ( q ) 0 J 1 [ ω × ] J q Ω + 0 J 1 τ ,
where Ξ ( q ) = q 4 I 3 × 3 + q v × q v T and Ω = [ 0 ω T ] T . The aerodynamic forces are disregarded as a consequence of the low speed of operation.

2.2. Problem Formulation

Consider a UAV with kinematics and dynamics given by (6) and (7), respectively. Let the desired position p d ( t ) R 3 be a curve of class C 4 and the desired yaw ψ d ( t ) R be a curve of class C 2 , both with bounded time derivatives. The problem considered herein is that of designing a sensor-based integrated tracking control law for the thrust T and torque τ , which enforces a bound on the thrust force with respect to the position, velocity errors, and an integrative term, ensuring global convergence of the quadrotor position p ( t ) to the desired position p d ( t ) and the yaw angle to ψ d ( t ) , minimizing the energy expenditure over time.

3. Controller Design

In this section, a nonlinear tracking and control law is derived for the tracking problem stated in Section 2.2. The schematic of the proposed quadrotor controller is presented in Figure 2. By virtue of the underactuated nature of the quadrotor system, a hierarchical strategy is employed to achieve the control development. It consists of an inner loop, the attitude control, combined with an outer loop, the position control, which when bounded provides references to the inner loop. Pontryagin’s principle and the LQR theory aligned with Lyapunov’s theory are at the basis of the controller’s design and the stability proof.

3.1. Position Control

Suppose that the desired position of the quadrotor represented in the inertial frame is p d = x d y d z d T . Furthermore, p d must verify some conditions, namely, it is assumed to be continuous and three-times differentiable. The position error is defined as
e p = p p d ,
with p ˙ d = R v d , where v d R 3 is the desired velocity in the body-fixed frame. Define the body velocity error as
e v = v v d .
In order to achieve zero steady-state error and to add robustness to model uncertainties, a modular integral feedback is taken into account
η ˙ = w 1 e p + w 2 R e v ,
where w 1 R > 0 and w 2 R 0 are user-defined.
Hence, by taking the derivative of (8)–(9), considering the position system (6) and the integral dynamics (10), the position tracking system is defined as
e ˙ p e ˙ v η ˙ = 0 R 0 0 [ ω × ] 0 w 1 I w 2 R 0 A e p e v η + 0 I 0 B u ,
where
u = T m e 3 + R T g e 3 p ¨ d
and p ¨ d is the desired inertial acceleration.
The proposed feedback control law is
u : = u * = R T K p R T K v R R T K η e p e v η ,
where u * represents the optimal LQR controller for the system (11), K p , K v , and K η are the steady-state LQR gain matrices R 3 × 3 corresponding to the fully controllable LTI system
x ˙ p x ˙ v x ˙ η = 0 I 0 0 0 0 w 1 I w 2 I 0 A l x p x v x η + 0 I 0 B l u .
Theorem 1. 
Consider the dynamics of position error described by (11). The closed-loop system that results from applying the feedback law (13) is globally exponentially stable. Moreover, the feedback law is steady-state optimal in the sense that it minimizes the cost function
J = 0 1 2 x 1 T Q p 0 0 0 R T Q v R 0 0 0 Q η Q x 1 + u T R T R p R R u u d t ,
where Q p , Q v , and Q η R 3 × 3 are positive semidefinite matrices, R p R 3 × 3 is a positive definite matrix, and x 1 = e p T e v T η T T .
Proof. 
The proof follows a similar approach as in the LQR derivation. Applying the Maximum Principle theorem [31] to minimize the cost function (15) subject to the constraint (11) renders the Hamiltonian H
H = 1 2 x T Q x + 1 2 u T R u u + λ T ( A x + B u ) ,
where λ is the costate vector of variables, and A and B are defined in (11). Applying the Maximum Principle theorem [31], the following necessary conditions are obtained:
x ˙ = 𝜕 H 𝜕 λ T = A x + B u λ ˙ = 𝜕 H 𝜕 x T = Q x + A T λ 0 = 𝜕 H 𝜕 u = R u u + B T λ .
Hence, the optimal control law is given by
0 = 𝜕 H 𝜕 u = R u u * + B T λ u * = R u 1 B T λ .
To find a solution for u * , λ must be determined. Let λ = P x , where P is a square symmetric matrix, and substitute (17) into the necessary conditions to obtain the equation
P ˙ = P A + A T P P B R u 1 B T P + Q ,
which is the Riccati matrix differential equation. Since system (11) is time-varying, P will always vary for any t. Consider the following well-defined Lyapunov transformation T
P = T P T T ,   T = I 0 0 0 R T 0 0 0 I .
Then, as detailed in Appendix A, it is possible to write
P ˙ = P A l + A l T P P B l R p 1 B l T P + Q l ,
which is the Riccati equation for the LTI system (14), and Q l is defined in Appendix A. Consequently, at the infinity, P ˙ = 0 , and the optimal control law u * (13) can be rewritten as
u * = R u 1 B T P x = R u 1 B T T P T T x = [ R T R p P 2 T K p R T R p P 4 K v R R T R p P 5 K η ] e p e v η = K n l x 1 ,
where P = P 1 P 2 P 3 P 2 T P 4 P 5 P 3 T P 5 T P 6 . Thereby, u * is the optimal control law that minimizes the cost function (15) for the position system (11). The proof of global exponential stability is now immediate. Consider the following well-defined Lyapunov function
V 1 ( x ) = x T T P T T x ,
with the time derivative given by
V ˙ 1 ( x ) = d d t x T T P T T x + x T T P d d t T T x = x T A c l T T + T ˙ P T T x + x T T P T T A c l + T ˙ T x = x T T A l B K l T P T T x + x T T P A l B K l T T x = x T T Q l T T x ,
with A c l = A B K n l and K l = K p 0 0 0 K v 0 0 0 K η . Thus, V 1 ( x ) 0 and V ˙ 1 ( x ) < 0 for an x different from zero, and, by [32] [Theorem 4.9], the origin of the closed-loop error system is globally asymptotically stable. To prove exponential stability, observe the following inequalities [32]
x T T Q l T T x Λ m i n ( Q l ) x T x x T T P T T x Λ m a x ( P ) x T x ,
where Λ m i n ( Q l ) and Λ m a x ( P ) are the minimum eigenvalue of Q l and the maximum eigenvalue of P , respectively, which are positive. Define α = Λ m i n ( Q l ) Λ m a x ( P ) > 0 and apply (25) to (24), which yields
V ˙ 1 ( x ) α V 1 ( x ) ,
Hence, the origin is globally exponentially stable. □
The block diagram of the position controller is depicted in Figure 3.
The position dynamics are an underactuated system with one control input and three output variables. The outer loop is responsible for generating not only the desired thrust but also angular references. Noting that u = T m e 3 + R T g e 3 p ¨ d , although T is a system input, the rotation matrix R T is not and cannot be set arbitrarily. Nevertheless, the attitude variable R can be controlled by means of the attitude system (7), and the input moments can be exploited to drive the thrust force in some intended direction. The input u can be rewritten as
u = T m e 3 + R d T g e 3 p ¨ d u * R ˜ T I R T g e 3 p ¨ d Δ ,
where the term Δ R 3 is a disturbance due to the attitude error control, R d is the desired rotation matrix, and R ˜ = R T R d describes the discrepancy between the vehicle attitude and the attitude command. The rotation matrix R ˜ verifies [33]
R ( e q ) = q 4 e 2 q v e T q v e I + 2 q v e q v e T 2 q 4 e q v e × ,
where e q = q v e T q 4 e T S 3 denotes the unit quaternion error parameterization that is further defined in Section 3.3, which ensures that R ( e q ) = R ˜ through the mapping R : S 3 SO ( 3 ) . The mapping (28) allows to write the perturbation term Δ as
Δ = 2 ( q v e × + q 4 e I ) q v e × ϑ
where ϑ = R T g e 3 p ¨ d , and provide an upper bound resorting to the spectral norm of Δ given by
Δ 2 ( q v e × + q 4 e I ) q v e × ϑ = 2 ϑ q v e 2 max ( ϑ ) q v e ,
which is a strictly increasing class- K function [34]. Keep in mind that similar constraints on Δ can be derived using alternative attitude parameterizations.
The desired quaternion q d is obtained by equating u * in (27) with the output of the feedback law u * (13), which gives
u * = T m e 3 + R d T g e 3 p ¨ d u * + T m e 3 u t = R ( q θ ϕ d ) T R ( q ψ d ) T g e 3 p ¨ d t u t = R ( q θ ϕ d ) T t ,
where R ( q ψ d ) is the rotation matrix defined in quaternions that represents the chosen yaw angle, i.e., q ψ d , of the quadrotor, and R ( q θ ϕ d ) denotes the desired rotation matrix defined by the equivalent quaternion for a roll rotation followed by a pitch rotation, i.e., q θ ϕ d . The thrust is computed as
T = m t 2 u 1 * 2 u 2 * 2 u 3 * ,
and the desired quaternion command q θ ϕ d is given by
q θ ϕ d = c 2 c 1 c 1 c 2 1 1 c 1 2 + 1 c 2 2 + 1 ,
where
c 1 = t 3 + u t 1 2 + t 1 2 + t 3 2 u t 1 + t 1 ,   t 2 t 2 2 u t 1 2 ,   g + p ¨ d 3 > 0 c 2 = u t 3 + t 2 2 + u t 2 2 + u t 3 2 u t 2 + t 2 ,   u t 2 t 2 2 u t 1 2 ,   t 2 > u 1 * 2 + u 2 * 2 ,
The time derivative of the desired quaternion (33) given by
q ˙ θ ϕ d = c ˙ 2 q θ ϕ d 4 + c 2 q ˙ θ ϕ d 4 c ˙ 1 q θ ϕ d 4 + c 1 q ˙ θ ϕ d 4 c ˙ 1 c 2 + c 1 c ˙ 2 q θ ϕ d 4 c 1 c 2 q ˙ θ ϕ d 4 q ˙ θ ϕ d 4 ,
where
q ˙ θ ϕ d 4 = q θ ϕ d 2 c ˙ 1 c 1 2 + 1 q θ ϕ d 1 c ˙ 2 c 2 2 + 1 .
The guidance law (33) only specifies the desired roll and pitch, but it can be extended to include the desired yaw. Let q ψ d represent the desired yaw quaternion, then the desired quaternion can be defined as follows:
q d = q ψ d q θ ϕ d ,
where the operator ⊗ defines the quaternion product, i.e.,
q 1 q 2 q 2 4 q 1 v + q 1 4 q 2 v [ q 2 v × ] q 1 v q 2 4 q 1 4 q 2 v T q 1 v ,
and
q ψ d = 0 0 s i n ( ψ d 2 ) c o s ( ψ d 2 ) T .
Remark 1. 
The stability proof presented in this section does not take into consideration the coupling term Δ, which is a requisite when position and attitude are coupled together. In Section 3.2 and Section 3.3, the coupling term Δ is addressed while the attitude controller is deduced and the stability analysis for the overall system is discussed.
The reference angular velocity ω d and its time derivatives along the body’s x and y axes can be readily expressed as functions of u t , t , and their respective time derivatives. In fact, this can be deduced from the kinematic relationship q ˙ = Ξ ( q ) Ω , which implies that
ω d = W Ξ ( q d ) T q ˙ d , ω ˙ d = W Ξ ( q ˙ d ) T q ˙ d + Ξ ( q d ) T q ¨ d = W Ξ ( q d ) T q ¨ d ,
where
W = 0 1 0 0 0 0 1 0 0 0 0 1 ,
q ˙ d = q ˙ ψ d q θ ϕ d + q ψ d q ˙ θ ϕ d ,
and
q ¨ d = 2 q ˙ ψ d q ˙ θ ϕ d + q ¨ ψ d q θ ϕ d + q ψ d q ¨ θ ϕ d .
It is clear that the extracted attitude is time-varying, and that ω d and ω ˙ d can be derived using the expressions of u ˙ t and u ¨ t , which are functions of available signals.

3.2. Saturated Control Law

The control law derived in Section 3.1 requires certain conditions to be met. First, due to the nature of the aircraft, the thrust T must be positive, which leads to the following control law requirement
u < g e 3 p ¨ d = t .
Secondly, the rotors and fans can only manage a maximum thrust, i.e., T < T m a x R > 0 , which is equivalent to the next requirement
u 1 * 2 + u 2 * 2 + u 3 * + T m a x m 2 > g e 3 p ¨ d 2 .
In the context of a well-defined thrust magnitude, the inequalities t 2 t 2 2 u t 1 2 and u t 2 t 2 2 u t 1 2 can be considered equivalent. Consequently, the last necessary bound for u comes from the quaternion extraction (33) and is given by u t 1 2 + t 1 2 + t 3 2 0 , which is equivalent to the following inequality
u 1 * 2 g e 3 p ¨ d 2 t 2 2 .
In Figure 4, the allowed space for input u considering u 2 * = 0 is depicted in light blue and gray. Due to the complexity of finding a smooth saturation function that guarantees these bounds, one could saturate u within the gray space; see Figure 4, i.e.,
u < g e 3 p ¨ d u 1 * 2 g e 3 p ¨ d 2 t 2 2 u 3 * > T m a x m g e 3 p ¨ d ,
or even to choose the maximum possible radius sphere around the origin.
To accomplish the requirements in (43), one may employ the following smooth saturation function:
s ( x , k ) = x x p k p + 1 1 p κ = x κ ( x ) ,
where k > 0 is the saturation limit, and p > 0 adjusts the slope transition between linear and saturated regions; see Figure 5.
Given (43) and (44), the saturated control law is designed as follows:
u s a t = s R T K p e p + R T K v R e v , ε 1 k m i n s R T K η η s , ε 2 k m i n = s u 1 , ε 1 k m i n s u 2 , ε 2 k m i n ,
where
η ˙ s = K v T M T I P s T R 0 0 R s u 1 , ε 1 k m i n T e v T T + c K v K p 1 R s u 1 , ε 1 k m i n ,
M = d d u 1 s ( u 1 , k ) = κ ( u 1 ) I u 1 p 2 u 1 p + k p u 1 u 1 T ,
with 0 < eig ( M ) 1 , P s = a b b c , a = a I , b = a K v 1 K p , c = c I , where a R and c R can be defined by the user such that c > a K p 2 K v 2 ,
k m i n = min g e 3 p ¨ d , g e 3 p ¨ d 2 t 2 2 , T m a x m g e 3 p ¨ d ,
and ε 1 R > 0 , ε 2 R > 0 define the allowed saturation limits between each saturation function and satisfy ε 1 + ε 2 = 1 .
Theorem 2. 
Let the dynamics of the position error be described by (11). Suppose that the equilibrium q v e = 0 of q ˙ v e = f ( q v e ) is GAS and LES and that the gain matrices K p = k p I , K v = k v I , and K η = k η I , where k p R , k v R , and k η R . The closed-loop system that results from applying the saturated feedback law (45) achieves global asymptotic stabilization, driving both position and velocity errors to zero for any c = c I and a = a I chosen such that c > a K p 2 K v 2 .
Proof. 
The proof can be found in Appendix B. □
Remark 2. 
The inclusion of the plant integrator η s allows the control system to manage constant uncertainties within the dynamic model. For this particular scenario, the Lyapunov function from the preceding theorem can be adapted to account for a constant bias in the position acceleration dynamics. This adaptation can be achieved by employing the methodologies outlined in [20,21] and adjusting them for the application of normed saturation functions. This implies that the proposed system is capable of handling a disturbance b R 3 provided that b < ϵ 2 k m i n .
The preceding theorem guarantees that s ( u 1 ) asymptotically converges to zero. This implies that there exists a time t > 0 at which s ( u 1 ) tends to u 1 , entering the linear region. Consequently, and assuming that Δ also tends asymptotically to zero, the closed-loop system (A4) can be reformulated as
e ˙ p e ˙ v η ˙ s = 0 R 0 R T K p [ ω × ] R T K v R 0 w 1 I w 2 R 0 e p e v η s 0 I 0 s R T K η η s , ε 2 k m i n ,
where w 1 = a ( k p k v k v 2 k p 1 ) + c k v and w 2 = a ( k v 2 2 k p ) + c ( k p 1 k v 2 + 1 ) .
Lemma 1. 
If one of the following inequalities are met:
1 2 ( 1 + s ( s 1 ) ( s + 3 ) ) < k p k v 2 < 1 2 ( 1 + s + ( s 1 ) ( s + 3 ) ) k p k v 2 < 1 s 1
or
k p k v 2 < 1 2 ( 1 + s + ( s 1 ) ( s + 3 ) ) k p k v 2 > 2
where s = w 2 w 1 k v and, assuming that Δ tends to zero asymptotically and exponentially locally, then the Lyapunov function V s 1 (A8) is positive definite and its derivative negative semidefinite, and the closed-loop system (A4) converges to (49).
Proof. 
The inequalities come to light by setting
c = k v 1 ( a ( k p 2 k v 1 k p k v ) + w 1 ) > a k p 2 k v 2 a < w 1 k p k v ,
and
a = w 1 ( k v 3 + k p k v ) w 2 k p k v 2 k p 2 ( 2 k v 2 k p ) > 0 k p k v 2 < 1 s 1 , for k p k v 2 < 2 k p k v 2 > 1 s 1 , for k p k v 2 > 2 .
Then,
a < w 1 k p k v 1 2 ( 1 + s ( s 1 ) ( s + 3 ) ) < k p k v 2 < 1 2 ( 1 + s + ( s 1 ) ( s + 3 ) ) .
The graphical illustration in Figure 6 showcases the range of gains concerning the s ratio, from which Theorem 2 and Lemma 1 are satisfied.
Theorem 3. 
Let the dynamics of the position error be described by (11) and assume that Δ 0 asymptotically and exhibits exponential local convergence and that the gain matrices K p = k p I , K v = k v I , and K η = k η I , where k p R > 0 , k v R > 0 , and k η R > 0 . Additionally, let R p = I (22), which implies that K p = P 2 T , K v = P 4 , and K η = P 5 T . Choose w 1 = k p and w 2 = k v , such that s = k v 2 k p in Theorem 1, and let
K p = 2 q 1 2 I ,   K v = 2 4 q 3 + 4 q 2 + q 3 + 4 2 q 1 I ,   K η = 2 q 3 2 I ,
where q 1 R > 0 , q 2 R > 0 , and q 3 R > 0 . Then, the origin of the closed-loop system that results from applying the saturated feedback law (45) is globally asymptotically stable and locally exponentially stable as soon as s ( u 1 ) = u 1 . Moreover, the feedback law is steady-state optimal in the sense that it minimizes the cost function
J = 0 1 2 x 1 T q 1 I 0 0 0 q 2 I 0 0 0 q 3 I Q s x 1 + u T u d t ,
in the linear region.
Proof. 
The proof can be found in Appendix C. □
Remark 3. 
The saturation law (45), as stipulated in Theorem 3, ensures global asymptotic stability and local exponential stability for the system (11), with the assumption that Δ converges to zero asymptotically and locally exponentially. Moreover, it ensures steady-state optimal control within the linear region of the saturation function and enables the computation of the thrust T and the desired quaternion q d for every instance.

3.3. Attitude Control—Quaternion

The attitude controller is designed via backstepping to cope with the coupling term Δ . Suppose the desired orientation of the quadrotor is q d = q v d T q 4 d T = q 1 d q 2 d q 3 d q 4 d T . The quaternion error is a four-dimensional vector, defined as follows:
e q = q q d 1 = q v e q 4 e S 3 ,
where q d 1 = [ q v d T q 4 d ] T represents the inverse of the estimated quaternion rotation, and the error (57) verifies (28).
Define the angular velocity error vector in the body-fixed frame as
e ω : = ω R ˜ ω d R 3 ,
where ω d is the desired angular velocity. Take the derivative of (57) and (58), and define the attitude tracking system by the kinematic differential equation
e ˙ q = 1 2 q 4 e I 3 × 3 + q v e × q v e T Ξ ( e q ) e ω
and by the dynamic equation
e ˙ ω = J 1 [ ω × ] J + J 1 τ + [ e ω × ] R ˜ ω d R ˜ ω ˙ d .
Apply the following input-to-state linearization control law
τ = J J 1 [ τ n + ω × ] J [ e ω × ] R ˜ ω d + R ˜ ω ˙ d
and rewrite (59)–(60) as follows:
e ˙ q = 1 2 Ξ ( e q ) e ω e ˙ ω = τ n .
Define the vectors of variables
x 1 = e p T e v T η s T T ,
and
x 2 = q v e T 1 | q 4 e | T .
The objective is to drive x 1 and x 2 to zero. Note that, due to the dual quaternion representation, two equilibria exist, i.e., e q = [ 0 ± 1 ] . To cope with model imbalances, the control is augmented with an integrator state
q ˙ i = q v e .
Remark 4. 
Incorporating plant integrators endows the control system to effectively handle unchanging uncertainties inherent in the dynamical model. As long as these uncertainties are constant, the control system can sustain its properties of stability in both position and attitude error. Nevertheless, when confronted with nonlinear uncertainties, such as those stemming from biased mass or moment of inertia, additional measures are required. The introduction of nonlinear integrative or adaptive terms into the control system emerges as a valuable recourse, effectively reinstating the stability properties and addressing the effects of these nonlinear uncertainties [21].
The quaternion parameter set is redundant due to the fact that a particular attitude of a rigid body will always have two mathematical representations, involving a 2 π rotation about an axis relative to each other [35]. Only one of the equilibrium points is considered, i.e., e q = [ 0 ± 1 ] , as formalized with the assumption that follows.
Assumption 1. 
The scalar part of the quaternion error q 4 e maintains its signal for all times, i.e., sgn ( q 4 e ( t ) ) = sgn ( q 4 e ( t 0 ) ) t .
In order to stabilize the equilibrium points of e q , the signum function, denoted as sgn ( x ) , is introduced
sgn ( x ) = 1 , x < 0 1 , x 0 .
Remark 5. 
In practical scenarios, control continuity is maintained as it hinges on the initial condition q 4 e ( t 0 ) . However, it is important to exercise caution if the initial quaternion error q 4 e ( t 0 ) is zero and exposed to noise, as this may trigger unwinding behavior. This potential issue can be relaxed through hybrid switching techniques, as detailed in [35,36]. Nonetheless, in a well-defined trajectory, it is typically unrealistic to encounter an initial tracking error q 4 e that is nearly zero.
A candidate Lyapunov function is devised as
V 2 = k 1 V s 1 + x 2 T x 2 + 1 2 q i T K i q i ,
where V s 2 is defined in (A19), k 1 is a positive gain to tune the effects of the coupling term, and K i R 3 × 3 is a positive definite diagonal matrix.
Accounting for the coupling term Δ , the Lyapunov function V s 1 within the saturated region, i.e., t < t 1 , is given by
V ˙ s 1 = k 1 x s T Q m x s k 1 K Δ Δ
where K Δ = ( x s T P s 0 I T + 1 k c s ( u 1 l ) T K v ) . Exploiting the property in (28) and (29), the previous term can be rewritten as follows:
V ˙ 1 s = W ( x 1 ) + 2 k 1 K Δ [ q v e × ] + q 4 e I [ ϑ × ] q v e ,
where W ( x 1 ) = k 1 x s T Q m x s . The time derivative of V 2 is given by
V ˙ 2 = W ( x 1 ) + 2 k 1 K Δ [ q v e × ] + q 4 e I [ ϑ × ] q v e + sgn ( q 4 e ( t 0 ) ) q v e T e ω + q i T K i q v e = W ( x 1 ) + q v e T ( sgn ( q 4 e ( t 0 ) ) e ω + K i q i + 2 k 1 [ ϑ × ] [ q v e × ] q 4 e I K Δ T ) .
Applying the backstepping procedure, a new error is defined
x 3 = sgn ( q 4 e ( t 0 ) ) e ω + 2 k 1 [ ϑ × ] [ q v e × ] q 4 e I K Δ T + K q q v e + K i q i ,
where K q R > 0 3 × 3 is a positive definite gain matrix, and a new Lyapunov function is defined as
V 3 = V 2 + 1 2 x 3 T x 3 ,
with time derivative
V ˙ 3 = W ( x 1 ) q v e T K q q v e + x 3 T ( sgn ( q 4 e ( t 0 ) ) τ n + ( I + K i ) q v e + 2 k 1 [ ϑ ˙ × ] [ q v e × ] q 4 e I K Δ T + 2 k 1 [ ϑ × ] [ q ˙ v e × ] q ˙ 4 e I K Δ T + 2 k 1 [ ϑ × ] [ q v e × ] q 4 e I K ˙ Δ T + K q q ˙ v e ) .
The actuation τ n can now be set to cancel the coupling terms and to render the Lyapunov function V ˙ 3 negative semidefinite. Define the actuation as follows:
τ n = sgn ( q 4 e ( t 0 ) ) ( 2 k 1 [ p d × ] [ q v e × ] q 4 e I K Δ T 2 k 1 [ ϑ × ] [ q ˙ v e × ] q ˙ 4 e I K Δ T 2 k 1 [ ϑ × ] [ q v e × ] q 4 e I K ˙ Δ T ( I + K i ) q v e K q q ˙ v e K ω x 3 ) ,
where K ω R > 0 3 × 3 is a positive definite gain matrix.
Theorem 4. 
Let the quadrotor kinematics and dynamics be described by (6)–(7), let p d ( t ) C 4 and ψ d ( t ) C 2 be the reference trajectory, and consider the transformation of error coordinates x s , x 2 , x 3 , given by (63a), (63b) and (70), respectively. The closed-loop system that results from applying the inputs (45) and (61) achieves trajectory tracking by guaranteeing that the errors x 1 , x 2 , and x 3 converge to zero. Additionally, almost uniform global asymptotic stability of ( x s , u 2 l , q v e , q i , e ω ) = 0 is established.
Proof. 
The closed-loop quadrotor error dynamic system, with state variables x s , u 2 l , x η s , x 2 , and x 3 , defined as (63a), (63b), and (70), respectively, with V s 1 devised according to Theorem 2, admits the Lyapunov function V 3 (71) with time derivative
V ˙ 3 = k 1 x s T Q m x s q v e T K q q v e x 3 T K ω x 3 = Y 1 0 .
Since V ˙ 3 0 , which implies that V 3 V 3 ( 0 ) is compact, and according to [32] [Theorem 4.8], the set ( x s , u 2 l , q v e , q i , x 3 ) = 0 is uniformly stable. Resorting to the LaSalle–Yoshizawa Theorem [32] [Theorem 8.4], it follows from (74) that lim t x s ( t ) = lim t q v e ( t ) = lim t x 3 ( t ) = 0 and lim t q 4 e ( t ) = sgn ( q 4 e ( t 0 ) ) .
To show uniform asymptotic stability of the equilibrium ( x s , u 2 l , q v e , q i , x 3 ) = 0 , one can resort to the Nested Matrosov Theorem [37] [Theorem 1]. Define the following auxiliary function V 4 = 1 2 e ω T e ω , with time derivative V ˙ 4 = e ω T τ n . By inspection, τ n and its time derivative are bounded, and within the set Y 1 = 0 , V ˙ 4 , yield
V ˙ 4 = e ω T K q e ω = Y 2 0 { ( x s , u 2 l , q v e , q i , x 3 ) R 18 : Y 1 = 0 } .
Consider the function V 5 = u 2 l T x v , with time derivative
V ˙ 5 = u 2 l T s ( u 2 l , ϵ 2 k m i n ) = Y 3 0 { ( x s , u 2 l , q v e , q i , x 3 ) R 18 : Y 1 = 0 , Y 2 = 0 } .
Finally, consider the last auxiliary function V 6 = sgn ( q 4 e ( t 0 ) q i T e ω , which satisfies
V ˙ 6 = sgn ( q 4 e ( t 0 ) q v e T e ω + q i T ( d d t ( 2 k 1 [ ϑ × ] [ q v e × ] q 4 e I K Δ T ) ( I + K i + K ω K q ) q v e ( K q ( q 4 e I 3 × 3 + q v e × ) + sgn ( q 4 e ( t 0 ) K ω ) e ω K ω 2 k 1 [ ϑ × ] [ q v e × ] q 4 e I K Δ T K ω K i q i ) = q i T K ω K i q i = Y 4 0 { ( x s , u 2 l , q v e , q i , x 3 ) R 18 : Y 1 = 0 , Y 2 = 0 , Y 3 = 0 } .
By setting Y i = 0 for i = 1 , 2 , 3 , 4 and applying the Nested Matrosov Theorem [37] [Theorem 1], almost uniform global asymptotic stability of ( x s , u 2 l , q v e , q i , e ω ) = 0 is established, since the closed-loop system exhibits a zero measure point for q d T q = 0 [26].
Therefore, by leveraging the Lyapunov coordinate transformation T , it can be asserted that the equilibrium point of the closed-loop system (A4) is also almost globally asymptotically stable. □
The preceding theorem establishes global asymptotic stability for e q = [ 0 sgn ( q 4 e ( t 0 ) ) ] in the context of classical solutions. Nonetheless, it is crucial to exercise caution as this solution is susceptible to arbitrarily small measurement noise near q 4 e = 0 . This vulnerability is underscored in [36], where it is asserted that initial conditions in close proximity to the discontinuity maintain the state near the discontinuity, implying that the condition q 4 e = 0 represents a set of zero measure, rendering the system almost global. This issue can potentially be addressed through hybrid switching techniques, as demonstrated in [38]. However, in practical scenarios where the generated path is well-defined, it is unrealistic for the initial tracking error q 4 e to be close to 0, and it has been disregarded in this context.
Keep in mind that constructing the Lyapunov function V s 1 from scratch is possible by utilizing the Lyapunov transformation T alongside the position system errors e p and e v . This would yield a result akin to applying the transformation at the end of Theorems 2 and 4. However, such an extension of the proof is unnecessary, as the Lyapunov transformation T inherently preserves the system’s properties.
Remark 6. 
The current approach utilized the principles of backstepping theory to eliminate the interconnection term between position and attitude. Nevertheless, according to Theorem 2, any attitude controller relying exclusively on an attitude parameterization error with asymptotic and locally exponential stability would render the overall system, i.e., position and attitude, asymptotically stable.

4. Implementation

As detailed in Section 3.1, the matrix gains K p , K v , and K η are derived using the LQR method applied to the LTI system (14), and they must adhere to the constraints depicted by the shaded region in Figure 6. An alternative approach involves selecting a specific line, such as 1 s , and computing the LQR solution in a manner consistent with Theorem 3.
In order to have some similar sensibility on the gains for the attitude system, the following similar LTI system is considered to compute K i , K q , and K ω
x ˙ q x ˙ ω x ˙ q i = 0 1 2 I 0 0 0 0 I 0 0 x q x ω x η + 0 I 0 u .
By performing the closed-loop system on the attitude system consisting of q v e , e ω , and q i , and considering only small angle variations, the following system is devised:
x ˙ q x ˙ ω x ˙ q i = 0 1 2 I 0 I + K i + K ω K q K 1 K ω + K q K 2 K ω K i K 3 I 0 0 x q x ω x η ,
where K 1 , K 2 , and K 3 are the LQR gains for the system (78). With some algebraic computations, K i , K q , and K ω are retrieved as follows:
K ω = K 3 + K 2 K 1 1 K i = K 1 K 3 + K 2 1 K 3 K q = K 2 K 3 + K 2 K 1 1 ,
where K 1 and K 3 + K 2 should be invertible, and K i , K q , K ω should check positive definiteness. By considering diagonal input and state matrices while performing the LQR, this is most likely the case, but one must always check. The desired angular velocity ω d and its derivative are computed through (39).

Control Application-Steps

A complete step-by-step approach is outlined below to simplify the applicability of the proposed control law:
  • Begin by computing the controller gains, as outlined in the initial part of Section 4;
  • Set the maximum thrust T m a x and choose p and ε ] 0 , 1 [ such that | d d x s ( x , ε k m i n ) | 1 ;
  • Define the values of ε 1 and ε 2 and calculate the position saturation law, u s a t , using the Equation (45). From this, extract the values of T using (32), q d following (36), and also determine ω d and ω ˙ d based on (39);
  • Finally, compute τ n using (73), and calculate the actuation τ using (61).

5. Simulation Results

In this section, simulation results are presented to illustrate the performance of the presented control law. The model was simulated in Simulink at a rate of 100 Hz using the equations of motion (6)–(7). The vehicle starts with the states at zero, while the desired position starts at p d ( 0 ) = 1 1 0.8 T . At 4.5 s, the vehicle takes off, and the position controller is activated at 6 s. Then, the vehicle hovers for around 6 s, and the following lemniscate of Gerono is generated:
p d ( t ) = 2 c o s ( ψ d ( t ) ) s i n ( 2 ψ d ( t ) ) 2 c o s ( ψ d ( t ) ) 3 2.7 1.2 1.75 with ψ d ( t ) = 3 π 32 t ,
and it finishes after two laps.
To ensure smooth transitions, a second-order low-pass filter with a natural frequency of 2 Hz is applied to the trajectory. The vehicle mass is m = 0.55 kg , the inertia matrix is J = diag ( 2.2 2.9 5.3 ) 10 3 , the thrust is chosen to be bound by T m a x = 6.5   N , which implies a k m i n 2 , the parameter p of the saturation function is set to p = 30 , and ε 1 = 0.8 . The transition point from the linear to saturated region is ε = 0.8 , where | d d x s ( x , 0.8 k m i n ) | 0.999 . The controller parameters are presented in Table 1, which are used to compute the controller gains, as described in Section 4. The gains for the position controller are selected in accordance with Theorem 3.
The simulation results are presented in Figure 7, Figure 8 and Figure 9. In Figure 8, the tracking errors converge exponentially to zero, which shows that the proposed solution is capable of following paths. The transient convergence to the pass is less than 3 s. The controller provides zero position and velocity steady-state errors. The rotor, thrust, and moment actuations can be seen in Figure 9, respectively. As illustrated in the bottom left plot of Figure 9, the position controller saturates during the take-off and stays in the imminence of saturation at the time when the trajectory is given. In comparison, the newly proposed position saturation law exhibits a higher convergence rate when contrasted with a conventional nested saturation law [39], as demonstrated in Figure 10. The notable discrepancy in convergence behavior within the saturated region arises from the unique configuration where the position error term is placed on the outer saturation function, as also performed in [12]. This is a departure from the typical nested approach, where the velocity error is positioned on the outer part of the saturation function. Furthermore, the controller is evaluated against the position saturation law described in [40]; see Figure 10. To ensure an equitable assessment, a comparison is made excluding the integrative element of the controller, since the controller proposed in [40] does not have integrative action. The key distinction lies in the saturation approach, where the proposed controller saturates the norm of the input, whereas the controller from [40] applies saturation to each input component individually. The proposed controller exhibits improved convergence rates in the step response, particularly when the step input occurs in one or two directions, as depicted in Figure 10. This enhanced performance can be attributed to the controller’s ability to allocate a larger control action when fewer than three directions are saturated, resulting in faster convergence rates.

Robustness Comparisons

To rigorously evaluate the proposed controller’s effectiveness in counteracting constant biases within the position acceleration dynamics, two distinct scenarios were analyzed. For both scenarios, the system’s maximum tolerable bias threshold was set to b < 1 , meaning that ϵ 2 k m i n = 1 , with k m i n = 3 . The system is initialized at a zero position and a step p d = 1 1 0.8 is applied.
In the first scenario, the disturbance is characterized by b = 1 3 [ 0.95 0.95 0.95 ] T . Comparative results with the robust position controller from [14] are depicted in Figure 11. This figure illustrates the progression of the integrative saturation action, demonstrating that both controllers successfully converge and neutralize the disturbance. While the position error diminishes to zero for both controllers, the one proposed in this work exhibits superior transient performance. One should notice that the controller in [14] does not account for the bounded normed saturation function, which is the reason why each saturation function is applied individually to each vector element and is bounded by ϵ 2 k m i n 3 or ϵ 1 k m i n 3 such that the bound is preserved for all time.
It is important to observe that the controller described in [14] does not incorporate a bounded normed saturation function. Consequently, the saturation function must be applied separately to each element of the vector and bounded by ϵ 2 k m i n 3 or ϵ 1 k m i n 3 to ensure that the overall bound is maintained at all times. This requirement may be seen as a drawback, as evidenced in the second scenario that follows.
The second scenario considers a disturbance b = [ 0.65 0 0.65 ] T , with b = 0.92 . The outcomes of this test are illustrated in Figure 12. The results demonstrate that the proposed controller successfully manages to cope with the disturbance, driving the position error zero. In contrast, the position controller from [14] fails to achieve this, as its saturation function is unable to handle biases in individual elements exceeding 1 3 . Essentially, the utilization of a normed bound function allows the system to more effectively distribute the integrative capacity across each variable.

6. Experimental Results

The experimental results attained with the coupled position (32), (45) and attitude controllers (61), on board an AR.Drone 2.0, are presented in Figure 13, Figure 14 and Figure 15. This particular quadrotor offers the capability to implement custom software that can override the factory control system through a Simulink package [41]. This custom software grants direct access to the Pulse Width Modulation (PWM) of each motor. For the experiment, a position tracking system (Qualisys) alongside the onboard IMU of the vehicle was exploited to provide real-time accurate measurements at 100   Hz of position, velocity, quaternion angles, and angular velocity. To allow a fair comparison, the controller parameters and the path generated in the simulation are also used for the real-time experiment.
Similarly to the simulation results, the quadrotor starts at 4.5 s from the ground floor and aims to follow a lemniscate path for position and a ramp for the yaw angle. The vehicle starts far off from the initial position in order to trigger saturation of the position control law. In Figure 13, it is shown that the controller was successfully able to track the given path displayed in red. The actual trajectories are displayed in black. The transient convergence to the path occurs within 3 s, and the steady-state error is fewer than 10 cm. The system errors, depicted in Figure 14, converge to the vicinity of zero and remain bounded. The actuations are plotted in Figure 15. The experimental results exhibit an analogous resemblance to the simulation results; see for comparison Figure 7 and Figure 13 and Figure 9 and Figure 15.
Table 2 details the root mean square errors (RMSEs) obtained during the steady state of the trajectory. Furthermore, the entire experiment was recorded, and the result can be seen at https://youtu.be/lg_5mCDDU8s (accessed on 17 April 2024).

7. Conclusions

This paper presented a tracking controller for a quadrotor with steady-state optimal properties, developed on the body-fixed frame and quaternion space. The controller stabilizes the position and attitude of a rigid body robustly and almost globally asymptotically. Through a specific set of transformation matrices, the positioning system is rendered LTI, allowing the exploitation of linear control techniques that optimally stabilize it. To avoid the physical limitations of the vehicle, during the thrust and attitude references extraction, a saturation law with modular integrative action that bounds the norm of the position input is devised, ensuring GAS and LES for the position system when paired with any controller that achieves LES for the attitude system. At first, the position and attitude are addressed separately. The origin of the saturation position controller exhibits global asymptotic stability in the saturated region and exponential stability in the linear region. The attitude controller, derived from the backstepping technique, tackles the effect of the interconnection term Δ , which results in almost uniform global asymptotic stability of the overall closed-loop system. Experimental and simulation results were shown to assess the performance of the proposed controller.

Author Contributions

J.M., methodology, software, validation, and writing—original draft; C.C., P.O., P.B. and C.S., supervision, writing—review and editing, project administration, and funding acquisition. All authors have read and agreed to the published version of the manuscript.

Funding

This work was supported by the Portuguese Fundação para a Ciência e a Tecnologia (FCT) through the scholarship 2020.06736.BD, and the Institute for Mechanical Engineering (IDMEC), under the projects LAETA Base Funding (DOI: 10.54499/UIDB/50022/2020) and LAETA Programatic Funding (DOI: 10.54499/UIDP/50022/2020), through Institute for Systems and Robotics (ISR), under LARSyS funding (DOI: 10.54499/LA/P/0083/2020, 10.54499/UIDP/50009/2020, and 10.54499/UIDB/50009/2020) and by the University of Macau, Macau, China, under Projects MYRG 2022-00205-FST and MYRG-GRG2023-00107-FST-UMDF. This work has also been supported by the European Union under the Next Generation EU, through a grant of the Portuguese Republic’s Recovery and Resilience Plan (PRR) Partnership Agreement, within the scope of the project PRODUTECH R3—“Agenda Mobilizadora da Fileira das Tecnologias de Produção para a Reindustrialização”, Total project investment: 166.988.013,71 Euros; Total Grant: 97.111.730,27 Euros.

Data Availability Statement

The data used in the present work are all available in the document itself.

Conflicts of Interest

The authors declare no conflicts of interest.

Appendix A

Take the time derivative of (20), which gives
P ˙ = T ˙ P T T + T P T ˙ T + T P ˙ T T ,
and the time derivative of T
T ˙ = 0 0 0 0 [ ω × ] R T 0 0 0 0 .
Note that T 1 = T T . Substituting (20) and (A2) in (19) gives
P ˙ = T T T ˙ P a + P T ˙ T T b + P T T A T c + T T A T T P d P T T B R u 1 B T T P e + T T Q T f ,
with
a = I 0 0 0 R 0 0 0 I 0 0 0 0 [ ω × ] R T 0 0 0 0 P = 0 0 0 0 R [ ω × ] R T 0 0 0 0 P b = P 0 0 0 0 R [ ω × ] 0 0 0 0 I 0 0 0 R T 0 0 0 I = P 0 0 0 0 R [ ω × ] R T 0 0 0 0 c = P I 0 0 0 R 0 0 0 I 0 R 0 0 [ ω × ] 0 w 1 I w 2 R 0 I 0 0 0 R T 0 0 0 I = P 0 I 0 0 R [ ω × ] R T 0 w 1 I w 2 I 0 d = I 0 0 0 R 0 0 0 I 0 0 w 1 I R T [ ω × ] w 2 R T 0 0 0 I 0 0 0 R T 0 0 0 I P = 0 0 w 1 I I R [ ω × ] R T w 2 I 0 0 0 P e = P I 0 0 0 R 0 0 0 I 0 I 0 R T R p 1 R R u 1 0 I 0 I 0 0 0 R T 0 0 0 I P = P 0 I 0 R p 1 0 I 0 P f = I 0 0 0 R 0 0 0 I Q p 0 0 0 R T Q v R 0 0 0 Q η I 0 0 0 R T 0 0 0 I = Q p 0 0 0 Q v 0 0 0 Q η = Q l .

Appendix B

Proof of Theorem 2. 
Let position and velocity error dynamics subjected to the input saturation u * = u s a t be given by
e ˙ p e ˙ v = 0 R 0 [ ω × ] e p e v + 0 I u s a t 0 Δ ,
and consider for now there is no inner-loop tracking error, i.e., Δ = 0 . By applying the Lyapunov transformation of coordinates
x p x v = I 0 0 R e p e v
to the closed-loop system (A4) results in the following LTI system with saturation input
x ˙ ls = x ˙ p x ˙ v = 0 I 0 0 x p x v + 0 I u s l ,
where
u s l = R u s a t = s K p x p + K v x v , ε 1 k m i n s K η x η s , ε 2 k m i n = s u 1 l , ε 1 k m i n s u 2 l , ε 2 k m i n ,
and x η s = η s . From here onwards, the second term in the saturation function s ( x , k ) will be omitted. Hence, if u s l achieves asymptotic stabilization for the system (A6), the stability characteristics are then extended, through the Lyapunov transformation, to the system (11) with saturated feedback law (45).
Inspired by [40], the following radially unbounded Lyapunov function is devised:
V s 1 = 1 2 x s T P s x s + 1 k c 0 u 1 μ κ ( μ ) d μ + 1 k η 0 u 2 μ κ ( μ ) d μ ,
where P s = a b b c , x s = s ( u 1 l ) T x v T T , a = a I , b = b I , c = c I , and K c R > 0 3 × 3 is a positive definite symmetric matrix. The time derivative is given by
V ˙ s 1 = s ( u 1 l ) T x v T P s M u ˙ 1 l s ( u 1 l ) s ( u 2 l ) + 1 k c u 1 l κ ( u 1 l ) u 1 l T u 1 l u ˙ 1 l + 1 k η u 2 l κ ( u 2 l ) u 2 l T u 2 l u ˙ 2 l = x s T P s M ( K p x v K v ( s ( u 1 l ) + s ( u 2 l ) ) ) s ( u 1 l ) s ( u 2 l ) + 1 k c s ( u 1 l ) T ( K p x v K v ( s ( u 1 l ) + s ( u 2 l ) ) ) + 1 k η s ( u 2 l ) T u ˙ 2 l = x s T a M ( K p x v K v s ( u 1 l ) ) b M ( K p x v K v s ( u 1 l ) ) + b s ( u 1 l ) c s ( u 1 l ) + 1 k c K v s ( u 1 l ) K p s ( u 1 l ) x s T P s M K v s ( u 2 l ) s ( u 2 l ) 1 k c s ( u 1 l ) T K v s ( u 2 l ) + 1 k η s ( u 2 l ) T u ˙ 2 l
By choosing k c = k p c 1 , and
u ˙ 2 l = K η K v T M T I P s T x s + K v K p 1 c s ( u 1 l ) = K η x η
the following expression is obtained:
V ˙ s 1 = x s M 0 0 M a K v 1 2 a K p + K v b 1 2 a K p + K v b T b K p + c K p 1 K v b 0 0 0 x s = x s T Q m x s .
Since M (47) is positive definite, choosing b = K v 1 a K p , and any c such that c > a K p 2 K v 2 , it is possible to verify that V ˙ s 0 is negative semidefinite. Since (A8) is radially unbounded, then for any initial condition ( s ( u 1 l ) , x v , u 2 )(0), the sublevel set
V s 1 ( u 1 l , x v , u 2 l ) V s 1 ( u 1 l , x v , u 2 l ) ( 0 )
is compact. It follows from [32] [Theorem 4.8] that the set { u 1 l = x v = u 2 l = 0 } is globally stable, and it follows from [32] [Theorem 8.4] that V ˙ s 1 ( s ( u 1 l ) , x v ) converges to 0; therefore, each solution converges to 0 asymptotically. Then, the origin of the closed-loop system (A6) is globally asymptotically stable.
Accounting for the interconnection term Δ , the system (A6) can be written as
ξ ˙ = f 1 ( ξ ) + 0 ( R Δ ( e ) ) T T e ˙ = f 2 ( e ) ,
where ξ = x p x v , and e represents any parameterization of the attitude error. Notice that Δ ( e ) is bounded by a class- K function (30) and does not depend on ξ , and that V ˙ s 1 ( x s , Δ ) can be bounded by
V ˙ s 1 ( x s , Δ ) d 1 s ( u 1 l ) + d 2 x v q v e max ( d 1 , d 2 ) x s q v e x s > 1 max ( d 1 , d 2 ) Λ m i n ( P s ) q v e Λ m i n ( P s ) x s 2 + 1 k c 0 u 1 μ κ ( μ ) d μ + 1 k η 0 u 2 μ κ ( μ ) d μ x s > 1 max ( d 1 , d 2 ) Λ m i n ( P s ) q v e V s 1 .
for some d 1 and d 2 R . Then, by following the proof in [34] [Theorem 4.7], the fact that the system (A12) is forward complete [42] and due to the assumption that the equilibrium e = q v e = 0 of e ˙ = a ( e ) is to be GAS and LES, it can be deduced that there exists a time t > 0 for which e exponentially converges to zero. Consequently, there exists a constant α R > 0 and a function γ ( · ) K , such that
V ˙ s 1 ( x s , Δ ) max ( d 1 , d 2 ) Λ m i n ( P s ) γ ( q v e ( 0 ) ) e α t V s 1 ,
for x s > 1 . This analysis establishes the boundedness of V s 1 . Given that V s 1 is radially unbounded, the boundedness of V s 1 implies the boundedness of ξ . Hence, the GAS of the equilibrium point ( x s , u 2 l , q v e ) = ( 0 , 0 , 0 ) follows. Therefore, by leveraging the Lyapunov coordinate transformation (A5), it can be asserted that the equilibrium point of the closed-loop system (A4) is globally asymptotically stable. □

Appendix C

Proof of Theorem 3. 
By choosing w 1 = k p and w 2 = k v , then s = k v 2 k p , which satisfies the initial inequality in Theorem 1. As a result, u 1 tends to zero asymptotically, and there exists a time t > 0 at which the original system (A4) converges to the system (49).
Following the same logic as in the beginning of Theorem 2, if one applies the transformation of coordinates
x p x v x η = T T e p e v η s
to the closed-loop system (49) results in the following LTI system with saturation input
x ˙ p x ˙ v x ˙ η = 0 I 0 0 0 0 P 2 T P 4 0 A l s x p x v x η 0 I 0 B l s ( P 2 T x p + P 4 x v + s ( P 5 T x η u 2 l , ε 2 k m i n ) ) u s l ,
where P 2 T , P 4 , and P 5 represent the LQR gains that minimize the cost function (56). These gains correspond to the matrices derived from the positive definite solution of the following Riccati equation
P A l s + A l s T P 2 P B l s B l s T P = Q s ,
where the solutions for P 2 , P 4 , and P 5 are given by
P 2 = K p = 2 q 1 2 I , P 4 = K v = 2 4 q 3 + 4 q 2 + q 3 + 4 2 q 1 I , P 5 = K η = 2 q 3 2 I ,
which is a subtly distinct solution compared with the conventional LQR solution, as in this instance the state matrix A l s in (A16) is dependent on matrix P . Hence, if u s l achieves asymptotic stabilization for the system (A16), the stability characteristics are then extended, through the Lyapunov transformation T , to the closed-loop system (49).
A candidate unbounded Lyapunov function for system (A16) is
V s 2 = k t V s 1 + 1 2 u s l T u s l + 1 2 x v T K p x v
where k t R > 0 . The time derivative of (A19) is given by
V ˙ s 2 = k t x s T Q m x s + u s l T ( M 1 u ˙ 1 l + M 2 u ˙ 2 l ) x v T K p u s l
where M 2 = d d u 2 l s ( u 2 l , ε 2 k m i n ) with eig ( M 2 M 2 ) 1 as in (47). According to Theorem 2 and Lemma 1, s ( u 1 l ) enters the linear region in finite time. Meaning that after a t > t 1 , s ( u 1 l ) = u 1 l and u ˙ 2 l = K η u 1 l . Consequently, V ˙ s 2 can be written as
V ˙ s 2 = t > t 1 u 1 l T x v T u s l T k t ( a K v + c K p 1 K v b ) k t a K p 1 2 K η M 2 k t a K p k t b K p 0 1 2 ( K η M 2 ) T 0 K v Q m 2 u 1 l x v u s l Λ m i n ( Q m 2 ) u 1 l 2 + x v 2 + u s l 2
which is negative semidefinite for any k t > b k p k η 2 4 k v ( a k v + c k p 1 k v b ) b k p a 2 k p 2 , where b = a k v 1 k p , and a and c are given in (53)–(52), respectively, for w 1 = k p and w 2 = k v . The Lyapunov function (A19) admits for t > t 1 the following upper bound:
V s 2 k t Λ m a x ( P m ) ( u 1 l 2 + x v 2 ) + k t k c u 1 l 2 + k t k η 1 κ ( u 2 l ) s ( u 2 l ) 2 + 1 2 u s l 2 + k p 2 x v 2 ( k t Λ m a x ( P m ) + k t k c ) u 1 l 2 + ( k t Λ m a x ( P m ) + k p 2 ) x v 2 + k t k η 1 κ ( u 2 l ) ( u s l + u 1 l ) 2 + 1 2 u s l 2 = ( k t Λ m a x ( P m ) + k t k c + k t k η 1 κ ( u 2 l ) ) u 1 l 2 + ( k t Λ m a x ( P m ) + k p 2 ) x v 2 + k t k η 2 κ ( u 2 l ) u s l u 1 l + ( 1 2 + k t k η 1 κ ( u 2 l ) ) u s l 2 = u 1 l x v u s l k t Λ m a x ( P m ) + k t k c + k t k η 1 κ ( u 2 l ) 0 k t k η 1 κ ( u 2 l ) 0 k t Λ m a x ( P m ) + k p 2 0 k t k η 1 κ ( u 2 l ) 0 1 2 + k t k η 1 κ ( u 2 l ) P u u 1 l x v u s l Λ m a x ( P u ( u 2 l ) ) u 1 l 2 + x v 2 + u s l 2 Λ m a x ( P u ( d 3 V s 2 ( 0 ) ) ) u 1 l 2 + x v 2 + u s l 2
Since V s 2 V s 2 ( 0 ) , one can show that u 2 l d 3 V s 2 ( 0 ) for some d 3 R > 0 . Consequently, one can write
V ˙ s 2 V s 2 Λ m i n ( Q m 2 ) Λ m a x ( P u ( d 3 V s 2 ( 0 ) ) ) .
It follows that the origin of the closed-loop system (A16) is globally exponentially stable. Therefore, leveraging the Lyapunov coordinate transformation T , it can be asserted that for w 1 = k p , w 2 = k v , and K p , K v , and K η given by (55), the equilibrium point of the closed-loop system (49) is globally exponentially stable, as there is time t > t 2 such that s ( u 2 , ε 2 k m i n ) = u 2 , meaning that the closed-loop system will converge to
e ˙ p e ˙ v η ˙ s = 0 R 0 R T K p [ ω × ] R T K v R R T K η K p K v R 0 e p e v η s ,
which falls under the systems outlined by Theorem 1. □

References

  1. Pounds, P.; Mahony, R.; Corke, P. Modelling and control of a large quadrotor robot. Control Eng. Pract. 2010, 18, 691–699. [Google Scholar] [CrossRef]
  2. Liang, H.; Lee, S.C.; Bae, W.; Kim, J.; Seo, S. Towards UAVs in Construction: Advancements, Challenges, and Future Directions for Monitoring and Inspection. Drones 2023, 7, 202. [Google Scholar] [CrossRef]
  3. Hua, M.D.; Hamel, T.; Morin, P.; Samson, C. Introduction to feedback control of underactuated VTOLvehicles: A review of basic control design ideas and principles. IEEE Control Syst. Mag. 2013, 33, 61–75. [Google Scholar] [CrossRef]
  4. Emran, B.J.; Najjaran, H. A review of quadrotor: An underactuated mechanical system. Annu. Rev. Control 2018, 46, 165–180. [Google Scholar] [CrossRef]
  5. Sonugür, G. A Review of quadrotor UAV: Control and SLAM methodologies ranging from conventional to innovative approaches. Robot. Auton. Syst. 2023, 161, 104342. [Google Scholar] [CrossRef]
  6. Wan, M.; Chen, M.; Lungu, M. Integral Backstepping Sliding Mode Control for Unmanned Autonomous Helicopters Based on Neural Networks. Drones 2023, 7, 154. [Google Scholar] [CrossRef]
  7. Martins, L.; Cardeira, C.; Oliveira, P. Linear Quadratic Regulator for Trajectory Tracking of a Quadrotor. IFAC-PapersOnLine 2019, 52, 176–181. [Google Scholar] [CrossRef]
  8. Martins, L.; Cardeira, C.; Oliveira, P. Feedback Linearization with Zero Dynamics Stabilization for Quadrotor Control. J. Intell. Robot. Syst. 2021, 101, 1–17. [Google Scholar] [CrossRef]
  9. Ha, C.; Zuo, Z.; Choi, F.B.; Lee, D. Passivity-based adaptive backstepping control of quadrotor-type UAVs. Robot. Auton. Syst. 2014, 62, 1305–1315. [Google Scholar] [CrossRef]
  10. Mellinger, D.; Kumar, V. Minimum snap trajectory generation and control for quadrotors. In Proceedings of the 2011 IEEE International Conference on Robotics and Automation, Shanghai, China, 9–13 May 2011; pp. 2520–2525. [Google Scholar]
  11. Invernizzi, D.; Lovera, M. Trajectory tracking control of thrust-vectoring UAVs. Automatica 2018, 95, 180–186. [Google Scholar] [CrossRef]
  12. Invernizzi, D.; Lovera, M.; Zaccarian, L. Integral ISS-Based Cascade Stabilization for Vectored-Thrust UAVs. IEEE Control Syst. Lett. 2020, 4, 43–48. [Google Scholar] [CrossRef]
  13. Gamagedara, K.; Bisheban, M.; Kaufman, E.; Lee, T. Geometric Controls of a Quadrotor UAV with Decoupled Yaw Control. In Proceedings of the 2019 American Control Conference (ACC), Philadelphia, PA, USA, 10–12 July 2019; pp. 3285–3290. [Google Scholar] [CrossRef]
  14. Martins, L.; Cardeira, C.; Oliveira, P. Global trajectory tracking for quadrotors: An MRP-based hybrid strategy with input saturation. Automatica 2024, 162, 111521. [Google Scholar] [CrossRef]
  15. Control of VTOL Vehicles with Thrust-Tilting Augmentation. IFAC Proc. Vol. 2014, 47, 2237–2244. [CrossRef]
  16. Naldi, R.; Furci, M.; Sanfelice, R.G.; Marconi, L. Robust Global Trajectory Tracking for Underactuated VTOL Aerial Vehicles Using Inner-Outer Loop Control Paradigms. IEEE Trans. Autom. Control 2017, 62, 97–112. [Google Scholar] [CrossRef]
  17. Quadrotor trajectory generation and tracking for aggressive maneuvers with attitude constraints. IFAC-Pap. 2019, 52, 55–60.
  18. Cabecinhas, D.; Cunha, R.; Silvestre, C. A Globally Stabilizing Path Following Controller for Rotorcraft with Wind Disturbance Rejection. IEEE Trans. Control Syst. Technol. 2015, 23, 708–714. [Google Scholar] [CrossRef]
  19. Cabecinhas, D.; Cunha, R.; Silvestre, C. A nonlinear quadrotor trajectory tracking controller with disturbance rejection. Control Eng. Pract. 2014, 26, 1–10. [Google Scholar] [CrossRef]
  20. Casau, P.; Sanfelice, R.G.; Cunha, R.; Cabecinhas, D.; Silvestre, C. Robust global trajectory tracking for a class of underactuated vehicles. Automatica 2015, 58, 90–98. [Google Scholar] [CrossRef]
  21. Xie, W.; Cabecinhas, D.; Cunha, R.; Silvestre, C. Adaptive Backstepping Control of a Quadcopter with Uncertain Vehicle Mass, Moment of Inertia, and Disturbances. IEEE Trans. Ind. Electron. 2021, 69, 549–559. [Google Scholar] [CrossRef]
  22. Nicotra, M.M.; Garone, E. Explicit reference governor for continuous time nonlinear systems subject to convex constraints. In Proceedings of the 2015 American Control Conference (ACC), Chicago, IL, USA, 1–3 July 2015; pp. 4561–4566. [Google Scholar] [CrossRef]
  23. Osorio, J. Reference Governors: From Theory to Practice. Ph.D. Thesis, Electrical Engineering Department, University of Vermont, Burlington, VT, USA, 2020. [Google Scholar]
  24. Nicotra, M.; Naldi, R.; Garone, E. A robust explicit reference governor for constrained control of Unmanned Aerial Vehicles. In Proceedings of the 2016 American Control Conference (ACC), Boston, MA, USA, 6–8 July 2016; pp. 6284–6289. [Google Scholar] [CrossRef]
  25. Convens, B.; Merckaert, K.; Nicotra, M.; Naldi, R.; Garone, E. Control of Fully Actuated Unmanned Aerial Vehicles with Actuator Saturation. In Proceedings of the IFAC 2017 World Congress, Toulouse, France, 9–14 July 2017. [Google Scholar] [CrossRef]
  26. Bhat, S.; Bernstein, D. A topological obstruction to global asymptotic stabilization of rotational motion and the unwinding phenomenon. In Proceedings of the 1998 American Control Conference. ACC (IEEE Cat. No.98CH36207), Philadelphia, PA, USA, 26 June 1998; Volume 5, pp. 2785–2789. [Google Scholar]
  27. Optimal position and velocity navigation filters for autonomous vehicles. Automatica 2010, 46, 767–774. [CrossRef]
  28. Cao, N.; Lynch, A.F. Inner–Outer Loop Control for Quadrotor UAVs With Input and State Constraints. IEEE Trans. Control Syst. Technol. 2016, 24, 1797–1804. [Google Scholar] [CrossRef]
  29. Allibert, G.; Abeywardena, D.; Bangura, M.; Mahony, R. Estimating Body-Fixed Frame Velocity and Attitude from Inertial Measurements for a Quadrotor Vehicle. In Proceedings of the 2014 IEEE Conference on Control Applications, CCA 2014, Antibes/Nice, France, 8–10 October 2014. [Google Scholar]
  30. Lefeber, E.; van den Eijnden, S.; Nijmeijer, H. Almost global tracking control of a quadrotor UAV on SE(3). In Proceedings of the 2017 IEEE 56th Annual Conference on Decision and Control (CDC), Melbourne, VIC, Australia, 12–15 December 2017; pp. 1175–1180. [Google Scholar] [CrossRef]
  31. Front Matter. In Optimal Control; John Wiley & Sons, Ltd.: Hoboken, NJ, USA, 2012; pp. i–xii. [CrossRef]
  32. Khalil, H.K. Nonlinear Systems, 3rd ed.; Prentice-Hall: Upper Saddle River, NJ, USA, 2002. [Google Scholar]
  33. Bani Younes, A.; Mortari, D. Derivation of All Attitude Error Governing Equations for Attitude Filtering and Control. Sensors 2019, 19, 4682. [Google Scholar] [CrossRef] [PubMed]
  34. Sepulchre, R.; Jankovic, M.; Kokotovic, P. Constructive Nonlinear Control; Communications and Control Engineering; Springer: London, UK, 1997. [Google Scholar]
  35. Schlanbusch, R.; Loria, A.; Nicklasson, P.J. On the stability and stabilization of quaternion equilibria of rigid bodies. Automatica 2012, 48, 3135–3141. [Google Scholar] [CrossRef]
  36. Mayhew, C.G.; Sanfelice, R.G.; Teel, A.R. Quaternion-Based Hybrid Control for Robust Global Attitude Tracking. IEEE Trans. Autom. Control 2011, 56, 2555–2566. [Google Scholar] [CrossRef]
  37. Loria, A.; Panteley, E.; Popovic, D.; Teel, A. A nested Matrosov theorem and persistency of excitation for uniform convergence in stable nonautonomous systems. IEEE Trans. Autom. Control 2005, 50, 183–198. [Google Scholar] [CrossRef]
  38. Mayhew, C.G.; Sanfelice, R.G.; Teel, A.R. Robust global asymptotic attitude stabilization of a rigid body by quaternion-based hybrid feedback. In Proceedings of the 48h IEEE Conference on Decision and Control (CDC) Held Jointly with 2009 28th Chinese Control Conference, Shanghai, China, 15–18 December 2009; pp. 2522–2527. [Google Scholar] [CrossRef]
  39. Hu, J.; Zhang, H. Globally asymptotically stable saturated PID controllers for a double integrator with constant disturbance. Int. J. Robust Nonlinear Control 2014, 24. [Google Scholar] [CrossRef]
  40. Casau, P.; Sanfelice, R.G.; Cunha, R.; Cabecinhas, D.; Silvestre, C. Global trajectory tracking for a class of underactuated vehicles. In Proceedings of the 2013 American Control Conference, Washington, DC, USA, 17–19 June 2013; pp. 419–424. [Google Scholar] [CrossRef]
  41. Lee, D.A.R. Drone 2.0 Support from Embedded Coder. 2016. Available online: https://www.mathworks.com/hardware-support/ar-drone.html (accessed on 17 April 2024).
  42. Mironchenko, A. Input-to-State Stability: Theory and Applications; Springer: Cham, Switzerland, 2023. [Google Scholar]
Figure 1. Quadrotor model.
Figure 1. Quadrotor model.
Drones 08 00163 g001
Figure 2. Controller architecture.
Figure 2. Controller architecture.
Drones 08 00163 g002
Figure 3. Position controller block diagram.
Figure 3. Position controller block diagram.
Drones 08 00163 g003
Figure 4. Two-dimensional bounds for the input u , considering u 2 * = 0 , according to (43) in gray. The total admissible area also aggregates the light blue area, which results from (40) (red circle), (41) (blue circle), and (42) (green lines).
Figure 4. Two-dimensional bounds for the input u , considering u 2 * = 0 , according to (43) in gray. The total admissible area also aggregates the light blue area, which results from (40) (red circle), (41) (blue circle), and (42) (green lines).
Drones 08 00163 g004
Figure 5. Saturation function (44) and the respective derivative for p = 30 .
Figure 5. Saturation function (44) and the respective derivative for p = 30 .
Drones 08 00163 g005
Figure 6. Graphical representation of the inequalities from Lemma 1. The shaded region indicates the allowable region for the modular integral feedback concerning the ratio k p k v 2 .
Figure 6. Graphical representation of the inequalities from Lemma 1. The shaded region indicates the allowable region for the modular integral feedback concerning the ratio k p k v 2 .
Drones 08 00163 g006
Figure 7. Simulated tridimensional response obtained with the quadrotor during trajectory tracking with the proposed nonlinear control approach, from top to bottom: tridimensional; yaw angle.
Figure 7. Simulated tridimensional response obtained with the quadrotor during trajectory tracking with the proposed nonlinear control approach, from top to bottom: tridimensional; yaw angle.
Drones 08 00163 g007
Figure 8. Error state variables during the simulation.
Figure 8. Error state variables during the simulation.
Drones 08 00163 g008
Figure 9. Thrust, moments, and norm of the position saturation control law resulting from the control law implemented during the simulation.
Figure 9. Thrust, moments, and norm of the position saturation control law resulting from the control law implemented during the simulation.
Drones 08 00163 g009
Figure 10. Transient performance comparison of the proposed position saturation law with, from top to bottom, (a) a nested solution as per [39] and (bd) the controller detailed in [40] under various initial conditions. (a) Comparison with the nested solution in [39] with p d = 2 2 2 T . (b) Comparison with the position controller in [40] with p d = 2 2 2 T . (c) Comparison with the position controller in [40] with p d = 5 0 0 T . (d) Comparison with the position controller in [40] with p d = 0 5 5 T .
Figure 10. Transient performance comparison of the proposed position saturation law with, from top to bottom, (a) a nested solution as per [39] and (bd) the controller detailed in [40] under various initial conditions. (a) Comparison with the nested solution in [39] with p d = 2 2 2 T . (b) Comparison with the position controller in [40] with p d = 2 2 2 T . (c) Comparison with the position controller in [40] with p d = 5 0 0 T . (d) Comparison with the position controller in [40] with p d = 0 5 5 T .
Drones 08 00163 g010
Figure 11. Comparison of the proposed position controller with the position controller presented in [14]. The upper plot demonstrates the integration action compensating for a constant system bias b = 1 3 [ 0.95 0.95 0.95 ] T , with the lower plot illustrating the norm of the position error.
Figure 11. Comparison of the proposed position controller with the position controller presented in [14]. The upper plot demonstrates the integration action compensating for a constant system bias b = 1 3 [ 0.95 0.95 0.95 ] T , with the lower plot illustrating the norm of the position error.
Drones 08 00163 g011
Figure 12. Comparison of the proposed controller with the controller presented in [14]. The upper plot demonstrates the integration action compensating for a constant system bias b = [ 0.65 0 0.65 ] T , with the lower plot illustrating the norm of the position error.
Figure 12. Comparison of the proposed controller with the controller presented in [14]. The upper plot demonstrates the integration action compensating for a constant system bias b = [ 0.65 0 0.65 ] T , with the lower plot illustrating the norm of the position error.
Drones 08 00163 g012
Figure 13. Tridimensional response (upper) and yaw angle response (lower) obtained with the quadrotor during trajectory tracking.
Figure 13. Tridimensional response (upper) and yaw angle response (lower) obtained with the quadrotor during trajectory tracking.
Drones 08 00163 g013
Figure 14. Error state variables during the experiment.
Figure 14. Error state variables during the experiment.
Drones 08 00163 g014
Figure 15. Thrust, moments, and norm of the position saturation control law resulting from the control law implemented during the experimental validation.
Figure 15. Thrust, moments, and norm of the position saturation control law resulting from the control law implemented during the experimental validation.
Drones 08 00163 g015
Table 1. Controller parameters: Input and state matrices to compute the controller gains, as described in Section 4 and Theorem 3.
Table 1. Controller parameters: Input and state matrices to compute the controller gains, as described in Section 4 and Theorem 3.
q 1 (55) q 2 (55) q 3 (55) Q q Q ω Q q i R q k 1
93200.1 diag ( 1 1 1 ) 10 2 diag ( 5.5 5.5 5.5 ) diag ( 1 1 1 ) diag ( 1 1 8 ) 10 4 0.02
Table 2. Root mean square error obtained in the experimental test.
Table 2. Root mean square error obtained in the experimental test.
p x p y p z
RMSE   ( m ) 0.03730.05800.0189
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Madeiras, J.; Cardeira, C.; Oliveira, P.; Batista, P.; Silvestre, C. Saturated Trajectory Tracking Controller in the Body-Frame for Quadrotors. Drones 2024, 8, 163. https://doi.org/10.3390/drones8040163

AMA Style

Madeiras J, Cardeira C, Oliveira P, Batista P, Silvestre C. Saturated Trajectory Tracking Controller in the Body-Frame for Quadrotors. Drones. 2024; 8(4):163. https://doi.org/10.3390/drones8040163

Chicago/Turabian Style

Madeiras, João, Carlos Cardeira, Paulo Oliveira, Pedro Batista, and Carlos Silvestre. 2024. "Saturated Trajectory Tracking Controller in the Body-Frame for Quadrotors" Drones 8, no. 4: 163. https://doi.org/10.3390/drones8040163

Article Metrics

Back to TopTop