Research on Sliding Mode Active Disturbance Rejection Control for Quadrotor Drones Based on an Improved Particle Swarm Optimization Algorithm

High-performance attitude controllers combined with optimized control parameters are crucial for enhancing the pose control accuracy and disturbance rejection capability of quadrotor drones under external disturbances, thereby ensuring stable and reliable execution of tracking tasks. This article addresses the limitations of conventional control methods, such as poor adaptability to interference and reliance on manual parameter tuning, by proposing a novel, deeply integrated control strategy. The core of this work lies in the synthesis of Sliding Mode Control (SMC) and Active Disturbance Rejection Control (ADRC) into a cohesive framework, designated as SM-ADRC. Furthermore, a refined Particle Swarm Optimization (PSO) algorithm, incorporating good point set initialization and a golden sine mutation operator, is developed to automate and optimize the controller’s parameter tuning process. Through comprehensive comparative simulation studies, the proposed method demonstrates superior performance in both attitude regulation and ground target tracking scenarios under disturbances, showcasing smaller average pose errors, faster convergence, and enhanced robustness. This research provides a new perspective for achieving precise and reliable control of quadrotor drones in complex operational environments.

The application scope of quadrotor drones has expanded dramatically, encompassing critical areas such as disaster relief, logistics, infrastructure inspection, and aerial photography. Their unique capabilities, including vertical take-off and landing, hovering, and high maneuverability, make them indispensable tools. However, these advantages are counterbalanced by inherent control challenges stemming from their underactuated, strongly coupled, and highly nonlinear dynamic characteristics. These systems are particularly susceptible to model uncertainties, parameter variations, and external disturbances like wind gusts, which can severely degrade control performance and stability. Therefore, designing robust and adaptive control algorithms that can maintain precise tracking and stable flight in the presence of such adversities remains a significant research focus.

Traditional control methods, most notably the Proportional-Integral-Derivative (PID) controller, are widely deployed in commercial quadrotor drones due to their simplicity and model-independent nature. However, PID controllers often exhibit limitations, including significant overshoot, slow response to dynamic changes, and inadequate performance in rejecting persistent or high-frequency disturbances. To overcome these shortcomings, researchers have explored various advanced control techniques. Among them, Active Disturbance Rejection Control (ADRC) has gained considerable attention. ADRC’s philosophy is to treat all internal dynamics uncertainties and external disturbances as a “total disturbance,” which is then estimated in real-time by an Extended State Observer (ESO) and actively compensated for within the control law. This approach grants the controller strong robustness without requiring an exact mathematical model of the plant. Nonetheless, traditional ADRC often relies on a Nonlinear State Error Feedback (NLSEF) law that involves multiple coupled parameters, which can be difficult to tune optimally and may sometimes lead to undesirable control chattering or sluggish dynamic response.

Another prominent robust control methodology is Sliding Mode Control (SMC). SMC drives the system state onto a pre-defined sliding surface and maintains it there using a discontinuous control law. Its primary strength lies in its invariance to matched uncertainties and disturbances once the sliding mode is attained. However, a well-known drawback of conventional SMC is the chattering phenomenon—high-frequency oscillations of the control signal—caused by the discontinuous switching function, which can excite unmodeled high-frequency dynamics and lead to actuator wear.

A promising direction is the fusion of these two methods to create a hybrid controller that leverages their respective strengths while mitigating their weaknesses. Some existing works have attempted to combine ADRC and SMC, often by using the ESO for disturbance estimation and feeding its output into an SMC law. However, many implementations treat them as separate, cascaded modules rather than a deeply integrated structure. Furthermore, the performance of such hybrid controllers is heavily dependent on the choice of numerous parameters (e.g., observer bandwidths, sliding surface coefficients, switching gains). Manually tuning these parameters is a tedious, experience-dependent, and often sub-optimal process.

This is where metaheuristic optimization algorithms, such as Particle Swarm Optimization (PSO), become invaluable. PSO is a population-based stochastic optimization technique inspired by the social behavior of bird flocking or fish schooling. It is known for its simplicity, ease of implementation, and effective search capabilities. However, the standard PSO algorithm can suffer from premature convergence (getting trapped in local optima) and inefficient search when the initial particle distribution is not sufficiently diverse. To address these issues and achieve superior parameter optimization for the proposed SM-ADRC, this paper introduces enhancements to the basic PSO algorithm.

The first enhancement involves initializing the particle swarm using a Good Point Set (GPS) method. The GPS is a deterministic, low-discrepancy sequence generation technique that ensures a more uniform and widespread distribution of initial particles across the search space compared to random initialization. This improves the population’s diversity from the outset, enhancing the algorithm’s global exploration capability and reducing the risk of premature convergence. The second enhancement incorporates a mutation operator based on the Golden Sine Algorithm (Golden-SA). Golden-SA is a mathematical optimization technique that utilizes sinusoidal functions and the golden ratio to guide the search process, effectively balancing exploration and exploitation. Integrating a Golden-SA-based mutation into PSO allows particles to escape local optima by introducing directed random variations, thereby refining the search in promising regions. The resulting improved algorithm is termed GPSO.

The primary contributions of this work are threefold:

  1. We propose a novel Sliding Mode-Active Disturbance Rejection Controller (SM-ADRC) for quadrotor drone attitude control. In this architecture, the traditional NLSEF module of ADRC is replaced by a Sliding Mode Control law. This substitution aims to combine the precise disturbance estimation and compensation of ADRC with the fast convergence and strong robustness of SMC, while carefully designing the sliding surface and control law to mitigate chattering.
  2. We develop an enhanced PSO algorithm (GPSO) that employs Good Point Set initialization and a Golden Sine mutation operator to systematically and optimally tune the multiple parameters of the proposed SM-ADRC, overcoming the reliance on manual tuning and potentially unlocking higher controller performance.
  3. We validate the effectiveness of the integrated GPSO-SMADRC framework through extensive simulation studies, including step response tests under noise disturbance and circular trajectory tracking tasks. Comparative analysis against standard ADRC, PSO-optimized SMADRC, and another advanced robust controller (Adaptive Supertwisting SMC) demonstrates the superior tracking accuracy, disturbance rejection, and convergence speed of the proposed method.

The remainder of this article is organized as follows: Section 1 details the dynamic modeling of the quadrotor drone, which forms the basis for controller design. Section 2 presents the design of the proposed SM-ADRC attitude controller. Section 3 elaborates on the improvements made to the standard PSO algorithm, resulting in the GPSO. Section 4 provides comprehensive simulation results and comparative analysis. Finally, Section 5 concludes the article and suggests directions for future work.

1. Dynamic Modeling of the Quadrotor Drone

The quadrotor drone is a six-degree-of-freedom (6-DOF) system characterized by four independent rotors. Its motion is achieved by varying the rotational speeds of these rotors, which changes the thrust and torque produced. The standard “X” configuration is assumed. The complete dynamic model is derived using the Newton-Euler formalism, considering two coordinate frames: the earth-fixed inertial frame $\{E\}$ and the body-fixed frame $\{B\}$ attached to the drone’s center of mass.

Schematic of a quadrotor drone in flight, showing the X-configuration of rotors and the associated body-fixed frame.

The forces and moments generated are proportional to the square of the rotor speeds. Let $\Omega_i$ denote the angular speed of rotor $i$ ($i=1,2,3,4$). The total thrust $T$ along the negative z-axis of the body frame and the moments $M_\phi$, $M_\theta$, $M_\psi$ around the body frame’s x (roll), y (pitch), and z (yaw) axes, respectively, are given by:

$$
\begin{aligned}
T &= C_T (\Omega_1^2 + \Omega_2^2 + \Omega_3^2 + \Omega_4^2) \\
M_\phi &= L C_T (-\Omega_2^2 + \Omega_4^2) \\
M_\theta &= L C_T (\Omega_1^2 – \Omega_3^2) \\
M_\psi &= C_M (\Omega_1^2 – \Omega_2^2 + \Omega_3^2 – \Omega_4^2)
\end{aligned}
$$

where $C_T$ is the thrust coefficient, $C_M$ is the torque coefficient, and $L$ is the distance from the rotor center to the drone’s center of mass.

The rotational dynamics (attitude) are described by Euler’s equations:

$$
\begin{aligned}
I_{xx} \ddot{\phi} &= M_\phi + \dot{\theta} \dot{\psi} (I_{yy} – I_{zz}) \\
I_{yy} \ddot{\theta} &= M_\theta + \dot{\phi} \dot{\psi} (I_{zz} – I_{xx}) \\
I_{zz} \ddot{\psi} &= M_\psi + \dot{\phi} \dot{\theta} (I_{xx} – I_{yy})
\end{aligned}
$$

where $\phi$, $\theta$, $\psi$ are the roll, pitch, and yaw angles, $I_{xx}$, $I_{yy}$, $I_{zz}$ are the moments of inertia, and the terms $\dot{\theta} \dot{\psi} (I_{yy} – I_{zz})$, etc., represent gyroscopic effects.

The translational dynamics (position) in the inertial frame are derived by rotating the total thrust vector and accounting for gravity and aerodynamic drag:

$$
\begin{aligned}
m \ddot{x} &= (\sin\psi \sin\phi + \cos\psi \sin\theta \cos\phi) T – d_x \dot{x} \\
m \ddot{y} &= (-\cos\psi \sin\phi + \sin\psi \sin\theta \cos\phi) T – d_y \dot{y} \\
m \ddot{z} &= (\cos\theta \cos\phi) T – mg – d_z \dot{z}
\end{aligned}
$$

where $m$ is the mass of the quadrotor drone, $g$ is the gravitational acceleration, $x$, $y$, $z$ are the positions in the inertial frame, and $d_x$, $d_y$, $d_z$ are linear drag coefficients.

This model reveals the system’s underactuated nature: there are only four control inputs (the rotor speeds, mapping to $T$, $M_\phi$, $M_\theta$, $M_\psi$) to control six outputs ($x$, $y$, $z$, $\phi$, $\theta$, $\psi$). Furthermore, the translational dynamics are coupled with the rotational states ($\phi$, $\theta$), making the control problem challenging. A standard hierarchical control structure is adopted, comprising an outer-loop position controller and an inner-loop attitude controller. The position controller generates desired roll ($\phi_d$) and pitch ($\theta_d$) angles, as well as the total thrust $T_d$, to achieve desired $x$, $y$, $z$ trajectories. The attitude controller then tracks these desired angles ($\phi_d$, $\theta_d$, $\psi_d$) by computing the required moments $M_\phi$, $M_\theta$, $M_\psi$. This article focuses primarily on the design and optimization of the inner-loop attitude controller, which is critical for overall stability and tracking performance. The key parameters for a typical quadrotor drone model used in simulations are summarized in Table 1.

Table 1: Parameters of the Quadrotor Drone Model
Parameter Symbol Value Unit
Mass $m$ 2.4 kg
Arm Length $L$ 0.45 m
Gravity Acceleration $g$ 9.8 m/s²
Drag Coefficient $d_x, d_y, d_z$ 0.055 N·s²/m²
Thrust Coefficient $C_T$ 1.788×10⁻⁵ kg·m
Torque Coefficient $C_M$ 4.763×10⁻⁷ kg·m²
Moment of Inertia (x-axis) $I_{xx}$ 1.98×10⁻² kg·m²
Moment of Inertia (y-axis) $I_{yy}$ 1.98×10⁻² kg·m²
Moment of Inertia (z-axis) $I_{zz}$ 3.59×10⁻² kg·m²

2. Design of the Sliding Mode Active Disturbance Rejection Controller (SM-ADRC)

The proposed controller synthesizes the framework of Active Disturbance Rejection Control (ADRC) with the control law of Sliding Mode Control (SMC). Traditional ADRC consists of three main components: a Tracking Differentiator (TD), an Extended State Observer (ESO), and a Nonlinear State Error Feedback (NLSEF) law. In our SM-ADRC design, we retain the TD and ESO modules but replace the NLSEF with a Sliding Mode Control law. This integration aims to leverage the excellent disturbance estimation and compensation capability of the ESO while employing the SMC to provide a fast, robust error convergence with reduced chattering through careful design.

2.1 Controller Structure

The block diagram of the proposed SM-ADRC for a single attitude channel (e.g., roll) is shown below. The design for pitch and yaw channels follows an identical procedure due to the symmetry of the quadrotor drone dynamics.

The process works as follows: The desired attitude angle $\phi_d$ is processed by the TD to generate a smooth tracking signal $v_1$ (which approximates $\phi_d$) and its derivative $v_2$. The ESO takes the actual control input $u$ and the measured output $\phi$ to estimate the system state $z_1 \approx \phi$, its derivative $z_2 \approx \dot{\phi}$, and most importantly, the “total disturbance” $z_3$, which aggregates model uncertainties, couplings, and external disturbances. The tracking errors are computed as $e_1 = v_1 – z_1$ and $e_2 = v_2 – z_2$. These errors, instead of being fed into a nonlinear combination function as in standard ADRC, are used to formulate a Sliding Mode Control law. The SMC module calculates a preliminary control signal $u_0$. Finally, the estimated disturbance $z_3$ is compensated, and the control signal is scaled by $1/b_0$ (where $b_0$ is a rough estimate of the control gain) to produce the final control output $u$ for the quadrotor drone’s attitude dynamics.

2.2 Extended State Observer (ESO) Design

For the roll channel dynamics $I_{xx}\ddot{\phi} = M_\phi + f_{total}$, where $f_{total}$ represents the lumped disturbance (including gyroscopic terms, model inaccuracies, and external forces), we can rewrite it as:
$$\ddot{\phi} = b_0 u + f$$
where $u = M_\phi / I_{xx}$ is the normalized control input, $b_0$ is a known nominal value (approximated as $1/I_{xx}$), and $f = f_{total}/I_{xx}$ is the generalized disturbance. The ESO treats this disturbance $f$ as an extended state. Define $x_1 = \phi$, $x_2 = \dot{\phi}$, $x_3 = f$. Assuming $f$ is differentiable, its derivative $\dot{f} = h(t)$ is unknown but bounded. The extended state-space model is:
$$
\begin{aligned}
\dot{x}_1 &= x_2 \\
\dot{x}_2 &= x_3 + b_0 u \\
\dot{x}_3 &= h(t) \\
y &= x_1
\end{aligned}
$$
A linear ESO (often sufficient and easier to tune) for this system is designed as:
$$
\begin{aligned}
e &= z_1 – y \\
\dot{z}_1 &= z_2 – \beta_{01} e \\
\dot{z}_2 &= z_3 – \beta_{02} e + b_0 u \\
\dot{z}_3 &= -\beta_{03} e
\end{aligned}
$$
where $z_1$, $z_2$, $z_3$ are the estimates of $x_1$, $x_2$, $x_3$ respectively, and $\beta_{01}$, $\beta_{02}$, $\beta_{03}$ are observer gains. Properly tuning these gains (often placed in a Butterworth pattern or via pole placement) ensures the estimates converge accurately. The estimated disturbance $z_3$ is crucial for compensation.

2.3 Sliding Mode Control Law Design (Replacing NLSEF)

This is the key innovation. The errors from the TD and ESO are used to define a sliding surface. For the roll channel:
$$ s = c_1 e_1 + e_2 $$
where $c_1 > 0$ is a design parameter determining the dynamics on the sliding surface. The control objective is to drive $s$ to zero. When $s=0$, the error dynamics become $\dot{e}_1 = -c_1 e_1$, guaranteeing exponential convergence of $e_1$ to zero.

We design the preliminary control law $u_0$ as the sum of an equivalent control $u_{eq}$ and a switching control $u_{sw}$:
$$ u_0 = u_{eq} + u_{sw} $$
The equivalent control is derived from the condition $\dot{s}=0$ assuming no disturbance (which will be compensated separately). From $s = c_1 e_1 + e_2$ and knowing $e_1 = v_1 – z_1$, $e_2 = v_2 – z_2$, and $\dot{e}_2 = \dot{v}_2 – \dot{z}_2 \approx \dot{v}_2 – (z_3 + b_0 u)$ (using the ESO’s second equation), we have:
$$ \dot{s} = c_1 e_2 + \dot{v}_2 – (z_3 + b_0 u) $$
Setting $\dot{s}=0$ and ignoring $z_3$ for the equivalent part (as it’s handled by compensation), we solve for $u_{eq}$:
$$ u_{eq} = \frac{1}{b_0}(c_1 e_2 + \dot{v}_2) $$
To ensure robustness against estimation errors and to satisfy the sliding condition, we add a switching term:
$$ u_{sw} = \frac{1}{b_0} \eta \, \text{sat}(s / \Phi) $$
where $\eta > 0$ is the switching gain, $\Phi$ is the boundary layer thickness, and $\text{sat}(\cdot)$ is the saturation function used to replace the sign function $\text{sign}(\cdot)$ to mitigate chattering. Thus, the complete preliminary control is:
$$ u_0 = \frac{1}{b_0}\left( c_1 e_2 + \dot{v}_2 + \eta \, \text{sat}(s / \Phi) \right) $$
Finally, the total control signal for the plant, incorporating disturbance compensation from the ESO, is:
$$ u = u_0 – \frac{z_3}{b_0} = \frac{1}{b_0}\left( c_1 e_2 + \dot{v}_2 + \eta \, \text{sat}(s / \Phi) – z_3 \right) $$
This structure shows that the estimated disturbance $z_3$ is actively subtracted, effectively canceling its effect. The parameters $c_1$, $\eta$, and $\Phi$ for each attitude channel need to be tuned for optimal performance.

2.4 Stability Analysis

Consider the Lyapunov function candidate $V = \frac{1}{2} s^2$. Its time derivative is:
$$ \dot{V} = s \dot{s} = s \left( c_1 e_2 + \dot{v}_2 – (z_3 + b_0 u) \right) $$
Substituting the control law $u$:
$$ b_0 u = c_1 e_2 + \dot{v}_2 + \eta \, \text{sat}(s / \Phi) – z_3 $$
into the $\dot{V}$ equation yields:
$$ \dot{V} = s \left( c_1 e_2 + \dot{v}_2 – z_3 – (c_1 e_2 + \dot{v}_2 + \eta \, \text{sat}(s / \Phi) – z_3) \right) = -\eta \, s \, \text{sat}(s / \Phi) $$
Outside the boundary layer ($|s| > \Phi$), $\text{sat}(s/\Phi) = \text{sign}(s)$, so $\dot{V} = -\eta |s| < 0$ for $\eta>0$. Inside the boundary layer, the system is governed by continuous feedback, ensuring stability. Therefore, the system is driven to and maintained within the boundary layer of the sliding surface, guaranteeing ultimate boundedness of the tracking error. The ESO’s accurate estimation ensures that $z_3$ closely matches the real disturbance, making the equivalent control more accurate and allowing the use of a smaller switching gain $\eta$, which further reduces chattering.

3. Improved Particle Swarm Optimization Algorithm (GPSO)

The performance of the SM-ADRC is governed by multiple parameters: the ESO gains ($\beta_{01}, \beta_{02}, \beta_{03}$), the SMC parameters ($c_1, \eta, \Phi$), and the scaling factor $b_0$. Manually tuning these parameters for three attitude channels is impractical. We employ an enhanced Particle Swarm Optimization (PSO) algorithm to automate this optimization.

3.1 Standard PSO

In standard PSO, a swarm of particles, each representing a candidate solution (a vector of parameters), explores the D-dimensional search space. Each particle $i$ has a position $X_i = (x_{i1}, …, x_{iD})$ and a velocity $V_i = (v_{i1}, …, v_{iD})$. Particles remember their personal best position ($P_{best,i}$) and communicate to know the global best position ($G_{best}$) found by the swarm. The velocity and position update equations are:
$$
\begin{aligned}
V_i^{t+1} &= \omega V_i^t + c_1 r_1 (P_{best,i}^t – X_i^t) + c_2 r_2 (G_{best}^t – X_i^t) \\
X_i^{t+1} &= X_i^t + V_i^{t+1}
\end{aligned}
$$
where $\omega$ is the inertia weight, $c_1$ and $c_2$ are cognitive and social acceleration coefficients, and $r_1$, $r_2$ are random numbers in $[0,1]$.

3.2 Good Point Set Initialization

The initial distribution of particles significantly affects PSO’s exploration ability. Random initialization may lead to uneven coverage and poor diversity. We use the Good Point Set (GPS) method for initialization. A good point set $P_n(k)$ in the s-dimensional unit cube $G_s$ is defined such that its discrepancy $\phi(n)$ is very small, meaning the points are highly uniformly distributed. For a given population size $N$ and dimension $D$, the $k$-th particle’s $d$-th dimension is initialized as:
$$ x_{kd} = \{ r_d \cdot k \}, \quad k=1,2,…,N; \quad d=1,2,…,D $$
where $\{ \cdot \}$ denotes the fractional part, and $r = (r_1, r_2, …, r_D)$ is a carefully chosen good point vector (e.g., $r = (2\cos(2\pi k/5), 2\cos(2\pi k/7), …)$). This method ensures the initial swarm uniformly samples the search space, improving global search capability and convergence speed from the very first iteration.

3.3 Golden Sine Mutation Operator

To prevent premature convergence and enhance local exploitation, we introduce a mutation mechanism inspired by the Golden Sine Algorithm (Golden-SA). After the standard PSO update, a mutation is applied to particles with a certain probability $P_m$. The mutation updates a particle’s position using the Golden-SA formula:
$$ X_{i,j}^{t+1} = X_{i,j}^t \cdot |\sin(R_1)| + R_2 \cdot \sin(R_1) \cdot | \tau_1 \cdot G_{best,j} – \tau_2 \cdot X_{i,j}^t | $$
where $R_1 \in [0, 2\pi]$ and $R_2 \in [0, \pi]$ are random numbers. The coefficients $\tau_1$ and $\tau_2$ are derived from the golden ratio $\rho = (\sqrt{5}-1)/2 \approx 0.618$:
$$ \tau_1 = a \cdot \rho + b \cdot (1-\rho), \quad \tau_2 = a \cdot (1-\rho) + b \cdot \rho $$
with $a$ and $b$ typically set as $-\pi$ and $\pi$ respectively. This mutation guides particles towards the global best while introducing stochasticity based on sinusoidal patterns, effectively helping escape local optima and refining the search near promising regions.

3.4 Fitness Function for Controller Tuning

The optimization goal is to minimize a fitness function that quantifies the tracking performance of the quadrotor drone’s attitude controller. We use the Integral of Time-weighted Absolute Error (ITAE) for its good selectivity in reducing settling time and overshoot. For each attitude channel, the fitness is computed over a simulation run:
$$ J = \int_0^{T_{sim}} t \cdot ( |e_\phi(t)| + |e_\theta(t)| + |e_\psi(t)| ) \, dt $$
where $T_{sim}$ is the simulation time, and $e_\phi, e_\theta, e_\psi$ are the tracking errors for roll, pitch, and yaw, respectively. The GPSO algorithm seeks the parameter set that minimizes $J$.

4. Simulation Results and Analysis

The proposed GPSO-optimized SM-ADRC (GPSO-SMADRC) is implemented in MATLAB/Simulink. Its performance is compared against: 1) Standard ADRC with PSO-tuned parameters (PSO-ADRC), 2) The proposed SM-ADRC with standard PSO tuning (PSO-SMADRC), and 3) An Adaptive Supertwisting Sliding Mode Controller (A-ST-SMC), which is another advanced robust controller. The outer-loop position controller is kept as a standard PSO-tuned ADRC for all tests to ensure a fair comparison focused on the inner-loop attitude control.

4.1 Parameter Optimization Results

The GPSO and standard PSO were run to optimize the SM-ADRC parameters for the roll, pitch, and yaw channels. The optimized parameters are listed in Table 2. It can be observed that the GPSO found distinct parameter sets for different channels, reflecting their differing dynamics (e.g., different moments of inertia for yaw).

Table 2: Optimized SM-ADRC Parameters by GPSO and PSO
Parameter Description GPSO-SMADRC (Roll) GPSO-SMADRC (Pitch) GPSO-SMADRC (Yaw) PSO-SMADRC (Typical)
$\beta_{01}$ ESO gain 1 210.00 223.60 223.65 ~200
$\beta_{02}$ ESO gain 2 2041.00 2058.00 2088.00 ~1700
$\beta_{03}$ ESO gain 3 3042.00 3080.00 3080.00 ~2600
$c_1$ Sliding surface coeff. 26.62 45.88 33.54 ~50
$\eta$ Switching gain 1.20 1.00 1.75 ~1.00
$\Phi$ Boundary layer 0.21 0.65 0.85 ~0.01

4.2 Attitude Control Performance

Test 1: Double Step Response without disturbance. The desired roll, pitch, and yaw angles are commanded to change from 0° to +5° at t=1s, and then from +5° to -5° at t=5s. The results are summarized in Table 3. GPSO-SMADRC consistently achieved the smallest average tracking error across all three channels, demonstrating the benefit of both the controller structure and the enhanced optimization. It also showed the fastest convergence with minimal overshoot.

Table 3: Average Attitude Error (Degrees) – No Disturbance
Control Method Roll Error Pitch Error Yaw Error
GPSO-SMADRC 0.27 0.39 0.34
PSO-SMADRC 0.39 0.43 0.36
A-ST-SMC 0.28 0.31 0.41
PSO-ADRC 0.46 0.56 0.72

Test 2: Double Step Response with Gaussian White Noise disturbance. To evaluate robustness, Gaussian white noise (power = 0.1) was injected into each attitude channel. The results in Table 4 show that while all controllers’ performance degraded, GPSO-SMADRC maintained the lowest error increase (percentage-wise) and the smallest absolute errors. This confirms its superior disturbance rejection capability, a critical feature for a quadrotor drone operating in windy or turbulent conditions.

Table 4: Average Attitude Error (Degrees) – With Noise Disturbance
Control Method Roll Error (Increase) Pitch Error (Increase) Yaw Error (Increase)
GPSO-SMADRC 0.29 (7.4%) 0.41 (5.1%) 0.39 (14.7%)
PSO-SMADRC 0.45 (15.4%) 0.59 (37.2%) 0.44 (22.2%)
A-ST-SMC 0.32 (14.3%) 0.38 (22.6%) 0.49 (19.5%)
PSO-ADRC 0.54 (17.4%) 0.57 (1.8%) 0.83 (15.3%)

4.3 Trajectory Tracking Performance

A more practical test involves tracking a circular ground target trajectory at a constant altitude of 10 meters, under the influence of the same Gaussian white noise disturbance. The desired trajectory is:
$$ x_d(t) = 5\cos(0.2t), \quad y_d(t) = 5\sin(0.2t), \quad z_d(t) = 10 $$
The tracking trajectories in the XY-plane are compared. The GPSO-SMADRC controller enabled the quadrotor drone to latch onto the desired circle quickly and maintain the tightest tracking with minimal deviation, as quantified in Table 5. The smaller attitude errors (Table 6) directly translate to more accurate force vector orientation, resulting in superior position tracking. This demonstrates the effectiveness of the proposed method in a comprehensive flight task.

Table 5: Position Tracking Errors – Circular Trajectory with Noise
Control Method Max Error X (m) Max Error Y (m) Avg Error X (m) Avg Error Y (m) Avg Error Z (m)
GPSO-SMADRC 0.216 0.181 0.017 0.013 0.015
PSO-SMADRC 0.232 0.193 0.027 0.028 0.021
A-ST-SMC 0.355 0.188 0.025 0.021 0.024
PSO-ADRC 0.479 0.543 0.193 0.217 0.072
Table 6: Attitude Errors During Trajectory Tracking
Control Method Avg Roll Error (°) Avg Pitch Error (°) Avg Yaw Error (°)
GPSO-SMADRC 0.21 0.13 0.15
PSO-SMADRC 0.33 0.25 0.24
A-ST-SMC 0.35 0.23 0.21
PSO-ADRC 0.45 0.44 0.32

5. Conclusion

This article presented a novel control strategy for quadrotor drones that addresses the challenges of precise attitude regulation and robust trajectory tracking in the presence of disturbances. The core of the strategy is the Sliding Mode Active Disturbance Rejection Controller (SM-ADRC), which ingeniously integrates the disturbance estimation prowess of ADRC’s Extended State Observer with the robust convergence properties of Sliding Mode Control. This fusion effectively mitigates the chattering problem often associated with SMC while enhancing the dynamic response compared to traditional ADRC. To overcome the significant challenge of tuning the multiple parameters of this hybrid controller, an improved Particle Swarm Optimization algorithm (GPSO) was developed, incorporating Good Point Set initialization for better exploration and a Golden Sine mutation operator to avoid local optima and refine the search.

Simulation studies under both isolated attitude step commands and integrated trajectory tracking tasks, with and without injected noise disturbances, validated the effectiveness of the proposed GPSO-SMADRC framework. The key findings are:

  1. The SM-ADRC structure itself provides superior tracking accuracy and faster dynamic response compared to standard ADRC and performs competitively or better than another advanced robust controller (A-ST-SMC).
  2. The GPSO optimization algorithm successfully automates the parameter tuning process and finds a superior set of parameters compared to the standard PSO, leading to measurable performance gains in convergence speed and steady-state error.
  3. The integrated GPSO-SMADRC system demonstrates strong disturbance rejection capabilities, maintaining low tracking errors even when subject to Gaussian white noise, which is crucial for the reliable operation of a quadrotor drone in real-world environments.

Therefore, the proposed method offers a viable and effective solution for high-performance flight control of quadrotor drones. Future work will focus on real-time implementation on embedded hardware, testing with more realistic aerodynamic disturbance models (e.g., wind fields), and potentially extending the optimization to jointly tune both the inner-loop attitude and outer-loop position controllers.

Scroll to Top