Next Article in Journal
Role-Structured Multi-Agent Pursuit–Evasion with Potential Game Constraints for Heterogeneous Airship–UAV Systems
Previous Article in Journal
SPM-Track: A State-Persistent Mamba Framework with Hierarchical Context Management for Lightweight Visual Tracking
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

A Discrete-Time Generalized Proportional Integral Controller for a Drone Quadrotor

1
Escuela Técnica Superior de Ingeniería Industrial de Ciudad Real, Universidad de Castilla-La Mancha, 13071 Ciudad Real, Spain
2
Escuela Técnica Superior de Ingeniería Industrial de Albacete, Universidad de Castilla-La Mancha, 02071 Albacete, Spain
3
Instituto de Investigación en Informática (I3A), Universidad de Castilla-La Mancha, 02071 Albacete, Spain
*
Author to whom correspondence should be addressed.
Drones 2026, 10(4), 245; https://doi.org/10.3390/drones10040245
Submission received: 4 March 2026 / Revised: 24 March 2026 / Accepted: 25 March 2026 / Published: 29 March 2026

Highlights

What are the main findings?
  • A robust discrete-time feedback control scheme for a drone quadrotor has been presented.
  • The controller is operated using only position and orientation measurements.
What are the implications of the main findings?
  • The control law aims to reduce errors rapidly, provide a smooth response and minimise control effort.
  • The effectiveness of the proposed controller is validated using numerical simulations.

Abstract

This article addresses the challenges of regulation and trajectory tracking in a nonlinear, multivariable drone quadrotor system using a discrete-time Generalized Proportional Integral (GPI) controller, which is the discrete-time version of its continuous-time counterpart. The discrete-time formulation offers several advantages, including simplified trajectory planning by eliminating time derivatives, reduced computational demands, and lower complexity in nominal feed-forward input functions. The proposed GPI controller ensures asymptotic exponential stability for both attitude and position, enabling effective trajectory tracking. Its effectiveness has been validated through numerical simulations, which demonstrate excellent stabilization and tracking performance even in the presence of atmospheric disturbances and measurement noise.

1. Introduction

Unmanned Aerial Vehicles (UAVs), commonly referred to as drones, have become essential tools in modern technological ecosystems due to their versatility, autonomy, and adaptability. Their applications span logistics [1,2], environmental monitoring [3,4], precision agriculture [5,6], optimal consensus control for multi-agent systems [7] and healthcare delivery [8,9], among others. These capabilities are increasingly enhanced by onboard sensors, AI-based perception, and intelligent mission planning, enabling drones to operate effectively in complex and dynamic environments [10].
The autonomous operation of drones relies heavily on advanced control theory. While classical controllers such as PID remain prevalent [11], modern applications demand more sophisticated strategies to handle nonlinear dynamics, constraints, and multi-agent coordination [12,13,14,15]. Among these, [16] developed a nonlinear trajectory tracking controller that combines sliding mode control with the PID approach. Model predictive control (MPC) was used in UAV trajectory optimization [17], swarm coordination [18], pursuit evasion scenarios [19], cruise control systems [20] or optimizing unmanned air–ground vehicle maneuvers [21]. A fractional-order PID scheme [22] was introduced for attitude control, while position control was achieved using an integral backstepping method with mass estimation. In [23], a nonlinear PID controller was presented to stabilize both translational and rotational motions of a drone quadrotor system, with a detailed stability analysis. In addition, in [24] PID and LQR controllers were designed and used a hyperbolic tangent weighting function to enhance performance by selecting the appropriate controller at the right time, and in [25] a hybrid strategy was proposed combining a linear PID controller with a sliding mode PID algorithm. In [26], a robust nonlinear H -PID controller was developed to regulate the rotational moments of a drone quadrotor. Nonlinear PID control strategies were also proposed in [27,28], where the authors combined the classical sliding mode approach with a PID structure and provided a comprehensive closed-loop stability analysis. In [29], a hybrid integral backstepping–PID controller was developed for 3D trajectory tracking of a drone quadrotor and validated through numerical simulations. The work offered a constructive presentation of the controller design and addressed stability issues, although robustness analysis was not included. In [30], the authors introduced a novel trajectory tracking algorithm for drone quadrotors, in which a PID controller was developed using an adaptive neural approach and its stability was validated through discrete Lyapunov’s theory. In [31], system performance was improved by combining a set of PID controllers with an adaptive neuromass estimator and an adaptive neural disturbance estimator, ensuring UAV stabilization and improved robustness. In [32] a fuzzy adaptive PID controller was proposed for outer-loop attitude regulation together with a standard PID controller for inner-loop angular rate control. In [33] a decentralized mode reference adaptive controller with adaptive gains, complemented by PID control, was proposed to achieve attitude stabilization of a drone quadrotor. The study in [34] employed an adaptive robust control architecture, where a PID controller generates position commands and a nonlinear robust controller handles attitude regulation, with closed-loop stability subsequently analyzed. The study in [35] addressed a drone quadrotor control under sensor failures through an adaptive PID–sliding mode control scheme, guaranteeing closed-loop stability through Lyapunov’s theory. The study in [36] developed an autonomous trajectory tracking method using sliding mode control and relied on monocular vision for position estimation. The proposed control scheme allowed the stabilization of the quadrotor in all its states under the simultaneous effect of parametric uncertainties and constant external disturbances in both experimental tests and numerical simulations.
In the realm of predictive control strategies, Generalized Proportional Integral (GPI) control [37] was developed to eliminate the need for explicit state observers by leveraging integral reconstructions based solely on system inputs and outputs. This methodology encompasses traditional proportional integral (PI) and proportional integral derivative (PID) regulation techniques, while extending their applicability to complex systems that pose significant control challenges, as discussed in [38,39]. The GPI control framework enhances and generalizes conventional PI controllers by integrating flatness-based control principles [40,41,42]. In particular, GPI controllers have exhibited superior performances in the regulation of nonlinear systems, offering faster dynamic responses, especially in terms of reduced settling time, and improved robustness against disturbances [43,44,45,46,47,48]. Table 1 shows a comparative analysis between GPI and PI control.
However, discrete-time GPI control has received comparatively less attention than its continuous-time counterpart. The theoretical formulation of the control problem, grounded in module theory, was presented in [49]. Assuming a sufficiently high sampling frequency in relation to the response times of the mechanical system, the backward Euler method is used for discretization, producing highly accurate results [50]. The resulting discretization errors are treated as part of the disturbance input, modeled, as in the continuous-time case, as a bounded unknown additive signal. The potentially unstable zeros introduced by the sampling process can be safely ignored, as demonstrated in [51]. Moreover, a detailed analysis of the structure of zeros of discrete-time systems discretized via the Euler method, provided in [52], further supports the suitability of this approach for the implementation of discrete-time GPI controllers.
In this work, we propose a robust discrete-time GPI control strategy for both stabilization and trajectory-tracking tasks of a drone quadrotor system. The main contributions of this controller are summarized as follows:
  • The discrete-time formulation in relation to its continuous-time counterpart enables faster digital implementation and offers straightforward tuning procedures, particularly through pole placement of the closed-loop tracking error dynamics.
  • The controller is carried out using only position and orientation measurements.
  • The proposed control scheme is not only simple and practical to implement, but also demonstrates high accuracy in the presence of disturbances of different nature.
  • Compared to its continuous-time counterpart, the discrete-time GPI control strategy offers several notable advantages: (i) trajectory planning is simplified because time derivatives are no longer required; (ii) computational load is substantially reduced; (iii) the design of nominal feed-forward input functions becomes less demanding, as they are replaced by the tracking function and its time-shifted versions.
The remainder of this article is organized as follows. Section 2 introduces the drone quadrotor model, derives its discrete-time representation, and formulates the control problem. Section 3 provides the formal statement of the problem examined in this work. Section 4 presents the proposed discrete-time GPI controller, which ensures asymptotically exponential convergence of the tracking error to the origin in the error space. Section 5 provides computer simulations that illustrate the performance of the proposed control strategy, which is then compared with a classical discrete-time PID control scheme. Section 6 studies the effect of dynamic model uncertainties on the drone quadcopter’s mass and moments of inertia about all three axes by means of two performance metrics: integral absolute error (IAE) and integral time absolute error (ITAE). These metrics are then compared with the obtained with a classical discrete-time PID control scheme. Finally, Section 7 summarizes the main findings and provides directions for future research.

2. Drone Quadrotor Dynamics, Discrete-Time Model and Problem Formulation

2.1. Drone Quadrotor Dynamics

A drone quadrotor is an underactuated Unmanned Aerial Vehicle equipped with four upward-facing rotors. These rotors are arranged in a square configuration, each positioned equidistant from the center of mass of the quadrotor, as illustrated in Figure 1. The quadrotor features four fixed orientation rotors, each generating thrust through its respective propeller. By varying the rotational speed of the propellers, the lift forces can be adjusted to control the vehicle’s motion. The pitch motion is achieved by increasing the speed of the propeller (1) while decreasing the speed of the propeller (3), or vice versa. Similarly, the roll motion is controlled by adjusting the speeds of propellers (2) and (4) in opposite directions. The yaw movement is produced by altering the relative speeds between each pair of counter-rotating propellers, creating a net torque around the vertical axis.
We now introduce the dynamic model of the drone quadrotor using a Lagrangian formulation [53,54]. The system’s behavior is described in terms of the following generalized coordinates:
q = ( x , y , z , ψ , θ , ϕ ) T 6
where the coordinates x ( t ) and y ( t ) define the position in the horizontal plane, and z ( t ) corresponds to the vertical position and angles ϕ ( t ) , θ ( t ) and ψ ( t ) describe independent orientation angles (roll, pitch, and yaw, respectively). Consequently, the model naturally separates into the following translational and rotational coordinate sets:
ξ = ( x , y , z ) T 3 , η = ( ψ , θ , ϕ ) T 3
The translational kinetic energy of the drone quadrotor, T trans , is defined as
T trans m 2 ξ ˙ T ξ ˙
in which the variable m represents the mass of the drone quadrotor. The rotational kinetic energy, T rot , is defined as
T rot 1 2 η ˙ T J ( η ) η ˙
where the matrix J ( η ) represents the inertia matrix corresponding to the total rotational kinetic energy of the drone quadrotor expressed with respect to the generalized coordinates η . The only potential energy term required in this formulation is the standard gravitational potential U, given by
U = m g z
in which g denotes the gravitational acceleration. Thus, the Lagrangian function is given by
L ( q , q ˙ ) = T trans + T rot U = m 2 ξ ˙ T ξ ˙ + 1 2 η ˙ T J ( η ) η ˙ m g z
The complete drone quadrotor dynamic model is obtained by applying the Euler–Lagrange equations with the inclusion of external generalized forces
d d t L q ˙ L q = F
In this context, F = ( F ξ , τ ˜ ) represents the forces and torques applied to the fuselage of the drone quadrotor. The term F ξ represents the translational force applied to the drone quadrotor as a result of control inputs and τ ˜ denotes the generalized moments. The small body forces are neglected, as their magnitudes are typically much smaller than the primary control inputs u and τ ˜ . Under this assumption, F ^ = 0 0 u T , where, as can be illustrated in Figure 1,
u = f 1 + f 2 + f 3 + f 4 , with f i = k i w i 2 , i = 1 , 4
where k i denotes a positive constant and w i represents the angular speed of the motor i ( M i , i = 1 , 4 ). Therefore,
F ξ = R ( η ) F ^
in which R ( η ) represents the transformation matrix that describes the orientation of the drone quadrotor whose value is
R ( η ) = C θ ( t ) C ψ ( t ) S ψ ( t ) S θ ( t ) S θ ( t ) C ψ ( t ) S θ ( t ) S ϕ ( t ) S ψ ( t ) C ϕ S ψ ( t ) S θ ( t ) S ϕ ( t ) + C ψ ( t ) C ϕ ( t ) C θ ( t ) S ϕ ( t ) C ψ ( t ) S θ ( t ) C ϕ ( t ) + S ψ ( t ) S ϕ ( t ) S ψ ( t ) S θ ( t ) C ϕ ( t ) C ψ ( t ) S ϕ ( t ) C θ ( t ) C ϕ ( t )
where S θ ( t ) sin θ ( t ) , C θ ( t ) cos θ ( t ) , S ϕ ( t ) sin ϕ ( t ) , C ϕ ( t ) cos ϕ ( t ) , S ψ ( t ) sin ψ ( t ) and C ψ ( t ) cos ψ ( t ) . On the other hand, the vector of generalized moments associated with the η -variable is τ ˜ = τ ˜ ψ , τ ˜ θ , τ ˜ ϕ T , where, as can be illustrated in Figure 1,
τ ˜ ψ = i = 1 4 τ ˜ M i , τ ˜ θ = ( f 2 f 4 ) · l , τ ˜ ϕ = ( f 3 f 1 ) · l
in which l denotes the distance between the motors and the center of gravity, and τ ˜ M i represents the torque generated by the motor M i .
Now, since the Lagrangian does not contain cross-terms in the kinetic energy involving ξ ˙ and η ˙ (see expression (6)), the Euler–Lagrange equations decouple into the dynamics for the ξ -coordinates and those for the η -coordinates. This yields
m ξ ¨ + 0 0 m g = F ξ
J ( η ) η ¨ + J ˙ η ˙ 1 2 η ( η ˙ T J ( η ) η ˙ ) = τ ˜
Formulating the Coriolis–centripetal vector as V ¯ ( η , η ˙ ) = J ˙ η ˙ 1 2 η ( η ˙ T J ( η ) η ˙ ) , the dynamics of the η -coordinates can be expressed as follows:
J ( η ) η ¨ + V ¯ ( η , η ˙ ) = τ ˜
in which the term V ¯ ( η , η ˙ ) can be rewritten as
V ¯ ( η , η ˙ ) = J ˙ 1 2 ( η ˙ T J ( η ) ) η ˙ = C ( η , η ˙ ) η ˙
where C ( η , η ˙ ) denotes the Coriolis–centripetal matrix. This matrix collects all gyroscopic and centrifugal terms that arise from the η dependence of J ( η ) . The η -dynamics can therefore be written in the general form as
M ( η ) η ¨ + C ( η , η ˙ ) η ˙ = τ ˜
with M ( η ) = J ( η ) , and the matrices M ( η ) and C ( η , η ˙ ) are given by
M ( η ) = I x S θ ( t ) 2 + I y C θ ( t ) 2 S ϕ ( t ) 2 + I z C θ ( t ) 2 C ϕ ( t ) 2 ( I y I z ) C θ ( t ) C ϕ ( t ) S ϕ ( t ) I x S θ ( t ) ( I y I z ) C θ ( t ) C ϕ ( t ) S ϕ ( t ) I y C ϕ ( t ) 2 + I z S ϕ ( t ) 2 0 I x S θ ( t ) 0 I x
in which I x , I y and I z denote the moments of inertia about all three axes, and
C ( η , η ˙ ) = c 11 c 12 c 13 c 21 c 22 c 23 c 31 c 32 c 33
where
c 11 = I x θ ˙ ( t ) S θ ( t ) C θ ( t ) + I y ( θ ˙ ( t ) S θ ( t ) C θ ( t ) S ϕ ( t ) 2 + ϕ ˙ ( t ) C θ ( t ) 2 S ϕ ( t ) C ϕ ( t ) )       I z ( θ ˙ ( t ) S θ ( t ) C θ ( t ) C ϕ ( t ) 2 + ϕ ˙ ( t ) C θ ( t ) 2 S ϕ ( t ) C ϕ ( t ) ) c 12 = I x ψ ˙ ( t ) S θ ( t ) C θ ( t ) I y ( θ ˙ ( t ) S θ ( t ) S ϕ ( t ) C ϕ ( t ) + ϕ ˙ ( t ) C θ ( t ) S ϕ ( t ) 2 ϕ ˙ ( t ) C θ ( t ) C ϕ ( t ) 2 + ψ ˙ ( t ) S θ ( t ) C θ ( t ) S ϕ ( t ) 2 )       + I z ( ϕ ˙ ( t ) C θ ( t ) S ϕ ( t ) 2 ϕ ˙ ( t ) C θ ( t ) C ϕ ( t ) 2 ψ ˙ ( t ) S θ ( t ) C θ ( t ) C ϕ ( t ) 2 + θ ˙ ( t ) S θ ( t ) S ϕ ( t ) C ϕ ( t ) ) c 13 = I x θ ˙ ( t ) C θ ( t ) + I y ψ ˙ ( t ) C θ ( t ) 2 S ϕ ( t ) C ϕ ( t ) I z ψ ˙ ( t ) C θ ( t ) 2 S ϕ ( t ) C ϕ ( t ) c 21 = I x ψ ˙ ( t ) S θ ( t ) C θ ( t ) + I y ψ ˙ ( t ) S θ ( t ) C θ ( t ) C ϕ ( t ) 2 + I z ψ ˙ ( t ) S θ ( t ) C θ ( t ) C ϕ ( t ) 2 c 22 = I y ϕ ˙ ( t ) S ϕ ( t ) C ϕ ( t ) + I z ϕ ˙ ( t ) S ϕ ( t ) C ϕ ( t ) c 23 = I x ψ ˙ ( t ) C θ ( t ) + I y ( θ ˙ ( t ) S ϕ ( t ) C ϕ ( t ) + ψ ˙ ( t ) C θ ( t ) C ϕ ( t ) 2 ψ ˙ ( t ) C θ ( t ) S ϕ ( t ) 2 )       + I z ( ψ ˙ ( t ) C θ ( t ) S ϕ ( t ) 2 ψ ˙ ( t ) C θ ( t ) C ϕ ( t ) 2 + θ ˙ ( t ) S ϕ ( t ) C ϕ ( t ) ) c 31 = I y ψ ˙ ( t ) C θ ( t ) 2 S ϕ ( t ) C ϕ ( t ) I z ψ ˙ ( t ) C θ ( t ) 2 S ϕ ( t ) C ϕ ( t ) c 32 = I x ψ ˙ ( t ) C θ ( t ) + I y ( θ ˙ ( t ) S ϕ ( t ) C ϕ ( t ) + ψ ˙ ( t ) C θ ( t ) S ϕ ( t ) 2 ψ ˙ ( t ) C θ ( t ) C ϕ ( t ) 2 )       I z ( ψ ˙ ( t ) C θ ( t ) S ϕ ( t ) 2 ψ ˙ ( t ) C θ ( t ) C ϕ ( t ) 2 + θ ˙ ( t ) S ϕ ( t ) C ϕ ( t ) ) c 33 = 0
Note that M ( η ) is a symmetric matrix, and since det ( M ( η ) ) = I x I y I z C θ 2 , the matrix M ( η ) is positive definite θ n π 2 , n = 1 , 3 , 5 , . In addition, the matrices M ( η ) and C ( η , η ˙ ) satisfy the standard passivity condition M ( η ) 2 C ( η , η ˙ ) = P , where P is a skew-symmetric matrix. Finally, we obtain
m ξ ¨ = u S θ ( t ) C θ ( t ) S ϕ ( t ) C θ ( t ) C ϕ ( t ) + 0 0 m g
M ( η ) η ¨ = C ( η , η ˙ ) η ˙ + τ ˜
Now, in order to simplify the control strategy developed in Section 4, the following change in the input variable vector τ ˜ is proposed:
τ ˜ = C ( η , η ˙ ) η ˙ + M ( η ) τ
in which the new auxiliary input vector is τ = ( τ ψ , τ θ , τ ϕ ) T . Substituting (21) into expression (20) yields
η ¨ = τ
After operating with expressions (19)–(21) the simplified dynamic behavior of the drone quadrotor results in
m x ¨ ( t ) = u ( t ) · S θ ( t )
m y ¨ ( t ) = u ( t ) · C θ ( t ) S ϕ ( t )
m z ¨ ( t ) = u ( t ) C θ ( t ) C ϕ ( t ) m g
ψ ¨ ( t ) = τ ψ ( t )
θ ¨ ( t ) = τ θ ( t )
ϕ ¨ ( t ) = τ ϕ ( t )
where the new auxiliary angular moments—yawing, pitching and rolling—are denoted by τ ψ ( t ) , τ θ ( t ) and τ ϕ ( t ) , respectively.
Assumption 1.
The orientation angles ϕ ( t ) and θ ( t ) are constrained within the intervals π 2 < ϕ ( t ) < π 2 and π 2 < θ ( t ) < π 2 , respectively [55].
As a preliminary step to creating the discrete-time model of the drone quadrotor system, a series of simplifications will be made to the continuous model. Firstly, the altitude dynamics, described by expression (25), motivates the implementation of a linearizing feedback controller, defined as
u ( t ) = m ( u ^ ( t ) + g ) C θ ( t ) C ϕ ( t )
in order to perform the stabilization and tracking tasks in a simpler way, providing to the drone quadrotor the ability to achieve a desired reference or equilibrium point. Replacement of the control (29) in (25) becomes
z ¨ ( t ) = u ^ ( t )
Secondly, the dynamic behavior of the subsystem y , ϕ , τ ϕ is described by expressions (24) and (28). After substituting expression (29) into (24), one obtains
y ¨ ( t ) = ( u ^ ( t ) + g ) · tan ϕ ( t )
We rewrite expression (31) as follows:
y ¨ ( t ) = ( u ^ ( t ) + g ) · tan ϕ ( t ) + g · ϕ ( t ) g · ϕ ( t ) = g · ϕ ( t ) + ξ y ( t )
where ξ y ( t ) = g · ( tan ϕ ( t ) ϕ ( t ) ) + u ^ ( t ) · tan ϕ ( t ) and represents a disturbance. If we assume that ϕ ( t ) 0 , then tan ϕ ( t ) ϕ ( t ) . Moreover, there exists a sufficient time T ϕ > 0 , such that t T ϕ , the vertical position z ( t ) asymptotically follows the reference trajectory z * ( t ) , ensuring that the tracking error e z ( t ) = z ( t ) z * ( t ) ultimately remains confined within a small neighborhood of the tracking error phase space. Therefore, u ^ ( t ) 0 and, consequently, ξ y ( t ) 0 .
Third, the dynamic behavior of the subsystem x , θ , τ θ is described by expressions (23) and (27). After substituting expression (29) in (23), one obtains
x ¨ ( t ) = m ( u ^ ( t ) + g ) C ϕ ( t ) tan θ ( t )
We rewrite expression (33) as follows:
x ¨ ( t ) = ( u ^ ( t ) + g ) C ϕ ( t ) tan θ ( t ) + g · θ ( t ) g · θ ( t ) = g · θ ( t ) + ξ x ( t )
where ξ x ( t ) = g · θ ( t ) ( u ^ ( t ) + g ) C ϕ ( t ) tan θ ( t ) and represents a disturbance.
If we assume that ϕ ( t ) 0 (as a consequence of the subsystem y , ϕ being properly stabilized) and that θ ( t ) 0 , then tan θ ( t ) θ ( t ) ; there also exists a sufficient time T θ > 0 , such that t T θ and the vertical position z ( t ) asymptotically follows the reference trajectory z * ( t ) , ensuring that the tracking error e z ( t ) = z ( t ) z * ( t ) ultimately remains confined within a small neighborhood of the tracking error phase space. Therefore, u ^ ( t ) 0 and, consequently, ξ x ( t ) 0 .

2.2. Boundaries of the Dynamic Model

The dynamic model derived in Section 2.1 is valid only under a set of assumptions and approximations that delineate the conditions under which it faithfully represents the real system. These modeling boundaries are as follows:
  • The quadrotor is modeled as a perfectly rigid body, an assumption that holds when structural flexibility is negligible and the rotor arms remain sufficiently stiff to keep vibration effects minimal.
  • The simplified model assumes small roll and pitch angles ( sin θ θ , tan θ θ , cos θ 1 , sin ϕ ϕ , tan ϕ ϕ , cos ϕ 1 ) which is valid when hovering or during low-angle maneuvers ( θ , ϕ < 10 ° 15 ° ).
  • The model incorporates several aerodynamic simplifications, including lifting proportional to the square of the rotor speed and the neglect of both blade flapping and complex airflow interactions. These assumptions remain valid under hovering conditions, slow translational motion, and overall symmetric low-speed flight.
  • Motor and propeller dynamics are approximated as instantaneous, an assumption justified when motor response is significantly faster than the overall system dynamics and neither actuator saturation nor substantial delays are present.
  • The model assumes constant mass, inertia matrix, and thrust coefficients, an approximation that holds when the payload remains fixed and any variations in fuel or battery mass are negligible.
  • The dynamic model does not include wind forces, turbulence, magnetic disturbances and/or sensor biases, which is valid during indoor flight with no airflow or outdoor flight with small wind gusts and calibrated sensors with low noise.
  • The dynamic model neglects wind forces, turbulence, magnetic disturbances, and sensor biases, an approximation that remains valid during indoor flight without airflow or during outdoor operations with mild wind conditions and well-calibrated, low-noise sensors.
  • The dynamic model assumes a decoupling between rotational and translational dynamics, whereby thrust is considered to act strictly along the body z-axis and motor torques influence only the rotational motion. This approximation holds for drone quadrotors with symmetric geometry and uniformly performing motors and propellers.
  • The dynamic model assumes that the quadrotor operates within its physical actuation limits, including thrust constraints ( 0 f i f ( i , m a x ) , i = 1 , , 4 ), and bounded angular rates, noting that gyroscopes and motors saturate beyond specific rotational speeds. This approximation remains valid as long as the commanded maneuvers stay within the actuator capabilities.

2.3. Drone Quadrotor Discrete-Time Model

Let us assume that the sampling period T is small enough to achieve accurate results when using, as a discretization methodology, the backward Euler method [56,57]. Then, expressions (25)–(28), (30), (32) and (34) become the following discrete-time perturbed model:
  • Discrete-Time Yaw Model. Using Euler discretization, expression (26) becomes
    x 1 ψ k + 1 = x 1 ψ k + T · x 2 ψ k + T 2 · τ ψ k + 1 + T 2 · ξ ψ k + 1
    x 2 ψ k + 1 = x 2 ψ k + T · τ ψ k + 1 + T · ξ ψ k + 1
    where x 1 ψ k = ψ ( t ) | t = k T , x 2 ψ k = ψ ˙ ( t ) | t = k T , τ ψ k = τ ψ ( t ) | t = k T and the variable ξ ψ k represents a disturbance input to the system, encompassing possible external perturbations and discretization errors. It is assumed to be characterized by a piecewise constant function of time, i.e., ξ ψ k + 1 ξ ψ k k .
  • Discrete-Time Subsystem Model y , ϕ , τ ϕ . Using Euler discretization, expressions (28) and (32) become
    x 1 y k + 1 = x 1 y k + T · x 2 y k + T 2 · g · x 1 ϕ k + 1 + T 2 · ξ y k + 1
    x 2 y k + 1 = x 2 y k + T · g · x 1 ϕ k + 1 + T · ξ y k + 1
    x 1 ϕ k + 1 = x 1 ϕ k + T · x 2 ϕ k + T 2 · x 1 ϕ k + 1 + T 2 · τ ϕ k + 1 + T 2 · ξ ϕ k + 1
    x 2 ϕ k + 1 = x 2 ϕ k + T · τ ϕ k + 1 + T · ξ ϕ k + 1
    where x 1 y k = y ( t ) | t = k T , x 2 y k = y ˙ ( t ) | t = k T , x 1 ϕ k = ϕ ( t ) | t = k T , x 2 ϕ k = ϕ ˙ ( t ) | t = k T , τ ϕ k = τ ϕ ( t ) | t = k T and the variables ξ y k = T ξ y ( t ) | t = k T and ξ ϕ k represent disturbance inputs to the system, encompassing possible external perturbations and discretization errors. They are assumed to be characterized by piecewise constant functions of time, i.e., ξ y k + 1 ξ y k k and ξ ϕ k + 1 ξ ϕ k k respectively.
  • Discrete-Time Subsystem Model x , θ , τ θ . Using Euler discretization, expressions (27) and (34) become
    x 1 x k + 1 = x 1 x k + T · x 2 x k T 2 · g · x 1 θ k + 1 + T 2 · ξ x k + 1
    x 2 x k + 1 = x 2 x k T · g · x 1 θ k + 1 + T · ξ x k + 1
    x 1 θ k + 1 = x 1 θ k + T · x 2 θ k + T 2 · τ θ k + 1 + T 2 · ξ θ k + 1
    x 2 θ k + 1 = x 2 θ k + T · τ θ k + 1 + T · ξ θ k + 1
    where x 1 x k = x ( t ) | t = k T , x 2 x k = x ˙ ( t ) | t = k T , x 1 θ k = θ ( t ) | t = k T , x 2 θ k = θ ˙ ( t ) | t = k T , τ θ k = τ θ ( t ) | t = k T and the variables ξ x k = T ξ x ( t ) | t = k T and ξ θ k represent disturbance inputs to the system, encompassing possible external perturbations and discretization errors. They are assumed to be characterized by piecewise constant functions of time, i.e., ξ x k + 1 ξ x k k and ξ θ k + 1 ξ θ k k respectively.
  • Discrete-Time Altitude Model. Using Euler discretization, expression (30) becomes
    x 1 z k + 1 = x 1 z k + T · x 2 z k + T 2 · u ^ k + 1 + T 2 · ξ z k + 1
    x 2 z k + 1 = x 2 z k + T · u ^ k + 1 + T · ξ z k + 1
    where x 1 z k = z ( t ) | t = k T , x 2 z k = z ˙ ( t ) | t = k T , u ^ k = u ^ ( t ) | t = k T = u k C x 1 θ k C x 1 ϕ k m g and the variable ξ z k represents a disturbance input to the system, encompassing possible external perturbations and discretization errors. It is assumed to be characterized by a piecewise constant function of time, i.e., ξ z k + 1 ξ z k k .

2.4. Problem Formulation

After defining the system dynamics (defined by expressions (23)–(28)) and the consequent discrete-time model (given by expressions (35)–(46)), the problem formulation studied in this work is stated as follows:
Given the nonlinear dynamics of the drone quadrotor (23)–(28) and given a set of smooth discrete-time reference trajectories x * ( k T ) = x 1 x k * = x k * , y * ( k T ) = x 1 y k * = y k * , z * ( k T ) = x 1 z k * = z k * ,   ψ * ( k T ) = x 1 ψ k * = ψ k * , devise a discrete-time feedback control scheme for the total thrust u k and the angular moments (yawing, pitching and rolling), denoted by τ ψ k , τ θ k and τ ϕ k respectively, which guarantees the asymptotic tracking of x k * , y k * , z k * , ψ k * by means of the system outputs x 1 x k = x k , x 1 y k = y k , x 1 z k = z k ,   x 1 ψ k = ψ k while the variables x 1 θ k = θ k and x 1 ϕ k = ϕ k are confined to move in the interval ( π 2 , π 2 ) and assuming that only the system outputs x k , y k , z k , ψ k , θ k , ϕ k and the system inputs u k , τ ψ k , τ θ k , τ ϕ k are available for measurement.

3. Overview of Robust Discrete-Time GPI Control Design

Consider the perturbed linear SISO model
y ( n ) ( t ) = k u u ( t ) + ξ ( t )
where ξ ( t ) is a bounded, band-limited disturbance that accounts for unmodeled dynamics and exogenous perturbations; u ( t ) is the control input and y ( t ) the output variable. The control objective is to regulate y ( t ) to track a given smooth desired trajectory y * ( t ) by means of smooth control actions u ( t ) , independently of the disturbance ξ ( t ) . Applying backward Euler discretization with sampling period T to expression (47) yields
i = 0 n ( 1 ) i n i y k i = T n k u u k + ξ k
in which k denotes the sampling index.
Since ξ ( t ) is smooth and band-limited (see, e.g., [58]), its derivatives are bounded and it can be approximated to any prescribed accuracy on a time interval by a finite-order polynomial. For any open interval I = ( t 1 ϵ , t 1 + ϵ ) , ϵ R + , t , t 2 I , ξ ( t ) ,
ξ ( t ) = i = 0 m 1 r i ( t t i ) i + ξ ( m ) ( t 2 ) ( t t 1 ) m ( m ) ! , ξ ( m ) ( t 2 ) <
which, upon sampling, leads to
ξ k = h 0 k + h 1 k k + h 2 k k 2 + + h m k k m + R k
where R k is the approximation residual. Increasing the number of terms enlarges the interval of validity (larger ϵ ) and typically reduces R k . For a practical (“suitable”) approximation, the coefficients can be treated as piecewise constants, i.e.,
h i k h i R , i = 0 , , m
Substituting (50) into (48) gives
i = 0 n ( 1 ) i n i y k i = T n k u u k + h 0 k + h 1 k k + h 2 k k 2 + + h m k k m + R k
Let u k * denote the feedforward input that achieves y k * under ideal conditions (i.e., in the absence of ξ k ). From expression (52) one obtains
u k * = 1 T n k u i = 0 n ( 1 ) i n i y k i *
Proposition 1.
For the discrete model (52), consider the control law
u k = u k * + 1 T n k u [ k m + n e y k 1 k m + 2 e y k n + 1 k m + 1 e y k n k m ρ 0 k k m 1 ρ 1 k k 0 ρ m k ]
with the output error e y k y k y k * , and the auxiliary (integral) states { ρ j ( · ) } generated by
ρ 0 k + 1 = ρ 0 k + e y k n ρ 1 k + 1 = ρ 1 k + ρ 1 , 1 k , ρ 1 , 1 k + 1 = ρ 1 , 1 k + e y k n ρ 2 k + 1 = ρ 2 k + ρ 2 , 1 k , ρ 2 , 1 k + 1 = ρ 2 , 1 k + ρ 2 , 2 k ρ 2 , 2 k + 1 = ρ 2 , 2 k + e y k n ρ m k + 1 = ρ m k + ρ m , 1 k n , ρ m , m k + 1 = ρ m , m k + e y k n
Then the closed-loop tracking error e y k is exponentially stable, and the controller constitutes a robust Generalized Proportional Integral (GPI) regulator.
Sketch of Proof. 
Let the input error be e u k u k u k * . Taking the z-transform of (54) and (55) gives
u ( z ) = u * ( z ) 1 T n k u k m + n z + k m + n 1 z 2 + + k m z n ( z 1 ) + k m 1 ( z 1 ) 2 z n + + k 0 z n ( z 1 ) m + 1 e y ( z )
Using (48) in the z-domain yields
1 T n k u ( z 1 ) n z n e y ( z ) = 1 T n k u k m + n z + + k 0 z n ( z 1 ) m + 1 e y ( z ) + 1 T n k u ξ ( z )
Since ξ k is approximated by a polynomial of degree m, its contribution can be eliminated through m + 1 successive discrete-difference operations. Specifically, the operator ( z 1 ) m + 1 z m + 1 annihilates the polynomial component of ξ ( z ) . Hence,
( z 1 ) n + m + 1 e y ( z ) + [ k m + n z n 1 ( z 1 ) m + 1 + k m + n 1 z n 2 ( z 1 ) m + + k m ( z 1 ) m +         + + k 0 ] e y ( z ) = z n ( z 1 ) m + 1 R ( z ) 0
where R ( z ) is the z-transform of the residual R k . Therefore, the characteristic polynomial of the dominant linear closed-loop error dynamics is
( z n + m + 1 + l n + m z n + m + l n + m 1 z n + m 1 + + l 1 z + l 0 ) e y ( z ) = z n ( z 1 ) m + 1 R ( z ) 0
with coefficients l n + m , l n + m 1 , , l 0 being affine functions of the selected gains { k 0 , ,   k m + n } . Hence, any desired closed-loop pole placement can be achieved by a suitable choice of { k i } . Since R ( · ) is the residual of a bounded-function approximation, BIBO stability ensures that the closed-loop error remains confined to a small neighborhood of zero. □

4. GPI Control Design

The proposed discrete-time feedback control scheme for regulation and trajectory tracking of the position and orientation of the quadrotor is illustrated in Figure 2. The following subsections deal with the design of the different discrete-time control laws for the different subsystems (explained in Section 2.3) that conform to the entire dynamics of the drone quadrotor.

4.1. Design of the Discrete-Time GPI Yaw ψ , τ ψ Controller

4.1.1. Controller Design: ψ , τ ψ Controller

Operating with expressions (35) and (36) the following perturbed discrete-time dynamics is achieved:
ψ k 2 ψ k 1 + ψ k 2 = T 2 τ ψ k + ξ ^ ψ k
which is a perturbed second-order system in which to control the orientation of the yaw angle, ψ k , of the drone quadrotor towards a given smooth reference trajectory ψ k * , the yawing action moment τ ψ k is the control input, and the variable ξ ^ ψ k represents a disturbance input to the system, encompassing possible external perturbations and discretization errors. Again, it is assumed to be characterized by a piecewise constant function of time, i.e., ξ ^ ψ k + 1 ξ ^ ψ k k . To achieve this, the following controller incorporates an “adder” action to facilitate accurate tracking of the desired trajectory ψ k * :
τ ψ k = 1 T 2 v ψ k 2 ψ k 1 * + ψ k 2 *
v ψ k = ψ k = ψ k * k 2 ψ ( ψ k 1 ψ k 1 * ) k 1 ψ ( ψ k 2 ψ k 2 * ) k 0 ψ ρ 0 , ψ k
ρ 0 , ψ k + 1 = ρ 0 , ψ k + ( ψ k 2 ψ k 2 * )
From the unperturbed reference model, the feedforward input τ ψ k * is obtained as follows:
T 2 τ ψ k * = ψ k * 2 ψ k 1 * + ψ k 2 *
Furthermore, by defining the tracking errors as e τ ψ k τ ψ k τ ψ k * and e ψ k ψ k ψ k * , the following is obtained from (61)–(63) after rewriting and regrouping:
T 2 e τ ψ k = k 2 ψ e ψ k 1 k 1 ψ e ψ k 2 k 0 ψ ρ 0 , ψ k ρ 0 , ψ k + 1 = ρ 0 , ψ k + e ψ k 2
Transforming expression (65) into the z-domain and assuming that initial conditions are zero, results in
T 2 e τ ψ ( z ) = k 2 ψ z 1 k 1 ψ z 2 e ψ ( z ) k 0 ψ ρ 0 , ψ ( z ) z ρ 0 , ψ ( z ) = ρ 0 , ψ ( z ) + z 2 e ψ ( z )
Finally, operating with expression (66) and after rearranging the terms, the results are as follows:
e τ ψ ( z ) e ψ ( z ) = γ 2 ψ z 2 + γ 1 ψ z + γ 0 ψ T 2 ( z 1 ) z 2
where γ 2 ψ = k 2 ψ , γ 1 ψ = k 1 ψ k 2 ψ and γ 0 ψ = k 0 ψ k 1 ψ .

4.1.2. Design of the Controller Gains { γ 2 ψ , γ 1 ψ , γ 0 ψ }

The use of the proposed control law (61)–(63) in the perturbed system (60) yields, after certain algebraic manipulations, the following:
e ψ k + ( k 2 ψ 2 ) e ψ k 1 + ( k 1 ψ + 1 ) e ψ k 2 + k 0 ψ ρ 0 , ψ k = ξ ^ ψ k
ρ 0 , ψ k + 1 = ρ 0 , ψ k + e ψ k 2
Operating with expression (68) results in
k 0 ψ ρ 0 , ψ k = ξ ^ ψ k e ψ k ( k 2 ψ 2 ) e ψ k 1 ( k 1 ψ + 1 ) e ψ k 2
Now, taking a time-shift in expression (68), one obtains that the tracking error also satisfies the following expression:
e ψ k + 1 + ( k 2 ψ 2 ) e ψ k + ( k 1 ψ + 1 ) e ψ k 1 + k 0 ψ e ψ k 2 + k 0 ψ ρ 0 , ψ k = ξ ^ ψ k + 1
Substituting Equation (70) into Equation (71), making some rearrangements, and taking into consideration that ξ ^ ψ k + 1 ξ ^ ψ k k , we obtain the following closed-loop equation:
e ψ k + 1 + ( k 2 ψ 3 ) e ψ k + ( k 1 ψ k 2 ψ + 3 ) e ψ k 1 + ( k 0 ψ k 1 ψ 1 ) e ψ k 2 = 0
Now, applying two additional forward time-shifts, we have
e ψ k + 3 + ( k 2 ψ 3 ) e ψ k + 2 + ( k 1 ψ k 2 ψ + 3 ) e ψ k + 1 + ( k 0 ψ k 1 ψ 1 ) e ψ k = 0
The design parameters { k 2 ψ , k 1 ψ , k 0 ψ } are selected to ensure that the closed-loop characteristic polynomial becomes a Schur polynomial with desirable roots. Specifically, these coefficients are chosen to place the closed-loop poles strictly inside the unit circle of the complex plane. The control parameters were determined to achieve the following desired closed-loop characteristic polynomial:
( z p ψ ) 3 = z 3 3 p ψ z 2 + 3 p ψ 2 z p ψ 3
where p ψ C , | p ψ | < 1 . On the other hand, expressing in the z-domain the characteristic equation of the closed-loop system (expression (73)) and assuming that the initial conditions are zero, the following results:
z 3 + ( k 2 ψ 3 ) z 2 + ( k 1 ψ k 2 ψ + 3 ) z + ( k 0 ψ k 1 ψ 1 ) = 0
By matching the terms of equal degree between this polynomial and Equation (74), we obtain the design coefficients { k 2 ψ , k 1 ψ , k 0 ψ } , which are given by
k 2 ψ = 3 p ψ + 3 ; k 1 ψ = 3 p ψ 2 3 p ψ ; k 0 ψ = p ψ 3 + 3 p ψ 2 3 p ψ + 1
and finally, the design of the controller gains { γ 2 ψ , γ 1 ψ , γ 0 ψ } is
γ 2 ψ = k 2 ψ ; γ 1 ψ = k 1 ψ k 2 ψ ; γ 0 ψ = k 0 ψ k 1 ψ

4.2. Design of the Discrete-Time GPI Altitude z , u Controller

4.2.1. Controller Design: z , u Controller

Operating with expressions (45) and (46) the following perturbed discrete-time dynamics is achieved:
z k 2 z k 1 + z k 2 = T 2 u ^ k + ξ ^ z k
which is a perturbed second-order system in which to control the altitude, z k , of the drone quadrotor towards a given smooth reference trajectory z k * , the total thrust u k acts as the control input, and the variable ξ ^ z k represents a disturbance input to the system, encompassing possible external perturbations and discretization errors. Again, it is assumed to be characterized by a piecewise constant function of time, i.e., ξ ^ z k + 1 ξ ^ z k k . To avoid repetition, a control law similar to that proposed in Section 4.1 is formulated for the control of the altitude variable z. The corresponding control law, which incorporates an “adder” action to facilitate accurate tracking of the desired trajectory z k * , is defined as follows:
u k = m ( u ^ k + g ) C θ k C ϕ k
u ^ k = 1 T 2 v z k 2 z k 1 * + z k 2 *
v z k = z k * k 2 z ( z k 1 z k 1 * ) k 1 z ( z k 2 z k 2 * ) k 0 z ρ 0 , z k
ρ 0 , z k + 1 = ρ 0 , z k + ( z k 2 z k 2 * )
From the unperturbed reference model, the feedforward input u ^ k * is obtained as follows:
T 2 u ^ k * = z k * 2 z k 1 * + z k 2 *
Furthermore, by defining the tracking errors as e u ^ k u ^ k u ^ k * and e z k z k z k * , the following is obtained from (80)–(82) after rewriting and regrouping:
T 2 e u ^ k = k 2 z e z k 1 k 1 z e z k 2 k 0 z ρ 0 , z k ρ 0 , z k + 1 = ρ 0 , z k + e z k 2
Transforming expression (84) into the z-domain and assuming that initial conditions are zero, results in
T 2 e u ^ k ( z ) = k 2 z z 1 k 1 z z 2 e z ( z ) k 0 z ρ 0 , z ( z ) z ρ 0 , z ( z ) = ρ 0 , z ( z ) + z 2 e z ( z )
Now, operating with expression (85) and after rearranging the terms, the results are as follows:
e u ^ ( z ) e z ( z ) = γ 2 z z 2 + γ 1 z z + γ 0 z T 2 ( z 1 ) z 2
where γ 2 z = k 2 z , γ 1 z = k 1 z k 2 z and γ 0 z = k 0 z k 1 z . Finally, the obtaining of the total thrust, u k , is obtained from the expression (79).

4.2.2. Design of the Controller Gains { γ 2 z , γ 1 z , γ 0 z }

Similarly to the procedure followed in Section 4.1, the use of the proposed control law (79)–(82) in the perturbed system (78) yields, after certain algebraic manipulations, the following:
e z k + ( k 2 z 2 ) e z k 1 + ( k 1 z + 1 ) e z k 2 + k 0 z ρ 0 , z k = ξ ^ z k
ρ 0 , z k + 1 = ρ 0 , z k + e z k 2
Operating with expression (87) results in
k 0 z ρ 0 , z k = ξ ^ z k e z k ( k 2 z 2 ) e z k 1 ( k 1 z + 1 ) e z k 2
Now, taking a time-shift in expression (87), one obtains that the tracking error also satisfies the following expression:
e z k + 1 + ( k 2 z 2 ) e z k + ( k 1 z + 1 ) e z k 1 + k 0 z e z k 2 + k 0 z ρ 0 , z k = ξ ^ z k + 1
Substituting Equation (89) into Equation (90), making some rearrangements, and taking into consideration that ξ ^ z k + 1 ξ ^ z k k , we obtain the following closed-loop equation:
e z k + 1 + ( k 2 z 3 ) e z k + ( k 1 z k 2 z + 3 ) e z k 1 + ( k 0 z k 1 z 1 ) e z k 2 = 0
Now, applying two additional forward time-shifts, we have
e z k + 3 + ( k 2 z 3 ) e z k + 2 + ( k 1 z k 2 z + 3 ) e z k + 1 + ( k 0 z k 1 z 1 ) e z k = 0
The design parameters { k 2 z , k 1 z , k 0 z } are selected to ensure that the closed-loop characteristic polynomial becomes a Schur polynomial with desirable roots. Specifically, these coefficients are chosen to place the closed-loop poles strictly inside the unit circle of the complex plane. The control parameters were determined to achieve the following desired closed-loop characteristic polynomial:
( z p z ) 3 = z 3 3 p z z 2 + 3 p z 2 z p z 3
where p z C , | p z | < 1 . On the other hand, expressing in the z-domain the characteristic equation of the closed-loop system (expression (92)) and assuming that the initial conditions are zero, the following results:
z 3 + ( k 2 z 3 ) z 2 + ( k 1 z k 2 z + 3 ) z + ( k 0 z k 1 z 1 ) = 0
By matching the terms of equal degree between this polynomial and Equation (93), we obtain the design coefficients { k 2 z , k 1 z , k 0 z } , which are given by
k 2 z = 3 p z + 3 ; k 1 z = 3 p z 2 3 p z ; k 0 z = p z 3 + 3 p z 2 3 p z + 1
and finally, the design of the controller gains { γ 2 z , γ 1 z , γ 0 z } is
γ 2 z = k 2 z ; γ 1 z = k 1 z k 2 z ; γ 0 z = k 0 z k 1 z

4.3. Design of the Discrete-Time GPI Subsystem y , ϕ , τ ϕ Controller

From the general control scheme proposed in Figure 2 it can be observed that a discrete-time GPI control (denoted the inner loop control, ϕ , τ ϕ ) is first closed to control the roll angle of the quadrotor, and another discrete-time GPI control (denoted the outer loop, y , ϕ ) is then closed to control the position in the horizontal plane of the y-axis. If the dynamics of the inner loop, ϕ , τ ϕ , is made much faster than the dynamics of the outer loop, y , ϕ , the procedure used to design the whole control system, y , ϕ , τ ϕ , can be separated into two independent design processes: the design of the inner loop controller and the design of the outer loop controller. Some key advantages of this control scheme include: (a) It significantly simplifies the robust controller design process by allowing the inner and outer loops to be designed independently, effectively breaking down the overall task into two simpler sub-problems. (b) Compared to conventional single-loop controllers used in quadrotor systems, this approach is safer and easier to implement. The tandem loop structure enables sequential implementation, first closing the inner loop, which offers high relative stability even under system uncertainties, external disturbances, and noise; then closing the outer loop, which is more susceptible to instability but benefits from the stabilizing effect of the already-closed inner loop. (c) The fully discrete-time GPI control system requires only minimal measurements: the horizontal position along the y-axis at time k, y k , and the roll angle of the drone quadrotor at time k, ϕ k . This reduces the need for detailed knowledge of the dynamics of the system.
In the control scheme illustrated in Figure 2, the outer loop controller generates an auxiliary reference roll angle, ϕ ˜ k , based on the tracking objective for the horizontal position along the y-axis, y k * . This reference signal, ϕ ˜ k , is then used by the inner loop controller as the target for the regulation of the roll angle within the inner control loop. The components of the proposed control architecture are described in detail in the following sections.

4.3.1. Outer Loop Controller y , ϕ

(A)
Controller Design: y , ϕ Controller
Operating with expressions (37) and (38) the following perturbed discrete-time dynamics is achieved:
y k 2 y k 1 + y k 2 = T 2 g ϕ k + ξ ^ y k
which is a perturbed second-order system in which to control the horizontal position along the y-axis, y k , of the drone quadrotor towards a given smooth reference trajectory y k * , the roll angle ϕ k acts as the control input, and the variable ξ ^ y k represents a disturbance input to the system, encompassing possible external perturbations and discretization errors. Again, it is assumed to be characterized by a piecewise constant function of time, i.e., ξ ^ y k + 1 ξ ^ y k k . To avoid repetition, a control law similar to that proposed in Section 4.1 is formulated for the control of the altitude variable y. The corresponding control law, which incorporates an “adder” action to facilitate accurate tracking of the desired trajectory y k * , is defined as follows:
ϕ k = 1 T 2 g v y k 2 y k 1 * + y k 2 *
v y k = y k * k 2 y ( y k 1 y k 1 * ) k 1 y ( y k 2 y k 2 * ) k 0 y ρ 0 , y k
ρ 0 , y k + 1 = ρ 0 , y k + ( y k 2 y k 2 * )
From the unperturbed reference model, the feedforward input ϕ k * is obtained as follows:
T 2 g ϕ k * = y k * 2 y k 1 * + y k 2 *
Furthermore, by defining the tracking errors as e ϕ k ϕ k ϕ k * and e y k y k y k * , the following is obtained from (98)–(100) after rewriting and regrouping:
T 2 g e ϕ k = k 2 y e y k 1 k 1 y e y k 2 k 0 y ρ 0 , y k ρ 0 , y k + 1 = ρ 0 , y k + e y k 2
Transforming expression (102) into the z-domain and assuming that initial conditions are zero, results in
T 2 g e ϕ k ( z ) = k 2 y z 1 k 1 y z 2 e y ( z ) k 0 y ρ 0 , y ( z ) z ρ 0 , y ( z ) = ρ 0 , y ( z ) + z 2 e y ( z )
Now, operating with expression (103) and after rearranging the terms, the results are as follows:
e ϕ ( z ) e y ( z ) = γ 2 y z 2 + γ 1 y z + γ 0 y T 2 g ( z 1 ) z 2
where γ 2 y = k 2 y , γ 1 y = k 1 y k 2 y and γ 0 y = k 0 y k 1 y .
(B)
Design of the Controller Gains { γ 2 y , γ 1 y , γ 0 y }
Similarly to the procedure followed in Section 4.1, the use of the proposed control law (98)–(100) in the perturbed system (97) yields, after certain algebraic manipulations, the following:
e y k + ( k 2 y 2 ) e y k 1 + ( k 1 y + 1 ) e y k 2 + k 0 y ρ 0 , y k = ξ ^ y k
ρ 0 , y k + 1 = ρ 0 , y k + e y k 2
Operating with expression (105) results in
k 0 y ρ 0 , y k = ξ ^ y k e y k ( k 2 y 2 ) e y k 1 ( k 1 y + 1 ) e y k 2
Now, taking a time-shift in expression (105), one obtains that the tracking error also satisfies the following expression:
e y k + 1 + ( k 2 y 2 ) e y k + ( k 1 y + 1 ) e y k 1 + k 0 y e y k 2 + k 0 y ρ 0 , y k = ξ ^ y k + 1
Substituting Equation (107) into Equation (108), making some rearrangements, and taking into consideration that ξ ^ y k + 1 ξ ^ y k k , we obtain the following closed-loop equation:
e y k + 1 + ( k 2 y 3 ) e y k + ( k 1 y k 2 y + 3 ) e y k 1 + ( k 0 y k 1 y 1 ) e y k 2 = 0
Now, applying two additional forward time-shifts, we have
e y k + 3 + ( k 2 y 3 ) e y k + 2 + ( k 1 y k 2 y + 3 ) e y k + 1 + ( k 0 y k 1 y 1 ) e y k = 0
The design parameters { k 2 y , k 1 y , k 0 y } are selected to ensure that the closed-loop characteristic polynomial becomes a Schur polynomial with desirable roots. Specifically, these coefficients are chosen to place the closed-loop poles strictly inside the unit circle of the complex plane. The control parameters were determined to achieve the following desired closed-loop characteristic polynomial:
( z p y ) 3 = z 3 3 p y z 2 + 3 p y 2 z p y 3
where p y C , | p y | < 1 . On the other hand, expressing in the z-domain the characteristic equation of the closed-loop system (expression (110)) and assuming that the initial conditions are zero, the following results:
z 3 + ( k 2 y 3 ) z 2 + ( k 1 y k 2 y + 3 ) z + ( k 0 y k 1 y 1 ) = 0
By matching the terms of equal degree between this polynomial and Equation (111), we obtain the design coefficients { k 2 y , k 1 y , k 0 y } , which are given by
k 2 y = 3 p y + 3 ; k 1 y = 3 p y 2 3 p y ; k 0 y = p y 3 + 3 p y 2 3 p y + 1
and finally, the design of the controller gains { γ 2 y , γ 1 y , γ 0 y } is
γ 2 y = k 2 y ; γ 1 y = k 1 y k 2 y ; γ 0 y = k 0 y k 1 y

4.3.2. Inner Loop Controller ϕ , τ ϕ

(A)
Controller Design: ϕ , τ ϕ Controller
Operating with expressions (37) and (38) the following perturbed discrete-time dynamics is achieved:
ϕ k 2 ϕ k 1 + ϕ k 2 = T 2 τ ϕ k + ξ ^ ϕ k
which is a perturbed second-order system in which to control the roll angle, ϕ k , of the drone quadrotor towards a given smooth reference trajectory, ϕ ˜ k , rolling acting moment, τ ϕ k , acts as the control input, and the variable ξ ^ ϕ k represents a disturbance input to the system, encompassing possible external perturbations and discretization errors. Again, it is assumed to be characterized by a piecewise constant function of time, i.e., ξ ^ ϕ k + 1 ξ ^ ϕ k k . To avoid repetition, a control law similar to that proposed in Section 4.1 is formulated for the control of the roll angle ϕ k . The corresponding control law, which incorporates an “adder” action to facilitate accurate tracking of the desired trajectory ϕ ˜ k , is defined as follows:
τ ϕ k = 1 T 2 v ϕ k 2 ϕ ˜ k 1 + ϕ ˜ k 2
v ϕ k = ϕ ˜ k k 2 ϕ ( ϕ k 1 ϕ ˜ k 1 ) k 1 ϕ ( ϕ k 2 ϕ ˜ k 2 ) k 0 ϕ ρ 0 , ϕ k
ρ 0 , ϕ k + 1 = ρ 0 , ϕ k + ( ϕ k 2 ϕ ˜ k 2 )
From the unperturbed reference model, the feedforward input τ ϕ k * is obtained as follows:
T 2 τ ϕ k * = ϕ ˜ k 2 ϕ ˜ k 1 + ϕ ˜ k 2
Furthermore, by defining the tracking errors as e τ ϕ k τ ϕ k τ ϕ k * and e ϕ ˜ k ϕ k ϕ ˜ k , the following is obtained from (116)–(118) after rewriting and regrouping:
T 2 e τ ϕ k = k 2 ϕ e ϕ ˜ k 1 k 1 ϕ e ϕ ˜ k 2 k 0 ϕ ρ 0 , ϕ k ρ 0 , ϕ k + 1 = ρ 0 , ϕ k + e ϕ ˜ k 2
Transforming expression (120) into the z-domain and assuming that initial conditions are zero, results in
T 2 e τ ϕ ( z ) = k 2 ϕ z 1 k 1 ϕ z 2 e ϕ ˜ ( z ) k 0 ϕ ρ 0 , ϕ ( z ) z ρ 0 , ϕ ( z ) = ρ 0 , ϕ ( z ) + z 2 e ϕ ˜ ( z )
Now, operating with expression (121) and after rearranging the terms, the results are as follows:
e τ ϕ ( z ) e ϕ ˜ ( z ) = γ 2 ϕ z 2 + γ 1 ϕ z + γ 0 ϕ T 2 ( z 1 ) z 2
where γ 2 ϕ = k 2 ϕ , γ 1 ϕ = k 1 ϕ k 2 ϕ and γ 0 ϕ = k 0 ϕ k 1 ϕ .
(B)
Design of the Controller Gains { γ 2 ϕ , γ 1 ϕ , γ 0 ϕ }
Similarly to the procedure followed in Section 4.1, the use of the proposed control law (116)–(118) in the perturbed system (115) yields, after certain algebraic manipulations, the following:
e ϕ ˜ k + ( k 2 ϕ 2 ) e ϕ ˜ k 1 + ( k 1 ϕ + 1 ) e ϕ ˜ k 2 + k 0 ϕ ρ 0 , ϕ k = ξ ^ ϕ k
ρ 0 , ϕ k + 1 = ρ 0 , ϕ k + e ϕ ˜ k 2
Operating with expression (123) results in
k 0 ϕ ρ 0 , ϕ k = ξ ^ ϕ k e ϕ ˜ k ( k 2 ϕ 2 ) e ϕ ˜ k 1 ( k 1 ϕ + 1 ) e ϕ ˜ k 2
Now, taking a time-shift in expression (123), one obtains that the tracking error also satisfies the following expression:
e ϕ ˜ k + 1 + ( k 2 ϕ 2 ) e ϕ ˜ k + ( k 1 ϕ + 1 ) e ϕ ˜ k 1 + k 0 ϕ e ϕ ˜ k 2 + k 0 ϕ ρ 0 , ϕ k = ξ ^ ϕ k + 1
Substituting Equation (125) into Equation (126), making some rearrangements, and taking into consideration that ξ ^ ϕ k + 1 ξ ^ ϕ k k , we obtain the following closed-loop equation:
e ϕ ˜ k + 1 + ( k 2 ϕ 3 ) e ϕ ˜ k + ( k 1 ϕ k 2 ϕ + 3 ) e ϕ ˜ k 1 + ( k 0 ϕ k 1 ϕ 1 ) e ϕ ˜ k 2 = 0
Now, applying two additional forward time-shifts, we have
e ϕ ˜ k + 3 + ( k 2 ϕ 3 ) e ϕ ˜ k + 2 + ( k 1 ϕ k 2 ϕ + 3 ) e ϕ ˜ k + 1 + ( k 0 ϕ k 1 ϕ 1 ) e ϕ ˜ k = 0
The design parameters { k 2 ϕ , k 1 ϕ , k 0 ϕ } are selected to ensure that the closed-loop characteristic polynomial becomes a Schur polynomial with desirable roots. Specifically, these coefficients are chosen to place the closed-loop poles strictly inside the unit circle of the complex plane. The control parameters were determined to achieve the following desired closed-loop characteristic polynomial:
( z p ϕ ) 3 = z 3 3 p ϕ z 2 + 3 p ϕ 2 z p ϕ 3
where p ϕ C , | p ϕ | < 1 . On the other hand, expressing in the z-domain the characteristic equation of the closed-loop system (expression (128)) and assuming that the initial conditions are zero, the following results:
z 3 + ( k 2 ϕ 3 ) z 2 + ( k 1 ϕ k 2 ϕ + 3 ) z + ( k 0 ϕ k 1 ϕ 1 ) = 0
By matching the terms of equal degree between this polynomial and Equation (129), we obtain the design coefficients { k 2 ϕ , k 1 ϕ , k 0 ϕ } , which are given by
k 2 ϕ = 3 p ϕ + 3 ; k 1 ϕ = 3 p ϕ 2 3 p ϕ ; k 0 ϕ = p ϕ 3 + 3 p ϕ 2 3 p ϕ + 1
and finally, the design of the controller gains { γ 2 ϕ , γ 1 ϕ , γ 0 ϕ } is
γ 2 ϕ = k 2 ϕ ; γ 1 ϕ = k 1 ϕ k 2 ϕ ; γ 0 ϕ = k 0 ϕ k 1 ϕ
Finally, note that in the proposed tandem discrete-time GPI scheme, the design value of the pole p ϕ in the inner loop controller is chosen to be much smaller than the design value of the pole p y in the outer loop controller, so that ϕ ˜ k ϕ k * in view of the variations in y k * and y k (that is, | p ϕ | | p y | < 1 ) [59].

4.4. Design of the Discrete-Time GPI Subsystem x , θ , τ θ Controller

Again, following a design procedure similar to that developed in Section 4.3, from the general control scheme proposed in Figure 2 it can be observed that a discrete-time GPI controller (denoted the inner loop control, θ , τ θ ) is first closed to control the pitch angle of the quadrotor, and another discrete-time GPI controller (denoted the outer loop, x , θ ) is then closed to control the position in the horizontal plane of the x-axis. If the dynamics of the inner loop, θ , τ θ , is made much faster than the dynamics of the outer loop, x , θ , the procedure used to design the whole control system, x , θ , τ θ , can be separated into two independent design processes: the design of the inner loop controller and the design of the outer loop controller. In the control scheme illustrated in Figure 2, the outer loop controller generates an auxiliary reference pitch angle, θ ˜ k , based on the tracking objective for the horizontal position along the x-axis, x k * . This reference signal, θ ˜ k , is then used by the inner loop controller as the target for the regulation of the pitch angle within the inner control loop. The components of the proposed control architecture are described in detail in the following sections.

4.4.1. Outer Loop Controller x , θ

(A)
Controller Design: x , θ Controller
Operating with expressions (41) and (42) the following perturbed discrete-time dynamics is achieved:
x k 2 x k 1 + x k 2 = T 2 g θ k + ξ ^ x k
which is a perturbed second-order system in which to control the horizontal position along the x-axis, x k , of the drone quadrotor towards a given smooth reference trajectory, x k * , the pitch angle θ k acts as the control input, and the variable ξ ^ x k represents a disturbance input to the system, encompassing possible external perturbations and discretization errors. Again, it is assumed to be characterized by a piecewise constant function of time, i.e., ξ ^ x k + 1 ξ ^ x k k . To avoid repetition, a control law similar to that proposed in Section 4.1 is formulated for the control of the altitude variable x. The corresponding control law, which incorporates an “adder” action to facilitate accurate tracking of the desired trajectory x k * , is defined as follows:
θ k = 1 T 2 g v x k 2 x k 1 * + x k 2 *
v x k = x k * k 2 x ( x k 1 x k 1 * ) k 1 x ( x k 2 x k 2 * ) k 0 x ρ 0 , x k
ρ 0 , x k + 1 = ρ 0 , x k + ( x k 2 x k 2 * )
From the unperturbed reference model, the feedforward input θ k * is obtained as follows:
T 2 g θ k * = x k * 2 x k 1 * + x k 2 *
Furthermore, by defining the tracking errors as e θ k θ k θ k * and e x k x k x k * , the following is obtained from (134)–(136) after rewriting and regrouping:
T 2 g e θ k = k 2 x e x k 1 k 1 x e x k 2 k 0 x ρ 0 , x k ρ 0 , x k + 1 = ρ 0 , x k + e x k 2
Transforming expression (138) into the z-domain and assuming that initial conditions are zero, results in
T 2 g e θ k ( z ) = k 2 x z 1 k 1 x z 2 e x ( z ) k 0 x ρ 0 , x ( z ) z ρ 0 , x ( z ) = ρ 0 , x ( z ) + z 2 e x ( z )
Now, operating with expression (139) and after rearranging the terms, the results are as follows:
e θ ( z ) e x ( z ) = γ 2 x z 2 + γ 1 x z + γ 0 x T 2 g ( z 1 ) z 2
where γ 2 x = k 2 x , γ 1 x = k 1 x k 2 x and γ 0 x = k 0 x k 1 x .
(B)
Design of the Controller Gains { γ 2 x , γ 1 x , γ 0 x }
Similarly to the procedure followed in Section 4.1, the use of the proposed control law (134)–(136) in the perturbed system (133) yields, after certain algebraic manipulations, the following:
e x k + ( k 2 x 2 ) e x k 1 + ( k 1 x + 1 ) e x k 2 + k 0 x ρ 0 , x k = ξ ^ x k
ρ 0 , x k + 1 = ρ 0 , x k + e x k 2
Operating with expression (141) results in
k 0 x ρ 0 , y x = ξ ^ x k e x k ( k 2 x 2 ) e x k 1 ( k 1 x + 1 ) e x k 2
Now, taking a time-shift in expression (141), one obtains that the tracking error also satisfies the following expression:
e x k + 1 + ( k 2 x 2 ) e x k + ( k 1 x + 1 ) e x k 1 + k 0 x e x k 2 + k 0 x ρ 0 , x k = ξ ^ x k + 1
Substituting Equation (143) into Equation (144), making some rearrangements, and taking into consideration that ξ ^ x k + 1 ξ ^ x k k , we obtain the following closed-loop equation:
e x k + 1 + ( k 2 x 3 ) e x x + ( k 1 x k 2 x + 3 ) e x k 1 + ( k 0 x k 1 x 1 ) e x k 2 = 0
Now, applying two additional forward time-shifts, we have
e x k + 3 + ( k 2 x 3 ) e x k + 2 + ( k 1 x k 2 x + 3 ) e x k + 1 + ( k 0 x k 1 x 1 ) e x k = 0
The design parameters { k 2 x , k 1 x , k 0 x } are selected to ensure that the closed-loop characteristic polynomial becomes a Schur polynomial with desirable roots. Specifically, these coefficients are chosen to place the closed-loop poles strictly inside the unit circle of the complex plane. The control parameters were determined to achieve the following desired closed-loop characteristic polynomial:
( z p x ) 3 = z 3 3 p x z 2 + 3 p x 2 z p x 3
where p x C , | p x | < 1 . On the other hand, expressing in the z-domain the characteristic equation of the closed-loop system (expression (146)) and assuming that the initial conditions are zero, the following results:
z 3 + ( k 2 x 3 ) z 2 + ( k 1 x k 2 x + 3 ) z + ( k 0 x k 1 x 1 ) = 0
By matching the terms of equal degree between this polynomial and Equation (147), we obtain the design coefficients { k 2 x , k 1 x , k 0 x } , which are given by
k 2 x = 3 p x + 3 ; k 1 x = 3 p x 2 3 p x ; k 0 x = p x 3 + 3 p x 2 3 p x + 1
and finally, the design of the controller gains { γ 2 x , γ 1 x , γ 0 x } is
γ 2 x = k 2 x ; γ 1 x = k 1 x k 2 x ; γ 0 x = k 0 x k 1 x

4.4.2. Inner Loop Controller θ , τ θ

(A)
Controller Design: θ , τ θ Controller
Operating with expressions (41) and (42) the following perturbed discrete-time dynamics is achieved:
θ k 2 θ k 1 + θ k 2 = T 2 τ θ k + ξ ^ θ k
which is a perturbed second-order system in which to control the pitch angle, θ k , of the drone quadrotor towards a given smooth reference trajectory, θ ˜ k , pitching acting moment, τ θ k , acts as the control input, and the variable ξ ^ θ k represents a disturbance input to the system, encompassing possible external perturbations and discretization errors. Again, it is assumed to be characterized by a piecewise constant function of time, i.e., ξ ^ θ k + 1 ξ ^ θ k k . To avoid repetition, a control law similar to that proposed in Section 4.1 is formulated for the control of the pitch angle θ k . The corresponding control law, which incorporates an “adder” action to facilitate accurate tracking of the desired trajectory θ ˜ k , is defined as follows:
τ θ k = 1 T 2 v θ k 2 θ ˜ k 1 + θ ˜ k 2
v θ k = θ ˜ k k 2 θ ( θ k 1 θ ˜ k 1 ) k 1 θ ( θ k 2 θ ˜ k 2 ) k 0 θ ρ 0 , θ k
ρ 0 , θ k + 1 = ρ 0 , θ k + ( θ k 2 θ ˜ k 2 )
From the unperturbed reference model, the feedforward input τ θ k * is obtained as follows:
T 2 τ θ k * = θ ˜ k * 2 θ ˜ k 1 * + θ ˜ k 2 *
Furthermore, by defining the tracking errors as e τ θ k τ θ k τ θ k * and e θ ˜ k θ k θ ˜ k , the following is obtained from (116)–(118) after rewriting and regrouping:
T 2 e τ θ k = k 2 θ e θ ˜ k 1 k 1 θ e θ ˜ k 2 k 0 θ ρ 0 , θ k ρ 0 , θ k + 1 = ρ 0 , θ k + e θ ˜ k 2
Transforming expression (156) into the z-domain and assuming that initial conditions are zero, results in
T 2 e τ θ ( z ) = k 2 θ z 1 k 1 θ z 2 e θ ˜ ( z ) k 0 θ ρ 0 , θ ( z ) z ρ 0 , θ ( z ) = ρ 0 , θ ( z ) + z 2 e θ ˜ ( z )
Now, operating with expression (157) and after rearranging the terms, the results are as follows:
e τ θ ( z ) e θ ˜ ( z ) = γ 2 θ z 2 + γ 1 θ z + γ 0 θ T 2 ( z 1 ) z 2
where γ 2 θ = k 2 θ , γ 1 θ = k 1 θ k 2 θ and γ 0 θ = k 0 θ k 1 θ .
(B)
Design of the Controller Gains { γ 2 θ , γ 1 θ , γ 0 θ }
Similarly to the procedure followed in Section 4.1, the use of the proposed control law (152)–(154) in the perturbed system (151) yields, after certain algebraic manipulations, the following:
e θ ˜ k + ( k 2 θ 2 ) e θ ˜ k 1 + ( k 1 θ + 1 ) e θ ˜ k 2 + k 0 θ ρ 0 , θ k = ξ ^ θ k
ρ 0 , θ k + 1 = ρ 0 , θ k + e θ ˜ k 2
Operating with expression (159) results in
k 0 θ ρ 0 , θ k = ξ ^ θ k e θ ˜ k ( k 2 θ 2 ) e θ ˜ k 1 ( k 1 θ + 1 ) e θ ˜ k 2
Now, taking a time-shift in expression (159), one obtains that the tracking error also satisfies the following expression:
e θ ˜ k + 1 + ( k 2 θ 2 ) e θ ˜ k + ( k 1 θ + 1 ) e θ ˜ k 1 + k 0 θ e θ ˜ k 2 + k 0 θ ρ 0 , θ k = ξ ^ θ k + 1
Substituting Equation (161) into Equation (162), making some rearrangements, and taking into consideration that ξ ^ ϕ k + 1 ξ ^ ϕ k k , we obtain the following closed-loop equation:
e θ ˜ k + 1 + ( k 2 θ 3 ) e θ ˜ k + ( k 1 θ k 2 θ + 3 ) e θ ˜ k 1 + ( k 0 θ k 1 θ 1 ) e θ ˜ k 2 = 0
Now, applying two additional forward time-shifts, we have
e θ ˜ k + 3 + ( k 2 θ 3 ) e θ ˜ k + 2 + ( k 1 θ k 2 θ + 3 ) e θ ˜ k + 1 + ( k 0 θ k 1 θ 1 ) e θ ˜ k = 0
The design parameters { k 2 θ , k 1 θ , k 0 θ } are selected to ensure that the closed-loop characteristic polynomial becomes a Schur polynomial with desirable roots. Specifically, these coefficients are chosen to place the closed-loop poles strictly inside the unit circle of the complex plane. The control parameters were determined to achieve the following desired closed-loop characteristic polynomial:
( z p θ ) 3 = z 3 3 p θ z 2 + 3 p θ 2 z p θ 3
where p θ C , | p θ | < 1 . On the other hand, expressing in the z-domain the characteristic equation of the closed-loop system (expression (164)) and assuming that the initial conditions are zero, the following results:
z 3 + ( k 2 θ 3 ) z 2 + ( k 1 θ k 2 θ + 3 ) z + ( k 0 θ k 1 θ 1 ) = 0
By matching the terms of equal degree between this polynomial and Equation (165), we obtain the design coefficients { k 2 θ , k 1 θ , k 0 θ } , which are given by
k 2 θ = 3 p θ + 3 ; k 1 θ = 3 p θ 2 3 p θ ; k 0 θ = p θ 3 + 3 p θ 2 3 p θ + 1
and finally, the design of the controller gains { γ 2 θ , γ 1 θ , γ 0 θ } is
γ 2 θ = k 2 θ ; γ 1 θ = k 1 θ k 2 θ ; γ 0 θ = k 0 θ k 1 θ
Note that in the proposed tandem discrete-time GPI scheme, the design value of the pole p θ in the inner loop controller is chosen to be much smaller than the design value of the pole p x in the outer loop controller, so that θ ˜ k θ k * in view of the variations of x k * and x k (that is, | p θ | | p x | < 1 ).

4.5. Obtaining the Input Variable Vector τ ˜ k from the Auxiliar Input Variable Vector τ k

From the discretized version of the expression (21), the original input vector is obtained as follows:
τ ˜ k = C ( η k , η ˙ | t = k T ) η ˙ | t = k T + M ( η k ) τ k
where
η ˙ | t = k T = ψ ˙ ( t ) | t = k T θ ˙ ( t ) | t = k T ϕ ˙ ( t ) | t = k T = x 2 ψ k x 2 θ k x 2 ϕ k
Since η ˙ | t = k T = ( x 2 ψ k , x 2 θ k , x 2 ϕ k ) T is not accessible at the time step k, we analyze the unperturbed model (assuming ξ ψ k ξ θ k ξ ϕ k 0 in the expressions (35), (36), (39), (40), (43) and (44)). From this analysis, we derive the following result:
η ˙ ^ | t = k T = x ^ 2 ψ k x ^ 2 θ k x ^ 2 ϕ k = 1 ( 1 + T ) ψ k + ( 1 T ) T ψ k 1 + 1 T ψ k 2 + T ( 1 + T ) τ ψ k 1 ( 1 + T ) θ k + ( 1 T ) T θ k 1 + 1 T θ k 2 + T ( 1 + T ) τ θ k 1 ( 1 + T ) ϕ k + ( 1 T ) T ϕ k 1 + 1 T ϕ k 2 + T ( 1 + T ) τ ϕ k
and, finally, the control law to achieve the original input variable vector, τ ˜ k , including the proposed reconstructors (171) is the following:
τ ˜ k = C ^ ( η k , η ˙ ^ | t = k T ) η ˙ ^ | t = k T + M ( η k ) τ k
Finally, this section concludes with the following proposition, established through the preceding developments:
Proposition 2.
Given a set of smooth discrete-time reference trajectories x k * , y k * , z k * , ψ k * for the drone quadrotor’s position coordinates x, y and z, and yaw angle ψ, as defined by Equations (23)–(28), the discrete-time GPI controller—specified by Equations (67), (86), (104), (122), (140) and (158)—ensures that the tracking errors, e x k = x k x k * , e y k = y k y k * , e z k = z k z k * , e ϕ ˜ k = ϕ k ϕ ˜ k , e θ ˜ k = θ k θ ˜ k and e ψ k = ψ k ψ k * , evolve locally according to the following linear discrete-time dynamics:
e ψ k + 3 + ( k 2 ψ 3 ) e ψ k + 2 + ( k 1 ψ k 2 ψ + 3 ) e ψ k + 1 + ( k 0 ψ k 1 ψ 1 ) e ψ k = 0
e z k + 3 + ( k 2 z 3 ) e z k + 2 + ( k 1 z k 2 z + 3 ) e z k + 1 + ( k 0 z k 1 z 1 ) e z k = 0
e y k + 3 + ( k 2 y 3 ) e y k + 2 + ( k 1 y k 2 y + 3 ) e y k + 1 + ( k 0 y k 1 y 1 ) e y k = 0
e ϕ ˜ k + 3 + ( k 2 ϕ 3 ) e ϕ ˜ k + 2 + ( k 1 ϕ k 2 ϕ + 3 ) e ϕ ˜ k + 1 + ( k 0 ϕ k 1 ϕ 1 ) e ϕ ˜ k = 0
e x k + 3 + ( k 2 x 3 ) e x k + 2 + ( k 1 x k 2 x + 3 ) e x k + 1 + ( k 0 x k 1 x 1 ) e x k = 0
e θ ˜ k + 3 + ( k 2 θ 3 ) e θ ˜ k + 2 + ( k 1 θ k 2 θ + 3 ) e θ ˜ k + 1 + ( k 0 θ k 1 θ 1 ) e θ ˜ k = 0
whose design coefficients can be selected according to Equations (76), (95), (113), (131), (149) and (167) to render the origin of the tracking error space into an exponential asymptotically equilibrium point.

5. Numerical Simulations

To assess the effectiveness of the proposed discrete-time GPI controller, numerical simulations were conducted. The physical parameters of the drone quadrotor are the following: m = 0.5 [kg], l = 0.25 [m], I x = I y = 5 × 10 3 [kg· m 2 ] and I z = 9 × 10 3 [kg· m 2 ]. The evaluation was focused on three key performance aspects: the rapid convergence of tracking errors to a small neighborhood around zero, smooth transient behavior, and low control effort. In these simulations, the controller’s performance was tested by requiring it to track the following predefined sinusoidal trajectories for the variables x k and y k , denoted as x k * and y k * , respectively:
x k * = R · ( cos ( ω k T ) 1 )
y k * = R · sin ( ω k T )
where R = 2 [m], ω = 0.08 [rad/s] and the time sampling period is T = 0.001 [s]. The reference trajectory for the altitude z k , denoted as z k * , is a smooth trajectory defined during a finite interval [ t i , t f ] = [ k i , k f ] · T s . This trajectory transitions from an initial value z k i * = z ¯ i to a desired final value z k f * = z ¯ f . For example, we set
z k * = z ¯ i + z ¯ f z ¯ i φ ( t k , t f , t i )
where we set the initial and final altitude values as z ¯ i = 0 [m] and z ¯ f = 1 [m], respectively, with the time interval defined by t i = 0 [s] and t f = 25 [s]. The function φ ( t k , t f , t i ) represents a Bezier polynomial that smoothly interpolates between 0 and 1 over the interval t i , t f . In this study, a 16th order Bezier polynomial is used to generate the desired altitude trajectory as follows:
φ ( t k , t i , t f ) = 0 for t k < t i t k t i t f t i 8 r 1 r 2 t k t i t f t i + r 3 t k t i t f t i 2 + r 9 t k t i t f t i 8 for t i t k t f 1 for t k > t f
with
r 1 = 12870 r 2 = 91520 r 3 = 288288 r 4 = 524160 r 5 = 600600 r 6 = 443520 r 7 = 205920 r 8 = 54912 r 9 = 6435
Finally, the trajectory for the variable ψ k , denoted as ψ k * , is designed to follow a linear evolution over time, defined as
ψ k * = π 20 + c t k
where c = 0.8 [rad/s].
The parameter sets defining the discrete-time GPI controller { k 2 ψ , k 1 ψ , k 0 ψ } , { k 2 z , k 1 z , k 0 z } , { k 2 y , k 1 y , k 0 y } , { k 2 ϕ , k 1 ϕ , k 0 ϕ } , { k 2 x , k 1 x , k 0 x } and { k 2 θ , k 1 θ , k 0 θ } were designed with the help of the following dominant Schur characteristic polynomials ( z p ψ ) 3 , ( z p z ) 3 , ( z p y ) 3 , ( z p ϕ ) 3 , ( z p x ) 3 and ( z p θ ) 3 with p ψ = exp ( 0.1 T ) , p z = exp ( 0.8 T ) , p y = exp ( 0.1 T ) , p ϕ = exp ( 0.4 · T ) , p x = exp ( 0.1 T ) and p θ = exp ( 0.4 · T ) . Haykin’s condition [56] is fulfilled by these choices.
Two sets of simulations were conducted to compare the discrete-time GPI controller proposed in this work with a classical discrete-time PID controller. The evaluation focuses on: (i) stabilization and trajectory tracking performance; (ii) unmodeled unmatched disturbances, (iii) behavior under noisy measurements; (iv) robustness to environmental disturbances, such as gusty winds. The following sections provide a detailed description of these simulations.

5.1. Stabilisation and Trajectory Tracking of the Drone Quadrotor Under Ideal Conditions

In this simulation, the quadrotor is required to follow the set of trajectories defined by the expressions (179)–(181) and (184) under ideal conditions, meaning that the measured signals are free from noise and no environmental disturbances are present. Figure 3 illustrates the time evolution of the closed-loop center of mass position variables using the discrete-time GPI and the discrete-time PID control schemes, while Figure 4 depicts the controlled 3D trajectory of the center of mass of the quadrotor. As shown, the tracking of the prescribed x k , y k and z k trajectories demonstrates that the proposed control strategy achieves a near-perfect tracking performance, demonstrating a significant improvement over the discrete-time PID controller. This is further confirmed by the accurate 3D trajectory representation. Additionally, Figure 5 presents the evolution of the attitude variables ( ϕ k , θ k and ψ k ) of the quadrotor, once again highlighting a marked performance improvement compared with the discrete-time PID controller. Finally, the control input signals are shown in Figure 6, reflecting the effort of the controllers to drive the state errors to a small neighborhood around zero.

5.2. Stabilisation and Trajectory Tracking of the Drone Quadrotor Under Non-Ideal Conditions

In this simulation, the quadrotor is required to follow the set of trajectories defined by the expressions (179)–(181) and (184) under non-ideal conditions, meaning that the measured signals—denoted as x ˜ k , y ˜ k , z ˜ k , ϕ ˜ k , θ ˜ k and ψ ˜ k —are affected by additive, zero mean, high-frequency noise, such that
x ˜ k = x k + n x k ; y ˜ k = y k + n y k ; z k ˜ = z k + n z k ϕ ˜ k = ϕ k + n ϕ k ; θ ˜ k = θ k + n θ k ; ψ ˜ k = ψ k + n ψ k
where the selected standard deviations, denoted as n x k , n y k , n z k , n ϕ k , n θ k and n ψ k , were set to 1.2 × 10 3 . In addition, atmospheric disturbances—specifically gusty wind effects, as defined in [60]—were introduced in the simulation, as illustrated in Figure 7.
Figure 8 shows the controlled evolution of the center of mass position variables of the drone quadrotor under measurement noise and atmospheric disturbances. The corresponding 3D trajectory under these conditions is presented in Figure 9. Consistent with the previous simulations, the drone quadrotor exhibits a markedly improved performance under the discrete-time GPI controller compared with the discrete-time PID controller. When atmospheric disturbances affect the vehicle, the proposed discrete-time GPI scheme effectively compensates for these perturbations and drives the tracking-error trajectories to a small neighborhood around the origin in the tracking-error phase space in a more efficient manner. Figure 10 illustrates the evolution of closed-loop attitude variables, further confirming the robustness of the controller. Finally, Figure 11 displays the control input signals, highlighting the significant improvement in the controller’s ability to maintain accurate trajectory tracking under adverse conditions compared to the discrete-time PID controller.

6. Performance of the Proposed Controller

To assess the robustness of the proposed discrete-time GPI controller under model uncertainties, several model parameters were intentionally varied. The performance of the proposed controller was compared with that of a discrete-time PID controller when the mass m and the moments of inertia about all three axes, I x , I y and I z were not precisely known, and both controllers operated using the estimated values m ¯ , I ¯ x , I ¯ y and I ¯ z . The evaluation metrics employed were the integral absolute error (IAE) and the integral time absolute error (ITAE) [61], defined as
I A E = k = 0 M | e x k + e x k 1 | + | e y k + e y k 1 | + | e z k + e x k 1 | + | e ψ k + e ψ k 1 | · T 2
I T A E = k = 0 M | e x k + e x k 1 | + | e y k + e y k 1 | + | e z k + e x k 1 | + | e ψ k + e ψ k 1 | · k T 2
The IAE criterion will treat all errors in a uniform manner. However, the ITAE criterion, as time appears as a factor, will heavily penalize errors that occur late in time but will virtually ignore errors that occur early in time. This has the advantage of producing smaller overshoots and oscillations than the IAE. In addition, it is more sensitive, i.e., it has the best selectivity [62,63]. The IAE will be considered acceptable when it remains below Y 1 , and the ITAE is considered acceptable when it remains below Y 2 . Both thresholds are specified by the designer. Furthermore, the upper limit M is arbitrarily chosen in finite time so that the integral approaches a steady-state value. In our study, we used M = 70,000, with thresholds Y 1 = 0.2 and Y 2 = 0.25 .
Figure 12 illustrates the regions of satisfactory performance for both the standard discrete-time PID controller and the proposed discrete-time GPI controller based on the IAE and ITAE criteria. It can be observed that the estimated mass m ¯ = α m and the estimated moments of inertia I ¯ x = β I x , I ¯ y = β I y and I ¯ z = β I z can assume larger deviations from their nominal values before the closed-loop behavior leaves the satisfactory-performance region when using the discrete-time GPI controller compared to the discrete-time PID. Consequently, the proposed control algorithm provides a significant enhancement in robustness with respect to a wide range of parameter uncertainties specified in the control design.

7. Conclusions

This article explores the theoretical applicability of discrete-time GPI controllers to address regulation and trajectory tracking challenges in drone quadrotors. The proposed discrete-time GPI control strategy was validated through numerical simulations, demonstrating an excellent performance. The effectiveness of the control scheme hinges on the appropriate configuration of the dominant characteristic polynomials governing the closed-loop tracking error dynamics. In addition, the method offers the capability to effectively cancel unknown disturbance terms, which contributes to robust and accurate trajectory tracking.
The discrete-time GPI control approach offers several advantages over its continuous counterpart: (i) trajectory planning is simplified, as it eliminates the need for time derivatives; (ii) computational demands are significantly reduced; (iii) the generation of nominal feed-forward input functions is less complex, being replaced by the tracking function and its time-shifted versions.
Future work will focus on validating the effectiveness of the proposed control algorithm through experimental implementation on a real platform and the demonstration of the stability of the system based on Lyapunov’s stability theory. This will be addressed in forthcoming publications.

Author Contributions

Conceptualization, E.S., L.M.B., J.d.l.M. and R.M.; methodology, E.S., L.M.B., J.d.l.M. and R.M.; validation, E.S., L.M.B., J.d.l.M. and R.M.; formal analysis, E.S., L.M.B., J.d.l.M. and R.M.; investigation, E.S., L.M.B., J.d.l.M. and R.M.; data curation, E.S., L.M.B., J.d.l.M. and R.M.; writing—original draft preparation, E.S., L.M.B., J.d.l.M. and R.M.; writing—review and editing, E.S., L.M.B., J.d.l.M. and R.M.; supervision, E.S., L.M.B., J.d.l.M. and R.M.; funding acquisition, E.S., L.M.B., J.d.l.M. and R.M. All authors have read and agreed to the published version of the manuscript.

Funding

This work was partially supported by the Spanish Ministry of Science and Innovation (MCIN) grant number PID2022-141978NB-I00; European Project REBBECA (Project ID: 101097224; HORIZON-KDT-JU-2021-2-RIA); and Spanish MCIN/AEI/10.13039/501100011033 and the European Union “NextGenerationEU/PRTR” grant number PCI2022-135043-2. This work has also been partially supported by Junta de Comunidades de Castilla-La Mancha/ESF (grant numbers SBPLY/21/180501/000030 and SBPLY/24/180225/000225) and Grant 2025-GRIN-38441 funded by Universidad de Castilla-La Mancha and by “ERDF A way of making Europe”.

Data Availability Statement

The raw data supporting the conclusions of this article will be made available by the authors on request.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Jahani, H.; Khosravi, Y.; Kargar, B.; Ong, K.L.; Arisian, S. Exploring the role of drones and UAVs in logistics and supply chain management: A novel text-based literature review. Int. J. Prod. Res. 2025, 63, 1873–1897. [Google Scholar] [CrossRef]
  2. Ostermann, L.; Gobachew, A.; Schwung, A.; Lier, S. Planning of Logistic Networks with Automated Transport Drones: A Systematic Review of Application Areas, Planning Approaches, and System Performance. Logistics 2025, 9, 111. [Google Scholar] [CrossRef]
  3. Pal, O.K.; Shovon, M.S.H.; Mridha, M.F.; Shin, J. In-depth review of AI-enabled unmanned aerial vehicles: Trends, vision, and challenges. Discov. Artif. Intell. 2024, 4, 97. [Google Scholar] [CrossRef]
  4. Shahi, T.B.; Balasubramaniam, T.; Sabir, K.; Nayak, R. Pasture monitoring using remote sensing and machine learning: A review of methods and applications. Remote Sens. Appl. Soc. Environ. 2025, 37, 101459. [Google Scholar] [CrossRef]
  5. Hiraguri, T.; Shimizu, H.; Kimura, T.; Matsuda, T.; Maruta, K.; Takemura, Y.; Ohya, T.; Takanashi, T. Autonomous Drone-Based Pollination System Using AI Classifier to Replace Bees for Greenhouse Tomato Cultivation. IEEE Access 2023, 11, 10239389. [Google Scholar] [CrossRef]
  6. Talaeizadeh, A.; Sharifi, I.; Alasty, A.; Ghatrehsamani, S. Agricultural spraying drones: A comprehensive review. Smart Agric. Technol. 2025, 12, 101519. [Google Scholar] [CrossRef]
  7. Liu, J.; Luo, K.; Li, P.; Pu, M.; Wang, C. Robust Optimal Consensus Control for Multi-Agent Systems with Disturbances. Drones 2026, 10, 78. [Google Scholar] [CrossRef]
  8. Yigit, K.A.; Dalkiran, A.; Karakoc, T.H. Applications of Drones in the Health Industry. In Unmanned Aerial Vehicle Design and Technology; Springer: Cham, Switzerland, 2023; pp. 69–93. [Google Scholar] [CrossRef]
  9. Rahim, F.; Qasim, N.H. A systematic literature review of drones in emergency medicine: Practical applications, legal challenges, and future directions. Drone Syst. Appl. 2025, 13, 1–13. [Google Scholar] [CrossRef]
  10. Shukla, P.; Shukla, S.; Kumar Singh, A. Trajectory-Prediction Techniques for Unmanned Aerial Vehicles (UAVs): A Comprehensive Survey. IEEE Commun. Surv. Tutor. 2025, 27, 1867–1910. [Google Scholar] [CrossRef]
  11. Lopez-Sanchez, I.; Moreno-Valenzuela, J. PID control of quadrotor UAVs: A survey. Annu. Rev. Control 2023, 56, 100900. [Google Scholar] [CrossRef]
  12. Goodarzi, F.; Lee, D.; Lee, T. Geometric nonlinear PID control of a quadrotor UAV on SE(3). In 2013 European Control Conference (ECC); IEEE: Piscataway, NJ, USA, 2013; pp. 3845–3850. [Google Scholar] [CrossRef]
  13. Singh, A.M.; Lee, D.J.; Hong, D.P.; Chong, K.T. Successive loop closure based controller design for an autonomous quadrotor vehicle. Appl. Mech. Mater. 2014, 483, 361–367. [Google Scholar] [CrossRef]
  14. He, Z.; Zhao, L. A simple attitude control of quadrotor helicopter based on Ziegler-Nichols rules for tuning PD parameters. Sci. World J. 2014, 2014, 280180. [Google Scholar] [CrossRef] [PubMed]
  15. Guerrero-Sanchez, M.E.; Abaunza, H.; Castillo, P.; Lozano, R.; Garcia-Beltran, C.; Rodriguez-Palacios, A. Passivity-Based Control for a Micro Air Vehicle Using Unit Quaternions. Appl. Sci. 2017, 7, 13. [Google Scholar] [CrossRef]
  16. Fan, Y.; Cao, Y.; Zhao, Y. Sliding mode control for nonlinear trajectory tracking of a quadrotor. In 2017 36th Chinese Control Conference (CCC); IEEE: Piscataway, NJ, USA, 2017; pp. 6676–6680. [Google Scholar]
  17. Cui, Y.; Li, B.; Shi, M. Nonlinear Model Predictive Control for UAV Trajectory Optimization. In Advances in Guidance, Navigation and Control (ICGNC 2024); Springer: Singapore, 2025; pp. 405–412. [Google Scholar] [CrossRef]
  18. Zheng, L.; Mei, R.; Wei, M.; Zhao, Z.; Zou, B. Bio-Inspired Decentralized Model Predictive Flocking Control for UAV Swarm Trajectory Tracking. J. Bionic Eng. 2025, 22, 2660–2677. [Google Scholar] [CrossRef]
  19. Xiao, J.; Feroskhan, M. Learning Multipursuit Evasion for Safe Targeted Navigation of Drones. IEEE Trans. Artif. Intell. 2024, 5, 6210–6224. [Google Scholar] [CrossRef]
  20. Al-Saoudi, A.F.; Al-Aubidy, K.M.; Al-Mahasneh, A.J. Comparison of PID, Fuzzy Logic, ANFIS and Model Predictive Controllers for Cruise Control System. In 2024 21st International Multi-Conference on Systems, Signals & Devices (SSD); IEEE: Piscataway, NJ, USA, 2024; pp. 263–265. [Google Scholar] [CrossRef]
  21. Morando, A.E.S.; Bozzi, A.; Graffione, S.; Sacile, R.; Zero, E. Optimizing Unmanned Air–Ground Vehicle Maneuvers Using Nonlinear Model Predictive Control and Moving Horizon Estimation. Automation 2024, 5, 324–342. [Google Scholar] [CrossRef]
  22. Wang, J.; Fang, Z.; Zhao, W. Integral backstepping-based nonlinear flight control strategy for quadrotor aerial robot with unknown mass. In Proceedings of the 3rd International Conference on Robotics, Control and Automation; Association for Computing Machinery: New York, NY, USA, 2018; pp. 88–94. [Google Scholar]
  23. Najm, A.A.; Ibraheem, I.K. Nonlinear PID controller design for a 6-DOF UAV quadrotor system. Eng. Sci. Technol. Int. J. 2019, 22, 1087–1097. [Google Scholar] [CrossRef]
  24. Yavuz, H.; İkizoğlu, S. Hyperbolic Tangent Adaptive LQR+ PID Control of a Quadrotor. In 2018 6th International Conference on Control Engineering & Information Technology (CEIT); IEEE: Piscataway, NJ, USA, 2018; pp. 1–6. [Google Scholar]
  25. Deveerasetty, K.K.; Zhou, Y. PID with derivative filter and integral sliding-mode controller techniques applied to an indoor micro quadrotor. In 2018 18th International Conference on Control, Automation and Systems (ICCAS); IEEE: Piscataway, NJ, USA, 2018; pp. 439–444. [Google Scholar]
  26. Ortiz, J.P.; Minchala, L.I.; Reinoso, M.J. Nonlinear Robust H-Infinity PID Controller for the Multivariable System Quadrotor. IEEE Lat. Am. Trans. 2016, 14, 1176–1183. [Google Scholar] [CrossRef]
  27. Bouzid, Y.; Siguerdidjane, H.; Bestaoui, Y. Comparative Results on 3D Navigation of Quadrotor using two Nonlinear Model based Controllers. J. Phys. Conf. Ser. 2017, 783, 012046. [Google Scholar] [CrossRef]
  28. Bouzid, Y.; Siguerdidjane, H.; Bestaoui, Y. Sliding Modes based Nonlinear PID Controller for Quadrotor—Theory and Experiment. In Proceedings of the 14th International Conference on Informatics in Control, Automation and Robotics, ICINCO 2017, Madrid, Spain, 26–28 July 2017; Gusikhin, O., Madani, K., Eds.; SciTePress: Setúbal, Portugal, 2017; Volume 1, pp. 286–294. [Google Scholar] [CrossRef]
  29. Benzaid, K.; Mansouri, N.; Labbani-Igbida, O. A generalized dynamical model and control approach applied to multirotor aerial systems. In 2016 8th International Conference on Modelling, Identification and Control (ICMIC); IEEE: Piscataway, NJ, USA, 2016; pp. 225–230. [Google Scholar] [CrossRef]
  30. Rosales, C.; Tosetti, S.; Soria, C.; Rossomando, F. Neural Adaptive PID Control of a Quadrotor using EFK. IEEE Lat. Am. Trans. 2018, 16, 2722–2730. [Google Scholar] [CrossRef]
  31. Sierra, J.E.; Santos, M. Wind and Payload Disturbance Rejection Control Based on Adaptive Neural Estimators: Application on Quadrotors. Complexity 2019, 2019, 6460156. [Google Scholar] [CrossRef]
  32. Yu, W.; Li, J.; Yang, K. Research on Fuzzy Adaptive Stabilization PID Control System. In 2018 IEEE 3rd Advanced Information Technology, Electronic and Automation Control Conference (IAEAC); IEEE: Piscataway, NJ, USA, 2018; pp. 2037–2043. [Google Scholar] [CrossRef]
  33. Jurado, F.; Hernández, R. Decentralized MRAC with Integral Action for Attitude Control of a Quadrotor UAV. In 2018 IEEE International Autumn Meeting on Power, Electronics and Computing (ROPEC); IEEE: Piscataway, NJ, USA, 2018; pp. 1–6. [Google Scholar] [CrossRef]
  34. Kourani, A.; Kassem, K.; Daher, N. Coping with Quadcopter Payload Variation via Adaptive Robust Control. In 2018 IEEE International Multidisciplinary Conference on Engineering Technology (IMCET); IEEE: Piscataway, NJ, USA, 2018; pp. 1–6. [Google Scholar] [CrossRef]
  35. Mofid, O.; Mobayen, S.; Wong, W.K. Adaptive Terminal Sliding Mode Control for Attitude and Position Tracking Control of Quadrotor UAVs in the Existence of External Disturbance. IEEE Access 2021, 9, 3428–3440. [Google Scholar] [CrossRef]
  36. Montoya-Morales, J.; Guerrero-Sánchez, M.; Valencia-Palomo, G.; Hernández-González, O.; López-Estrada, F.; Hoyo-Montaño, J. Real-time robust tracking control for a quadrotor using monocular vision. Proc. Inst. Mech. Eng. Part G J. Aerosp. Eng. 2023, 237, 2729–2741. [Google Scholar] [CrossRef]
  37. Fliess, M.; Marquez, R.; Delaleau, E.; Sira–Ramírez, H. Correcteurs proportionnels intégraux généralisés. ESAIM Control. Optim. Calc. Var. 2002, 7, 23–41. [Google Scholar] [CrossRef]
  38. Åström, K.; Hägglund, T. PID Controllers: Theory, Design, and Tuning; ISA—The Instrumentation, Systems and Automation Society: Research Triangle Park, NC, USA, 1995. [Google Scholar]
  39. Wu, H.; Su, W.; Liu, Z. PID controllers: Design and tuning methods. In 2014 9th IEEE Conference on Industrial Electronics and Applications; IEEE: Piscataway, NJ, USA, 2014; pp. 808–813. [Google Scholar] [CrossRef]
  40. Sira-Ramirez, H. On the generalized PI control of some nonlinear mechanical systems. In Proceedings of the 2002 American Control Conference (IEEE Cat. No.CH37301); IEEE: Piscataway, NJ, USA, 2002; Volume 1, pp. 839–844. [Google Scholar] [CrossRef]
  41. Song, Q.; Song, Y. Generalized PI control design for a class of unknown nonaffine systems with sensor and actuator faults. Syst. Control Lett. 2014, 64, 86–95. [Google Scholar] [CrossRef]
  42. Belmonte, L.M.; Morales, R.; Fernández-Caballero, A.; Somolinos, J.A. Robust Decentralized Nonlinear Control for a Twin Rotor MIMO System. Sensors 2016, 16, 1160. [Google Scholar] [CrossRef]
  43. Zurita-Bustamante, E.W.; Linares-Flores, J.; Guzman-Ramirez, E.; Sira-Ramirez, H. A Comparison Between the GPI and PID Controllers for the Stabilization of a DC–DC “Buck” Converter: A Field Programmable Gate Array Implementation. IEEE Trans. Ind. Electron. 2011, 58, 5251–5262. [Google Scholar] [CrossRef]
  44. Belmonte, L.M.; Segura, E.; Fernández-Caballero, A.; Somolinos, J.A.; Morales, R. Generalised Proportional Integral Control for Magnetic Levitation Systems Using a Tangent Linearisation Approach. Mathematics 2021, 9, 1424. [Google Scholar] [CrossRef]
  45. Panduro, R.; Segura, E.; Belmonte, L.M.; Fernández-Caballero, A.; Novais, P.; Benet, J.; Morales, R. Intelligent trajectory planner and generalised proportional integral control for two carts equipped with a red-green-blue depth sensor on a circular rail. Integr. Comput.-Aided Eng. 2020, 27, 267–285. [Google Scholar] [CrossRef]
  46. Trejo-Escamilla, E.G.; Romero, H.; Santos, O.; Salzar, S.; Lozano, R. GPI controller for quadrotor UAV stabilization. In 2017 International Conference on Unmanned Aircraft Systems (ICUAS); IEEE: Piscataway, NJ, USA, 2017; pp. 1833–1839. [Google Scholar] [CrossRef]
  47. Fernández-Caballero, A.; Belmonte, L.M.; Morales, R.; Somolinos, J.A. Generalized Proportional Integral Control for an Unmanned Quadrotor System. Int. J. Adv. Robot. Syst. 2015, 12, 85. [Google Scholar] [CrossRef]
  48. Belmonte, L.M.; Morales, R.; Fernández-Caballero, A.; Somolinos, J.A. A Tandem Active Disturbance Rejection Control for a Laboratory Helicopter With Variable-Speed Rotors. IEEE Trans. Ind. Electron. 2016, 63, 6395–6406. [Google Scholar] [CrossRef]
  49. Fliess, M.; Marquez, R. Une approche intrinsèque de la commande prédictive linéaire discrète. J. Eur. Des Syst. Autom. 2001, 35, 127–147. [Google Scholar]
  50. Elfadili, A.; Giri, F.; Ouadi, H.; Dugard, L. Discrete-time modelling of induction motors with consideration of magnetic saturation. In IECON 2006—32nd Annual Conference on IEEE Industrial Electronics; IEEE: Piscataway, NJ, USA, 2006; pp. 5119–5124. [Google Scholar] [CrossRef]
  51. Goodwin, G.; Leal, R.; Mayne, D.; Middleton, R. Rapprochement between continuous and discrete model reference adaptive control. Automatica 1986, 22, 199–207. [Google Scholar] [CrossRef]
  52. Tesfaye, A.; Tomizuka, H. Zeros of discretized continuous systems expressed in the Euler operator-an asymptotic analysis. IEEE Trans. Autom. Control 1995, 40, 743–747. [Google Scholar] [CrossRef]
  53. Castillo, P.; Dzul, A.; Lozano, R. Real-time stabilization and tracking of a four-rotor mini rotorcraft. IEEE Trans. Control Syst. Technol. 2004, 12, 510–516. [Google Scholar] [CrossRef]
  54. Lozano, R. (Ed.) Unmanned Aerial Vehicles; John Wiley & Sons, Ltd.: Hoboken, NJ, USA, 2013. [Google Scholar] [CrossRef]
  55. Aguilar-Ibáñez, C.; Sira-Ramírez, H.; Suárez-Castañón, M.S.; Martínez-Navarro, E.; Moreno-Armendariz, M.A. The trajectory tracking problem for an unmanned four-rotor system: Flatness-based approach. Int. J. Control 2012, 85, 69–77. [Google Scholar] [CrossRef]
  56. Haykin, S. A unified treatment of recursive digital filtering. IEEE Trans. Autom. Control 1972, 17, 113–116. [Google Scholar] [CrossRef]
  57. Butcher, J.C. Numerical Methods for Ordinary Differential Equations; John Wiley & Sons, Ltd.: Hoboken, NJ, USA, 2016. [Google Scholar] [CrossRef]
  58. Papoulis, A. Signal Analisys; Nalle, P.D., Gardner, M., Eds.; McGraw-Hill: New York, NY, USA, 1977. [Google Scholar]
  59. Son, Y.I.; Kim, I.H.; Choi, D.S.; Shim, H. Robust Cascade Control of Electric Motor Drives Using Dual Reduced-Order PI Observer. IEEE Trans. Ind. Electron. 2015, 62, 3672–3682. [Google Scholar] [CrossRef]
  60. Sarwar, S.; Rehman, S. Supervising Control for Unmanned Aerial Vehicles. Math. Probl. Eng. 2013, 2013, 564803. [Google Scholar] [CrossRef]
  61. Büchi, R. PID Controller Parameter Tables for Time-Delayed Systems Optimized Using Hill-Climbing. Signals 2022, 3, 146–156. [Google Scholar] [CrossRef]
  62. Mousakazemi, S.M.H. Comparison of the error-integral performance indexes in a GA-tuned PID controlling system of a PWR-type nuclear reactor point-kinetics model. Prog. Nucl. Energy 2021, 132, 103604. [Google Scholar] [CrossRef]
  63. Sanoj, K.P.; Dhanya Ram, V. Optimal PID Controller Tuning for Multivariable Unstable Systems by Minimizing ITAE Criteria. IFAC-PapersOnLine 2024, 57, 391–396. [Google Scholar] [CrossRef]
Figure 1. Fundamental mechanics of drone quadrotor motion.
Figure 1. Fundamental mechanics of drone quadrotor motion.
Drones 10 00245 g001
Figure 2. Discrete-time GPI control scheme.
Figure 2. Discrete-time GPI control scheme.
Drones 10 00245 g002
Figure 3. Center of mass position variables and their corresponding reference trajectories for the drone quadrotor.
Figure 3. Center of mass position variables and their corresponding reference trajectories for the drone quadrotor.
Drones 10 00245 g003
Figure 4. Three-dimensional trajectory of the center of mass of the drone quadrotor.
Figure 4. Three-dimensional trajectory of the center of mass of the drone quadrotor.
Drones 10 00245 g004
Figure 5. Attitude variables and their corresponding reference trajectories for the drone quadrotor.
Figure 5. Attitude variables and their corresponding reference trajectories for the drone quadrotor.
Drones 10 00245 g005
Figure 6. Time evolution of the control inputs for the drone quadrotor.
Figure 6. Time evolution of the control inputs for the drone quadrotor.
Drones 10 00245 g006
Figure 7. Representation of atmospheric disturbances (gusty wind) applied during simulation.
Figure 7. Representation of atmospheric disturbances (gusty wind) applied during simulation.
Drones 10 00245 g007
Figure 8. Center of mass position variables and their corresponding reference trajectories for the drone quadrotor under non-ideal conditions.
Figure 8. Center of mass position variables and their corresponding reference trajectories for the drone quadrotor under non-ideal conditions.
Drones 10 00245 g008
Figure 9. Three-dimensional trajectory of the center of mass of the drone quadrotor under non-ideal conditions.
Figure 9. Three-dimensional trajectory of the center of mass of the drone quadrotor under non-ideal conditions.
Drones 10 00245 g009
Figure 10. Attitude variables and their corresponding reference trajectories for the drone quadrotor under non-ideal conditions.
Figure 10. Attitude variables and their corresponding reference trajectories for the drone quadrotor under non-ideal conditions.
Drones 10 00245 g010
Figure 11. Time evolution of the control inputs for the drone quadrotor under non-ideal conditions.
Figure 11. Time evolution of the control inputs for the drone quadrotor under non-ideal conditions.
Drones 10 00245 g011
Figure 12. Region of satisfactory controller performance under variations in the mass m and the moments of inertia about all three axes, I x , I y and I z using: (a) IAE criterion; (b) ITAE criterion.
Figure 12. Region of satisfactory controller performance under variations in the mass m and the moments of inertia about all three axes, I x , I y and I z using: (a) IAE criterion; (b) ITAE criterion.
Drones 10 00245 g012
Table 1. PI vs. GPI control. Pros and cons.
Table 1. PI vs. GPI control. Pros and cons.
AspectPI ControlGPI Control
ComplexitySimple design and implementation.More complex; requires system structure knowledge (flatness, relative degree).
TuningEasy, only two parameters ( K p , K i ).Harder, multiple gains for higher-order terms.
Tracking AbilityGood for constant or slowly varying references.Excellent for polynomial references (ramps, parabolas, etc.).
RobustnessLimited robustness to disturbances and uncertainties.Higher robustness; can handle nonlinearities better.
ApplicationsWidely used in industrial processes and simple systems.Suitable for advanced control of nonlinear or higher-order systems.
Steady-State ErrorEliminates error for constant signals.Eliminates error for higher-order signals (up to chosen degree).
Design PhilosophyPractical, empirical tuning for linear systems.Theoretical, model-based design for exact tracking.
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

Segura, E.; Belmonte, L.M.; de las Morenas, J.; Morales, R. A Discrete-Time Generalized Proportional Integral Controller for a Drone Quadrotor. Drones 2026, 10, 245. https://doi.org/10.3390/drones10040245

AMA Style

Segura E, Belmonte LM, de las Morenas J, Morales R. A Discrete-Time Generalized Proportional Integral Controller for a Drone Quadrotor. Drones. 2026; 10(4):245. https://doi.org/10.3390/drones10040245

Chicago/Turabian Style

Segura, Eva, Lidia M. Belmonte, Javier de las Morenas, and Rafael Morales. 2026. "A Discrete-Time Generalized Proportional Integral Controller for a Drone Quadrotor" Drones 10, no. 4: 245. https://doi.org/10.3390/drones10040245

APA Style

Segura, E., Belmonte, L. M., de las Morenas, J., & Morales, R. (2026). A Discrete-Time Generalized Proportional Integral Controller for a Drone Quadrotor. Drones, 10(4), 245. https://doi.org/10.3390/drones10040245

Article Metrics

Back to TopTop