Next Article in Journal
Wall Thickness Uniformity in ISF of Hydraulic Support: System Design, Finite Element Analysis and Experimental Verification
Next Article in Special Issue
Self-Optimizing Control System to Maximize Power Extraction and Minimize Loads on the Blades of a Wind Turbine
Previous Article in Journal
Effect of Hardening Temperature on Maraging Steel Samples Prepared by Direct Metal Laser Sintering Process
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Robust Control of UAV with Disturbances and Uncertainty Estimation

by
Domenico Bianchi
1,2,*,
Stefano Di Gennaro
1,2,
Mario Di Ferdinando
1,2 and
Cuauhtémoc Acosta Lùa
2,3
1
Department of Information Engineering, Computer Science and Mathematics, University of L’Aquila, Via Vetoio, Loc. Coppito, 67100 L’Aquila, Italy
2
Center of Excellence DEWS, University of L’Aquila, Via Vetoio, Loc. Coppito, 67100 L’Aquila, Italy
3
Centro Universitario de la Ciénega, Universidad de Guadalajara, Av. Universidad No. 1115, Col. Lindavista, Ocotlán 47820, Jalisco, Mexico
*
Author to whom correspondence should be addressed.
Machines 2023, 11(3), 352; https://doi.org/10.3390/machines11030352
Submission received: 4 January 2023 / Revised: 13 February 2023 / Accepted: 17 February 2023 / Published: 3 March 2023
(This article belongs to the Special Issue Robust Control of Robotic and Complex Mechatronic Systems)

Abstract

:
In this work, a nonlinear estimator-based robust controller is designed for the position and yaw control of a quadrotor with uncertainty estimation. This controller ensures the tracking of desired references in the presence of parameters variation and external disturbances, making use of high-order sliding mode (HOSM) estimators to estimate these perturbations that can be canceled by the control, thus improving the dynamic behavior of the controlled system. Its performance is evaluated making use of a Simcenter Amesim quadrotor based on physical models generated from experimental data in a co-simulation framework with Matlab–Simulink used to implement the designed controller with FPGA implementation. A challenging and generic maneuver with time-varying wind disturbances and uncertainty model parameters is considered.

1. Introduction

In recent years UAVs have attracted attention due to the vast range of applications that can be addressed, and they have been widely utilized by researchers, law enforcement and security, delivery companies, farmers, etc. Furthermore, UAVs are evolving from being only important for the sensing action [1] to being fundamental also for the actuator action. In the upcoming years, there will therefore be a remarkable development of drones for functional applications such as payload delivery services to transport deformable linear objects such as hoses and goods to carry organs for organ transplants, which helped reduce car journeys to just a few minutes of flight. Furthermore, a recent study showed that the delivery of UAVs could even help reduce greenhouse gas emissions caused by the freight industry [2]. While the application interest of UAVs is growing, on the other hand, there is a need to make the system more and more efficient. The main limitation that occurs in all applications, however, is the limited amount of energy that batteries or other energy sources provide. In fact, in the drones on the market, the average flight time is between 15 and 45 min, which is a time that highly limits the real application. Improvement and optimization of the source energy, lightening of the drone, optimization of the path and improvement of the performance in the presence of disturbances that modify its behavior and significantly decrease performance from an energy point of view are some of the actions investigated to solve the problem. The execution of trajectories that allow for lower consumption is important. In fact, one of the factors that often influences the consumption is linked to disturbances, such as wind, which leads to a departure from the ideal trajectory, and it is then necessary to compensate through additional time and higher battery consumption. In the same way, the model on which the control is based is an approximation, the parameters are time-varying, and it is therefore necessary to intervene also on the parametric uncertainties. It is a challenge that must be faced from different points of view and that requires a multidisciplinary effort in order to achieve the goal. Motivated by the European project COMP4DRONES (see [3]), it was necessary to study methodologies for controlling the flight of a drone in precision agriculture, to monitor the health status of plants, and possibly spray fertilizer to the plants with time limits, trying to minimize the energy and to follow desired trajectory in presence of disturbances and parametric uncertainties. This represents a complex problem with different objectives. In [4], a robust flight controller based on linear active disturbance rejection control is proposed for the stability control of an aerial robot quadrotor under wind gusts. The nonlinear dynamical model of the quadrotor, considering the wind disturbance, is firstly established through Newton–Euler method. In this control scheme, the linear extended state observer serves as a compensator which can effectively reject the wind gusts. In this case, the disturbance due to the wind is therefore compensated, but a perfect knowledge of the model and its parameters is assumed. In [5], a robust dynamic sliding mode control algorithm using a nonlinear disturbance observer for system dynamics is investigated. The proposed method is applied to provide a rapid adaptation and strictly robust performance for the attitude and altitude control of UAVs. The procedure of the proposed method consists of two stages. First, a nonlinear disturbance observer is applied to estimate the exogenous perturbation. Second, a robust dynamic sliding mode controller integrated with the estimated values of disturbances is presented by a combination of a PID sliding surface and super twisting technique to compensate for the effect of these perturbations on the system. Again, external noise is considered but not model-related uncertainties. Furthermore, the control is tested on an ideal plant. In [6], a novel extension of the classic Nonlinear Dynamic Inversion (NLDI) control architecture for wind disturbance rejection is designed by using adaptive artificial neural networks. In [7], an adaptive controller for a quadrotor UAV for carrying unknown payloads while tracking any trajectory is proposed. The proposed adaptive controller is robust to modeling uncertainties and does not require any a priori knowledge of the bounds of the uncertainties. The controller is also robust to time-varying delays without any constraint on the derivative of the time delay. The simulations are conducted on the simple basic model and do not take into account possible disturbances, such as wind, which influence performance in a non-negligible way. In [8], the deep reinforcement learning method, and robust deep deterministic policy gradient, are proposed for developing a controller that allows robust flying of an unmanned aerial vehicle in dynamic uncertain environments. While a very interesting work, it is tested in a simplified scenario, and the wind and the parametric uncertainties of the model are not directly considered. Furthermore, there is no formal proof of the stability of the controlled system.
The contribution of the paper is dual: on the one hand, it designs a controller that is robust both to the uncertainties of the model and to external disturbances such as wind or aerodynamic factors using HOSM estimators; on the other side, this controller is tested in a co-simulation environment between Matlab–Simulink and Simcenter Amesim on FPGA. In fact, to our best knowledge, results concerning the quadrotor tracking problem in the case of variations of all the parameters emerging in the dynamics and in the presence of environmental disturbances and/or unmodeled dynamics influencing dynamics of the UAV are not available in the research literature. Moreover, after preliminary tests on Matlab–Simulink implementation, that have not been included in this paper, the proposed controller is tested on the quadrotor model provided by the Simcenter Amesim developed by Siemens, based on physical models, in a co-simulation environment with FPGA implementation. As a matter of fact, Simcenter Amesim is proven to accurately represent the dynamic behavior of the drone, it was extensively validated with experimental tests, and it is used by important aerospace enterprises worldwide. In fact, the Simcenter Amesim drone is characterized by components with physical models, unmodeled dynamics, time-varying parameters, disturbances, and parametric uncertainties that make the problem complicated and validate the research conducted meaningfully. The work is organized as follows. In Section 2, the quadrotor mathematical model is presented. The estimators of disturbances and a nonlinear controller to ensure robustness and asymptotic convergence are designed in Section 3. In Section 4, the performance of the controller and estimators are presented with respect to Matlab and Simcenter Amesim co-simulation environment implementation with FPGA implementation. Some considerations and future research developments conclude the work in Section 5.

2. Mathematical Model of A Quadrotor

The quadrotor considered in this work consists of a rigid frame equipped with four rotors (see [9,10] for a detailed description). The rotors generate the propeller force F i = b · ω p , i 2 , which is proportional to the propeller angular velocity ω p , i , i = 1 , 2 , 3 , 4 . Propellers 1 and 3 rotate counterclockwise; propellers 2 and 4 rotate clockwise. Quadrotor orientation with Euler angles is used. Let us indicate with R C ( O , e 1 , e 2 , e 3 ) , R Γ ( Ω , ε 1 , ε 2 , ε 3 ) ) the frames fixed with the Earth and the quadrotor, respectively, and Ω is coincident with the center of mass of the quadrotor (see Figure 1).
The absolute position of the quadrotor in R C is described by p = ( x , y , z ) T , whereas its attitude is described by the Euler angles α = ( ϕ , θ , ψ ) T , with ϕ [ π / 2 , π / 2 ) , θ ( π / 2 , π / 2 ) , ψ [ π , π ) the roll, pitch, yaw angles, respectively. The sequence 3–2–1 is here considered [11]. Moreover, v = ( v x , v y , v z ) T , ω = ( ω 1 , ω 2 , ω 3 ) T are the linear and angular velocities of the center of mass of the quadrotor, expressed in R C and in R Γ , respectively. The translation dynamics, expressed in R C , and rotation dynamics, expressed in R Γ , of the quadrotor are
p ˙ = v v ˙ = 1 m f p + f g + f d α ˙ = M ( α ) ω ω ˙ = J 1 ω ˜ J ω + τ p + τ g y + τ d
where m is the mass of the quadrotor, f p = R ( α ) φ p is the force in R C excerted by the propellers ( φ p is the same force, but expressed in R Γ ), J (positive definite symmetric matrix in R 3 × 3 , expressed in R Γ ) is the inertia matrix of the quadrotor, and
ω ˜ = 0 ω 3 ω 2 ω 3 0 ω 1 ω 2 ω 1 0
is the so–called dyadic representation of ω . Furthermore,
φ p = 0 0 u p , u p = i = 1 4 F i , f g = 0 0 m g
τ p = τ 1 τ 2 τ 3 = b ( ω p , 2 2 ω p , 4 2 ) b ( ω p , 3 2 ω p , 1 2 ) c ( ω p , 1 2 ω p , 2 2 + ω p , 3 2 ω p , 4 2 )
are the input forces and moments produced by the propellers (expressed in R Γ ), where is the distance between the center of mass C G to the rotor shaft, and b ([b]= N s 2 r a d 2 ) and c ([c]= N s 2 m r a d 2 ) are, respectively, the so–called thrust and drag factor. Obviously,
F 1 F 2 F 3 F 4 = 1 1 1 1 0 0 0 0 c c c c 1 u p τ 1 τ 2 τ 3 , ω p , 1 2 ω p , 2 2 ω p , 3 2 ω p , 4 2 = 1 4 b 0 1 2 b 1 4 c 1 4 b 1 2 b 0 1 4 c 1 4 b 0 1 2 b 1 4 c 1 4 b 1 2 b 0 1 4 c u p τ 1 τ 2 τ 3 ,
ω p , i = F i b , 0 F i F i , m a x , 0 ω p , i ω p , i , m a x , i = 1 , 2 , 3 , 4
where F i , m a x and ω p , i , m a x are, respectively, the maximum forces and the angular velocities related to each propellers due to physical limitations. Moreover, f g in (3) is the force due to the gravity, which is expressed in R C . The vectors expressed in R Γ are transformed into vectors in R C by the rotation matrix
R i b = R ( α ) = c θ c ψ s ϕ s θ c ψ c ϕ s ψ c ϕ s θ c ψ + s ϕ s ψ c θ s ψ s ϕ s θ s ψ + c ϕ c ψ c ϕ s θ s ψ s ϕ c ψ s θ s ϕ c θ c ϕ c θ
where c = cos ( ) , s = sin ( ) , = ϕ , θ , ψ . The angular velocity dynamics are expressed using the matrix
M ( α ) = 1 s ϕ tg θ c ϕ tg θ 0 c ϕ s ϕ 0 s ϕ sc θ c ϕ sc θ
with tg = tan ( ) , sc = sec ( ) , = ϕ , θ , ψ . Under the assumption of small angles ϕ (roll) and θ (pitch), which is acceptable in the case of a quadrotor performing non-aggressive maneuvers, this matrix can be approximated by the identity matrix, i.e., M ( α ) I 3 x 3 [12]. The rolling torque τ 1 is produced by the forces F 2 and F 4 . Similarly, the pitching torque τ 2 is produced by the forces F 1 and F 3 . Due to the Newton’s third law, the propellers produce a yawing torque τ 3 on the body of the quadrotor in the opposite direction of the propeller rotation. Moreover, τ g y = i = 1 4 ( 1 ) i J p , i ω p , i ω ˜ ϵ 3 is the gyroscopic torque due to the propeller rotations, with J p , i , i = 1 , 2 , 3 , 4 , the inertia moment of the i th motor plus propeller, with respect to its rotation axis. Finally, f d and τ d are the forces and torques due to the external disturbances, for example due to aerodynamic forces. Considering the nominal values m , J p , i = J p , i = 1 , 2 , 3 , 4 , J = diag { J 1 , J 2 , J 3 } , f p , τ p , system (1) can be rewritten as
p ˙ = v v ˙ = 1 m f p + 1 m f g + d α ˙ = ω ω ˙ = J 1 ω ˜ J ω + J 1 τ p + J 1 τ g y + δ
where
d = d x d y d z = 1 m 1 m f p + 1 m f d + 1 m f p f p δ = δ 1 δ 2 δ 3 = J 1 ω ˜ J ω J 1 ω ˜ J ω + J 1 J 1 τ p + J 1 τ g y J 1 τ g y + J 1 τ d + + J 1 ( τ p τ p )
are the perturbations acting on the drone, due to parametric uncertainties and external disturbances, and
τ g y = i = 1 4 ( 1 ) i J p ω p , i ω ˜ ϵ 3 = J p ω p ω 2 ω 1 0
is the nominal gyroscopic torque due to the propeller rotations, with ω p = ω p , 1 + ω p , 2 ω p , 3 + ω p , 4 the so-called rotor relative speed. With these positions, mathematical model (7) of the quadrotor can be expressed as
x ˙ = v x , y ˙ = v y , z ˙ = v z v ˙ x = c ϕ s θ c ψ + s ϕ s ψ u p m + d x v ˙ y = c ϕ s θ s ψ s ϕ c ψ u p m + d y v ˙ z = g + c ϕ c θ u p m + d z ϕ ˙ = ω 1 , θ ˙ = ω 2 , ψ ˙ = ω 3 ω ˙ 1 = J 2 J 3 J 1 ω 2 ω 3 + J p J 1 ω p ω 2 + 1 J 1 τ 1 + δ 1 ω ˙ 2 = J 3 J 1 J 2 ω 1 ω 3 J p J 2 ω p ω 1 + 1 J 2 τ 2 + δ 2 ω ˙ 3 = J 1 J 2 J 3 ω 1 ω 2 + 1 J 3 τ 3 + δ 3 .
Remark 1. 
Within the vectors d and δ, there are the variations of mass m, moments of inertia, thrust coefficient b and drag coefficient c linked to the propulsion force F p , as well as possible external perturbations and unmodeled dynamics that are considered in F d and τ d , so as to incorporate the parametric variations, the unmodeled dynamics and external perturbations (as wind) that act both at the level of linear and angular velocity level (see Section 4.2).
Assumption A1. 
f p and τ d , and their derivatives, are bounded.

3. Design of Nonlinear Controller

The output vector to be controlled is composed by the 3D position and yaw rate and the control aim is to design a controller, in the presence of disturbances and parameters uncertainty, to ensure the asymptotic converge of the variables χ = ( x , y , z , ψ ) to some reference trajectories χ r = ( x r , y r , z r , ψ r ) . To this aim, let us consider the kinematic errors
e χ = χ χ r = x x r y y r z z r ψ ψ r = e x e y e z e ψ
whose dynamics are
e ˙ χ = e ˙ x e ˙ y e ˙ z e ˙ ψ = v x x ˙ r v y y ˙ r v z z ˙ r ω 3 ψ ˙ r = e v x e v y e v z e ω 3
and with
e ¨ χ = e ¨ x e ¨ y e ¨ z e ¨ ψ = v ˙ x x ¨ r v ˙ y y ¨ r v ˙ z z ¨ r ω ˙ 3 ψ ¨ r = e ˙ v x e ˙ v y e ˙ v z e ˙ ω 1 = c ϕ s θ c ψ + s ϕ s ψ u p m + d x x ¨ r c ϕ s θ s ψ s ϕ c ψ u p m + d y y ¨ r g + c ϕ c θ u p m + d z z ¨ r J 1 J 2 J 3 ω 1 ω 2 + 1 J 3 τ 3 + δ 3 ψ ¨ r = = c ϕ s θ r c ψ + s ϕ r s ψ u p m + d x x ¨ r c ϕ s θ r s ψ s ϕ r c ψ u p m + d y y ¨ r g + c ϕ c θ u p m + d z z ¨ r J 1 J 2 J 3 ω 1 ω 2 + 1 J 3 τ 3 + δ 3 ψ ¨ r + ( s θ s θ r ) c ϕ c ψ + ( s ϕ s ϕ r ) s ψ u p m ( s θ s θ r ) c ϕ s ψ ( s ϕ s ϕ r ) c ψ u p m 0 0 .
Setting
s ϕ r s θ r = 1 σ c ϕ c θ s ψ c ϕ c θ c ψ c θ c ψ c θ s ψ x ¨ r d ^ x + w x y ¨ r d ^ y + w y u p = m c ϕ c θ z ¨ r + g d ^ z + w z τ 3 = J 3 ψ ¨ r J 1 J 2 J 3 ω 1 ω 2 δ ^ 3 + w ψ w j = k j , 0 I e j k j , 1 e j k j , 2 e v j , j = x , y , z w ψ = k ψ , 0 I e ψ k ψ , 1 e ψ k ψ , 2 e ω 3 I ˙ e j = e j , j = x , y , z , ψ
where σ = z ¨ r + g d ^ z + w z , k j , 0 , k j , 2 > 0 and k j , 1 > k j , 0 / k j , 2 , j = x , y , z , ψ , one gets
e ¨ χ = w x w y w z w ψ + μ x u p m μ y u p m 0 0 + d x d ^ x d y d ^ y d z d ^ z δ 3 δ ^ 3 ,
where
μ x = [ ( s θ s θ r ) c ϕ c ψ + ( s ϕ s ϕ r ) s ψ ] ,
μ y = [ ( s θ s θ r ) c ϕ s ψ ( s ϕ s ϕ r ) c ψ ] .
As far as the errors s ϕ s ϕ r , s θ s θ r are concerned, let us consider the roll error e ϕ = ϕ ϕ r and the pitch error e θ = θ θ r , with ϕ r = arcsin s ϕ r , θ r = arcsin s θ r . Their dynamics are
e ˙ ϕ = ω 1 ϕ ˙ r = e ω 1 , e ˙ θ = ω 2 θ ˙ r = e ω 2 e ˙ ω 1 = J 2 J 3 J 1 ω 2 ω 3 + J p J 1 ω p ω 2 + 1 J 1 τ 1 + δ 1 ϕ ¨ r e ˙ ω 2 = J 3 J 1 J 2 ω 1 ω 3 J p J 2 ω p ω 1 + 1 J 2 τ 2 + δ 2 θ ¨ r
and the controls
τ 1 = J 1 ϕ ¨ r ( J 2 J 3 ) ω 2 ω 3 J p ω p ω 2 J 1 δ ^ 1 + J 1 w ϕ τ 2 = J 2 θ ¨ r ( J 3 J 1 ) ω 1 ω 3 + J p ω p ω 1 J 2 δ ^ 2 + J 2 w θ w ϕ = k ϕ , 0 I e ϕ k ϕ , 1 e ϕ k ϕ , 2 e ω 1 w θ = k θ , 0 I e θ k θ , 1 e θ k θ , 2 e ω 2
with k j , 0 , k j , 2 > 0 , k j , 1 > k j , 2 / k j , 0 , j = ϕ , θ . Therefore, one obtains
e ¨ x e ¨ y e ¨ z = w x w y w z + μ x u p m μ y u p m 0 + d x d ^ x d y d ^ y d z d ^ z
e ¨ ϕ e ¨ θ e ¨ ψ = w ϕ w θ w ψ + δ 1 δ ^ 1 δ 2 δ ^ 2 δ 3 δ ^ 3
Remark 2. 
For the computation of the first and second derivatives of the signals ϕ and ψ, since it is not possible to have a direct analytical expression, they will be implemented using the high-order sliding mode differentiator (HOSMD) designed in [13].

Disturbances Estimator

To achieve robustness of the closed-loop system with respect to external disturbances, a robust disturbance estimator is designed. In what follows, given the measured variables the HOSM estimator wants to converge in finite time to disturbances values, finally, based on [14], one considers,
ν ˙ x = c ϕ s θ c ψ + s ϕ s ψ u p m λ x , 1 ν x v x 1 / 2 + d ^ x ν ˙ y = c ϕ s θ s ψ s ϕ c ψ u p m λ y , 1 ν y v y 1 / 2 + d ^ y ν ˙ z = g + c ϕ c θ u p m λ z , 1 ν z v z 1 / 2 + d ^ z ν ˙ 1 = J 2 J 3 J 1 ω 2 ω 3 + J p J 1 ω p ω 2 + 1 J 1 τ 1 λ ϕ , 1 ν 1 ω 1 1 / 2 + δ ^ 1 ν ˙ 2 = J 3 J 1 J 2 ω 1 ω 3 J p J 2 ω p ω 1 + 1 J 2 τ 2 λ θ , 1 ν 2 ω 2 1 / 2 + δ ^ 2 ν ˙ 3 = J 1 J 2 J 3 ω 1 ω 2 + 1 J 3 τ 3 λ ψ , 1 ν 3 ω 3 1 / 2 + δ ^ 3 d ^ ˙ j = λ k , 2 ν j v j 0 δ ^ ˙ i = λ k , 2 ν i ω i 0
which ensure the convergence in finite time of the estimation errors d j d ^ j , j = x , y , z , and δ i δ ^ i , i = 1 , 2 , 3 , for some λ k , 1 , λ k , 2 with k = x , y , z , ϕ , θ , ψ , where σ 1 / 2 = | σ | 1 / 2 sign ( σ ) , σ 0 = sign ( σ ) for any scalar signal σ .
Theorem 1. 
Given the reference χ r , bounded along with its derivatives χ ˙ r , χ ¨ r , the controller (11), (12), with the gains λ η , 1 , λ η , 2 > 0 with η = x , y , z , ϕ , θ , ψ , ensures that the error e χ tends to zero asymptotically and the perturbation estimations d ^ η , in (14) tends to d η in finite time, with η = x , y , z , ϕ , θ , ψ .
Proof. 
Since the subsystems (13a) and (13b), with d x d ^ x d y d ^ y d z d ^ z δ 1 δ ^ 1 δ 2 δ ^ 2 δ 3 δ ^ 3 T as input, is input-to-state stable (in fact, the dynamics matrix of each subsystem is Hurwitz, and the ISS Lyapunov function is quadratic) and the system, for η = x , y , z , ϕ , θ , ψ ,
ξ η = ν η v η , d ˜ η = d η d ^ η , ξ ˙ η = λ η , 1 ξ η 1 / 2 + d ˜ η d ˜ ˙ η = λ η , 2 ξ η 0
converges to the origin in finite time, and the systems (13a) and (13b) is globally uniformly exponentially stable. In fact, considering the part relating to the position on the x-axis χ x (the demonstrations are analogous for the other variables taken into consideration), it is possible to consider the following Lyapunov function
V e , x = 1 2 χ x T P e , x χ x , χ x = χ x , 1 χ x , 2 = ν x v x 1 / 2 d x d ^ x
with
P e , x = P e , x T = λ x , 1 2 + 4 λ x , 2 λ x , 1 λ x , 1 2 > 0 .
since λ x , 2 > 0 . Notice that λ min P e , x χ x 2 2 / 2 V e , x λ max P e , x χ x 2 2 / 2 , with λ min P e , x , λ max P e , x the minimum and maximum eigenvalues of P e , x . To show the convergence, one computes the derivative of the Lyapunov candidate
V ˙ e , x = 1 2 χ x , 1 χ x T P e , x A x χ x = λ x , 1 2 χ x , 1 χ x T Q e , x χ x
where
Q e , x = ( λ x , 1 2 + 2 λ x , 2 ) λ x , 1 λ x , 1 1 > 0
P e , x A x = λ x , 1 2 + 4 λ x , 2 λ x , 1 λ x , 1 2 λ x , 1 1 2 λ x , 2 0 = λ x , 1 Q e , x > 0
since λ x , 1 , λ x , 2 > 0 . Since χ x 2 2 = | ξ x | + d ˜ x 2 , clearly | ξ x | 1 / 2 χ x 2 2 V e , x 1 / 2 / λ min P e , x , so that
1 | ξ x | 1 / 2 λ min P e , x 2 1 V e , x 1 / 2
and
V ˙ e , x = λ x , 1 2 | ξ x | 1 / 2 χ x T Q e , x χ x λ min Q e , x χ x 2 2 λ min Q e , x λ max P e , x 2 V e , x = γ min e , x V e , x 1 / 2
γ min e , x = λ x , 1 λ min P e , x 2 λ max P e , x λ min Q e , x
where
λ min Q e , x = λ x , 1 2 + 2 λ x , 2 + 1 2 1 2 ( λ x , 1 2 + 2 λ x , 2 + 1 ) 2 8 λ x , 2 .
This implies that ξ x , d ˜ x converge to zero in finite time for λ x , 1 , λ x , 2 > 0 , since
λ min P e , x 2 χ x ( t ) 2 V e , x 1 / 2 ( t 0 ) γ min e , x 2 ( t t 0 ) λ max P e , x 2 χ x ( t 0 ) 2 γ min e , x 2 ( t t 0 ) = 0
for t ¯ = t 0 + 2 λ max P e , x χ x ( t 0 ) 2 / γ min e , x . □
The control scheme is divided into an inner and outer loop design. The inner loop design is responsible for attitude and altitude control, while the outer loop is responsible for controlling lateral and longitudinal motion. The desired trajectories for translation and heading movements are provided externally, while the roll and pitch trajectories are generated from the outer loop. The functional scheme of the proposed controller is the one shown in Figure 2.

4. Simulation and Results Analysis

The performance of the proposed controller is discussed in this section. First of all, the simulation environment used is briefly described in Section 4.1; then, the main wind models used in aerospace research are briefly recalled in Section 4.2, and specifically, the one used in the simulations of this paper is described. Finally, the results obtained by the robust controller in a generic flight mission are shown and compared in Section 4.3 with the non-robust controller in the presence of disturbances and parameters uncertainty present in the physical model of the chosen simulation environment.

4.1. Co-Simulation Environment with Matlab-Simulink and Simcenter Amesim with FPGA Implementation

The software Simcenter Amesim (see [15]), a multi-physics system simulation tool developed by Siemens Digital Industries Software, is used to model the different subsystems of the UAV: batteries, propulsion chain and flight dynamics. In general, the tool provides off-the-shelf components available in libraries, covering several physical (fluids, mechanical, electrical, thermal…) and application (aerospace, automotive, gas turbines…) domains. Those subsystem plant models have been favorably compared against experimental data provided by the manufacturers first. The use of this tool was therefore aimed at validating the controller and the estimators, which in the first instance were developed and tested only in the Matlab–Simulink environment. The overall plant model was then integrated in a co-simulation framework capable of modeling drone’s navigation sensors, mission environment and algorithms to simulate the drone’s behavior under different scenarios. The model present in Simcenter Amesim is complex with respect to the reference mathematical model considered for the design of the controller presented in Section 2; therefore, it contains both unmodeled dynamics and parameters that are time-varying and is therefore a valid test bed to evaluate controller’s performance. In the present research, the UAV model considered is seen as a black box model, and the parameters used in the model-based controller have been preliminary identified with Least Square Method. For example, at the modeling level, the aerodynamic coefficients such as the thrust and drag coefficient play an important role in the design of the controller. In fact, several studies have shown that they are variable based on the operating conditions of the drone. In both the physical models used in the advanced, realistic simulator used in this paper (see [15]) and in experimental studies, they are determined by multivariable functions (see [16,17]) such as orientation, angular and total velocity as well as the geometric characteristics themselves. For these reasons, they are parameters that can be identified in a static way, and this is the practice that can be followed, but they are actually time-varying during the simulation. For this reason, it is necessary to take them into account in the design phase of the controller in order to make it robust, and in our case, all these variations in propulsion level are also considered in the disturbance term. The drone simulation parameters used in the model-based design controller are presented in Table 1.
In addition to the use of the physical model of the Siemens drone with identical performance to the real one, a perfect candidate for this application is the FPGA implementation, since it can provide strict real–time execution, high power efficiency, small size, and high reliability, at the cost of a reduced dynamic range. Specifically, the Intel Cyclone 10 LP FPGA was available and corresponded to what was needed; then, it has been used as a reference, and it comes on a minimal board, which is useful for actual power consumption tests and fast prototyping, allowing installation on small UAVs for real-world tests. Without going into the details of the FPGA implementation, Figure 3 shows the structure of the implemented controller, which is only part of a complete system architecture. During the implementation on FPGA, the typical problems related to the operations of trigonometric function, their inverse, reciprocal or division, square root, computation of the derivatives, discrete approximation, variables normalization, as well as to the fixed-point arithmetic of the controller and input variables have been addressed. The simulations presented were carried out in a co-simulation environment between Matlab and Simcenter Amesim in order to have a complex model on which to test the controller and were implemented in FPGA at the end.

4.2. Environmental Disturbances Acting on the Quadrotor: Wind Modeling

The categories, features, and mathematical models of the wind, which have a big influence on UAV in the low-altitude condition, can be classified in four groups: constant wind, turbulent flow, many kinds of wind shear, and the propeller vortex (see [18]). The attitude, speed, and position of UAV are sensitive to wind disturbance, and consequently, the wind is seen as a parameter that has the bigger influence on efficiency. The main features of each wind category are shortly evoked below:
  • Constant wind deals with the average wind speed in a specified environment. Constant wind does not exist in nature, because it is only the reference value of the wind speed in a given environment. To perform a more realistic simulation test, other types of wind need to be considered. Generally through statistical data, it is possible to obtain its value in the different temporal or spatial conditions. The numerous relevant websites that log wind data are supportive in this regard. Usually, constant wind is used in simulation tests of UAVs at first, but it is unable to reproduce the flight environment correctly.
  • Turbulent flow is a continuous random change, which is always conducted by constant wind. The source of turbulent flow is coupled to many elements, such as wind shear, heat exchange, topographical factors, etc. (see [19]). Stochastic Process Theory is commonly used to describe atmospheric turbulence in engineering applications. Turbulent flow models incorporate the Dryden model and the Von Karman model, both of which depend on a vast amount of measurements and statistics (see [20]). The difference is that Dryden’s model finds the correlation function of turbulence before giving rise to the spectral function, while Von Karman, on the contrary, first establishes the spectral function and then deduces the correlation function of turbulence. From the aforementioned literature, it emerges that between the two models, there is no relevant difference for the application use in the simulation phase; therefore, both can be used within engineering problems designed to simulate the wind.
  • Wind shear The American National Research Council defines the degree of wind shear as the ratio of the difference between two wind vectors at two points and the distance between those two points. There are many sources of wind shear. In UAV flight, common low-altitude wind shear contains frontal wind shear, topography-induced wind shear, microdownburst and night jet wind shear. The frequency of the wind shear is also not as large as the turbulent flow, it changes every few seconds as its maximum frequency. The speed of the wind shear is a function of the spatial position, and its model is relatively simple. In the simulation test, the abrupt change in constant wind speed is used to indicate the occurrence of wind shear. Wind shear is a discrete or deterministic wind speed, which often occurs in a very short time, and it is a strong atmospheric perturbation. The wind shear model can be divided into several categories based on its profile geometry, including the rectangular model, the trapezoidal model, and the ’1-consine’ model.
  • Propeller vortex is related to large manned aircraft. There are wake vortex caused by aircraft wings that significantly affect other aircraft. As for UAVs, due to their slower flight speed, the propeller vortex will no longer play an important role, while here, another vortex caused by the propellers could be considered, just as the name suggests, but it can be kept in consideration in the modeling phase of the system to be controlled.

The Principle of Wind Affects the UAV

All kind of wind modify the speed of the UAV, as a result altering the angle of attack and the angle of drift, which influences the values of the aerodynamic derivatives and eventually causes disturbances to the outcome force and torque of the UAV. In general, the most common approach to relate the consequences of winds on UAVs is from the point of view of speed. The wind models cited above explain only the distribution of velocity in space and time. Unfortunately, under most conditions, the induced speed of a certain wind field is not uniform, such as the wind gust field and the vortex field of the propeller, which denotes that the speed is not a constant value and changes together with the different parts of the UAV. To figure out this problem, in [21], we proposed an averaging way to calculate the actual wind speed and the wind gradient in order to derive the relationships between the variation of the air speed and the actual wind as well as between the variation of the body angular velocities and wind gradient. On the other hand, from the point of view of force, the effects of the non-uniform part of the flow field are considered an external force on the UAV. It is a well-known fact that interaction forces are the essential reason for the change in the kinetic states of objects, and the force caused by air is called resistance. In the simulation results presented, the Dryden wind turbulence model is used. The Dryden model considers the linear and angular velocity components of continuous gusts as spatially varying stochastic processes and specifies each component’s power spectral density. The Dryden wind turbulence model is characterized by rational power spectral densities, so exact filters can be designed that take white noise inputs and output stochastic processes with the Dryden gusts’ power spectral densities. The trends of the wind disturbances considered in the subsequent simulation are shown in Figure 4, dividing the contributions with respect to the three reference axes by linear and angular speed. For more mathematical details on the considered model, it is possible to refer to [22]. Table 2 shows the main parameters and the values used for the generation of disturbances with reference to the Simulink block called “Dryden Wind Turbulence Model (Continuous)”. The gains value of the HOSM controller and of the disturbances estimators used in the simulations shown are reported in the Table 3. We want to emphasize that controller parameters give a formal solution of the stated control problem. Nevertheless, in practice, one often requires to calibrate the convergence rate, either to slow it down (relaxing the burden on the actuators) or to accelerate it in order to meet some system requirements. Consider, in this context, redundantly augmenting the magnitude parameter does not accelerate the convergence but rather only increases the chattering, while its reduction may lead to a loss of convergence.

4.3. Simulation Results

In the test mission shown, we consider a rest-to-rest maneuver of the quadrotor with an initial state [ x y z ψ ] = [ 0 0 0 0 ] and a final state [ x y z ψ ] = [ 4 5 15 π / 4 ] . In fact, we assumed zero linear and angular velocity of the UAV at the boundary states, with zero body orientation at time t = 0 . The reference generator of the trajectories to be tracked is generated in such a way to have minimum accelerations and with a time suitable for carrying out the mission (see [23] for more details). Figure 5, Figure 6, Figure 7, Figure 8, Figure 9, Figure 10, Figure 11 and Figure 12 are representative of the simulation considered in the cosimulation environment with FPGA implementation described in (Section 4.1): they compare and show the tracked characteristic state variables between the robust controller with disturbances compensation and the non-robust controller and the errors, the control inputs, the disturbances d x , d y , d z , δ 3 and their estimation d ^ x , d ^ y , d ^ z , δ ^ 3 ; the effectiveness of the robust controller compared to the non-robust one and good estimation of the disturbances is evident. In fact, if the wind disturbance is not compensated, it takes the drone away from the trajectory to follow and leads it to dangerous states in terms of dynamics and greater energy consumption due to the removal from the desired trajectory. In particular, Figure 5, Figure 6 and Figure 7 show the trends of the longitudinal (x), latitudinal (y), and altitudinal (z) positions, respectively, and their errors: in order to make evident the tracking difference between the robust and non-robust controller, their trends have been separated as well as their errors. The tracking errors of the non-robust controller are always large due to disturbances and parametric variations, but in the final part of the simulation, it cannot even keep the drone stable. With the same philosophy at the graphic level, Figure 8 shows the trend of yaw rate for the two controllers: the results are similar; therefore, with better performance than the robust controller, it should be emphasized that unlike the previous figures in this case, probably due to the wind and the unknown time-varying dynamics of some coefficients present in the simulator, the error reaches values of 12 degrees while keeping it always bounded.
Figure 9 shows the control inputs of robust control expressed as angular velocities of the four propellers. Modern-day ESC protocols can communicate at speeds of 37.5 kHz or greater (in general, it is between 30 and 60 kHz because of the relatively low inductance of the high-speed motors and the potential interference to sensor boards), see [24]. The frequency of the actuation signals of the robust controller is 100 Hz and thus abundantly meets the requirements of modern commercial drones. The control inputs in the robust case have more rapid variations, while in the non-robust case, they assume a smooth trend: this is due to the terms of the estimators trying to compensate for what they see as possible parametric disturbance or uncertainty. Figure 10 shows the three-dimensional spatial trajectories of the two controlled drones in order to be able to visually quantify the error that occurs when the controller is not made robust with respect to disturbances. It is evident that the error that non-robust control makes at the 3D trajectory level is high, and therefore, there is an increase in consumption and the risk of drone instability. Finally, the disturbances d x - d y - d z - δ 3 and their estimates used in robust control, together with their respective errors, are shown in Figure 11 and Figure 12. The estimates are good for all disturbances: we note the presence of noise and a slightly larger error in δ 3 , which is an event that causes errors of some degree in the tracking of the yaw rate, error due to the complex simulator considering that it has variable parameters over time, dynamics not considered in our model, and physical models based on experimental data; in fact, in the simulations not shown due to the lack of space made with the plant in Matlab, this does not happen.
To compare the performance of two proposed controllers in the considered mission, the Mean Absolute Error (MAE), Mean Square Error (MSE), Integral Squared Error (ISE), Integral Absolute Error (IAE), Integral Time-Weighted Absolute Error (ITAE) and Integral Time Square Error (ITSE) measures have been considered as comparative indices for the tracking along x, y, z and ψ . These performance indices are defined, for the variable x (the argument is analogous for the other variables) with respect to the reference x r e f to be tracked, during the N sampling instants, as follows
MAE = i = 1 N [ x r e f , i x i ] N
MSE = 1 N i = 1 N ( x r e f , i x i ) 2
ISE = ( x r e f x ) 2 d t
IAE = x r e f x d t
ITAE = ( t x r e f x ) d t
where x r e f , i and x i are, respectively, the values of the variable x r e f and x at sampling time i, and ISE, IAE and ITAE integrate over time. The results are reported in Table 4, which shows the difference for each performance index of the tracked variables between the non-robust and robust controller.
Finally, the control effort for each of the two controllers is also reported in Table 5. It is computed as the time integral of the square of the angular velocity for each propeller. The effort of non-robust control is greater, but above all, it has not fulfilled the mission it was supposed to carry out, and therefore, additional time and energy will be required. In conclusion, Table 4 and Table 5 point out, respectively, that the robust controller has better performance in terms of tracking error and lower total actuation effort.
Future work will deal with a comparison with another control strategy such as a neuroadaptive learning algorithm for constrained nonlinear systems with disturbance rejection [25] and asymptotic tracking with novel integral robust schemes for mismatched uncertain nonlinear systems [26].

5. Conclusions and Future Works

This paper presents a dynamic controller for a quadrotor where the user has partial knowledge of the model and in the presence of environmental disturbances such as wind along the linear and angular velocity. The proposed PI-like controller is able to compensate these issues by means of the use of HOSM estimators. The performance of such a controller has been tested in a co-simulation integrated environment between Matlab-Simulink and Simcenter Amesim with FPGA implementation. The results obtained by the robust controller are better than a basic version of the control both in terms of desired trajectories tracking and of actuation effort.
Future investigations will concern the development of theoretical results concerning the digital implementation of the proposed controller by exploiting the methodologies provided, for instance, in [27,28], experimental simulation and multi-agent (quadrotor) control systems in the presence of delay, quantization, and transmission errors (see [29]).

Author Contributions

Conceptualization, D.B. and S.D.G.; methodology, D.B. and S.D.G.; software, D.B. and M.D.F.; validation, D.B., M.D.F. and C.A.L.; formal analysis, D.B. and S.D.G.; investigation, D.B.; resources, D.B.; data curation, D.B.; writing—original draft preparation, Bianchi D.; writing—review and editing, Bianchi D.; visualization, D.B.; supervision, D.B. and S.D.G.; project administration, S.D.G.; funding acquisition, S.D.G. All authors have read and agreed to the published version of the manuscript.

Funding

This work is partially supported by the European Project ECSEL–JU RIA–2018 “Comp4Drones” under grant agreement No. 826610, and by MAECI Project 2018–2020 “Coordination of autonomous unmanned vehicles for highly complex performances” PGR01083.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

Data sharing not applicable.

Acknowledgments

The authors are grateful to the editor and anonymous reviewers for their constructive comments and suggestions, which have improved this paper.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Lippitt, C.D.; Zhang, S. The impact of small unmanned airborne platforms on passive optical remote sensing: A conceptual perspective. Int. J. Remote Sens. 2018, 39, 4852–4868. [Google Scholar] [CrossRef]
  2. Stolaroff, J.K.; Samaras, C.; O’Neill, E.R.; Lubers, A.; Mitchell, A.S.; Ceperley, D. Energy use and life cycle greenhouse gas emissions of drones for commercial package delivery. Nat. Commun. 2018, 9, 409–422. [Google Scholar] [CrossRef] [PubMed] [Green Version]
  3. ECSEL JU Project “COMP4DRONES”, 2019–2022. Available online: https://www.comp4drones.eu/ (accessed on 3 January 2023).
  4. Ding, L.; Wang, Z. A Robust Control for an Aerial Robot Quadrotor under Wind Gusts. J. Robot. Hindawi 2018, 2018, 5607362. [Google Scholar] [CrossRef] [Green Version]
  5. Ha, L.N.N.T.; Hong, S.K. Robust Dynamic Sliding Mode Control-Based PID–Super Twisting Algorithm and Disturbance Observer for Second-Order Nonlinear Systems: Application to UAVs. Electronics 2019, 8, 760. [Google Scholar] [CrossRef] [Green Version]
  6. Verberne, J.; Moncayo, H. Robust Control Architecture for Wind Rejection in Quadrotors. In Proceedings of the International Conference on Unmanned Aircraft Systems (ICUAS), Atlanta, GA, USA, 11–14 June 2019; pp. 152–161. [Google Scholar]
  7. Sankaranarayanan, V.N.; Satpute, S.; Nikolakopoulos, G. Adaptive Robust Control for Quadrotors with Unknown Time-Varying Delays and Uncertainties in Dynamics. Drones 2022, 6, 220. [Google Scholar] [CrossRef]
  8. Wan, K.; Gao, X.; Hu, Z.; Wu, G. Robust Motion Control for UAV in Dynamic Uncertain Environments Using Deep Reinforcement Learning. Remote Sens. 2020, 12, 640. [Google Scholar] [CrossRef] [Green Version]
  9. Lúa, C.A.; García, C.C.V.; Di Gennaro, S.; Castillo-Toledo, B.; Morales, M.E.S. Real-Time Hovering Control of Unmanned Aerial Vehicles. J. Math. Probl. Eng. Hindawi 2020, 2020, 2314356. [Google Scholar]
  10. Guillén-Bonilla, J.T.; García, C.C.V.; Di Gennaro, S.; Morales, M.E.S.; Lúa, C.A. Vision-Based Nonlinear Control of Quadrotors Using the Photogrammetric Technique. Math. Probl. Eng. 2020, 2020, 5146291. [Google Scholar] [CrossRef]
  11. Hughes, P.C. Spacecraft Attitude Dynamics; Dover Publications, Inc.: Mineola, NY, USA, 1986. [Google Scholar]
  12. Nagaty, A.; Saeedi, S.; Thibault, C.; Seto, M.; Li, H. Control and Navigation Framework for Quadrotor Helicopters. J. Intell. Robot. Syst. 2013, 70, 1–12. [Google Scholar] [CrossRef]
  13. Shtessel, Y.; Edwards, C.; Fridman, L.; Levant, A. Sliding Mode Control and Observation; Birkhauser: New York, NY, USA, 2014. [Google Scholar]
  14. Fridman, L.; Shtessel, Y.; Edwards, C.; Yan, X.-G. Higher-order sliding-mode observer for state estimation and input reconstruction in nonlinear systems. Int. J. Robust Nonlinear Control. 2008, 18, 399–412. [Google Scholar] [CrossRef]
  15. Cappuzzo, F.; Dezobry, V.; Bianchi, D.; Di Gennaro, S. A Novel Co-simulation framework for Verification and Validation of GNC Algorithms for Autonomous UAV. In Proceedings of the 78th Vertical Flight Society Annual Forum and Technology Display, FORUM 2022, Fort Worth, TX, USA, 10–12 May 2022. [Google Scholar]
  16. Nguyen, D.H.; Liu, Y.; Mori, K. Experimental Study for Aerodynamic Performance of Quadrotor Helicopter. Trans. Jpn. Soc. Aeronaut. Space Sci. 2018, 61, 29–39. [Google Scholar] [CrossRef] [Green Version]
  17. Six, D.; Briot, S.; Erskine, J.; Chriette, A. Identification of the Propeller Coefficients and Dynamic Parameters of a Hovering Quadrotor From Flight Data. IEEE Robot. Autom. Lett. 2020, 5, 1063–1070. [Google Scholar] [CrossRef]
  18. Wang, B.H.; Wang, D.B.; Ali, Z.A.; Ting, B.T.; Wang, H. An overview of various kinds of wind effects on unmanned aerial vehicle. Meas. Control. 2019, 52, 731–739. [Google Scholar] [CrossRef] [Green Version]
  19. Xiao, Y.; Jin, C. The Flight Principle in the Atmospheric Disturbance; National Defense Industry Press: Beijing, China, 1993. [Google Scholar]
  20. Beal, T.R. Digital simulation of atmospheric turbulence for Dryden and von Karman models. J. Guid. Control. Dyn. 1993, 16, 132–138. [Google Scholar] [CrossRef]
  21. Venkataramanan, S.; Dogan, A.; Blake, W. Vortex effect modelling in aircraft formation flight. In Proceedings of the AIAA Atmospheric Flight Mechanics Conference and Exhibit, Austin, TX, USA, 11–14 August 2003. [Google Scholar]
  22. Hakim, T.M.I.; Arifianto, O. Implementation of Dryden Continuous Turbulence Model into Simulink for LSA-02 Flight Test Simulation. Iop Conf. Ser. J. Phys. Conf. Ser. 2018, 1005, 012017. [Google Scholar] [CrossRef]
  23. Bianchi, D.; Borri, A.; Di Gennaro, S.; Preziuso, M. UAV trajectory control with rule-based minimum-energy reference generation. Proc. Eur. Control. Conf. (ECC) 2022, 1497–1502. [Google Scholar] [CrossRef]
  24. Mogensen, K.N. Motor-Control considerations for electronic speed control in drones. Analog. Appl. J. Tex. Instrum. 2016. Available online: https://www.ti.com/lit/an/slyt692/slyt692.pdf (accessed on 2 January 2023).
  25. Yang, G.; Yao, J.; Dong, Z. Neuroadaptive learning algorithm for constrained nonlinear systems with disturbance rejection. Int. J. Robust Nonlinear Control. 2022, 32, 6127–6147. [Google Scholar] [CrossRef]
  26. Yang, G. Asymptotic tracking with novel integral robust schemes for mismatched uncertain nonlinear systems. Int. J. Robust Nonlinear Control. 2022, 33, 1988–2002. [Google Scholar] [CrossRef]
  27. Di Ferdinando, M.; Pepe, P.; Di Gennaro, S. A new approach to the design of sampled-data dynamic output feedback stabilizers. IEEE Trans. Autom. Control. 2022, 67, 1038–1045. [Google Scholar] [CrossRef]
  28. Di Ferdinando, M.; Pepe, P.; Di Gennaro, S. On Semi–Global Exponential Stability Under Sampling for Locally Lipschitz Time–Delay Systems. IEEE Trans. Autom. Control. 2022, 99, 120–131. [Google Scholar] [CrossRef]
  29. Di Ferdinando, M.; Bianchi, D.; Di Gennaro, S.; Pepe, P. On the Robust Quantized Sampled–Data Leaderless Consensus Tracking of Nonlinear Multi–Agent Systems. In Proceedings of the 60th IEEE Conference on Decision and Control (CDC), Austin, TX, USA, 13–15 December 2021; pp. 3263–3268. [Google Scholar]
Figure 1. Quadrotor orientation using Euler angles.
Figure 1. Quadrotor orientation using Euler angles.
Machines 11 00352 g001
Figure 2. Functional block diagram of the controller.
Figure 2. Functional block diagram of the controller.
Machines 11 00352 g002
Figure 3. Some detail of the FPGA control architecture.
Figure 3. Some detail of the FPGA control architecture.
Machines 11 00352 g003
Figure 4. Disturbances for linear and angular velocity: (a) d x (green), d y (blue), d z (red), (b) δ 1 (green), δ 2 (blue), δ 3 (red).
Figure 4. Disturbances for linear and angular velocity: (a) d x (green), d y (blue), d z (red), (b) δ 1 (green), δ 2 (blue), δ 3 (red).
Machines 11 00352 g004
Figure 5. (a) Longitudinal motion of the UAV: the reference x r e f (black), x with robust control (blue); (b) Longitudinal motion of the UAV: the reference x r e f (black), x n c with non-robust control (red); (c) Longitudinal error motion of the UAV with robust control e x (blue); (d) Longitudinal error motion of the UAV with non-robust control e x n c (red).
Figure 5. (a) Longitudinal motion of the UAV: the reference x r e f (black), x with robust control (blue); (b) Longitudinal motion of the UAV: the reference x r e f (black), x n c with non-robust control (red); (c) Longitudinal error motion of the UAV with robust control e x (blue); (d) Longitudinal error motion of the UAV with non-robust control e x n c (red).
Machines 11 00352 g005
Figure 6. (a) Latitudinal motion of the UAV: the reference y r e f (black), y with robust control (blue); (b) Latitudinal motion of the UAV: the reference y r e f (black), y n c with non-robust control (red); (c) Latitudinal error motion of the UAV with robust control e y (blue); (d) Latitudinal error motion of the UAV with non-robust control e y n c (red).
Figure 6. (a) Latitudinal motion of the UAV: the reference y r e f (black), y with robust control (blue); (b) Latitudinal motion of the UAV: the reference y r e f (black), y n c with non-robust control (red); (c) Latitudinal error motion of the UAV with robust control e y (blue); (d) Latitudinal error motion of the UAV with non-robust control e y n c (red).
Machines 11 00352 g006
Figure 7. (a) Altitudinal motion of the UAV: the reference z r e f (black), z with robust control (blue); (b) Altitudinal motion of the UAV: the reference z r e f (black), z n c with non-robust control (red); (c) Altitudinal error motion of the UAV with robust control e z (blue); (d) Altitudinal error motion of the UAV with non-robust control e z n c (red).
Figure 7. (a) Altitudinal motion of the UAV: the reference z r e f (black), z with robust control (blue); (b) Altitudinal motion of the UAV: the reference z r e f (black), z n c with non-robust control (red); (c) Altitudinal error motion of the UAV with robust control e z (blue); (d) Altitudinal error motion of the UAV with non-robust control e z n c (red).
Machines 11 00352 g007
Figure 8. (a) UAV yaw angle: the reference ψ r e f (black), ψ with robust control (blue); (b) UAV yaw angle: the reference ψ r e f (black), ψ n c with non-robust control (red); (c) yaw angle error of the UAV with robust control e ψ (blue); (d) yaw angle error of the UAV with non-robust control e ψ n c (red).
Figure 8. (a) UAV yaw angle: the reference ψ r e f (black), ψ with robust control (blue); (b) UAV yaw angle: the reference ψ r e f (black), ψ n c with non-robust control (red); (c) yaw angle error of the UAV with robust control e ψ (blue); (d) yaw angle error of the UAV with non-robust control e ψ n c (red).
Machines 11 00352 g008
Figure 9. Propulsion angular velocities of robust (blue) and non-robust controller (red): ω p , 1 (a), ω p , 2 (b), ω p , 3 (c), ω p , 4 (d).
Figure 9. Propulsion angular velocities of robust (blue) and non-robust controller (red): ω p , 1 (a), ω p , 2 (b), ω p , 3 (c), ω p , 4 (d).
Machines 11 00352 g009
Figure 10. Three-dimensional (3D) drone trajectory: reference (black), robust control (blue), and non-robust control (red). The red circle and the red cross indicate, respectively, the starting and ending point of 3D reference trajectory.
Figure 10. Three-dimensional (3D) drone trajectory: reference (black), robust control (blue), and non-robust control (red). The red circle and the red cross indicate, respectively, the starting and ending point of 3D reference trajectory.
Machines 11 00352 g010
Figure 11. Disturbances estimations: (a) d x (blue) and d ^ x (red), (b) d y (blue) and d ^ y (red), (c) d x d ^ x , (d) d y d ^ y .
Figure 11. Disturbances estimations: (a) d x (blue) and d ^ x (red), (b) d y (blue) and d ^ y (red), (c) d x d ^ x , (d) d y d ^ y .
Machines 11 00352 g011
Figure 12. Disturbances estimations: (a) d z (blue) and d ^ z (red), (b) δ 3 (blue), and δ ^ 3 (red), (c) d z d ^ z , (d) δ 3 δ ^ 3 .
Figure 12. Disturbances estimations: (a) d z (blue) and d ^ z (red), (b) δ 3 (blue), and δ ^ 3 (red), (c) d z d ^ z , (d) δ 3 δ ^ 3 .
Machines 11 00352 g012
Table 1. Nominal quadrotor parameters.
Table 1. Nominal quadrotor parameters.
mMass of the Airframe5 kg
lDistance of CoG to the rotor shaft0.3 m
J 1 Inertia in the x-axis0.011521 kg · m 2
J 2 Inertia in the y-axis0.0362132 kg · m 2
J 3 Inertia in the z-axis0.029142 · m 2
J p Inertia of the propellers0.0003 · m 2
gGravity acceleration9.81 m · s 2
bTrust factor4.5625 × 10 5 N · s 2 · rad 2
cDrag factor1.375 × 10 5 N · s 2 · rad 2   · m
Table 2. Dryden Wind Turbulence Model Parameters.
Table 2. Dryden Wind Turbulence Model Parameters.
ModelContinuos Dryden (+q −r): Use continuous
Typerepresentation of Dryden velocity
spectra with positive vertical
and negative lateral angular rates spectra.
Altitudez
UAV v x 2 + v y 2 + v z 2
Velocity
Measured15 m/s.
wind speedMeasured wind speed at a height of 6 m
speed
Wind0
directionMeasured wind direction at a height of 6 m
(degrees clockwise from north)
to aid in transforming the low-altitude
turbulence model into a body coordinates.
Turbulence 10 2 -Light
intensityProbability of the turbulence intensity being exceeded
Wingspan10 m
required in the turbulence calculation on the angular rates.
Band limited0.01 s
noise sampleNoise sample time at which
timethe unit variance white noise signal is generated
Noise seeds(23,341 23,342 23,343 23,344)
(ug vg wg pg)Random noise seeds, specified as a four-element vector one for each
of the three velocity components
and one for the roll rate.
Table 3. Parameters of HOSM Controller and Estimators.
Table 3. Parameters of HOSM Controller and Estimators.
k x , 0 = 3 k x , 1 = 10 k x , 2 = 3 k y , 0 = 3 k y , 1 = 10 k y , 2 = 2
k z , 0 = 3 k z , 1 = 10 k z , 2 = 2 k ϕ , 0 = 1.5 k ϕ , 1 = 5 k ϕ , 2 = 1
k θ , 0 = 1.5 k θ , 1 = 5 k θ , 2 = 1 k ψ , 0 = 2.7 k ψ , 1 = 9 k ψ , 2 = 1.8
λ x , 1 = 10 λ x , 2 = 3 λ y , 1 = 10 λ y , 2 = 3 λ z , 1 = 10 λ z , 2 = 3
λ ϕ , 1 = 2 λ ϕ , 2 = 1 λ θ , 1 = 2 λ θ , 2 = 1 λ ψ , 1 = 2 λ ψ , 2 = 1
Table 4. Performance indices for the x, y, z and ψ tracking errors.
Table 4. Performance indices for the x, y, z and ψ tracking errors.
ControllerControlled VariableMAEMSEISEIAEITAEITSE
Non-robustx0.43121.319812.924.277735.9148125.34
Robustx0.0180.0000630.00630.17980.97430.0339
Non-robusty0.38671.31987.00073.844232.369266.1772
Robusty0.0360.00190.01960.36042.20550.127
Non-robustz0.2160.13211.29692.150513.936211.0271
Robustz0.01240.0000210.00210.12380.55910.0089
Non-robust ψ 19.33081492.21475.31.92541655.83138,009
Robust ψ 3.064717.5175.730.65521.3336629
Table 5. Actuation effort of robust and non-robust controllers as propeller angular velocity square integral along all the mission time.
Table 5. Actuation effort of robust and non-robust controllers as propeller angular velocity square integral along all the mission time.
ControllerNon-RobustRobust
ω p , 1 2.535937464 × 10 8 2.522437042 × 10 8
ω p , 2 2.534601465 × 10 8 2.512100166 × 10 8
ω p , 3 2.533127333 × 10 8 2.514066778 × 10 8
ω p , 4 2.534819281 × 10 8 2.515695169 × 10 8
Total1.013848554 × 10 9 1.006429915 × 10 9
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

Bianchi, D.; Di Gennaro, S.; Di Ferdinando, M.; Acosta Lùa, C. Robust Control of UAV with Disturbances and Uncertainty Estimation. Machines 2023, 11, 352. https://doi.org/10.3390/machines11030352

AMA Style

Bianchi D, Di Gennaro S, Di Ferdinando M, Acosta Lùa C. Robust Control of UAV with Disturbances and Uncertainty Estimation. Machines. 2023; 11(3):352. https://doi.org/10.3390/machines11030352

Chicago/Turabian Style

Bianchi, Domenico, Stefano Di Gennaro, Mario Di Ferdinando, and Cuauhtémoc Acosta Lùa. 2023. "Robust Control of UAV with Disturbances and Uncertainty Estimation" Machines 11, no. 3: 352. https://doi.org/10.3390/machines11030352

APA Style

Bianchi, D., Di Gennaro, S., Di Ferdinando, M., & Acosta Lùa, C. (2023). Robust Control of UAV with Disturbances and Uncertainty Estimation. Machines, 11(3), 352. https://doi.org/10.3390/machines11030352

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

Article Metrics

Back to TopTop