<figure><img src="image_1.png" /></figure>

HAL
open science

# Application of Reduced-Order Robust Control to Multi-Rotor Stabilization and Guidance

Mohamad Hachem, Clément Roos, Thierry Miquel

► To cite this version:

Mohamad Hachem, Clément Roos, Thierry Miquel. Application of Reduced-Order Robust Control to Multi-Rotor Stabilization and Guidance. 2024 CEAS EuroGNC conference, Jul 2024, Bristol, United Kingdom. hal-04631345

HAL Id: hal-04631345

https://enac.hal.science/hal-04631345v1

Submitted on 2 Jul 2024

HAL is a multi-disciplinary open access
archive for the deposit and dissemination of sci-
entific research documents, whether they are pub-
lished or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.

L'archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d'enseignement et de
recherche français ou étrangers, des laboratoires
publics ou privés.

<figure><img src="image_2.png" /></figure>

Distributed under a Creative Commons Attribution 4.0 International License
# Application of Reduced-Order Robust Control to Multi-Rotor Stabilization and Guidance

**Mohamad Hachem** ENAC, Université de Toulouse, Toulouse, France. mohamad.hachem@enac.fr

**Clément Roos** DTIS, ONERA, Université de Toulouse, Toulouse, France. clement.roos@onera.fr

**Thierry Miquel** ENAC, Université de Toulouse, Toulouse, France. thierry.miquel@enac.fr

## ABSTRACT

This paper presents a cascaded robust control scheme for fully actuated hexacopter drones. The system model is first derived using Newton-Euler equations and subsequently linearized. $H_\infty$ synthesis is then used to design controllers for thrust, stabilization and guidance dynamics. A structured constrained formulation is used to address the problem, allowing for a significant reduction in the controllers’ order compared to the classical full-order approach, while keeping the same robustness and performance levels. $\mu$-analysis is then applied to further evaluate the robustness properties of the closed-loop system in the presence of parametric uncertainties. The designed controllers are finally tested on a nonlinear simulator using MATLAB. Two main operational scenarios are considered: hovering with a cable-suspended pendulum and flying through predefined waypoints, each time in the presence of external perturbations.

**Keywords:** Unmanned Aerial Vehicle, Structured $H_\infty$ Control, Stabilization and Guidance, Fully Actuated Hexacopter, Cable Suspended Pendulum.

## 1 Introduction

Ensuring the safe and reliable flight of Micro Aerial Vehicles (MAVs) has been a significant driving force behind the development and application of advanced control techniques. MAVs indeed find their place in various multidisciplinary fields, where they assume pivotal roles in tasks such as inspection, rescue operations, package transportation and photography. To execute these tasks effectively, particularly in the presence of external perturbations such as gusts and winds, their control systems must be able to reduce the impact of external disturbances as well as noisy measurements. The performance of a drone is not only influenced by control design, but also by its geometric and hardware characteristics, and establishing a connection between the two is imperative to attain optimal performances. Multi-rotor systems have gained widespread acceptance due to their distinctive features, including the ability to achieve vertical takeoffs and landings, stationary hovering, and their mechanical simplicity. These vehicles are categorized based on their actuation level, i.e. the way to control their six degrees of freedom (6DoF). They can be under-actuated (UA), fully-actuated (FA) or over-actuated (OA), depending on the number of actuators employed for control and the number of virtual control inputs. In numerous applications, the design and operation of UA systems benefit from the use of well-tested control algorithms. However, the potential applications of MAVs can be further expanded by achieving full actuation [1], to improve robustness and enhance maneuverability. Furthermore, OA vehicles can be leveraged to enhance reliability in the face of mechanical failures and external disturbances. Both FA and OA systems have the ability to be controlled either by decoupling their rotational and translational movements, or by assuming coupled
dynamics. This work focuses on developing and updating existing control architectures for UA systems, so as to apply them to fully actuated hexacopter drones (FA-Hex), such as the one shown in Fig. 1.

<figure><img src="image_3.png" /><figcaption>Fig. 1 Fully Actuated Hexacopter</figcaption></figure>

## 1.1 Literature Review

Depending on the intended application, various control algorithms and architectures can be implemented to control FA-Hex drones. First, nonlinear controllers can be used to independently regulate the altitude and the attitude dynamics. For example, a feedback linearization controller is employed in [2] with a linear PID controller. The authors introduce a decoupling dynamic scheme, with the measurements of the drone's position and altitude reference. Furthermore, the combined use of a feedback linearization controller and a reference governor is discussed in [3] to mitigate the risk of actuator saturation. Conversely, the work presented in [4] proposes a control scheme for FA-Hex drones, allowing integration with the established scheme for UA vehicles. The proposed approach involves predefined desired tasks and specifying the desired altitude for the drone to be maintained during its flight. In terms of robust nonlinear controllers, [5] introduces a backstepping technique for position dynamics and a geometric control for attitude dynamics to handle external disturbances affecting both the position and attitude of the vehicle. Nonlinear model predictive controllers (NMPC) are employed in [6, 7] to effectively manage disturbances, while also ensuring compliance with safety constraints. Additionally, a geometric Port-Hamiltonian approach is used in [8], in conjunction with an observer-based wrench/impedance controller. The controller employs a wrench observer to estimate the interaction wrench, eliminating the need for a force/torque sensor, and providing a practical and adaptable control solution for FA-Hex drones. The author in [9] proposes a geometric approach involving the special Euclidean group of third dimension, SE(3), for a precise position tracking. To ensure robustness, Lyapunov techniques are applied to guarantee position tracking, even when dealing with challenging full-pose reference trajectories.

As highlighted above, most of the work in the field of FA-Hex control uses nonlinear techniques, which are known to enable agile maneuvers and applications. However, when drones hover, they tend to be close to their equilibrium points. In such situations, linear controllers can be efficient alternatives to make the control architecture simpler, while ensuring safe flight by attenuating disturbances. One of the most famous tools for designing such controllers is $H_\infty$ control, valued for its capacity to find an optimal controller with predefined performances and characteristics. In [10], the authors design a full-order linear $H_\infty$ controller to manage a UA quadcopter, which is then compared to an optimal Linear Quadratic (LQ) controller in terms of robustness. Additionally, trajectory tracking controllers are proposed in [11], based on a $H_2/H_\infty$ approach involving Linear Matrix Inequality (LMI) techniques. Another $H_\infty$ controller is also designed for attitude tracking in the presence of uncertainties and external perturbations. The Linear Parameter Varying (LPV) framework is considered in [12–14]. The drone dynamics are represented as an affine system that can be converted into a convex polytopic form allowing to apply an $H_\infty$ gain scheduling control technique. Finally, [15] utilizes feedback linearization combined with μ-analysis and $H_\infty$ techniques to control the dynamics of a quadcopter.
## 1.2 Contribution

As highlighted in Section 1.1, FA systems operate mostly with nonlinear controllers. A few studies have been carried out using linear techniques, but they mainly focus on quadcopters. In a scenario where a drone hovers within a confined environment, for example to deliver emergency kits or capture payloads, ensuring the safe execution of missions despite strong gusts or winds is essential. Linear control techniques such as $H_\infty$ synthesis seem particularly attractive, since they are known to provide very good guarantees of robustness and disturbance rejection. The use of FA-Hex drones is also appealing, as they provide improved performance and maneuverability compared to UA drones. In this context, the main contribution of this paper is to propose a structured $H_\infty$-based cascaded loop control architecture for FA-Hex drones, which has hardly been explored in the literature within this specific application context. It is shown that a 6th-order controller is sufficient to control the 6DoF, while keeping optimal performance. The proposed architecture can also be extended to OA systems, offering increased reliability in cases of motor failure and saturation, just by modifying the control allocation matrix. Furthermore, the cascaded scheme presented in this paper is derived from an existing UA drone control architecture [16, 17], therefore offering more flexibility for adapting the existing autopilot frameworks. In contrast to the existing control architectures for FA drones, where nonlinear controllers are mainly used to control the drone dynamics independently, the dynamics are coupled in the proposed architecture and the controller is tuned to use mainly lateral forces before starting to bank. Using this approach, the drone can attenuate disturbances, while avoiding reaching saturation for both translational and rotational dynamics.

The paper is organized as follows. The dynamical modeling of the drone is introduced in Section 2, and the $H_\infty$ control problem is presented with the proposed cascaded architecture in Section 3. Numerical validation of the linearized model of the drone and the designed controller is then shown in Section 4. Finally, closed-loop simulation results are shown for two different scenarios in Section 5.

# 2 Dynamical Modeling

## 2.1 Nonlinear Model of the FA-Hex

To develop a model-based controller, it is crucial to obtain a dynamical model of the considered FA-Hex. The Newton-Euler method is used in this paper to describe both the drone's translational and rotational dynamics [18]. The latter are characterized by taking the following assumptions into account:

* The drone is a rigid body.

* The drone is symmetric with respect to the axis $z_B$ (see Fig. 1), and its inertia matrix is diagonal and denoted as $I_B = diag(I_{xx}, I_{yy}, I_{zz})$.

The modeling approach for the drone incorporates two frames: the inertial frame $F_I$ characterized by its axes $(x_I, y_I, z_I)$, and the body frame $F_B$ characterized by its axes $(x_B, y_B, z_B)$. A visual representation of these frames can be seen in Fig. 1. The relation between $F_I$ and $F_B$ is defined by the Euler angles $\mu = [\varphi, \theta, \psi]^T$ and the corresponding rotation matrix $R(\mu)$ defined as:

$$R(\mu) = \begin{bmatrix} C_{\psi}C_{\theta} & C_{\psi}S_{\theta}S_{\varphi} - S_{\psi}C_{\varphi} & C_{\psi}S_{\theta}C_{\varphi} + S_{\psi}S_{\varphi} \\ S_{\psi}C_{\theta} & S_{\psi}S_{\theta}S_{\varphi} + C_{\psi}C_{\varphi} & S_{\psi}S_{\theta}C_{\varphi} - C_{\psi}S_{\varphi} \\ -S_{\theta} & C_{\theta}S_{\varphi} & C_{\theta}C_{\varphi} \end{bmatrix} \quad (1)$$

where $C_* = \cos(*)$ and $S_* = \sin(*)$. The drone's position in the inertial frame is indicated by $\xi = [x, y, z]^T$, and its translational velocity is denoted as $v = [v_x, v_y, v_z]^T$. In the body frame, the angular velocity is represented by $\Omega = [p, q, r]^T$. The relation between the Euler rates $\dot{\mu}$ and the angular body
rates $\Omega$ is established through the transformation matrix $W(\mu)$. This relationship can be expressed as:

$$ \dot{\mu} = W(\mu)^{-1}\Omega \Leftrightarrow \begin{bmatrix} \dot{\varphi} \\ \dot{\theta} \\ \dot{\psi} \end{bmatrix} = \begin{bmatrix} 1 & S_{\varphi}T_{\theta} & C_{\varphi}T_{\theta} \\ 0 & C_{\varphi} & -S_{\varphi} \\ 0 & S_{\varphi}/C_{\theta} & C_{\varphi}/C_{\theta} \end{bmatrix} \begin{bmatrix} p \\ q \\ r \end{bmatrix} \quad (2) $$

where $T_* = tan(*)$. Using Newton's laws of motion, the system dynamics are expressed as follows in $\mathcal{F}_I$:

$$ \dot{\xi} = v \quad (3) $$

$$ \dot{v} = \begin{bmatrix} 0 \\ 0 \\ g \end{bmatrix} + \frac{1}{m} R(\mu) \sum_{i=1}^{6} F_{B_i} \quad (4) $$

$$ \dot{\Omega} = I_B^{-1} \left( \sum_{i=1}^{6} \tau_{B_i} - \Omega \times I_B \Omega \right) \quad (5) $$

Here, $\times$ is the cross product operator, whereas $m$, $F_{B_i} = [F_{x_i} F_{y_i} F_{z_i}]^T$ and $\tau_{B_i} = [\tau_{x_i} \tau_{y_i} \tau_{z_i}]^T$ represent the drone's mass, and the forces and torques exerted by the $i$-th motor expressed in the body frame, respectively. $F_{B_i}$ and $\tau_{B_i}$ depend on the propeller's angular speed $\omega_i$, as well as the motor's orientation $\alpha_i$ in the drone's geometric frame, and the tangential orientation $\beta$ defined as the angle between the motor's axis $z_{m_i}$ and the drone's axis $z_B$ [19].

## 2.2 Model Linearization

The $H_\infty$ control theory primarily deals with linear systems. However, the multi-rotor system described in Section 2.1 is inherently nonlinear, and includes interconnections between the drone's dynamics. Its nonlinear model, described by equations (2-5), is represented in a general nonlinear form with states $x = [\xi^T, v^T, \mu^T, \Omega^T]^T$ and inputs $u = [\sum_i F_{B_i}^T, \sum_i \tau_{B_i}^T]^T$ as follows:

$$ \dot{x} = f(x, u) \quad (6) $$

It should therefore be linearized around a given equilibrium point defined as $(x_e, u_e)$, such that $0 = f(x_e, u_e)$. The linearization of the function $f$ around this defined equilibrium can be performed using a first-order Taylor expansion:

$$ f(x, u) \approx \left. \frac{\partial f}{\partial x} \right|_{x_e, u_e} (x - x_e) + \left. \frac{\partial f}{\partial u} \right|_{x_e, u_e} (u - u_e) \quad (7) $$

The linearized model is then represented in the state-space form:

$$ \delta \dot{x} = A \delta x + B \delta u \quad (8) $$

where $A \in \mathbb{R}^{12 \times 12}$, $B \in \mathbb{R}^{12 \times 6}$, $\delta x = x - x_e$ and $\delta u = u - u_e$. Given the scenarios considered in this paper (see Section 5), the chosen equilibrium point corresponds to the drone hovering with zero Euler angles, i.e. $\bar{\xi}$ constant, $\bar{v} = 0$, $\bar{\mu} = 0$ and $\bar{\Omega} = 0$. It can be assumed without loss of generality that $\bar{\xi} = 0$, therefore $x_e = 0$. It is then easily shown that $u_e = [0, 0, mg, 0, 0, 0]^T$, which means that a vertical force should be applied to compensate the weight. The resulting $A$ and $B$ matrices are detailed in Sections 3.2 and 3.3. Most linearized dynamics being decoupled, they can be broken down into several sub-matrices corresponding to vertical and horizontal translations – Eqs. (13) and (14) – as well as rotations – Eq. (15). It is finally assumed that all states of the drone can be measured using a data fusion system connected to different sensors (IMU, GPS, barometer and motion capture system for indoor flights), leading to the transfer function $G(s) = C (sI_{12 \times 12} - A)^{-1} B + D$ of the FA-Hex, where $C = I_{12 \times 12}$ and $D = 0_{12 \times 6}$.
## 3 Cascaded Controller Architecture

The proposed control architecture follows a cascaded scheme consisting of two main control loops: an inner-loop and an outer-loop, as depicted in Fig. 2. Such an architecture is mainly used for UA systems, and it is extended in this paper to be used in a FA framework. The outer-loop generates the desired thrust (i.e. vertical force) $F_z$ and the lateral forces $F_x$ and $F_y$, which are sent to the control allocation, as well as the desired Euler angles $\phi_{ref}$ and $\theta_{ref}$, which are transferred to the inner-loop. The latter is responsible for the stabilization of the drone and the tracking of the desired Euler angles. It generates the desired torques $\tau_\phi$, $\tau_\theta$, $\tau_\psi$, which are sent to the control allocation. The latter finally maps the virtual control inputs ($F_x$, $F_y$, $F_z$, $\tau_\phi$, $\tau_\theta$, $\tau_\psi$) to the actual control inputs ($\omega_1$, $\omega_2$, ..., $\omega_6$), which correspond to the angular speeds of the individual motors. All controllers are designed in this section using structured $H_\infty$ synthesis, based on the linearized model of the drone presented in Section 2.2.

<figure><img src="image_4.png" /><figcaption>Fig. 2 Cascaded Control Architecture</figcaption></figure>

### 3.1 $H_\infty$ Control Problem Formulation

The main challenge is to find a linear controller $K(s)$ that not only stabilizes the dynamical system $G(s)$, but also minimizes the impact of exogenous inputs on predefined performance metrics. This problem can be rephrased using the Linear Fractional Transformation (LFT) as depicted in Fig. 3, where each considered performance metric is represented by a transfer between an external input $w_i(t)$ and an external output $z_i(t)$. Solving the general $H_\infty$ control problem then results in finding the controller $K(s)$ that stabilizes the closed-loop interconnection between the generalized plant $P(s)$ (detailed in Fig. 4 for the considered application) and $K(s)$, and minimizes the performance index $\gamma$ under the following $L_2$ induced norm constraint:

$$ \|z(t)\|_2 \le \gamma \|w(t)\|_2 \quad (9) $$

This is equivalent to minimizing the $H_\infty$ norm of the transfer function $T_{w \to z}(s) = F_l(P(s), K(s))$ between $w$ and $z$, where $F_l$ denotes the lower LFT and the $H_\infty$ norm of a linear system $F(s)$ is defined in Eq. (10), where $\bar{\sigma}$ is the maximum singular value.

$$ \|F(s)\|_{\infty} = \sup_{\omega \in \mathbb{R}} \bar{\sigma}[F(j\omega)] \quad (10) $$

In this paper, the principle goal is to stabilize the system and ensure four objectives: minimize the reference tracking error, avoid control input saturation, and reduce the impact of noise and disturbances on the tracking error. To achieve these goals, the generalized plant is formulated as depicted in Fig. 4, where
<figure><img src="image_5.png" /><figcaption>Fig. 3 Generalized Plant Configuration</figcaption></figure>

<figure><img src="image_6.png" /><figcaption>Fig. 4 $H_{\infty}$ Problem Formulation Scheme</figcaption></figure>

$G(s) = [G_1(s), G_2(s)]^T$ is the linearized model of the drone obtained in Section 2.2 with two outputs, position and velocity, and $(W_e(s), W_d, W_n, W_u)$ are four weighting templates related to the aforementioned objectives. These templates are used to minimize the $H_{\infty}$ norm of four sensitivity functions:

* The sensitivity function $S(s)$ between $r(t)$ and $z_1(t)$, weighted by $W_e(s)$, minimizes system tracking errors.

* The sensitivity function $S_d(s)$ between $d(t)$ and $z_1(t)$, employing the weighting template $W_d$, rejects input disturbances affecting system tracking errors.

* The sensitivity function $S_n(s)$ between $n(t)$ and $z_1(t)$, utilizing the weighting template $W_n$, attenuates the impact of measurement noises on system tracking errors.

* The sensitivity function $KS(s)$ between $r(t)$ and $z_2(t)$, with $W_u$ as the weighting template, works on minimizing the risk of reaching actuator saturation due to variations in the reference signal.

The considered control problem is reformulated as an LFT structured problem, illustrated in Fig. 3, where $w(t) = [r(t)^T, d(t)^T, n(t)^T]^T$ is the exogenous input vector, $z(t) = [z_1(t)^T, z_2(t)^T]^T$ is the external output vector, and $\bar{y} = [r(t) - y(t), \dot{y}]^T$ with $\dot{y}$ the derivative of the system output. The generalized plant $P(s)$, shown in Eq. (11), includes the system's dynamics and all the weighting templates:

$$ P(s) = \begin{bmatrix} W_e(s) & -W_e(s)G_1(s)W_d & -W_e(s)W_n & -W_e(s)G_1(s) \\ 0 & 0 & 0 & W_u \\ 1 & -G_1(s)W_d & -W_n & -G_1(s) \\ 0 & G_2(s)W_d & 0 & G_2(s) \end{bmatrix} \quad (11) $$

Classically, an optimal controller is computed, which minimizes the value of $\gamma$ such that $||T_{w \to z}||_{\infty} \le \gamma$. It can be obtained by solving either Linear Matrix Inequalities (LMI) or algebraic Riccati equations, as discussed in [20]. Nevertheless, it is important to note that full-order controllers are obtained, in the sense that their order is equal to that of $P(s)$, which is usually high. Moreover, the following relation always holds:

$$ ||T_{w \to z}(s)||_{\infty} \le \gamma \Rightarrow \begin{cases} ||T_{r \to z_1}(s)||_{\infty} = ||W_e(s)S(s)||_{\infty} \le \gamma \\ ||T_{d \to z_1}(s)||_{\infty} = ||W_d S_d(s)||_{\infty} \le \gamma \\ ||T_{n \to z_1}(s)||_{\infty} = ||W_n S_n(s)||_{\infty} \le \gamma \\ ||T_{r \to z_2}(s)||_{\infty} = ||W_u KS(s)||_{\infty} \le \gamma \end{cases} \quad (12) $$

but the converse if usually not true. So minimizing a single transfer function between all exogenous inputs and outputs does not necessary lead to the lowest possible value of $\gamma$, which can potentially impact the overall system performance. These two problems are tackled by solving the $H_{\infty}$ control problem using a non-smooth optimization technique, which makes it possible to freely choose the structure and the order of the controller, and to directly minimize $\gamma$ in the right-hand side of Eq. (12).
As previously mentioned, four weighting templates are utilized here to achieve the desired performance. They contribute to shaping the system's response, enhancing its robustness against disturbances and noises. They are designed as follows:

* $W_e$ is expressed as $\frac{s}{s+\omega_b\epsilon_e}$, where $M_s$ specifies the robustness margin with maximum modulus gain, $\omega_b$ defines the system's tracking speed and disturbance rejection capability, and $\epsilon_e$ accounts for steady-state tracking error.

* $W_u, W_d, W_n$ are scalar gains tailored to avoid input saturation and attenuate disturbances and noises.

## 3.2 Outer-Loop Controller

Following the linearization of the system around the hovering equilibrium point, it appears that the translational dynamics can be effectively decomposed into two subsystems – vertical and horizontal motions – controlled by two distinct controllers: thrust and guidance. Let us consider the thrust controller first. The translational motion along the z-axis is characterized by the linearized Eq. (13), showing a Single-Input Multiple-Output (SIMO) system:

$$ \begin{bmatrix} \dot{z} \\ \dot{v}_z \end{bmatrix} = \begin{bmatrix} 0 & 1 \\ 0 & 0 \end{bmatrix} \begin{bmatrix} z \\ v_z \end{bmatrix} + \begin{bmatrix} 0 \\ \frac{1}{m} \end{bmatrix} F_z \quad (13) $$

The controller is designed as depicted in Fig. 4, with two inputs ($z_{ref} - z$) and $v_z$, and one output $F_z$. When addressing the problem using the classical approach, a full-order controller of order three is obtained, since the design plant $P(s)$ is composed of the second-order model (13) and the first-order template $W_e(s)$, all the other templates being constant. However, by formulating the problem with structured constraints and solving it using a non-smooth optimization technique, the controller's order decreases to one, while achieving a nearly identical value of $\gamma$.

Considering the guidance controller, the translational dynamics in the lateral axes $(x, y)$ are represented by Eq. (14), depicting a Multiple-Input Multiple-Output (MIMO) system:

$$ \begin{bmatrix} \dot{x} \\ \dot{y} \\ \dot{v}_x \\ \dot{v}_y \end{bmatrix} = \begin{bmatrix} 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 1 \\ 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 \end{bmatrix} \begin{bmatrix} x \\ y \\ v_x \\ v_y \end{bmatrix} + \begin{bmatrix} 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 \\ \frac{1}{m} & 0 & 0 & -g \\ 0 & \frac{1}{m} & g & 0 \end{bmatrix} \begin{bmatrix} F_x \\ F_y \\ \varphi \\ \theta \end{bmatrix} \quad (14) $$

It can be seen that there exists a coupling between the translational and rotational dynamics, i.e. between $x$ and $\theta$, as well as between $y$ and $\varphi$. The designed controller has four inputs ($x_{ref} - x$), ($y_{ref} - y$), $v_x$, and $v_y$, and four outputs $F_x, F_y, \varphi_{ref}$, and $\theta_{ref}$. Two first-order templates $W_e(s)$ are used, as depicted in Fig. 4, leading to a sixth-order controller in the full-order case (corresponding to a fourth-order model and the two first-order templates). The controller's order can be reduced to second-order using a structured approach, with almost the same performance level $\gamma$.

## 3.3 Inner-Loop Controller

The stabilization dynamics are described by Eq. (15). The inner-controller designed for these subsystems has six inputs ($\varphi_{ref} - \varphi$), ($\theta_{ref} - \theta$), ($\psi_{ref} - \psi$), $p, q$, and $r$, and provides three outputs $\tau_\varphi, \tau_\theta$, and $\tau_\psi$. It should be sufficiently faster than the outer-controller to be able to track $\varphi_{ref}$ and $\theta_{ref}$. A first-order template $W_e(s)$ is used for each of the three dynamic channels, yielding a ninth-order controller in the full-order case (corresponding to a sixth-order model and three first-order templates). A third-order controller is obtained with the structured approach, which is again significantly less.
$$ \begin{bmatrix} \dot{\varphi} \\ \dot{\theta} \\ \dot{\psi} \\ \dot{p} \\ \dot{q} \\ \dot{r} \end{bmatrix} = \begin{bmatrix} 0 & 0 & 0 & 1 & 0 & 0 \\ 0 & 0 & 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 0 & 0 & 1 \\ 0 & 0 & 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 & 0 & 0 \end{bmatrix} \begin{bmatrix} \varphi \\ \theta \\ \psi \\ p \\ q \\ r \end{bmatrix} + \begin{bmatrix} 0 & 0 & 0 \\ 0 & 0 & 0 \\ 0 & 0 & 0 \\ \frac{1}{I_{xx}} & 0 & 0 \\ 0 & \frac{1}{I_{yy}} & 0 \\ 0 & 0 & \frac{1}{I_{zz}} \end{bmatrix} \begin{bmatrix} \tau_{\varphi} \\ \tau_{\theta} \\ \tau_{\psi} \end{bmatrix} \quad (15) $$

## 3.4 Control Allocation

The mapping between the virtual control inputs $v = [F_x, F_y, F_z, \tau_\varphi, \tau_\theta, \tau_\psi]^T$ and the actual control inputs $\omega = [\omega_1, \dots, \omega_6]^T$ can be achieved by solving:

$$ v = M\omega \quad (16) $$

where $M \in \mathbb{R}^{6 \times 6}$ represents the control effectiveness matrix. In general, the allocation matrix $M$ is closely related to the specific geometric configuration of the drone. It is calculated by projecting the forces and torques generated by each motor onto the relevant axes of the drone, see [19] for specific information about the allocation matrix for this type of drone.

Various algebraic methods can be used to solve Eq. (16). In this application, $M$ is invertible, which simplifies the process to some extent. But although this inversion approach is generally effective, it is crucial to account for situations where the controller might request values beyond the attainable moment set (AMS) and attainable force set (AFS) of the drone, potentially leading to actuator saturation. Prioritizing the virtual inputs along the drone's axes can help mitigate overall actuator saturation by ensuring that virtual inputs included in the AMS and AFS are produced. This is important, since all moments and forces within the AMS and AFS can be realized without reaching actuator saturation. But the key with control allocation is then to guarantee that such a solution is actually obtained. Classical methods, like weighted pseudo-inverse, might not always guarantee this. More intricate techniques have therefore been developed, such as weighted-optimization based solutions (Weighted Least Square Method) [21]. The control architecture used in this work employs a Weighted-Least Square optimization problem formulation, as depicted by [22]. The general Eq. (16) is solved subject to the constraints $\omega_{\min} \le \omega_i \le \omega_{\max}$, $i = 1, \dots, 6$.

## 4 Numerical Validation

The numerical validation of the drone model and the designed controllers is conducted using MATLAB, taking into account the numerical values outlined in Table 1. The parameters $l, k_t$ and $k_q$ refer to the length between each motor and the center of gravity of the drone, and to the coefficients of the thrust and drag exerted by each motor, see [19] for complete equations. $I_{xx}$ and $I_{yy}$ are not equal due to the chosen principle axes in the body frame, as shown in Fig. 1.

<table><caption>Table 1 Drone Simulation Parameters</caption><tr><td>$m = 0.6656$ kg</td><td>$l = 0.15$ m</td><td>$g = 9.81$ m/s<sup>2</sup></td></tr><tr><td>$k_t = 3.4 \times 10^{-5}$ N.s<sup>2</sup></td><td>$k_q = 3.4 \times 10^{-6}$ N.m.s<sup>2</sup></td><td>$I_{xx} = 0.0411$ kg.m<sup>2</sup></td></tr><tr><td>$I_{yy} = 0.0478$ kg.m<sup>2</sup></td><td>$I_{zz} = 0.0599$ kg.m<sup>2</sup></td><td>$\omega_{max} = 600$ rad/s</td></tr></table>

The templates used for $H_\infty$ control design are detailed in Table 2. It is worth noting that the yaw controller, responsible for managing the heading ($\psi$) of the vehicle, is designed separately from the stabilization controller for roll and pitch ($\varphi, \theta$). Furthermore, the guidance controller utilizes two control
input templates $W_{u1}$ and $W_{u2}$, and two disturbance templates $W_{d1}$ and $W_{d2}$, since each dynamic contains two inputs, ($F_x$, $\theta$) and ($F_y$, $\phi$) for the translation in x and y axes respectively.

<table><caption>Table 2 Templates used to Design the $H_\infty$ Controllers</caption><tr><td>Thrust Controller</td><td>$W_e(s) = \frac{s}{s+0.00015\pi} + 0.3\pi$</td><td>$W_u = \frac{2}{25}$</td><td>$W_d = 1$</td><td>$W_n = 0.5$</td></tr><tr><td>Guidance Controller</td><td>$W_e(s) = \frac{s}{s+0.0002\pi} + 0.2\pi$</td><td>$W_{u1} = \frac{2}{12}$, $W_{u2} = \frac{1}{0.3}$</td><td>$W_{d1} = 5$, $W_{d2} = 0.1$</td><td>$W_n = 0.6$</td></tr><tr><td>Stabilization Controller (Roll and Pitch)</td><td>$W_e(s) = \frac{s}{s+0.006\pi} + 0.6\pi$</td><td>$W_u = 1$</td><td>$W_d = 0.1$</td><td>$W_n = 0.1$</td></tr><tr><td>Stabilization Controller (Yaw)</td><td>$W_e(s) = \frac{s}{s+0.00016\pi} + 0.16\pi$</td><td>$W_u = \frac{0.1}{0.2}$</td><td>$W_d = 0.5$</td><td>$W_n = 0.1$</td></tr></table>

## 4.1 Linearized Model Validation

Before proceeding with the design of linear robust controllers and their validation on the nonlinear drone model, it is crucial to ensure that the linearized model of Section 2.2 accurately represents the initial nonlinear system of Section 2.1 near the equilibrium point. To confirm this, an open-loop test is conducted by applying a step input [$F_x$, $F_y$, $F_z$, $\tau_\varphi$, $\tau_\theta$, $\tau_\psi$]$^T$ = [2, -2, -11.523, 0.01, -0.01, 0.005]$^T$. The results are presented in Fig. 5 and Fig. 6 and confirm that the linearized system effectively describes the nonlinear model in the neighborhood of the specified equilibrium point. However, a significant deviation, compared to other dynamics, is observed in the yaw output almost 1 second after the step input is applied. It is due to the assumption used in the linearized model, where the angular rate in the body frame is considered equal to the Euler rate. From Eq. (1), it is evident that the yaw term is highly coupled with both $\varphi$ and $\theta$, resulting in greater nonlinearities. These can be observed when moving further from the neighborhood of the equilibrium point.

<figure><img src="image_7.png" /><figcaption>Fig. 5 Comparison of Euler Angles in Linearized and Nonlinear Models with Identical Inputs</figcaption></figure>

<figure><img src="image_8.png" /><figcaption>Fig. 6 Comparison of Drone's Position in Linearized and Nonlinear Models with Identical Inputs</figcaption></figure>

## 4.2 $H_\infty$ Design Validation and Sensitivity Analysis

Understanding the system's physical limitations is a crucial step to design and tune the controllers. A physical wrench analysis, as illustrated in Fig. 7 and 8, first enables the fine-tuning of control inputs and
tracking templates ($W_u$ and $W_e$) based on the system's physical constraints. [9] indeed classifies FA-Hex drones as lateral bounded vehicles, where the lateral forces are restricted compared to the vertical forces. This limitation arises from the constant tilting angle of each motor, resulting in a limited projected force.

<figure><img src="image_9.png" /><figcaption>Fig. 7 Attainable Force Set of the Simulated FA-Hex</figcaption></figure>

<figure><img src="image_10.png" /><figcaption>Fig. 8 Attainable Moment Set of the Simulated FA-Hex</figcaption></figure>

Then, as detailed in Section 3, the controllers are individually designed for each channel. Interestingly, the methodology applied in designing all these controllers is identical. Hence, we present the sensitivity analysis for the thrust controller only, which serves as a representative example for all the other dynamics, and compare the reduced-order controller with its full-order counterpart. The sensitivity analysis focuses on predefined performance metrics, as shown in Fig. 9.

<figure><img src="image_11.png" /><figcaption>Fig. 9 Thrust Control Sensitivity Functions</figcaption></figure>
It reveals that the closed-loop system satisfies the four requirements defined in Section 3.1. The sensitivity function related to tracking error (top left) assesses the system's tracking speed (-3 dB, $\omega = 1.25$ rad/sec). The system's ability to reject disturbances at low frequencies (bottom left) and attenuate noise at high frequencies (bottom right) are also guaranteed. And the control sensitivity plot (top right) demonstrates that the system can achieve the desired performance while limiting the risk of reaching actuator saturation. The sensitivity analysis also indicates that the reduction in the controller's order has no impact on the performance of the closed-loop system, since all sensitivity functions exhibit the same behavior in the full-order and reduced-order cases.

Finally, it is worth mentioning that, following the controller design, an analysis of the damping ratio and gain/phase margins is conducted for each subsystem. This step is crucial for ensuring strong stability margins and preventing system oscillations. Satisfactory values are obtained, which are not reported here for the sake of brevity.

## 4.3 Robustness Study via μ-analysis

The control law is typically designed on the basis of an identified physical model. But in practice, the system behavior may vary due to slight differences in its physical parameters. The variations often come from inaccurate measurements, modeling assumptions, or changes during operation, such as payload alterations or aerodynamic effects. To ensure that the controller remains effective despite these uncertainties, μ-analysis is applied [23, 24]. First, the drone's actuators neglected during the design are incorporated and modeled as first-order transfer functions $A(s)$ with time constant $\tau$. Then, 10 parametric uncertainties $\delta_1, \dots, \delta_{10}$ are introduced on the physical parameters $[m, I_{xx}, I_{yy}, I_{zz}]$ and the time constant of each actuator, as presented e.g. in Fig. 11 for the roll dynamics. All of them are normalized as follows:

$$Y_i = (1 + K_{m_i} \delta_i) Y_i^0 \quad (17)$$

where $Y_i^0$ denotes the nominal value of the ith uncertain parameter $Y_i$, and $K_{m_i}$ is a scaling factor used to normalize the uncertainty $\delta_i$, which therefore belongs to $[-1, 1]$. Up to 20% uncertainty is considered for each of the 10 uncertain parameters, i.e. $K_{m_i} = 0.2$. The problem is reformulated using LFT modeling using the Matlab GSS Library [25], as shown in Fig. 10, where $N(s)$ is the nominal stable closed-loop system, and $\Delta = \text{diag}(\delta_1, \dots, \delta_{10})$ is a diagonal matrix with gathers all uncertainties.

<figure><img src="image_12.png" /><figcaption>Fig. 10 LFT Representation with Structured Model Uncertainties</figcaption></figure>

<figure><img src="image_13.png" /><figcaption>Fig. 11 Linearized Roll Dynamics with the Structured Modeled Uncertainties.</figcaption></figure>

All nominal closed-loop poles have a real part lower than -0.65 and a damping ratio higher than 0.7. The first objective is to check that they do not become too slow or badly damped in the presence of uncertainties, i.e. that their real part and damping ratio remain below -0.6 and above 0.55 respectively. This modal performance analysis can be carried out using the Matlab SMAC Library [26], by computing bounds on the structured singular value $\mu$ along the boundary of a sector instead of the imaginary axis, as shown in Fig. 2 of [27]. An upper bound of 0.96 is obtained, which corresponds to a robustness margin of $1.04 > 1$. The uncertainties being normalized, it can be concluded that the closed-loop poles remain
sufficiently fast and well-damped when all uncertain parameters vary by ±1.04 × 20% = ±20.8% around their nominal values, which is satisfactory.

The second objective is to evaluate the performance degradation under these uncertainties. Due to space limitations, only disturbance rejection for the thrust control loop is analyzed here, but similar results are obtained for other specifications and control loops. An upper bound on the worst-case $H_\infty$ norm is computed for the transfer between the input disturbance $d$ and the tracking error $z_1$, using again the Matlab SMAC Library. A value of 0.0189 is obtained, which is much lower than 1 and only slightly larger than the nominal value of 0.0180 that can be read on the bottom left plot of Fig. 9. Performance degradation is therefore marginal for uncertainties of ±20%.

# 5 Simulation Results

## 5.1 Hovering Scenario With Cable Suspended Pendulum

Hovering with a cable-suspended pendulum can be essential for various applications such as inspections or delivering packages. The objective is to ensure the drone's stability during hovering and its ability to mitigate disturbances due to oscillations of the load. To simulate the complete system, a cable-suspended pendulum is incorporated into the drone's equations using the Lagrangian's Euler modeling approach. It offers a coherent method to model the payload using energy equations [28, 29]. Results are shown in Fig. 12 and 13. The payload mass is $m_c = 0.05$ kg. It is assumed that the drone hovers while releasing the cable, whose length varies between $0.1 \text{ m} \le L_{cable} \le 3 \text{ m}$.

<figure><img src="image_14.png" /><figcaption>Fig. 12 Position of the Drone, while Hovering in the Presence of Disturbances (Circled in Black)</figcaption></figure>

<figure><img src="image_15.png" /><figcaption>Fig. 13 Hovering Drone Euler Angle with Payload</figcaption></figure>

The worst-case configuration is assumed, where the oscillation frequency $f = \frac{1}{2\pi}\sqrt{\frac{g}{L_{cable}}}$ of the cable suspended pendulum is the highest. Step inputs are introduced in the lateral dynamics and load's angle at various sampling times to assess the controller's robustness in handling these dynamics. The results illustrate the controller's capability to reject disturbances and stabilize the drone. However, it is evident that the drone needs to adjust its banking angle to prevent force saturation and enhance disturbance rejection, aligning with the controller's design objectives. In particular, the controller was designed based only on the drone's mass, and its ability to accommodate the additional payload mass underscores its robustness in terms of handling mass uncertainties.
## 5.2 Flying Through Predefined Waypoints

Navigating through predefined waypoints is a common application for FA-Hex drones. The waypoints can be either generated by a higher-level controller or sent to the drone from an external monitoring station. In the considered scenario, the drone flies through different waypoints while adjusting its altitude. The simulation includes external disturbances affecting the torques and the forces on different axes, along with measurement noises. As seen in Fig. 14, the controller demonstrates its ability to stabilize the system with good performance. Position tracking is excellent and noises are significantly attenuated. Moreover, disturbances are rejected efficiently, as can be seen in the black circles.

<figure><img src="image_16.png" /><figcaption>Fig. 14 Drone Position Tracking in the Presence of Disturbances (Circled in Black)</figcaption></figure>

<figure><img src="image_17.png" /><figcaption>Fig. 15 Euler Angles Tracking and Drone Behavior in the Presence of Disturbances</figcaption></figure>

Fig. 15 also illustrates how the guidance controller generates Euler angle references that request the drone to bank. During the periods when disturbances are injected, the drone's roll and pitch angles exhibit variations that contribute to its disturbance rejection capabilities. This observation confirms that the drone can effectively counteract these disturbances using input forces in collaboration with adjusting its banking angle. It is important to highlight that the saturation value for the controller's output can be adjusted to ensure that the drone maintains zero Euler angles when countering disturbances. However, this adjustment should always consider the physical constraints of the system to effectively manage and reject these disturbances.

## 6 Conclusion

An $H_\infty$-based robust method is used in this paper to control a FA-Hex. A cascaded loop architecture is proposed, which consists of stabilizing, guidance, and thrust controllers. Instead of using the classical full-order approach, reduced-order $H_\infty$ controllers are designed using a non-smooth optimization technique. A control law of order six only is obtained, which allows to control the 6DoF of the drone. It is validated using two main scenarios including disturbances and measurement noises, and satisfactory results are obtained. Moreover, adaptation to OA multi-rotor systems can be done easily by changing the control effectiveness matrix. Future work will be dedicated to the experimental validation of the proposed control architecture on a real FA-Hex platform. A comparison with previously existing architectures is also planned, so as to better highlight the main performance improvements achieved by the proposed reduced-order $H_\infty$ controllers.
References

[1] Ramy Rashad, Jelmer Goerres, Ronald Aarts, Johan B. C. Engelen, and Stefano Stramigioli. Fully actuated multirotor UAVs: A literature review. *IEEE Robotics & Automation Magazine*, 27(3):97–107, 2020. DOI: 10.1109/MRA.2019.2955964.

[2] Sujit Rajappa, Markus Ryll, Heinrich Bülthoff, and Antonio Franchi. Modeling, control and design optimization for a fully-actuated hexarotor aerial vehicle with tilted propellers. In *Proceedings of the IEEE International Conference on Robotics and Automation*, pages 4006–4013, 2015. DOI: 10.1109/ICRA.2015.7139759.

[3] Bryan Convens, Kelly Merckaert, Marco M. Nicotra, Roberto Naldi, and Emanuele Garone. Control of fully actuated unmanned aerial vehicles with actuator saturation. *IFAC-PapersOnLine*, 50(1):12715–12720, 2017. 20th IFAC World Congress. DOI: https://doi.org/10.1016/j.ifacol.2017.08.1823.

[4] Azarakhsh Keipour, Mohammadreza Mousaei, Andrew T Ashley, and Sebastian Scherer. Integration of fully-actuated multirotors into real-world applications. *arXiv preprint 2011.06666*, 2020.

[5] Gerardo Flores, Andrés Montes de Oca, and Alejandro Flores. Robust nonlinear control for the fully actuated hexa-rotor: Theory and experiments. *IEEE Control Systems Letters*, 7:277–282, 2023. DOI: 10.1109/LCSYS.2022.3188517.

[6] Davide Bicego, Jacopo Mazzetto, Ruggero Carli, Marcello Farina, Antonio Franchi, and Victor Arellano-Quintana. Nonlinear model predictive control with enhanced actuator model for multi-rotor aerial vehicles with generic designs. *Journal of Intelligent and Robotic Systems*, 100:1213–1247, 2020. DOI: 10.1007/s10846-020-01250-9.

[7] David Shawky, Chao Yao, and Klaus Janschek. Nonlinear model predictive control for trajectory tracking of a hexarotor with actively tiltable propellers. In *Proceedings of the 7th International Conference on Automation, Robotics and Applications*, pages 128–134, 2021. DOI: 10.1109/ICARA51699.2021.9376523.

[8] Ramy Rashad, Johan B. C. Engelen, and Stefano Stramigioli. Energy tank-based wrench/impedance control of a fully-actuated hexarotor: A geometric port-hamiltonian approach. In *Proceedings of the International Conference on Robotics and Automation*, pages 6418–6424, 2019. DOI: 10.1109/ICRA.2019.8793939.

[9] Antonio Franchi, Ruggero Carli, Davide Bicego, and Markus Ryll. Full-pose tracking control for aerial robotic systems with laterally bounded input force. *IEEE Transactions on Robotics*, 34(2):534–541, 2018. DOI: 10.1109/TRO.2017.2786734.

[10] Oualid Araar and Nabil Aouf. Full linear control of a quadrotor UAV, LQ vs $H_\infty$. In *Proceedings of the UKACC International Conference on Control*, pages 133–138, 2014. DOI: 10.1109/CONTROL.2014.6915128.

[11] Minhuan Guo, Yan Su, and Dongbing Gu. Mixed $H_2/H_\infty$ tracking control with constraints for single quadcopter carrying a cable-suspended payload. *IFAC-PapersOnLine*, 50(1):4869–4874, 2017. 20th IFAC World Congress. DOI: https://doi.org/10.1016/j.ifacol.2017.08.976.

[12] Samarathunga L. M. D. Rangajeeva and James F. Whidborne. Linear parameter varying control of a quadrotor. In *Proceedings of the 6th International Conference on Industrial and Information Systems*, pages 483–488, 2011. DOI: 10.1109/ICIINFS.2011.6038118.

[13] Iman Sadeghzadeh, Abbas Chamseddine, Didier Theilliol, and Youmin Zhang. Linear parameter varying control synthesis: State feedback versus $H_\infty$ technique with application to quadrotor UAV. In *Proceedings of the International Conference on Unmanned Aircraft Systems*, pages 1099–1104, 2014. DOI: 10.1109/ICUAS.2014.6842362.

[14] Pierre Apkarian, Pascal Gahinet, and Greg Becker. Self-scheduled $H_\infty$ control of linear parameter-varying systems: a design example. *Automatica*, 31(9):1251–1261, 1995. DOI: https://doi.org/10.1016/0005-1098(95)00038-X.
[15] Abdelaziz Hamza, Abdallah Mohamed, and Ayman El-Badawy. Robust H-infinity control for a quadrotor UAV. In *Proceedings of the AIAA SciTech Forum*, 2022. DOI: 10.2514/6.2022-2033.

[16] Ewoud Smeur, Guido Croon, and Q.P. Chu. Cascaded incremental nonlinear dynamic inversion for mav disturbance rejection. *Control Engineering Practice*, 73:79–90, 2018. DOI: https://doi.org/10.1016/j.conengprac.2018.01.003.

[17] Xu Liu, Bo Chen, Yu Qing He, and Decai Li. Development of an autonomous object transfer system by an unmanned aerial vehicle based on binocular vision. *International Journal of Advanced Robotic Systems*, 17(1), 2020. DOI: 10.1177/1729881420907732.

[18] Markus Ryll, Giuseppe Muscio, Francesco Pierri, Elisabetta Cataldi, Gianluca Antonelli, Fabrizio Cacavale, and Antonio Franchi. 6D physical interaction with a fully actuated aerial robot. In *Proceedings of the IEEE International Conference on Robotics and Automation*, pages 5190–5195, 2017. DOI: 10.1109/ICRA.2017.7989608.

[19] Mohamad Hachem, Miquel Thierry, Murat Bronz, and Clément Roos. Trajectory optimization for fully actuated hexacopters: Enhancing maneuverability and applications. In *Proceedings of the International Micro Air Vehicle Conference*, 2023.

[20] Pascal Gahinet and Pierre Apkarian. A linear matrix inequality approach to $H_\infty$ control. *International Journal of Robust & Nonlinear Control*, 4:421–448, 1994. DOI: 10.1002/rnc.4590040403.

[21] João C. Monteiro, Fernando Lizarralde, and Liu Hsu. Optimal control allocation of quadrotor UAVs subject to actuator constraints. In *Proceedings of the American Control Conference*, pages 500–505, 2016. DOI: 10.1109/ACC.2016.7524963.

[22] Ewoud Smeur, Daan Höppener, and Christophe De Wagter. Prioritized control allocation for quadrotors subject to saturation. In *Proceedings of the International Micro Air Vehicle Conference*, pages 37–43, 2017. http://www.imav2017.org/.

[23] K. Zhou, J.C. Doyle, and K. Glover. *Robust and optimal control*. Prentice-Hall, 1996.

[24] G. Ferreres. *A practical approach to robustness analysis with aeronautical applications*. Kluwer Academic, 1999.

[25] Jean-Marc Biannic and Clément Roos. Generalized state space: A new Matlab class to model uncertain and nonlinear systems as linear fractional representations, 2016. Available online with the SMAC toolbox: http://w3.onera.fr/smac/gss.

[26] C. Roos. Systems Modeling, Analysis and Control (SMAC) Toolbox: an insight into the robustness analysis library. In *Proceedings of the IEEE Multiconference on Systems and Control*, pages 176–181, 2013.

[27] C. Roos, F. Lescher, J-M. Biannic, C. Döll, and G. Ferreres. A set of $\mu$-analysis based tools to evaluate the robustness properties of high-dimensional uncertain systems. In *Proceedings of the IEEE Multiconference on Systems and Control*, pages 644–649, 2011.

[28] M. Guerrero, Diego Mercado-Ravell, Rogelio Lozano, and Carlos Garcia-Beltrán. Passivity based control for a quadrotor UAV transporting a cable-suspended payload with minimum swing. In *Proceedings of the IEEE Conference on Decision and Control*, pages 6718–6723, 2015. DOI: 10.1109/CDC.2015.7403277.

[29] Jorge M. Arizaga, Herman Castañeda, and Pedro Castillo. Payload swing attenuation of a fully-actuated hexa-copter via extended high gain observer based adaptive sliding control. In *Proceedings of the International Conference on Unmanned Aircraft Systems*, pages 901–908, 2021. DOI: 10.1109/ICUAS51884.2021.9476819.