Next Article in Journal
Research on the Performance of Slender Aircraft with Flare-Stabilized-Skirt
Previous Article in Journal
A Unified Numerical Approach to the Dynamics of Beams with Longitudinally Varying Cross-Sections, Materials, Foundations, and Loads Using Chebyshev Spectral Approximation
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

An Enhanced Incremental Nonlinear Dynamic Inversion Control Strategy for Advanced Unmanned Aircraft Systems

by
Maryam Taherinezhad
* and
Alejandro Ramirez-Serrano
Department of Mechanical Engineering, University of Calgary, Calgary, AB T2N 1N4, Canada
*
Author to whom correspondence should be addressed.
Aerospace 2023, 10(10), 843; https://doi.org/10.3390/aerospace10100843
Submission received: 27 July 2023 / Revised: 22 September 2023 / Accepted: 26 September 2023 / Published: 27 September 2023

Abstract

:
A cascade control architecture was proposed for the control of advanced unmanned aerial vehicles targeted for operation inside confined hazardous spaces. The aircraft of interest is a highly maneuverable system presenting highly coupled dynamics, enabling it to perform unique flight maneuvers that no other aircraft can. To deal with the complexities inherent to such an aircraft, a novel nonlinear control architecture was proposed. Two outer loop NDI controllers and an inner loop INDI controller were employed for position/velocity and attitude/rotation rate control, respectively. These controllers assist each other, enabling them to decouple the aircraft dynamics while coping with complex external disturbances. The obtained results demonstrate an effective control of the targeted aircraft system to accurately track complex flight maneuvers.

1. Introduction

Urban search and rescue (USAR) robots and drones have the potential to save lives and hold the promise to limit the monetary consequences of disasters. Specifically, numerous conferences and journal articles have highlighted the potential benefits of unmanned aerial vehicles (UAVs) for SAR operations, as well as the need for their further development. To reduce the number of casualties from urban disasters (among other things), new aircraft configurations and advanced control systems are needed to enable UAVs to fly and maneuver inside helicopter-impenetrable environments and cope with the associated aerodynamic disturbances that the aircraft might encounter inside hazardous spaces. This paper provides novel theoretical and practical control formulations for the next phase of UAV evolution.
To enable robots to navigate inside confined environments, there is also a need to increase their motion capabilities so that robots can penetrate and maneuver through geometrically complex 3D spaces (e.g., voids and crevices). Examples of suitable motions include pitch hover maneuvers and aerial manipulation. Aircraft having such capabilities would be beneficial to numerous other applications, including mining, construction, forestry (flying within tree-covered areas), and inspection tasks inside critical infrastructures. Although UAVs have been the subject of numerous developments, the biggest limitation to the widespread deployment of such systems for complex operations in restricted environments is their limited agility to move inside confined spaces while coping with the associated aerodynamic ground and wall effects. Therefore, improvements are needed to control new UAV designs formulated for complex autonomous maneuvers in tight spaces with high speed, complex trajectory tracking, and other aspects.

2. Literature Review

This paper presents a novel control architecture towards developing highly maneuverable UAVs, enabling them to perform agile maneuvers inside restricted GPS-denied spaces in the presence of a priori unknown disturbances and coupled aircraft dynamics. Due to the diverse applications of UAVs in a wide variety of areas, such as surveillance, environmental monitoring, drug delivery, and SAR, there has been a substantial body of work developing diverse control systems for the position and orientation (a.k.a. pose) of UAVs, as well as their trajectory and resistance to internal and external disturbances. Although such aspects have been extensively considered in past works, such mechanisms have mainly been developed for flying in open uncluttered spaces which lack effectiveness inside the type of spaces that have been considered in this paper. For such unrestricted (open) spaces, different control methods have been developed, from classical linear [1,2,3] to adaptive [4], fuzzy [5], and multi-variable nonlinear control [6] approaches. These control methods have been mostly applied to typical rotorcraft (e.g., helicopters and quadrotors) and fixed-wing type aerial vehicles, with very little attention to new aircraft concepts. Such linear and nonlinear control methods have also employed numerous complementary techniques, including tools from the area of artificial intelligence (AI).
Due to the fact that aircraft systems (especially those targeted to fly inside cluttered spaces) are affected by diverse aspects (e.g., propeller performance, changing atmospheric conditions, drag, etc.), many of which change over time and/or are based on the aircraft’s motion, obtaining an exact mathematical model of aircraft for all flying conditions is practically impossible. Under such conditions, and knowing that most aircraft models are nonlinear, researchers have employed diverse processes to improve the aircraft representation while simultaneously enabling the model to facilitate for control development using model simplification techniques [7]. Generating linear models based on the corresponding nonlinear models has enabled the use of simpler linear control techniques (e.g., PID, H_∞, and LQR). In the study published by the authors of [8], a feed-forward control algorithm that led to a Lyapunov function with asymptotic stability was developed. In the study published by the authors of [7], Funtoni et al. proposed a linearization-based technique to enable effective control of under-actuated mechanical systems in cases where either typical control mechanisms could not effectively be used, or when typical controllers (e.g., PID) severely limit the operational capabilities of aircraft restricted to fly under benign wind conditions).
Despite the success of previous controllers in controlling aircraft under typical flight missions (cruise, take-off, hover, etc.), such controllers have been proved to be ineffective when controlling UAVs performing untypical or aggressive flight maneuvers. Examples of such maneuvers include acrobatic flight maneuvers, such as hammerheads and lomcevaks (a family of extreme acrobatic maneuvers where the aircraft, with almost no forward speed, rotates on a chosen axes using the gyroscopic precession and torque of the rotating propellers). Furthermore, controlling aircraft under unexpected or changing flight conditions, such as flying under system failure and landing on an oscillatory moving ship deck (a common problem faced by military and maritime SAR operations), have been proved to be difficult. In the study published by the authors of [9], Marconi et al. proposed a control algorithm for landing VTOL (vertical take-off and landing) aircraft on an oscillatory deck ship using an internal model-based feedback dynamic regulator. Such a controller proved to be robust in the presence of uncertainties affecting the system; however, the controller was only analyzed in open spaces, with the aircraft performing typical flight maneuvers. Similarly, in trying to resolve such problems, other mechanisms have been proposed e.g., those published by the authors of [9,10,11]. Olfati presented an algorithm with a smooth static state feedback approach for stabilizing a VTOL with a complex input [10]. A simple Lyapunov analysis-based controller for a VTOL limited to perform simple maneuvers, such as take-off, hover, linear flight trajectories, and landing, was presented and assessed by the authors of [11].
In the study published by the authors of [5], Coza et al. provided a summary of UAV stabilization techniques aiming to identify effective tools to solve the problems of controlling UAVs having model uncertainties—a problem none of the previous developments could fully resolve. The observation of such a review led to the development of new adaptive fuzzy methodologies to control quadrotor helicopters in the presence of both model uncertainty and sinusoidal wind disturbances without the need for a (precise) mathematical formulation of the aircraft e.g., those published by the authors of [5,12]. In the study published by the authors of [13], an adaptive nonlinear robust controller was designed to enable UAVs to follow desired tracking missions. Although such approaches have reduced the complexities associated with creating precise aircraft mathematical models, they require the use of arduous methods to find their needed control parameters (e.g., drag coefficients), requiring the control engineer to be highly knowledgeable in numerous areas outside the control domain, including computational fluid dynamics, engine/motor characterization, etc. To reduce such complexities, engineers have used fewer formal mechanisms to model the behaviour of aircraft, including AI methodologies. Similar to the study published by the authors of [5], an adaptive neural network control method was presented in the study published by the authors of [12] to stabilize the attitude of quadrotor helicopters in the presence of model uncertainty and considerable wind disturbances. Morel and Leonessa [14] proposed a direct adaptive controller for altitude and Euler angels tracking of a quadrotor UAV in the presence of model uncertainties. Amiri et al. [15] proposed an integral backstepping control technique to control both the position and orientation of a highly maneuverable UAV, improving the stability of the vehicle, but no aerodynamic or other disturbance rejection was considered. A backstepping control approach combined with two neural networks to approximate aerodynamic uncertainties was used by the authors of [16]. Xu and Ozquner proposed a combination of PID control for the fully actuated part of the dynamic model of UAVs, with a sliding mode controller for the underactuated part [17].
In the study published by the authors of [18], a sliding mode disturbance observer was presented as a robust flight controller of a quadrotor, which provided robustness to external disturbances, uncertainties of the dynamic model, and actuator failure. Similar to the study published by the authors of [18], researchers have proposed other control mechanisms to increase flight performance using robust adaptive fuzzy controllers, e.g., in the study published by the authors of [19], which have demonstrated satisfactory results against sinusoidal and other types of wind disturbances. Mokhtari et al. presented a robust feedback linearization method with a linear generalized H∞ controller with a weighting function that resulted in an improved overall robustness against disturbances and uncertainties [20]. Dunfied et al. proposed the use of a pre-trained neural network to stabilize quadrotor UAVs while hovering without disturbances [21]. In the work reported by the authors of [22,23], the capabilities of adaptive neural network controllers in VTOL aircraft stabilization were shown. Although promising and somewhat effective, most of the mentioned control developments have focused on the control of traditional unmanned aircraft (e.g., quadrotors, helicopters, and fixed-wing aircraft) executing somewhat simple flight maneuvers under the presence of simple external disturbances modelled as impulse and sinusoidal signals. Despite the satisfactory results of previous works, such approaches have not considered the control of new aircraft concepts that are currently being developed (e.g., supersonic and hybrid or transitional UAVs) [24,25,26,27]. As a result, previously developed controllers provide somewhat limited control capabilities when applied to unconventional (complex) aircraft. Such control formulations have challenges to enable aircraft to perform complex (e.g., acrobatic) and stable maneuvers in the presence of rapidly changing disturbances, which are typically found when navigating inside confined spaces or under extreme weather conditions.
Based on the proliferation in the development of advanced unmanned aircraft targeted to be deployed in hazardous environments, there is a need to reduce the dependency on having accurate aircraft models required for control. Sensor-based control approaches have been formulated that are capable of dealing with model uncertainties. In such techniques, accurate knowledge of the system is exchanged with precise sensing of the system’s dynamics, decreasing system identification efforts. A promising sensor-based strategy is the use of incremental dynamics (ID) techniques, which ease the generation of controllers that are less dependent on the system model e.g., that proposed by the authors of [28]. The incremental nonlinear dynamic inversion (INDI) method, in particular, combined with a set of PID/PD controllers, has been successfully employed in the literature to control the attitude and position of advanced tilt-rotor bi-copter drones, which cannot be fully controlled via traditional control formulations [28].
Although INDI has shown great promise for the control of novel (non-typical) aircraft subject to disturbances, INDI control remains sensitive to several model uncertainties. To deal with such characteristics, the original INDI control formulation has been combined with AI paradigms, such as artificial neural networks, and other mechanisms. The authors of [28] proposed a novel INDI with neural networks (INDI-NNs) control scheme to deal with inherent system model uncertainties. Numerous INDI control schemes have been developed with diverse objectives in mind, including position, attitude, and trajectory tracking for diverse UAVs. In the study published by the authors of [29], an INDI controller for the 3D acceleration trajectory tracking of tail-sitter UAVs (capable of transitioning between VTOL and fixed-wing flight) was developed. The results presented by the authors of [30] show that INDI control is effective to control aircraft operating under diverse flight modes (e.g., VTOL and fixed wing), which is not possible, or at least very challenging, with other control mechanisms. By adding a sideslip controller to align the wings of a given aircraft with the sensed airspeed vector, this has provided the means to neglect the flight phase that the UAV is executing. Following such advances, Wang et al. proposed an incremental sliding mode control mechanism driven by a sliding mode disturbance observer (INDI-SMC/SMDO) based on the control structure of INDI. This developed controller has been shown to have the ability to passively resist a wider variety of faults and external disturbances using continuous inputs with lower control and observer gains [31].
Based on the cited works, INDI control formulations seem to be the most appropriate mechanism developed, thus far, for the control of advanced unmanned aircraft systems, especially those aircraft having coupled dynamics capable to execute complex flight maneuvers. When compared to other control formulations for either linear or nonlinear systems, the INDI control method is less dependent and less sensitive to model dynamics and model uncertainties, and therefore increasing both system robustness and flexibility with respect to changes in the aircraft’s operation mode. Based on previous work conducted by our research group (e.g., the study published by the authors of [28]), an extension of previous INDI formulations for the control of highly maneuverable VTOL UAVs has been proposed in this paper to enhance the operation of such an aircraft targeted to operate inside GPS-denied confined spaces subject to aerodynamic ground and wall effects. This proposed control method decouples the control parameters, which reduces the time to compute a proper control signal and hence improves the performance of the aircraft. The controller was shown to be robust to external disturbances, capable of independent control of the system’s coupled degrees of freedom, and convenient for independent position/orientation trajectory tracking subject to motion and state constraints.
The following sections of this paper are organized as follows: the nonlinear mathematical model of the aircraft of interest (termed the Navig8) is described in Section 3; the proposed dynamic inversion control method is described in Section 4, while Section 5 presents illustrative numerical simulations showing the performance of the proposed controller, followed by the conclusions in Section 6.

3. Aircraft’s Dynamic Model

3.1. Flight Mechanism

The drone under consideration in this paper is a six degrees of freedom (DOF) tilt rotorcraft. Each of the aircraft’s ducted or shrouded propellers which rotate in opposite directions have independent tilt angles, speed, and variable pitch angles. The aircraft also has a variable pitch propeller (VPP) tail rotor, which, in contrast to helicopters, produces thrust perpendicular to the horizontal reference plane of the aircraft, enabling the aircraft to perform pitch maneuvers (Figure 1).
The thrust produced by each of the three propellers can be independently controlled in three possible ways: (i) by changing the propeller’s rotational speed ( ω 1 , ω 2 , and ω 3 ), (ii) by changing the propeller’s angle of attack ( β 1 , β 2 , and β 3 ), and (iii) a combination of “i” and “ii” (a combination of propeller rpm and VPP changes) via the control signals ω 1 ,   ω 2 ,   ω 3 ,   β 1 ,   β 2 , and β 3 , which correspond to the propellers’ speed and the angle of attack of the left, tail, and right propellers, respectively. Additionally, each of the two main (left and right) propellers can independently tilt by an angle α i , providing the capability for thrust vectoring. These characteristics result in the use of eight control signals ( ω i , α i , and β i ), which provides the opportunity to control the aircraft in different ways via proper control allocation mechanisms. Optimal control allocation would also enable the aircraft to cope with internal failures (e.g., damage of the r p m i control) under a high reaction time in diverse ways. Due to the control allocation challenges that are available for the control of such an UAV, in this paper, we only considered controlling the thrust produced by each of the UAV’s propellers via option “i” (i.e., keeping all β i parameters unchanged throughout the given mission). Controlling the UAV via options “ii” and “iii” will be the subject of a subsequent paper focusing on the corresponding control allocation formulations needed to determine the optimal use of the propellers’ rpm, VPP, or a combination of both. As a result of the reduced control complexities employed in this paper, the UAV was left with five control inputs: ω 1 , ω 2 , ω 3 , α 1 , and α 3 . In order to minimize the adverse aerodynamic ground and wall effects, which the UAV would experience when flying close to surfaces (e.g., ground), the two main propellers were set to have a constant dihedral angle, γ , (see Figure 2). Such a dihedral angle was determined from extensive CFD (computational fluid dynamics) analysis [32].
The combination of the above-mentioned characteristics enables the aircraft to perform untypical flight maneuvers that other aircraft cannot execute, including pitch hover at angles within the range from −90° (nose down) to 90° (nose up). With effective control and mechanical design changes, these flight characteristics can be augmented to perform enhanced maneuvers, such as perching and inverted pitch hover maneuvers suitable for time-extended surveillance, as well as other critical missions inside dynamic cluttered spaces.
The drone, having a mass “m”, can fly sideways, forwards, and backwards in diverse attitudes using the five control inputs that were considered in this paper. The sideways motion (in the vehicle’s “y” direction—see Figure 2) was achieved through generating a differential thrust/speed of the two (left and right) main (shrouded) propellers. The tilt angles, α 1 and α 3 , of such propellers were changed in equal amounts to achieve fore and aft motions (i.e., motion in the “x” direction). Tilting the angle of the propellers in opposite directions created the yaw motion (rotation about the vehicle’s “z” axis). The described motions are, however, highly coupled, that is, requesting the aircraft to execute a given maneuver produces a side effect (sometimes undesirable) motion. Such coupled motions have been summarized in Table 1, where the number of Xs in each box denotes the degree of the corresponding coupled motions. For example, if the aircraft has been requested to execute a pure sideways (translational) motion, the differential rotational speeds of the main propellers needed to achieve such a motion also generate roll and yaw aircraft motions. Such coupled motions and the number of simultaneous motion(s) associated with the given (desired) motion have been described via the drone’s mathematical model.

3.2. Dynamic Model

The Newton–Euler formulation was used to derive the system’s dynamic model. Two frames of reference were used: an inertial reference frame, denoted by O X I Y I Z I , and a body reference frame positioned at the center of mass of the UAV, denoted by O X b Y b Z b , as shown in Figure 2.
In order to describe the rotation of the drone, the Euler angles (roll (ϕ), pitch (θ), and yaw (ψ)) were used and, therefore, the transformation matrix from the inertial to the body reference frame was defined by Equation (1) as:
R I B =     c θ c ψ      c θ s ψ      s θ c ϕ s ψ + s ϕ s θ c ψ    c ϕ c ψ + s ϕ s θ s ψ    s ϕ c θ s ϕ s ψ + c ϕ s θ c ψ s ϕ c ψ + c ϕ s θ s ψ    c ϕ c θ
where c and s represent the cos and sin functions of the corresponding angle (e.g., c ϕ = c o s ϕ ), respectively. The matrix describing the relationship between the body’s angular velocity (p, q, or r) and the rotational speed of the Euler angles was defined as per Equation (2):
ω = ϕ θ ψ ˙ ˙ ˙ = 1    t a n θ s i n ϕ     t a n θ c o s ϕ 0     c o s ϕ     s i n ϕ 0 s i n ϕ / c o s θ    c o s ϕ / c o s θ p q r = J ϑ Ω
Due to the complexities related to the operational capabilities of the Navig8 UAV, the following three assumptions (Ak) and two constraints (Ck) were made to simplify the drone’s equations of motion:
  • The body reference frame and the aircraft center of mass are coincident.
  • The aircraft’s structure is symmetric to its XZ (longitudinal) plane, resulting in I X Y = I Z Y = 0 .
  • All aerodynamic coefficients, such as drag and lift, remain constant throughout the given flight mission.
  • The thrust, T i , generated by propeller I, is proportional to the square of its rotational speed.
  • The trust and torque coefficients for each of the three propellers (i = 1, 2, or 3) is assumed constant, as described by Equations (3) and (4).
T i j = 0 0 k T i ω i 2 T
τ i j = 0 0 K T o i ω i 2 T
and
k T i = 1 2 C T i ρ A i r i 2   
K T o i = 1 2 C T o i ρ A i r i 3
where C T and C T o represent the propellers’ trust and torque coefficients, r and A specify the radius and footprint area of each propeller, and ρ denotes the air density.
Based on the previously mentioned aspects, the equations of the motion for the Navig8 can be expressed as Equation (5).
x ¨ = 1 m X b c θ c ψ + Z b s ϕ S ψ + c ϕ s θ c ψ y ¨ = 1 m X b c θ s ψ + Z b s ϕ c ψ + c ϕ s θ s ψ z ¨ = 1 m X b s θ + Z b   c ϕ c θ g p ˙ = I X Z I X X r ˙ + p q + I Y Y I Z Z I X X q r + L I X X q ˙ = I X Z I Y Y r 2 p 2 + I Z Z I X X I Y Y p r + M I Y Y r ˙ = I X Z I Z Z p ˙ q r + I X X I Y Y I Z Z p q + N I Z Z
The terms X , Y , Z , L , M , and N in Equation (5) denote the total forces and torques in the x , y , and z directions, respectively. Such terms were obtained as per Equation (6):
L M N X Z = k T 1 b cos γ k T 1 a cos γ k T o 1 cos γ     k T o 1 k T 1 c k T 1 b     k T 3 b cos γ k T 3 a cos γ k T 03 cos γ     k T o 3 k T 3 c k T 3 b     0 k T 2 d k T o 2 0 k T 1 cos γ     k T 1 0     0 k T 3 cos γ     k T 3 0     0 k T 2 ω 1 2 cos α 1 ω 1 2 sin α 1 ω 3 2 cos α 3 ω 3 2 sin α 3 ω 2 2   
where a , b , c , d , and e represent the corresponding orthogonal distances between the center of mass of the UAV and the left, right, and back propellers described by the vectors p 1 = a , b , c ,   p 2 = d , 0 , e , and p 3 = a , b , c , respectively, as illustrated in Figure 2. The five expressions provided in Equation (6), X , Z , L , M , and N , define a coupled set of equations, which are simplified by defining the five control variables u 1 , u 2 , u 3 , u 4 , and u 5 , as per Equation (7).
U = u 1 u 2 u 3 u 4 u 5 = ω 1 2 cos α 1 ω 1 2 sin α 1 ω 3 2 cos α 3 ω 3 2 sin α 3 ω 2 2   
It is worthwhile to clarify that based on the assumptions and the drone’s symmetrical geometry, the expression for Y is not involved in Equation (6). As a result, Equation (6) can be rewritten as Equation (8):
L M N X Z = k T 1 b cos γ k T 1 a cos γ k T o 1 cos γ     k T o 1 k T 1 c k T 1 b     k T 3 b cos γ k T 3 a cos γ k T 03 cos γ     k T o 3 k T 3 c k T 3 b     0 k T 2 d k T o 2 0 k T 1 cos γ     k T 1 0     0 k T 3 cos γ     k T 3 0     0 k T 2 u 1 u 2 u 3 u 4 u 5 = K U
in which K is a fixed matrix defined by the physical characteristics of the UAV, as per Equation (8). Therefore, the control signals vector, U , can be calculated if the inverse of K exists, as represented by Equation (9) below.
U = u 1 u 2 u 3 u 4 u 5 = K 1 L M N X Z
Therefore, considering Equation (7), the five control inputs of interest are computed per Equation (10) as:
ω 1 2 ω 3 2 ω 2 2 α 1 α 3 = K 1 u 1 2 + u 2 2 u 3 2 + u 4 2 u 5 tan 1 u 2 u 1 tan 1 u 4 u 3

4. Control Technique

The UAV’s dynamic model can be represented in generic form of a nonlinear state-space system:
x ˙ = F ( x , u )
where x t and u t represent the state and input transpose vectors, at time t , respectively:
x t = x , y , z , φ , θ , ψ , x ˙ ,   y ˙ ,   z ˙ ,   φ ˙ , θ ˙ , ψ ˙  
u t = ω 1 , ω 2 , ω 3 , α 1 , α 3 , β 1 , β 2 ,   β 3  
By calculating the first-order Taylor series of Equation (11), Equation (11) can be written as:
x ˙ = x ˙ 0 + F x | x 0 , u 0 x x 0 + F u | x 0 , u 0 u u 0
in which x 0 and u 0 represent the state and input vectors of the system at the previous time step, ( t 0 ), respectively. An INDI description of a system described by Equation (12) is possible under the following two assumptions:
6.
The state of the UAV and input, u , are bounded, and the function F is continuous.
7.
The amount of time that has passed between x 0 and x (sampling time) is sufficiently small.
By using a small sampling time (assumption b) and employing high performance actuators in the drone, the changes in the state of the UAV ( x ) with the given time step can be considered negligible (i.e., x = x x 0 ) with respect to the large changes in the input parameters represented as ( u = u u 0 ), given that state changes arise as a result of the integration of input changes and are, therefore, slower.
The assumptions listed above imply that the difference ( x x 0 ) can be considered negligible (ignored) and therefore, Equation (12) becomes:
x ˙ = x ˙ 0 + F x | x 0 , u 0 x x 0 + F u | x 0 , u 0 u u 0
To be efficient, this INDI approach requires a suitable timescale separation, which was considered as 0.01 s in this paper. To achieve the required timescale separation, the approach taken in this paper was to employ a combination of NDI, INDI, and PID controllers, forming an inner and outer loop control strategy, as illustrated in Figure 3.
The developed control architecture can be applied to diverse aircraft systems, especially those with complex dynamics operating in the presence of internal (e.g., system failures) and/or external disturbances (e.g., wind gusts). Overall, the controller would receive, as a control input, a desired path/trajectory to follow, which includes the desired position ( x d , y d , z d ), orientation ( ϕ d , θ d , ψ d ), and time conditions, defining the UAV’s maneuvers from where the required control signals will be computed.

4.1. The Attitude Controller (INDI)

For the INDI attitude controller, the state of the drone was defined as a subset of the state variables used in Equation (11). Such a subset, x ¯ x , comprises the roll, pitch, and yaw Euler angles and the corresponding rotational speeds ( p , q , and   r ) , as described by Equation (14), where ϑ = ϕ , θ , ψ T , Ω = p , q , r T , and u ¯ = u 1 , u 2 , u 3 T have been defined based on Equations (8) and (9) and the dynamic equations of the system (e.g., Equation (5)):
x ¯ = ϑ Ω = ϕ θ ψ p q r     u ¯ = u 1 u 2 u 3
It is important to note that the lateral (sway) motion of the UAV is highly coupled with the roll angle of the body (see Table 1). The result of such coupled motions is that the UAV cannot perform pure lateral movement without rolling and vice versa. The additional coupled effects, as represented in Table 1, are manageable and can be decoupled and be precisely controlled. Therefore, for the proposes of this paper, the roll angle was not considered as a controllable state, but it was used as an input to reach a desired lateral translation.
From Equation (14), one can map the state vector, x ¯ , to the Euler angles of the UAV, ϑ , via a transformation matrix H , as per Equation (15):
ϑ = H x ¯ = I 3 × 3    0 3 × 3 x ¯
Since the first-order time derivative of the control variable vector, ϑ = ϕ , θ , ψ T , is not directly related to the control input vector, u ¯ , the relationship between the input and output variables was determined through obtaining the second-order derivative of the control vector, ϑ , as shown in Equations (16) and (17):
ϑ ˙ = d ϑ d t = d H x ¯ d t = H x ¯ ˙ = H ω ω ˙ = J ϑ Ω
ϑ ¨ = d 2 ϑ d t 2 = d J ϑ Ω d t = d d x ¯ 1     t a n θ s i n ϕ     t a n θ c o s ϕ 0       c o s ϕ     s i n ϕ 0 s i n ϕ / c o s θ    c o s ϕ / c o s θ p q r x ¯ ˙
Considering Equation (17) and the dynamic equations of the UAV, Equations (5)–(7), one can define ϑ ¨ as a function of x ¯ and u ¯ , as shown in Equation (18). From this formulation, and following Equation (11), the INDI controller can be formulated by performing a Taylor series expansion in the current time step, t , as described in Equation (19):
ϑ ¨ = F ϑ x ¯ , u ¯
ϑ ¨ F x ¯ 0 ,   u ¯ 0 + F ϑ x ¯ , u x ¯ | x ¯ 0 , u 0 x ¯ x ¯ 0 + F ϑ x ¯ , u ¯ u ¯ | x ¯ 0 , u ¯ 0 u ¯ u ¯ 0
Using F x ¯ 0 , u ¯ 0 = ϑ ¨ 0 as the angular acceleration measurement of the UAV at the previous time step, t 1 , a very short measurement sampling time ( t ) can be used, given that the actuator dynamics are faster (as per assumption b). Then, it is reasonable to further consider x ¯ x ¯ 0 0 when compared to the changes in the control output, u ¯ = u ¯ u ¯ 0 . In these circumstances, the simplified expression shown in Equation (20) can be used to obtain the control law:
ϑ ¨ = ϑ ¨ 0 + K x ¯ 0 ,   u ¯ 0 u ¯
Solving for u ¯ from Equation (20) results in u ¯ = K ( x ¯ 0 , u ¯ 0 ) 1 ( ϑ ¨ ϑ ¨ 0 ) , where the matrix K x ¯ 0 , u ¯ 0 represents the partial derivative matrix of function F ϑ with respect to the control inputs of the system, u ¯ , resulting in:
K x ¯ 0 ,   u ¯ 0 = J x ¯ 0   k T 1 b cos γ I X X 0 0 0 k T 1 c I Y Y 0 0 0 k T 03 cos γ I Z Z
With the above formulations, it is possible to effectively compute the control inputs (i.e., L , M , and   N ) based on the vehicle’s angular acceleration measurements taken at time step t 1 . Thus, Equations (20) and (21) represent the attitude (orientation) INDI controller, which guides the UAV on how to attain the desired orientation at a given position ( x , y , or   z ) when following a desired path. As a result, the desired orientation behavior of the aircraft was not significantly affected when the slower dynamics of the model were ignored (which will be described in Section 6).

4.2. The Position Controller (NDI + INDI)

The controller designed to control the aircraft’s orientation (i.e., yellow boxes in Figure 3), provides the torques ( L , M , and   N ) required to orient the aircraft. Such torques can then be used in combination with the forces ( X   and   Z ) needed to position the aircraft at a specific point ( x , y , or   z ) to generate the control signals needed to maneuver the UAV. As illustrated in Figure 3, a position controller must be formulated to provide such forces that will enable the UAV to track the desired path, which includes the position and orientation information. The aircraft’s translational movement control was achieved via a combination of an NDI and INDI (INDI + NDI) control strategy (blue boxes shown in Figure 3), where the NDI port is responsible for controlling the lateral motion, while the INDI port focuses on computing the X and Z forces that need to be applied to the aircraft through the control of the propeller’s thrust vectoring ability. Such a strategy enables to manage the coupled motions of the aircraft described in Table 1. Specifically, the proposed controller was targeted to reduce the coupled translational motions taking place in the x z (longitudinal) plane of the aircraft. That is, the position controller aimed to decouple the surge and heave motions of the aircraft. An NDI controller was employed for the lateral (sway) movement, and an INDI controller was developed for the movements in the x z directions (heave). For altitude regulation in the x z plane, the control inputs u 4 and u 5 were used. However, there was no direct control input within the vector U (Equation (7)) for the side movement. Thus, a differential thrust/speed of the propellers was used to provide the required lateral motion. Therefore, finding the required roll angle, ϕ , was required to generate the desired lateral motion in terms of the aircraft’s y position and its rate of change, y ˙ . In turn, the computed roll angle was provided as one of the three inputs for the attitude controller. To enable the NDI controller to cope with disturbances (in the y direction), a sigma-pi neural network (NN) adaptive compensator was used to correct modeling errors and overcome the tendency of NDI controllers to be sensitive to the dynamic model’s accuracy [28,33].
The INDI position controller for the x and z aircraft motions was developed using a similar approach of the attitude controller (Section 4.1). For the position controller, however, a two-layer architecture was used. An INDI formulation was used to cancel the non-linearities associated with the linear dynamics of the system and generate the control signals for the x and z positions of the UAV. In addition, NDI was employed for the lateral (position) motion.

4.2.1. The Position INDI Controller

For the position INDI controller, a virtual control variable, u ^ , defined as per Equation (22), was used.
u ^ = X Z
Considering the dynamic model of the system in the x z direction, Equation (23), and defining the states variables x and z as vector x ^ , the second-order time derivative of matrix x ^ for the INDI position controller was given as per Equation (25):
x z ¨ ¨ = 0 g + 1 m c θ c ψ      s ϕ s ψ + c ϕ s θ c ψ   s θ         0     X b Z b
x ^ = x z
x ^ ¨ x ^ ¨ 0 + u f P x ^ , u ^ | x ^ = x ^ 0 ,   u ^ = u ^ 0   u ^ u ^ 0 = x ^ ¨ 0 + G ( x ^ 0 , u ^ 0 ) Δ u ^
in which G x ^ 0 , u ^ 0 is defined by Equation (26).
G x ^ 0 , u ^ 0 = u f P x ^ , u ^ | x ^ = x ^ 0 ,   u ^ = u ^ 0   = 1 m c θ c ψ      s ϕ s ψ + c ϕ s θ c ψ s θ        c ϕ c θ
u = u 0 + G x ^ 0 , u ^ 0 1 ( x ^ ¨ x ^ ¨ 0 )

4.2.2. The Position NDI Controller

As previously mentioned, due to the high coupling between the roll angle, ϕ , and the position in the y direction, it is not possible to independently control both parameters at the same time. Thus, a variable, u y , (Equation (28)) was defined, which enables the design of an NDI controller to control the UAV’s lateral motion. The output of this controller block, ϕ d , was fed to the attitude control block, which will control the lateral motion of the drone.
u y = s i n ϕ
Following the process used in Section 4.1, the second-order time derivative of the side motion of the drone’s mathematical model, y , for the NDI position controller used the corresponding formulation in Equation (5), where the term s i n ϕ has been replaced with u y , as shown in Equation (29):
y ¨ = 1 m X b c θ s ψ + Z b u y c ψ + c ϕ s θ s ψ = f ϑ + g ( ϑ ) u y
A virtual control input, v , can then be chosen as v = y ¨ if det ( g ( θ ) ) 0 .
u y = g ϑ 1 ( v f ( ϑ ) )
g x , u = Z b C ψ
An accurate description of the functions f and g within Equation (30) was required to cancel all model uncertainties and cross-couplings in the system. However, an exact cancelation of nonlinearities is practically impossible. Therefore, a sigma-pi neural network (NN) was used to compensate the uncertainties. Such a NN is represented as a NN adaptive compensator in Figure 3, which processes nine inputs (i.e., x 0 , y 0 , z 0 , x d , z d , e , v a d , X , and   Z ) plus a set of three Kronecker values ( c 1 , c 2 , c 3 ) (defined later in this document in Equation (37)), where x 0 , y 0 , and z 0 represent the position of the UAV in the previous time step, and e = y r m y 0 defines the error between the reference model and the lateral position of the UAV in the previous time step. From the defined error and the Kronecker values, the sigma-pi NN generates v a d , which adaptively compensates the input produced via the NDI controller, which operates under the assumption that the mathematical model of the system is accurate.
As a result, the sigma-pi NN compensates the inversion error with a real-time pseudo control signal, v a d , where the pseudo control command was generated as per Equation (32):
v = v r m + v p d v a d
where v r m = y ¨ is the reference model’s pseudo control, and v p d is the signal generated via a PD linear regulator (see Section 4.3), which is used to regulate the dynamic response of the system as per Equation (33):
v p d = k p y r m y 0 + k d y ˙ r m y ˙ 0
As a result, the dynamics of the model tracking error can then be described via Equation (34):
ε ˙ = A ε + B v a d
where ε = y r m y y ˙ r m y ˙ , A = 0   1 k p k d , and B = 0 1 .

4.2.3. The Sigma-Pi Neural Network

In comparison to other neural networks, the sigma-pi NN [33] uses summation and quadrature neurons in its hidden layers, providing the ability to preserve the network’s highly nonlinear mapping capability [34]. Figure 4 depicts the single layer sigma-pi NN used in the proposed UAV controller as having three inputs and one output.
The neural network’s input/output map can be expressed as follows:
v a d = j = 1 k w j β j = W T β
where W T represents the weight coefficient matrix, and β denotes the basis function vector, which is defined as per Equation (36):
β = k r o n ( k r o n c 1 , c 2 , c 3 )
The “ k r o n ” denotes the Kronecker product operating on c 1 , c 2 , and c 3 , which are defined as follows:
c 1 = 0.1   e   e 2 T c 2 = 0.01   x d   y d   z d   X   Y   Z T c 3 = [ x 0   y 0   z 0 ] T
The corresponding weight error can then be expressed as follows:
W ~ = W W *
where W * denotes the ideal set of weights. Thus, the model tracking error (Equation (34)) was written as per Equation (39), and the update law for the NN was expressed via Equation (40).
e ˙ = A e + B W ~ T ζ + B ( W ~ T ζ Δ )
W ~ ˙ j ( t ) = Γ j ( e T P j B ) ζ j f o r e j P j > e 0 j 0 f o r e j P j < e 0 j
The terms in Equation (40) are defined as   e j P j = e T j P j e j . Γ j is a positive constant adaptation gain (learning rate), and P j is a symmetric, positive definite matrix satisfying the Lyapunov equation P j A j + A j T P j = I for the linear system error with NN weights. The Hurwitz matrix A j of Equation (37) ensures the existence of a unique P j = P j T > 0 , where the P j matrix used in the developed controller is described as per Equation (41):
P j = K d j 2 K p j + K p j 2 K d j ( 1 + 1 K p j ) 1 2 K p j 1 2 K p j 1 2 K d j ( 1 + 1 K p j ) .
The NDI + NN outer loop controller responsible for the slow dynamics of the UAV’s y channel generates the state command for the inner INDI block as per Equation (42):
φ d = sin 1 ( u y ) .

4.3. The PD/PID Controller

The altitude and position controllers described above, Equations (20), (27), and (30), were designed based on the second derivative of the position and attitude states of the UAV, meaning that the controller has been developed to follow the second-order derivative of the desired trajectory (acceleration) of the aircraft. Therefore, in order to enable the UAV to follow the desired position/attitude (trajectory), three proportional derivative (PD) controllers for attitude (i.e., P D ϕ , P D θ , and P D ψ ) and three PID controllers (i.e., P I D x , P I D y , and P I D z ) for position were used to map the pose error (the difference between the desired and measured poses in the previous time step) [28]. Similar to that conducted by the authors of [28], the PD/PID gains were optimized using a non-dominated, sorting-based multi-objective evolutionary algorithm (MOEA) called the non-dominated sorting genetic algorithm II (NSGA-II). Two different objectives were followed: the integral of time-weighted absolute error (ITAE) performance index, and the integral of the square of the error (ISE), in which minimizing the first objective will provide good reference tracking and good disturbance rejection, while minimizing the second objective reduces the rise time. The final gain values used in the simulations are provided in Table 2.

5. Simulation Results

The final formulation for the controllers described in Section 4 (i.e., Equations (20), (27), and (30)) were implemented and analyzed in the MATLAB/Simulink software. For this, the physical characteristics of a nine inch diameter-shrouded propeller’s version of the Navig8 UAV were used based on previous research studies, i.e., the studies published by the authors of [15,25] (Table 3). PID gains were set as per Table 2, and the sampling time was set to 0.01 s. Overall, the controller received a desired path/trajectory to follow, which would include the desired position ( x d , y d , or   z d ) and orientation ( ϕ d , θ d , or   ψ d ) as a function of time, defining the UAV’s maneuvers to compute the required control signals. From the physical characteristics of the UAV, the required parameters were computed.
To analyze the performance of the controller, the UAV was commanded to execute standardized maneuvers considered fundamental in determining the flight performance (worthiness) of the rotorcraft as per that conducted by the authors of [35]. Flight maneuvers included pure hover and sidestep, which the aircraft was able to perform as per flight regulations.
In what follows, however, we present the results of an untypical flight maneuver which illustrates the ability to use the developed controller to fly a highly maneuverable rotorcraft inside confined spaces by changing its attitude according to the environmental conditions (e.g., confined space).

5.1. Test 1: Trajectory Tracking

In this first simulation, the aircraft (Navig8 UAV) was commanded to track the trajectory defined by Equation (43), which defines a set of movements within the aircraft’s flying capabilities. Although this trajectory does not exemplify a confined space, it requires the UAV to change its attitude in an untypical fashion (a maneuver that a helicopter pilot would not attempt).
x d ( t ) = 10 sin ( 0.1 t ) y d ( t ) = 2 cos ( 0.1 t ) + 2 z d ( t ) = sin ( 0.1 t ) ψ d ( t ) = sin ( 0.05 t ) θ d ( t ) = 0.3 sin ( 0.1 t )
The UAV’s initial state, including its position, orientation and their first derivatives (as per Equation (11)), was set as x 0 = 0,0 , 0,0 , 0,0 , 0,0 , 0,0 T . It must be noted that x 0 defines the state where the UAV is in a typical hovering maneuver position at a given attitude “ h ” from the ground where the frame of reference that defines the trajectory is defined (set).
The drone’s position responses are shown in Figure 5, while its attitude responses are shown in Figure 6. Figure 7 depicts the position and orientation followed in a 3D space.
These results indicate that the developed trajectory tracking control approach was effective, showing a low RMS error in both position and attitude control. Although at the start there was an error of 0.53 m between the desired y and the followed trajectory, the UAV was able to track the desired path for the rest of the trajectory. Such a maximum error occurs in a specific situation where the desired roll and lateral translations are somewhat in conflict. However, the controller effectively managed such conflicts and guided the UAV to complete the flight with sufficient accuracy to fly in confined spaces.
Similar results were obtained under diverse trajectories, including pure hover, pitch hover, climb, and descent.

5.2. Test 2: Disturbance Rejection

To assess/analyze the ability of the controller to deal with external disturbances, the UAV was commanded to follow the same trajectory as described in Section 5.1, where wind gusts and other disturbances were added. Here, however, we only present an illustrative example of exposing the UAV to horizontal wind gusts, having a maximum speed of 5   m / s with variable magnitude and direction (moderate breeze based on the “Beaufort Wind Scale”) (see https://www.weather.gov/mfl/beaufort (accessed on 14 August 2023)).
Such a varying disturbance was implemented following the work conducted by the authors of [36], where the magnitude of the wind was defined by Equation (44) and the azimuth, ψ w , of the blow point of the wind (Equation (45)) defined the direction of it, while random values were used to denote the changes in the wind’s direction. The magnitude of the wind, V z , can then be defined as a function of the altitude of the drone with respect to the sea level, z 0 (Equation (44)).
V z = V z 0 ( z z 0 ) P
ψ w = ψ w 0 + r a n d
In Equation (44), V z 0 is the wind velocity measured at attitude z 0 , z is the current altitude of the UAV, and “ P ” is the index of the energetic profile, and in Equation (45), “ ψ w 0 ” is the azimuth angle in the previous time step, and “ r a n d ” is a random function to create a random number between zero and one (rad). Therefore, the wind force in the x and y directions of the UAV’s body frame of reference affecting the drone were calculated using Equation (46):
F w x = S e x A V z 2 cos ψ w F w y = S e y A V z 2 sin ψ w
where A = 1.6 × 9.81 is the rate of converting the wind speed ( m / s 2 ) into pressure ( N / m 2 ) [37], and S e is the influence effective area. To ease obtaining the parameters A and S e (Equation (46)), the Navig8 was modelled as a cubic body (Figure 8), which simplifies computing the total force of the wind disturbance and its distribution over the drone’s fuselage. Although this is a very rough estimate, it allowed us to evaluate how well the controller held up to external, previously unidentified wind disturbances. From Figure 8, it was possible to compute the drone’s surface area as per Equation (47):
S e x = S l × sin ( θ ) × cos ( ψ ) + S f × cos ( θ ) × cos ( ψ ) S e y = S l × cos ( ϕ ) × cos ( ψ ) + S f × sin ( ϕ ) × cos ( ψ )
where S l = δ 1 h 1 h 2 is the drone’s lateral surface area, S f = δ 2 h 1 h 3 is the UAV’s face area, h 1 , h 2 , and h 3 are the cubic dimensions, as shown in Figure 8, and δ 1 and δ 2 are the fill features of the base cube, as shown in Figure 8.
Figure 9 shows the obtained magnitude and direction (azimuth, ψ w ) of the wind affecting the UAV over time. As shown in Figure 9a, the wind velocity has points where the wind declines (to a value of 2.1   m / s 2 ), after which it gradually increases to a max value of 5   m / s 2 . In turn, the direction of the wind (Figure 9b) changes at discrete intervals. Figure 10a,b shows the wind forces in the x and y directions, respectively. Figure 11 and Figure 12 provide the position and attitude responses of the UAV to the wind disturbances while trying to track the desired trajectory (Equation (43)).
Figure 13 shows the desired and reached trajectories under variable wind disturbances. The result shows the effectiveness of the developed controller in being able to perform this maneuver, and the root mean square errors (RMSEs) obtained under all position and attitude directions were considered to be small/acceptable, as presented in Table 4.
From Figure 11, Figure 12 and Figure 13, it is observed that the controller was able to guide the UAV with high accuracy (i.e., the max error in translation was the same as the result for the simulation with no disturbances, Figure 5). However, this UAV had experienced some challenges managing the coupled lateral and roll motions as it flew (although such deviations were small).

6. Conclusions

The proposed nonlinear trajectory controller is based on the INDI controller technique, which includes an outer NDI/INDI loop controller for position and an inner INDI loop controller for attitude. The controllers are used in combination with PD/PID controllers to provide appropriate control inputs for the NDI/INDI blocks. The linear controllers’ gains are tuned manually and show satisfying results for different flight maneuvers. In order to improve the disturbance rejection capability of the NDI controller in the y channel, a single-layer sigma-pi neural network is added, and the simulation result demonstrates its ability to compensate for the control law. Finally, several simulations demonstrate the ability of the controller to follow different trajectories under moderate external disturbances (wind gusts).

7. Future Work

In this paper, the pitch angles of the propeller are considered constant; that is, the variable pitch capabilities of the aircraft are not utilized. However, in order to take advantage of the full capacity of the designed UAV, investigating the relation between the blade pitch angle and the aerodynamic coefficient will be performed in future work. Furthermore, work will be conducted in enhancing the developed controller to include the necessary control allocation mechanisms to compute the required configuration of the UAV in each time step. Finally, performing flight tests under incremental levels of complexity within a controlled (engineered) environment, such as flying inside a wind tunnel, followed by flight tests under real-world scenarios are future work tasks that will be performed.

Author Contributions

Conceptualization, methodology; software, validation, formal analysis, investigation, visualization, and writing, M.T. and A.R.-S. All authors have read and agreed to the published version of the manuscript.

Funding

This research was supported, by the Natural Sciences and Engineering Research Council of Canada (NSERC) through an Alliance grant and Alberta Innovates—Technology Futures.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

Not applicable—No specific data is available.

Acknowledgments

This work was supported, in part, by the Natural Sciences and Engineering Research Council of Canada (NSERC) through an Alliance grant. Support was also provided by Alberta Innovates—Technology Futures. We thank them for their gracious support.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Reyes-Valeria, E.; Enriquez-Caldera, R.; Camacho-Lara, S.; Guichard, J. LQR control for a quadrotor using unit quaternions: Modeling and simulation. In Proceedings of the CONIELECOMP 2013, 23rd International Conference on Electronics, Communications and Computing, Puebla, Mexico, 11–13 March 2013; pp. 172–178. [Google Scholar]
  2. Bouabdallah, S.; Noth, A.; Siegwart, R. PID vs LQ control techniques applied to an indoor micro quadrotor. In Proceedings of the 2004 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS)(IEEE Cat. No. 04CH37566), Sendai, Japan, 28 September–2 October 2004; Volume 3, pp. 2451–2456. [Google Scholar]
  3. Tayebi, A.; McGilvray, S. Attitude stabilization of a four-rotor aerial robot. In Proceedings of the 2004 43rd IEEE conference on decision and control (CDC) (IEEE Cat. No. 04CH37601), Nassau, Bahamas, 14–17 December 2004; Volume 2, pp. 1216–1221. [Google Scholar]
  4. Morel, Y.; Leonessa, A. Direct adaptive tracking control of quadrotor aerial vehicles. In Proceedings of the ASME International Mechanical Engineering Congress and Exposition, Chicago, IL, USA, 5–10 November 2006; Volume 47683, pp. 155–161. [Google Scholar]
  5. Coza, C.; Nicol, C.; Macnab, C.J.B.; Ramirez-Serrano, A. Adaptive fuzzy control for a quadrotor helicopter robust to wind buffeting. J. Intell. Fuzzy Syst. 2011, 22, 267–283. [Google Scholar] [CrossRef]
  6. Zhang, Z.; Wang, F.; Guo, Y.; Hua, C. Multivariable sliding mode backstepping controller design for quadrotor UAV based on disturbance observer. Sci. China Inf. Sci. 2018, 61, 112207. [Google Scholar] [CrossRef]
  7. Fantoni, I.; Lozano, R. Control of Nonlinear Mechanical Systems. Eur. J. Control 2001, 7, 328–348. [Google Scholar] [CrossRef]
  8. Mazenc, F.; Praly, L. Adding integrations, saturated controls, and stabilization for feedforward systems. IEEE Trans. Autom. Control 1996, 41, 1559–1578. [Google Scholar] [CrossRef]
  9. Marconi, L.; Isidori, A.; Serrani, A. Autonomous vertical landing on an oscillating platform: An internal-model based approach. Automatica 2002, 38, 21–32. [Google Scholar] [CrossRef]
  10. Olfati-Saber, R. Global configuration stabilization for the VTOL aircraft with strong input coupling. IEEE Trans. Autom. Control 2002, 47, 1949–1952. [Google Scholar] [CrossRef]
  11. Lozano, R.; Castillo, P.; Dzul, A. Global Stabilization of the PVTOL: Real-Time Application to A Mini-Aircraft. Int. J. Control 2004, 77, 735–740. [Google Scholar] [CrossRef]
  12. Nicol, C.; Macnab, C.J.B.; Ramirez-Serrano, A. Robust neural network control of a quadrotor helicopter. In Proceedings of the 2008 Canadian Conference on Electrical and Computer Engineering, Niagara Falls, ON, Canada, 4–7 May 2008; pp. 001233–001238. [Google Scholar]
  13. Leonessa, A.; Haddad, W.M.; Hayakawa, T.; Morel, Y. Adaptive control for nonlinear uncertain systems with actuator amplitude and rate saturation constraints. Int. J. Adapt. Control Signal Process. 2009, 23, 73–96. [Google Scholar] [CrossRef]
  14. Navabi, M.; Mirzaei, H. Robust optimal adaptive trajectory tracking control of quadrotor helicopter. Latin Am. J. Solids Struct. 2017, 14, 1040–1063. [Google Scholar] [CrossRef]
  15. Amiri, N.; Ramirez-Serrano, A.; Davies, R.J. Integral backstepping control of an unconventional dual-fan unmanned aerial vehicle. J. Intell. Robot. Syst. 2013, 69, 147–159. [Google Scholar] [CrossRef]
  16. Das, A.; Lewis, F.; Subbarao, K. Dynamic Neural Network-Based Robust Backstepping Control approach for Quadrotors. In Proceedings of the AIAA Guidance, Navigation and Control Conference and Exhibit, Honolulu, HI, USA, 18–21 August 2008; p. 6780. [Google Scholar]
  17. Xu, R.; Ozguner, U. Sliding mode control of a quadrotor helicopter. In Proceedings of the 45th IEEE Conference on Decision and Control, San Diego, CA, USA, 13–15 December 2006; pp. 4957–4962. [Google Scholar]
  18. Besnard, L.; Shtessel, Y.B.; Landrum, B. Control of a quadrotor vehicle using sliding mode disturbance observer. In Proceedings of the 2007 American Control Conference, New York, NY, USA, 9–13 July 2007; pp. 5230–5235. [Google Scholar]
  19. Metni, N.; Hamel, T.; Derkx, F. Visual tracking control of aerial robotic systems with adaptive depth estimation. In Proceedings of the 44th IEEE Conference on Decision and Control, Seville, Spain, 15 December 2005; pp. 6078–6084. [Google Scholar]
  20. Mokhtari, A.; Benallegue, A.; Daachi, B. Robust feedback linearization and GH/sub/spl infin//controller for a quadrotor unmanned aerial vehicle. In Proceedings of the 2005 IEEE/RSJ International Conference on Intelligent Robots and Systems, Edmonton, AB, Canada, 2–6 August 2005; pp. 1198–1203. [Google Scholar]
  21. Dunfied, J.; Tarbouchi, M.; Labonte, G. Neural network based control of a four rotor helicopter. In Proceedings of the 2004 IEEE International Conference on Industrial Technology, 2004 IEEE ICIT’04., Hammamet, Tunisia, 8–10 December 2004; Volume 3, pp. 1543–1548. [Google Scholar]
  22. Raimúndez, C.; Villaverde, A.F. Adaptive tracking control for a quad-rotor. In Proceedings of the ENOC Conference, Saint Peterburg, Russia, 13 June–4 July 2008. [Google Scholar]
  23. Dierks, T.; Jagannathan, S. Neural network output feedback control of a quadrotor UAV. In Proceedings of the 2008 47th IEEE Conference on Decision and Control, Cancun, Mexico, 9–11 December 2008; pp. 3633–3639. [Google Scholar]
  24. Jansen, F.F.A.N. Manoeuvring Unmanned Vehicles through Confined 3D Environments. Master’s Thesis, University of Calgary, Calgary, AB, Canada, 2011. [Google Scholar]
  25. Kamal, A.M.; Ramirez-Serrano, A. Design methodology for hybrid (VTOL+ Fixed Wing) unmanned aerial vehicles. Aeronaut. Aerosp. Open Access J. 2018, 2, 165–176. [Google Scholar]
  26. Durante, B.J.; Gair, S.R.; Ramirez-Serrano, A.; Morton, C.; Johansen, C.T. Development and controllability evaluation of a small-scale supersonic UAV. In Proceedings of the AIAA AVIATION 2022 Forum, Chicago, IL, USA, 27 June–1 July 2022; p. 3792. [Google Scholar]
  27. Dalman, B.; Korobenko, A.; Ziade, P.; Ramirez-Serrano, A.; Johansen, C.T. Validation and verification of a conceptual design tool for evaluating small-scale, supersonic, unmanned aerial vehicles. In Proceedings of the AIAA AVIATION 2021 FORUM, Virtual, 2–6 August 2021; p. 2415. [Google Scholar]
  28. Taherinezhad, M.; Ramirez-Serrano, A.; Abedini, A. Robust trajectory-tracking for a bi-copter drone using indi: A gain tuning multi-objective approach. Robotics 2022, 11, 86. [Google Scholar] [CrossRef]
  29. Bhardwaj, P.; Raab, S.A.; Zhang, J.; Holzapfel, F. Integrated reference model for a tilt-rotor vertical take-off and landing transition uav. In Proceedings of the 2018 Applied Aerodynamics Conference, Atlanta, GA, USA, 25–29 June 2018; p. 3479. [Google Scholar]
  30. Cao, S.; Shen, L.; Zhang, R.; Yu, H.; Wang, X. Adaptive incremental nonlinear dynamic inversion control based on neural network for UAV maneuver. In Proceedings of the 2019 IEEE/ASME International Conference on Advanced Intelligent Mechatronics (AIM), Hong Kong, China, 8–12 July 2019; pp. 642–647. [Google Scholar]
  31. Smeur, E.J.J.; Bronz, M.; De Croon, G.C.H.E. Incremental Control and Guidance of Hybrid Aircraft Applied to a Tailsitter Unmanned Air Vehicle. J. Guid. Control Dyn. 2020, 43, 274–287. [Google Scholar] [CrossRef]
  32. Hosseini, Z. Ground/Wall Effects on a Ducted Fan for Control Applications of Highly Manoeuvrable Vtols Operating in Confined Spaces. Ph.D. Thesis, University of Calgary, Calgary, AB, Canada, 2011. [Google Scholar]
  33. Xiang, T.; Jiang, F.; Hao, Q.; Cong, W. Adaptive flight control for quadrotor UAVs with dynamic inversion and neural networks. In Proceedings of the 2016 IEEE International Conference on Multisensor Fusion and Integration for Intelligent Systems (MFI), Baden-Baden, Germany, 19–21 September 2016; pp. 174–179. [Google Scholar]
  34. Jansen, F.F.A.N.; Ramirez-Serrano, A. Acrobatic Manoeuvring of Unmanned Vehicles through Confined 3D Environments; Technical Report; University of Calgary: Calgary, AB, Canada, 2012. [Google Scholar]
  35. Blanken, C.L.; Hoh, R.H.; Mitchell, D.G.; Key, D.L. Test guide for ADS-33E-PRF. In US Army RDECOM Special Report AMR-AF-08-07; The Vertical Flight Society: Fairfax, VA, USA, 2008. [Google Scholar]
  36. Kuantama, E.; Tarca, R. Correction of Wind Effect on Quadcopter. In Proceedings of the 2018 International Conference on Sustainable Information Engineering and Technology (SIET), Malang, Indonesia, 10–12 November 2018; pp. 257–261. [Google Scholar]
  37. Schiano, F.; Alonso-Mora, J.; Rudin, K.; Beardsley, P.; Siegwart, R.; Sicilianok, B. Towards estimation and correction of wind effects on a quadrotor UAV. In Proceedings of the IMAV 2014: International Micro Air Vehicle Conference and Competition 2014, Delft, The Netherlands, 12–15 August 2014; pp. 134–141. [Google Scholar]
Figure 1. Schematic diagram of the Navig8 drone.
Figure 1. Schematic diagram of the Navig8 drone.
Aerospace 10 00843 g001
Figure 2. Body and inertia reference frames of the Navig8 model.
Figure 2. Body and inertia reference frames of the Navig8 model.
Aerospace 10 00843 g002
Figure 3. The proposed cascade NDI/INDI controller architecture.
Figure 3. The proposed cascade NDI/INDI controller architecture.
Aerospace 10 00843 g003
Figure 4. The structure of the online adaptive sigma-pi neural network [24].
Figure 4. The structure of the online adaptive sigma-pi neural network [24].
Aerospace 10 00843 g004
Figure 5. Responses to position control in trajectory tracking.
Figure 5. Responses to position control in trajectory tracking.
Aerospace 10 00843 g005
Figure 6. Responses to attitude control in trajectory tracking.
Figure 6. Responses to attitude control in trajectory tracking.
Aerospace 10 00843 g006
Figure 7. Tracking the 3D trajectory for 150 s. Note that a helicopter schematic has been used to better represent the change in the orientation of the UAV.
Figure 7. Tracking the 3D trajectory for 150 s. Note that a helicopter schematic has been used to better represent the change in the orientation of the UAV.
Aerospace 10 00843 g007
Figure 8. Approximation of the Navig8 structure (δ1 = 0.1 and δ2 = 0.2, respectively).
Figure 8. Approximation of the Navig8 structure (δ1 = 0.1 and δ2 = 0.2, respectively).
Aerospace 10 00843 g008
Figure 9. Simulated wind: (a) velocity and (b) direction.
Figure 9. Simulated wind: (a) velocity and (b) direction.
Aerospace 10 00843 g009
Figure 10. Simulated wind force in the (a) x direction and (b) y direction.
Figure 10. Simulated wind force in the (a) x direction and (b) y direction.
Aerospace 10 00843 g010
Figure 11. Responses to position control in trajectory tracking under moderate wind gusts.
Figure 11. Responses to position control in trajectory tracking under moderate wind gusts.
Aerospace 10 00843 g011
Figure 12. Responses to attitude control in trajectory tracking under moderate wind gusts.
Figure 12. Responses to attitude control in trajectory tracking under moderate wind gusts.
Aerospace 10 00843 g012
Figure 13. Tracking the 3D trajectory under moderate wing gusts for 150 s. Note that a helicopter schematic has been used to better represent the change in the orientation of the UAV.
Figure 13. Tracking the 3D trajectory under moderate wing gusts for 150 s. Note that a helicopter schematic has been used to better represent the change in the orientation of the UAV.
Aerospace 10 00843 g013
Table 1. Motions and respective coupling effects.
Table 1. Motions and respective coupling effects.
MotionSurgeSwayHeaveRollPitchYaw
TranslationSurge (front/back)- XX
Sway (side-to-side) - XX XX
Heave (up/down)X - X
RotationRoll -XXXX
PitchXXX XX -XX
Yaw XXX -
Table 2. Gains for the PID controllers.
Table 2. Gains for the PID controllers.
ControllerGain
x y z ϕ θ ψ
P3.10.95.32.924.8
I0.101000
D2.71.42.91613.316
Table 3. Simulation parameters and physical characteristics of the UAV.
Table 3. Simulation parameters and physical characteristics of the UAV.
PropertyDescriptionParameterValueUnit
Mass of the UAVm5kg
Gravityg9.81m/s2
Air densityρ1.225kg/m3
Propeller distance from the UAV’s center of massDistance to the left propeller(a, b, c)(0, 0.26, 0.05)m
Distance to the right propeller(a, −b, c)(0, −0.26, 0.05)m
Distance to the tail propeller(d, 0, e)(−0.57, 0, 0.008)m
PropellersTrust coefficient of the left/right propellersCT1, CT30.002-
Torque coefficient of the left/right propellersCTo1, CTo30.001-
Trust coefficient of the tail propellerCT20.001-
Torque coefficient of the tail propellerCTo20.0005-
Footprint area of the left/right propellersA1,30.0164m2
Rotor disk area of the tail propellerA20.002m2
Radius of the right/left propellers’ radiusr1,30.23m
Radius of the tail propellerr20.098m
UAV’s body moment of inertiaInertia moment around xIXX0.0667kg·m2
Inertia moment around yIYY0.1492kg·m2
Inertia moment around zIZZ0.2019kg·m2
Inertia moment around x and zIXZ−0.0147kg·m2
Table 4. Root mean square errors.
Table 4. Root mean square errors.
R M S E x R M S E y R M S E z R M S E θ R M S E ψ
0.02810.19130.00620.00820.0082
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

Taherinezhad, M.; Ramirez-Serrano, A. An Enhanced Incremental Nonlinear Dynamic Inversion Control Strategy for Advanced Unmanned Aircraft Systems. Aerospace 2023, 10, 843. https://doi.org/10.3390/aerospace10100843

AMA Style

Taherinezhad M, Ramirez-Serrano A. An Enhanced Incremental Nonlinear Dynamic Inversion Control Strategy for Advanced Unmanned Aircraft Systems. Aerospace. 2023; 10(10):843. https://doi.org/10.3390/aerospace10100843

Chicago/Turabian Style

Taherinezhad, Maryam, and Alejandro Ramirez-Serrano. 2023. "An Enhanced Incremental Nonlinear Dynamic Inversion Control Strategy for Advanced Unmanned Aircraft Systems" Aerospace 10, no. 10: 843. https://doi.org/10.3390/aerospace10100843

APA Style

Taherinezhad, M., & Ramirez-Serrano, A. (2023). An Enhanced Incremental Nonlinear Dynamic Inversion Control Strategy for Advanced Unmanned Aircraft Systems. Aerospace, 10(10), 843. https://doi.org/10.3390/aerospace10100843

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