Abstract

This paper proposes a nonlinear control strategy to solve the trajectory tracking problem of a tilt-rotor Unmanned Aerial Vehicle (UAV) when transporting a suspended load. For the present study, the aim of the control system is to track a desired trajectory of the aircraft with load’s swing-free, even in the presence of external disturbances, parametric uncertainties, unmodeled dynamics, and noisy position measurements with lower sampling frequency than the controller. The whole system modeling is obtained through the Euler-Lagrange formulation considering the dynamics of the tilt-rotor UAV coupled to the suspended load. As for the nonlinear control strategy, an inner-loop control is designed based on input-output feedback linearization combined with the dynamic extension approach to stabilize the attitude and altitude of the UAV assuming nonlinearities, while an outer-loop control law is designed for guiding the aircraft with reduced load swing. The linearized dynamics are controlled using linear mixed controllers with pole placement constraints. The solution is compared to two simpler control systems: the first one considers the load as a disturbance to the system but does not avoid its swing; the second one is a previous academic result with a three-level cascade strategy. Finally, in order to deal with the problem of position estimation in presence of unknown disturbances and noisy measurements with low sampling frequency, a Linear Kalman Filter with Unknown Inputs is designed for estimating both the aircraft’s translational position and translational disturbances. Simulation results are carried out to corroborate the proposed control strategy.

1. Introduction

Research in Unmanned Aerial Vehicles (UAVs) has gained much attention in the last years, mainly for its variety of applications. Some examples of uses for UAVs might be listed as cargo transportation and delivery, surveillance, field recognition, cave exploration, cinematographic filming, military purposes, 3D mapping, search and rescue, and wildlife research, among many others. The present work focuses on studying the problem of suspended load transportation. This kind of task is extremely important in some missions such as search and rescue, surface exploration, military applications, and personal assistance, among others. Piloted aircraft usually require an experienced pilot to transport suspended payloads to a destination while avoiding any accident with the load and the aircraft itself. Fully autonomous UAVs, on the other hand, are required to use more sophisticated control laws so as to achieve similar (or even better) performances.

The most common UAVs that are studied in academia are helicopters, quadrotors, and fixed-wing airplanes. On one hand, rotorcrafts have the advantage over airplanes for performing Vertical Take-Off and Landing (VTOL), while on the other hand, airplanes are able to obtain higher forward flights with greater range and autonomy. Aiming to combine the advantages of both kinds of aircraft, present research on UAVs is increasingly interested in the tilt-rotor UAV, a hybrid copter-plane aircraft. The tilt-rotor is a type of aircraft that combines the vertical lift capacity of helicopters with the range, autonomy, and speeds of fixed-wing airplanes. For missions of search and rescue, for example, tilt-rotors might stand out since it can reach disaster zones faster than rotorcrafts, while also being able to hover over some position of interest.

This work proposes a robust nonlinear control strategy for the tilt-rotor UAV in the helicopter flight-mode with the further requirement that it should track a desired trajectory carrying a suspended load. Furthermore, the control system should maintain both the aircraft and the load stable even in the presence of external disturbances, parametric uncertainties, unmodeled dynamics, and noisy position measurements with lower sampling frequency than the controller.

The most notorious research works assessing control of tilt-rotor UAVs started being published after 2005. In [1] a back-stepping strategy was applied to a tilt-rotor with two degrees of freedom on each rotor. The use of two degrees of freedom was later abandoned due to difficulties on practical implementation. Reference [2] was able to experimentally maintain a tilt-rotor in hovering using nonlinear control in the vicinity of the equilibrium point. In [3] an adaptation to the previous solution was performed by including coupling gyroscopic body effects on the system’s model used for control design. Reference [4] explored the use of gain-scheduling to control a tilt-rotor’s roll and pitch by choosing a vast number of linearization points, with results being presented in [5]. A nonlinear control of a tilt-rotor UAV was proposed in [6] by means of cascade control using feedback linearization over a numerical model of the aircraft obtained on wind-tunnel tests. The work of [7] presented an approach to control a tilt-rotor UAV using Fuzzy Logic Control. In [8], a Model Predictive Control (MPC) was designed for the attitude of the aircraft. Reference [9] derived a simplified Euler-Lagrange model for the tilt-rotor UAV and used it to design a back-stepping control strategy. In [10], linear and mixed controllers were designed based on LMI (Linear Matrix Inequality) approach for trajectory tracking of a tilt-rotor UAV in helicopter flight-mode. In order to cover a large range of forward velocity of a tilt-rotor UAV, a robust adaptive mixing control strategy was proposed in [11].

Regarding the load transportation control problem, many research works are found in the literature. Nonlinear controllers were introduced in [12, 13] for stabilization of suspended loads in crane operations. Quadrotor UAV was used in [14] to transport a suspended load from one desired point to another applying a machine learning approach to avoid load swing. Reference [15] also used a quadrotor UAV to stabilize the swing of a suspended load with unknown mass by combining a Proportional-Derivative controller with Retrospective Cost Adaptive Control. In [16], trajectories are generated to a quadrotor UAV so that a suspended load passes through a desired trajectory.

Some works also address the problem of load transportation using a tilt-rotor UAV. In [17, 18], MPC strategies based on linearized models around desired trajectories were proposed for trajectory tracking of a tilt-rotor UAV with reduced load’s swing. In [19], the trajectory tracking problem of the suspended load was solved through the design of control and state estimation strategies based on linearized, time-invariant state-space equations but did not allow yaw angle tracking, or the occurrence of changes in the load’s mass and rope’s length. This latter work was improved in [20], where an MPC based on a linear time-varying model was designed to perform trajectory tracking of the suspended load with stabilization of the tilt-rotor UAV when parametric uncertainties and external disturbances affect the load, the rope’s length and total system mass vary during taking-off and landing, and the desired yaw angle changes throughout the trajectory. Nevertheless, the above control strategies, developed to solve the load transportation problem using a tilt-rotor UAV, are based on linearized models, which limit the domain of attraction of the closed-loop control system. In order to improve that, a nonlinear cascade control strategy was proposed in [21, 22] for trajectory tracking of a tilt-rotor UAV with load’s swing-free. Although this control strategy enlarged the domain of attraction, this nonlinear solution used a three-level cascade strategy, which might not be very attractive from the control point of view, since outer-loops are capable of destabilizing inner-loops if the design is not properly tuned.

This paper improves the results presented in [21, 22], in which the position of the aircraft was assumed to be perfectly known, by proposing a two-level cascade strategy, reducing computational costs and attaining a solution whose nonlinear controllers are simpler to tune due to lower number of cascaded loops. Each level of the cascade system executes a control law through the method of input-output feedback linearization (IOFL), which constantly linearizes the system so that linear control design techniques can be applied. In summary, the work in [21, 22] uses two loops to control altitude and attitude, while this work achieves the same in a single loop by using a dynamic extension approach for controlling these variables by actuating on their snaps. The external loop presented in this paper performs trajectory tracking for translational motion while reducing the load’s swing. Besides, the proposed control strategy is designed based on a detailed whole-body dynamic model of the tilt-rotor UAV using the Euler-Lagrange formulation.

Some model simplifications are assumed in the control design, neglecting some dynamic cross coupling between generalized coordinates. These assumptions can be close to reality if the system’s angular velocities and generalized acceleration are not very high, which is acceptable when the tilt-rotor UAV operates in the helicopter flight-mode. In order to deal with those neglected terms, mixed controllers with pole placement constraints are designed based on the linearized dynamics with the addition of integral terms, featuring robustness against unmodeled dynamics and constant disturbance rejection, while guaranteeing satisfactory time response.

In order to solve the problem of position and speed estimation in presence of unknown disturbances and noisy measurements with low sampling frequency, a Linear Kalman Filter with Unknown Inputs (LKFUI) is designed for estimating the aircraft’s translational position and speed and the corresponding disturbances. It assumes that the position is actually measured by a positioning system (e.g., GPS, vision system) equipment with sampling time , where is the controller sampling time. The estimator evaluates the position of the aircraft when no new measurements are available from the sensor, also taking into account its measurement uncertainty. The estimator also considers that the aircraft’s motion may be affected by disturbances (e.g., wind), which are not usually measured. The designed estimator is based on the formulation proposed by [23], which presents a generalized approach to Kalman Filters called Gain-Constrained Kalman Filtering in which both LKFUI and LKF are particular solutions.

The proposed control system performance is evaluated through simulation results and compared to a simpler controller, whose design considers the load as a disturbance to the system but does not avoid its swing, and to the three-level cascade strategy proposed in [22].

The remainder of the paper is structured as follows: Section 2 presents the whole-body modeling of the tilt-rotor UAV with suspended load; Section 3 presents the proposed control structure describing the design of the aforementioned nonlinear control system with the linear mixed controllers. In addition, an estimation model for the system is presented in order to develop the LKFUI algorithm; Section 4 shows simulation results; and, finally, Section 5 concludes this paper and provides suggestions of future works.

Notation. Let , , be the unit vectors in the direction of the -, -, and -axes, respectively, of a proper reference frame ; represents the rotation matrix from frame to frame ; expresses the rotation matrix of an angle around axis ; the vector denotes an angular velocity of frame with respect to frame represented in frame ; is the skew symmetric matrix related to the vector . Let denote the relative degree of a system’s output ; is the Lie derivative operation. Let the state vectors , denote the value of the states at sampling instant , being their estimated values; contains the values measured at instant , while represents the estimation of the same vector; denotes the fact that at instant has been predicted using measured information up to instant . Let and be two different sampling times with and an integer; () denotes the estimated states of the system seconds after the instant given at , where index represents increments in the controller’s cycles, while index represents sampling instants of sensors. A complementary list of nomenclature is provided in the Section “Nomenclature.”

2. Tilt-Rotor UAV with Suspended Load Modeling

This section presents the whole-body dynamic modeling of the tilt-rotor UAV with suspended load using the Euler-Lagrange formulation. The multibody system is composed of four rigid bodies (see Figure 1): the main body (carbon-fiber structure, landing gear, battery, and electronic devices); two thrusters groups, one on each side of the aircraft (tiltable mechanisms with rotors), connected to the main body by a revolute joint; and the suspended load, which is assumed to be attached to the main body via a rigid rod with negligible mass. The following coordinate frames used in the system modeling are defined as (see Figure 1) a fixed inertial frame , a moving frame rigidly attached to the main body, a frame rigidly attached to the main body’s center of mass, frames and rigidly attached to the rotation axes of the right and left tiltable mechanisms, respectively, and a frame rigidly attached to the suspended load’s center of mass.

2.1. Kinematics

The UAV’s attitude with respect to the frame is described by Euler angles around the local axes with the roll-pitch-yaw convention . In addition, represents the rotation matrix from frame to . The translation between the origins of frames and is represented by , while is the translation between the origins of frames and , for . In addition, note that , , and are all constants, while varies due to the suspended load degrees of freedom (DOF). Also, this model assumes that ; that is, the rotors are aligned with frame in the direction (see Figure 1).

The vector can be calculated through a parametrization that considers the suspended load by a cable as a simple pendulum, from which a weight (the load) is connected to the aircraft via a massless rigid rod of length , and two degrees of freedom represented by and (rotations around and , respectively). The Forward Kinematic Model of the pendulum subsystem with respect to the aircraft’s body is given by , where is the load’s attitude with respect to frame .

In addition, frame , which is rigidly attached to the main body’s center of mass, is assumed parallel to frame , leading to . As for the rotors’ attitudes, the rotation matrices are obtained by and , , being the right and left tilting angles, respectively. Moreover, is a small fixed tilt angle of the rotors toward the origin of and dependent of the aircraft’s mechanical design (see Figure 1). The introduction of improves the controllability for this kind of VTOL aircraft, although the thrust efficiency is decreased [24].

Finally, the position of a point rigidly attached to frame with respect to the inertial frame is obtained as

The generalized coordinates vector is given by , where and .

2.2. Equations of Motion

This section derives the Euler-Lagrange equations of motion for the tilt-rotor UAV with suspended load. In these equations the exogenous forces are separated into dissipative viscous friction forces and unknown external disturbances. Thus, the equations of motion are written aswhere is the inertia matrix, is the Coriolis and centripetal forces matrix obtained using the Christoffel symbols of the first kind, is the gravitational force vector, is the independent generalized input force vector, is the external disturbances vector, and is the generalized drag force vector. The drag forces are assumed to be proportional to the generalized velocities and are given by , with being a diagonal constant matrix. Consequently, (2) can be rewritten as

The inertia matrix can be found by calculating the system’s kinetic energy and expressing it in the form . The kinetic energy of the whole system is given by the sum of the individual kinetic energies of each body , where the kinetic energy of the body can be obtained from the volume integral [25] with the mass density at body . The vector is the velocity of a point of body with respect to frame and is given by the time derivative of (1):Points are rigidly attached to their respective frames, leading to for . Translations for are constant, resulting in . Moreover, since the body’s frame is fixed with respect to its center of mass’ frame , then .

With use of properties for skew symmetric matrices (, , and ; besides, .), equation (5) can be rewritten for each body in the form

Assuming that all the system’s bodies are symmetric and each frame coincides with the center of mass of the body, then . Using this property and substituting (6)–(8) into (4), the kinetic energies of the system’s bodies are found to be , , , and , where , , and are given bywith the mass of the body, the inertia tensor of the body with respect to frame , and the inertia tensor of body expressed in frame (Steiner’s theorem [26]).

In order to represent the kinetic energy as a function of the generalized coordinates, the following mappings are appliedwith and .

Then, the inertia matrix can be written aswhere the terms indicate symmetry with respect to the main diagonal, , , , , , , and .

The gravitational force vector is obtained by calculating , where is the sum of the potential energies of the individual bodies given by , with the gravity vector with respect to the inertial frame. Assuming again that all the system’s bodies are symmetric and each frame coincides with the center of mass of the body, then and the potential energy of the whole system is given by

The generalized force vector is composed of all translational forces and rotational torques performing actuation on the system’s generalized coordinates. In order to calculate , it is necessary to decompose the force provided by each propeller along frame where and are the right and left propeller thrusts, respectively. By defining , the translational forces expressed in the inertial frame are then given by

The aircraft’s rotational torques are obtained by adding the torque generated by the thrust of the propellers to the torque caused by the drag of the propellers. The drag torque generated by each propeller is assumed in steady-state and given by , where and are estimated aerodynamic constants, and is the vertical thrust of the given propeller. Thus, the main body’s rotational torques expressed in the inertial frame are written aswhere and .

Finally, defining , the input generalized force vector can be expressed in an input-affine formwhere is the system’s input vector.

Remark 1. By considering the dynamics of the tiltable mechanisms into the tilt-rotor UAV modeling, the equations of motion become affine in the control input, in which the torques applied to tiltable mechanisms, and , are used to manipulate their angular positions. In opposite to this assumption, some works [13, 9] consider these angular positions as control inputs, which lead to high nonlinear coupling in the input mapping, besides neglecting the mentioned dynamics, which have considerable time scale.

2.3. State-Space Representation of the System

The state-space representation of the Euler-Lagrange’s dynamic equations (3), assuming the state vector , can be written as

3. Control Strategy Design

This section presents the proposed robust nonlinear control strategy to solve the load transportation problem using a tilt-rotor UAV. The goal of the control design is to perform trajectory tracking of coordinates , , , and , while ensuring stability of the remaining generalized coordinates, which includes the stabilization of the load. The strategy is based on a cascade scheme as shown in Figure 2. The inner-loop control law actuates in and is designed by using the input-output feedback linearization (IOFL) method combined with the dynamic extension technique in order to control altitude, , and attitude, , also ensuring stability of the tilting angles and . The outer-loop actuates on the references of and in order to ensure trajectory tracking of the planar position , whereas an additional control term is derived to stabilize the load angles ( and ) with reduced swing.

When designing linear controllers for the linearized blocks, the performances of coordinates , , , , , and are achieved through PID-like controllers, ensuring trajectory tracking in presence of constant disturbances, unmodeled dynamics, and parametric uncertainties. As for and , their derivatives with respect to the aircraft are controlled by using PI-like controllers.

Furthermore, for control design purposes, some hypotheses are considered on the equations of motion (3) of the tilt-rotor UAV with suspended load, from which some DOF are assumed uncoupled and considered as unmodeled dynamics. These dynamics decoupling assumptions can be close to reality if the system’s angular velocities (the three first columns of the Coriolis Matrix have only zero terms, implying that translational velocity does not affect the dynamics of the remaining generalized coordinates) and generalized acceleration are small. Nevertheless, these kind of uncertainties must be compensated by the control system. Therefore, in order to compensate them and, additionally, provide good transient response, the linear controllers’ gains are obtained by the mixed synthesis with pole placement constraints. The following assumptions are considered:(A1) Let (center of mass of the main body is in its geometric center), (mass of both rotors are the same), and ; then . In addition, assuming that , then the inertia matrix’s term .(A2) The coupling between the altitude dynamics (-dynamics) and the load motion is assumed to be negligible; that is, .(A3) The coupling between the attitude dynamics and the tilting angles dynamics is assumed to be negligible; that is, and .(A4) The coupling between the attitude dynamics and the load motion is also assumed to be negligible; that is, .

From these assumptions, (3) can be split into two uncoupled equations of motion: (i) one representing the dynamics for , and (ii) another representing :where , , , , , and is a vector including unmodeled dynamics and the unknown external disturbances , , withThe state-space representations of (25)-(26) will be denoted as .

Additionally, in order to deal with a more realistic scenario, it is assumed that the translational variables are not available during all controller’s sampling time. Therefore, the problem of state estimation for the translational position and speed of the aircraft arises, in which it is assumed that the remaining state-space variables are known. It considers that the position is actually measured by a positioning system (e.g., GPS, vision system) equipment with sampling time , while the controller has a sampling time , with and assuming . Moreover, velocity is assumed to be measured throughout a sensor based in visual odometry with same sampling frequency as the positioning system. Therefore, the estimator must evaluate the position and speed of the aircraft when no new measurements are available from the sensors, also taking into account their measurement uncertainty. In order to be more realistic, the estimator must also consider that the aircraft’s motion may be affected by disturbances (e.g., wind gusts), which are not usually measured.

State estimation algorithms typically rely on knowing all the inputs that affect a system; otherwise the estimates become biased due to the unknown input parameters. In order to estimate states with unknown inputs, the technique Linear Kalman Filter with Unknown Inputs (LKFUI) is used. Unlike classic Linear Kalman Filter (LKF) [27], the LKFUI [28] can deal with problems involving unknown inputs such as disturbances.

3.1. Inner-Loop Control Design

In this section the proposed IOFL control law is designed for controlling system (25) considering the systems’ outputs and the system’s inputs .

Recall that the relative degree of a system’s output is exactly the number of times one has to differentiate in order to have at least one component of the vector input explicitly appearing. It is computed by , where is the Lie derivative operation and is the column of . It is possible to verify that (this statement can be trivially understood due to the fact that , , , and are all function of at least one input for arbitrary and ), which implies that this set of inputs/outputs are not fully feedback linearizable, since and the system has twelve state variables ( and ).

Since it is only possible to regulate on a desired value the number of outputs equal to the number of control inputs, and the time-derivatives , , , and are all affected only by the control inputs and (see (23)), and none by the torques and , it is required to delay the appearance of and to higher order time-derivatives of , , , and in order to allow the other control inputs to appear. Therefore, the present problem can be solved by using the dynamic extension technique, in which the state vector of the system is extended by setting and equal to the output of two double integrators and, then, the state variables , , , and are included. The new system’s inputs are defined as . Thus, the new state vector is , and the state-space equations can be rewritten aswhere , , is the element of the system’s input vector , is given byand is the column of , . Note that the control inputs and of system (24) are not anymore control inputs for the extended system (29), being now state variables. Additionally, it improves the capability of the inner-loop controller to deal with external disturbances.

Computing the relative degree for the new system, it is now possible to verify that . This only holds provided the condition that the terms of the inertia matrix . If this was not true, then the coupling between and would imply that it is physically possible to actuate on attitude angles by Newton’s action-reaction when applying torques to rotate the propellers. Even though this is mathematically attainable, this is not the form of actuation desired for the conception of a tilt-rotor aircraft. Therefore, the system’s relative degree is , which means that the system is now fully feedback linearizable. Thus, in order to apply IOFL techniques, the following needs to be calculated:where is the element of the row and column of and is the row of .

Then, the following control law may be appliedwhere is the additional control input. The matrix has full-rank on the neighborhood of the system’s equilibrium point, implying thatwith a function of the residual terms due to model simplifications, unmodeled dynamics, and unknown external disturbances

Therefore, it is then possible to apply linear techniques to obtain the additional control law in order to regulate the outputs , , , and . These variables are controlled by Proportional-Integral-Derivative- (PID-) like controllers with feed-forward term. This choice, together with a desired faster closed-loop time response, allows assuming the steady-state behavior of the inner-loop as unitary gain at the moment of tuning the outer-loop controllers. Moreover, the variables , , , and are required to track desired trajectories when constant external disturbances and modeling errors affect the system. Thus, the linear control laws compounding the additional control input vector, , are designed aswhere with , and , , , and are feed-forward terms due to the time-varying reference.

The above control laws will be synthesized using the mixed control technique with pole placement constraints in order to ensure reference tracking for the variables , , , and , while and are stabilized.

3.2. Outer-Loop Control Design

The outer-loop IOFL controller is designed in order to control the subsystem (26) by actuating on the references of roll, , and pitch, , angles. Moreover, an additional control term is considered to reduce the load swing.

From (23), the generalized control input vector of subsystem (26) can be rewritten as . The variables and are, respectively, the translational forces along and expressed in the inertial frame and are obtained fromwhere is the element of located at the line and column. From , the actuation approach in this part of the design is performed by changing the projection of along and . In other words, the roll () and pitch () angles need to be changed so as to obtain the desired projections of along and . Besides, the projections of and along the inertial frame are assumed as known disturbances which should be compensated by the controller.

First, in order to perform the feedback linearization approach and design an additional linear control input, from (26) and (42), the vector of dynamics to be canceled is defined aswhere . Consequently, subsystem (26) can be rewritten as

By inspecting (44), it is not trivial to obtain a nonlinear state-space representation affine in the control inputs and . To solve this problem, which will allow applying the IOFL technique, and assuming that vector of dynamics is known, one can define the intermediary input values and and state the following nonlinear set of equations:As the term is obtained from the inner-loop controller, which has a faster settling time than the outer one, for the outer-loop control design, this variable is assumed as a time-varying parameter. Furthermore, since the roll () and pitch () angles are controlled variables of the inner-loop, they can be written with respect to their error and reference as and . Therefore, being the inner-loop controller in charge of carrying these errors to zero, and assuming that the yaw () angle is measurable, (45) can be written with respect to and , whose solutions are given bywhere is a saturation function that avoids the operation from becoming undefined and is given by (the function returns the minimum value between and and returns the maximum value between and ).

By replacing the transformation (45) in (44), (26) is reduced towhere and . Since (47) is affine in the intermediary input vector , IOFL techniques can be used to linearize this subsystem.

Then, by choosing the outputs , matrices and can be computed so as to apply a control law similar to the one in (36) leading towhere . Consequently, it is possible to control the aircraft’s motion along and , while and compose the internal dynamics.

Therefore, linear controllers are designed taking into account the motion of the load expressed in the inertial frame. First, the vector is defined as the translation between frame and the load expressed in frame . Then, the reference for the load variation is given as . Note that is the vector that goes from the origin of frame to the origin of frame . Hence, is the relative velocity between the origins of frames and . That is, the objective is to avoid load swinging speed regardless of its position with respect to the aircraft. In order to accomplish this task, PID-like controllers for the motion with additional PI-like control terms to regulate the load’s speed with respect to the tilt-rotor are applied:where and are feed-forward terms due to the time-varying reference.

When tuning parameters of controllers (49) and (50), it is again important to bear in mind that this strategy assumed null coupling between , , , and and the remaining variables, which is incorporated into the residual terms, . Again, in order to synthesize the controllers’ gains providing good transient response and disturbance attenuation, the mixed synthesis with pole placement constraints is employed.

3.3. Robust Mixed Control Design

After applying the input-output feedback linearization procedure to both inner and outer loops, the additional control inputs (38)–(41) and (49)-(50) are synthesized using the mixed technique with pole placement constraints [11]. These linearized dynamics can be written aswhere and with for the inner-loop, and with for the -motion, and and with for the term in charge of load’s swing. Matrices , , are defined with proper dimensions, and , , are weighting matrices.

The optimal controller asymptotically stabilizes the linear system and minimizes the norm, , where is the transfer function between the external disturbance and the cost variable . Applying Parseval’s theorem to the norm, defined in the frequency domain, it results in , in which minimizing the norm minimizes the system disturbance effect. Solving the optimization problem, the linear system is asymptotically stable with norm bounded by , where is the optimal value.

Considering again system (51) with , control problem leads to an optimal controller that minimizes the norm for The minimization of this norm implicates in the optimal transient response of the system. Therefore, the mixed control approach is formulated by finding an optimal norm and using to solve the problem maintaining the constraints, providing the advantage of a small norm and a better transient response.

In addition, to ensure pole placement constraints, the closed-loop poles must be within a defined convex region in the complex plane (-stability). An LMI region is defined as a subset of the complex plane , where is given by , where and are matrices that define region , , and is the complex conjugate of [29]. In this work the following regions are used: () , which is defined by , given that . Therefore, it is possible to rewrite this expression in the form and then and ; () is a disk centered at with radius , in which and ; and () is a cone defined by , from which the matrices and are given as and . According to [29], a closed-loop state matrix is -stable if and only if there exists a real definite positive symmetric matrix such that , where is the Kronecker product operator, and with .

Thus, the robust mixed control problem with pole placement constraints is formulated for each linearized system (51) through the following optimization problem subject to linear matrix inequalities assuming :where , , and the term indicates symmetry.

Remark 2. Region guarantees that the system is faster than a minimum requirement. Region , in turn, avoids the poles from being allocated too far away from the origin of the plane, avoiding high gains in the controller. Region limits the system’s maximum percentage overshoot.

3.4. State Estimation Using the Linear Kalman Filter with Unknown Inputs

As stated previously, the system has two different sampling times (controller and positioning system). Then, in order to design the state estimator, two state-space equations are formulated distinguishing both sampling times. For the controller’s sampling time , we consider a stochastic linear discrete-time dynamic system of the formwhere , , , and are known matrices, in which is the number of states of the system, is the number of known inputs, is the number of unknown inputs, and is the number of outputs. It is assumed that for all the input is known. The process noise is assumed to be white, Gaussian, zero-mean, and mutually independent with known diagonal covariance matrix . Besides, the outputs are measured by the sensors, in which the measurement noise is also assumed to be white, Gaussian, zero-mean, and mutually independent with known diagonal covariance matrix . is the state vector, which should be estimated. The initial state vector is assumed to have Gaussian distribution with initial estimate and error covariance , where denotes expected value.

Since the model in (58) uses sampling time , these equations can be used iteratively to predict the system’s states for sampling time . Thus, in order to predict given and all the inputs and for , this prediction can be calculated by finding . Therefore, defining , when estimating the states at an instant given information up to time the following state-space equations are used:where , , , , and ; is the estimated output of the system and is calculated at each time instant .

In order to obtain the system model for state estimation (position and velocity estimation), only the translational dynamics () are considered from the equations of motion of the tilt-rotor UAV with suspended load (3). Besides, since the generalized coordinates are external variables for the mechanical system (i.e., they do not shape the inertia matrix of the UAV), the Coriolis and centripetal matrix does not depend on these variables and their time-derivatives. Therefore, it can be assumed that all known exerted forces along an axis are grouped into a single component (inertia, Coriolis, and centripetal forces due to existing coupling between the translational dynamics and the remaining generalized coordinates, the gravity force, and the generalized control input forces), compounding the vector , which is function of the aircraft and load orientation (, , , , , and ). For instance, on the -axis it is possible to use the expression , where is the known translational force along the axis expressed in the inertial frame, assuming that all angular positions and velocities are measured with sampling time , is the unknown net disturbance force along the same axis, and is the body’s mass. Note that, for the translational dynamics, the state-space system is linear.

Since attitude values are obtained by measurements, it is fair to say that , , and are not precisely known. Therefore, choosing the state vector , with known input vector and unknown input vector , in which the uncertainties of along with uncertainties of the estimated disturbance force and modeling errors can be expressed by the process noise vector , the translational dynamics can be written in the stochastic discrete-time domain with the system’s sampling time through the following state-space representation:where is the process noise vector at instant . Thus, the matrices , , and of (58) are function of the sampling time and can be extracted from (60). Further, matrices , , and are easily obtained from (60) and, by assumption, .

In addition, the unknown inputs are estimated once at each instant of the sensors’ measurement and are denoted by . When using (59) to estimate , the vector of unknown inputs possesses its terms equal to for all . Therefore, , in whichThus, can be obtained by calculating the summations and separately. Besides, noting that is the sum of the first odd numbers, it is given by . Otherwise, since , then and , where is equal to except that is substituted by . Therefore, it can be said that .

Now, considering models (58) and (59), the LKFUI will use a three-step algorithm, which is described below.

Initialization. Initial estimates are assumed for , and their uncertainties. Every time that the predictor assimilates new measurements, is initialized as

Prediction(i)Calculate using the controller’s sampling frequency , for (ii)Assign .

Correction(i)Calculate given :(ii)Calculate given , and their respective covariance:(iii)Calculate the estimation of the disturbance as follows:(iv)Increment and then go back to the Prediction step.

The filter gain must be chosen such that it minimizes the cost function subject to the constraint , where and solve the problem of the LKFUI when they are given by and [23].

Consider the forecast error , the innovation , the data-assimilation error , the forecast error covariance , the innovation covariance , and the cross covariance . From the equations of filter presented in the LKFUI algorithm, the data-assimilation error covariance is given by [23]where , , and .

For convenience, the following terms are defined as , , , and .

The gain that solves the optimization problem is given by [23]

The data-assimilation error covariance is then given by the Riccati equation where .

4. Simulations Results and Analysis

This section shows simulation results carried out to analyze the performance of the proposed nonlinear control strategy with swing-free load and two control loops (NLLS-2L), which was designed for the tilt-rotor UAV with suspended load in the presence of unknown disturbances, parametric uncertainties, unmodeled dynamics, and noisy measurements. Simulations were performed using the UAV model parameters of Table 1. The simulations considered that the model’s masses and inertia tensors , for , had all uncertainties ranging from to of their nominal values. The thrusters’ inputs were bounded to work between the range from  N to  N, and the rotors’ input torques were bounded between  N·m and  N·m (these values were chosen so as to match commercial specifications for those actuators).

The simulated system assumes the position and speed sensors with sampling period equal to  s and the controller’s sampling rate is equal to  s. The simulation tool used a fixed-step simulation with period and the measures pass through a zero-order-holder with period . Furthermore, positioning system measurements are assumed to have Gaussian distribution with accuracy of  m (this value is equivalent to the specifications of the Novatel OEMStar GPS receiver, which is used in our project) and a speed sensor with accuracy of (specification of the DJI Guidance system), where is the standard deviation. The translational forces , , and are estimated using the tilt-rotor model and the applied control input, and Gaussian noise with is added to their values. The matrix is given by

In order to evaluate the performance of the control system in damping the load swing, the NLLS-2L controller is compared with another control strategy that only assumes the load as a disturbance to the system. This controller is named here as nonlinear controller for trajectory tracking with two control loops (NLPT-2L), which makes use of the same controller designed for the inner-loop, while for the outer-loop the linear control laws (49) and (50) are replaced simply by PID controllers for the motion of and given by By using the NLPT-2L controller and linearizing the system in the neighborhood of the equilibrium point it is possible to verify that and are stable if there are drag terms multiplying and in matrix . If, otherwise, these terms are null, then the load swings uninterruptedly ( and are marginally stable). Since drag forces are present in mechanical systems at atmospheric conditions, it is fair to state that these terms are nonnull, implying stability of the whole system in a neighborhood of the equilibrium point.

In addition, a third control strategy is also compared with the proposed one, which makes use of the nonlinear cascade controller with three loops (NLLS-3L) presented in [22] combined with the LKFUI described in Section 3.4. For the NLLS-3L strategy, the linear controllers of the outermost loop and altitude are synthesized with the same parameters of the NLLS-2L. However, since the attitude and tiltable dynamics are controlled by two control loops in the NLLS-3L strategy presenting high coupling, their gains are obtained similarly with the tuning used in [22].

The closed-loop requirements used for the linear mixed controllers synthesis with pole placement constraints are presented in Table 2, for the LMI regions (55)–(57), and Table 3, for the weighting matrices of and norms. From these requirements, the mixing optimization problem described in Section 3.3 was solved using the Yalmip toolbox [30] (version R20170626) with the Sedumi solver, yielding the controllers gains for each linearized dynamic.

For the sake of comparison, the simulations of NLLS-2L, NLPT-2L, and NLLS-3L took place with exactly the same noise in function of time (same source). The external disturbance profiles applied for the three axis are shown in Figure 3. Figure 4 shows the position estimation error in the direction for the ten first seconds of all simulations. It is possible to see that the estimation for NLLS-2L was not much different than the ones for NLPT-2L and NLLS-3L. It can also be seen that LKFUI was able to converge the position estimation, with a priori estimation error bounded to be with of confidence or, likewise, bounded to be with of confidence. Figure 5 shows the disturbance estimation in the direction for the NLLS-2L simulation, which is estimated with N as standard deviation. The position estimation for and and the disturbance estimation for and present similar profile of estimation convergence with respect to the estimation of and , respectively.

Figure 6 shows the results of the simulated trajectories. The aircraft started on the point and its initial values for and were both and , respectively. Both NLLS-2L and NLLS-3L strategies reduced the load’s swing, but the controller with three loops presented an overall worse trajectory tracking. On the other hand, the NLLS-2L presented a trajectory tracking error for , , and close to the one obtained using NLPT-2L, as it can be observed in Figure 7. This figure also shows that and presented greatly reduced swing when using the NLLS controllers, with both two and three loops. The time evolution of the remaining generalized coordinates is shown in Figure 8, showing that they converge to operating points without destabilizing throughout the simulation. Figure 9 shows the system’s control inputs.

Table 4 presents the root mean square error (RMSE) of the aircraft’s trajectory with respect to its reference and the RMSE of the load’s translational velocity with respect to the aircraft for the control strategies. The NLLS-2L controller presented of the root mean square error on the direction with respect to the NLPT-2L controller and in the direction . The tracking errors for and were similar on both controllers. The RMSE for the derivatives of the load angles and presented an improvement of approximately for and for when comparing NLLS-2L with NLPT-2L.

The NLLS-2L controller presented a trajectory tracking improvement of of the root mean square error on the direction with respect to the NLLS-3L controller and in the direction . The tracking errors for and were better in NLLS-3L, with an improvement of and , respectively. The RMSE for the derivatives of the load angles and presented an improvement of approximately for and for when comparing NLLS-2L with NLLS-3L.

Table 5 presents the Integrated Absolute Variation of the Control signal (IAVU) index for all controllers. This index evaluates the control effort and is given by

Table 5 indicates that the control efforts in NLPT-2L and NLLS-2L are quite similar. In addition, the two-loop strategies reduced the control effort over for and when compared with the three-loop strategy. In addition, the control effort for the tilting torques is greatly reduced in the two-loop strategy with respect to the three-loop one.

5. Conclusion

This paper provided a solution for the nonlinear control problem of the tilt-rotor UAV with suspended load. The proposed control strategy was able to stabilize the whole system while tracking a desired trajectory in the presence of external disturbances, parametric uncertainties, unmodeled dynamics, and noisy measurements with lower sampling frequency than the controller.

The state-space model that was used for the LKFUI algorithm simplifies the dynamics of the tilt-rotor, since the translational generalized coordinates (, , and ) are external variables. This way, there is no need to use a nonlinear state estimation algorithm.

Simulation results were presented where the LKFUI algorithm was able to estimate the disturbances and use its information along with the aircraft translational forces so as to estimate the system’s position while the position and speed sensors do not provide new measurements. At the moment that the sensors provide a new measurement, a correction step is taken to merge the information from the measurement along with the previous estimation. Consequently, the LKFUI was able to reduce estimation error variability from m (positioning system’s measurement error) to approximately m.

Three nonlinear control strategies were compared while performing the task of trajectory tracking: NLPT-2L, NLLS-2L, and NLLS-3L. NLLS strategies greatly reduce the load’s swing with respect to NLPT-2L (up to improvement in the RMSE sense) at the cost of worsening its tracking error for and when subject to stronger changes in reference (worsening up to in the RMSE sense). However, even though NLPT-2L performed better trajectory tracking than NLLS-2L, it is not advised to be used since too much swing of the load, especially for heavy loads, might destabilize the aircraft or also cause the load to collide with the environment.

In terms of control effort, NLLS-2L and NLPT-2L were quite similar. On the other hand, these strategies largely reduced the control effort when compared with NLLS-3L. This is a compelling feature that motivates the abandoning of the three-loop strategy in favor of NLLS-2L.

An interesting future work would be to reduce the simplifications taken and also study the domain of attraction of the designed controllers, since they were only analyzed in the neighborhood of the equilibrium point. Another important step is to implement the solutions in a real tilt-rotor UAV to perform load transportation. This is expected to be performed in the future by the researchers of the ProVant project, whose research is presently carried out in a partnership between the Brazilian universities UFMG and UFSC.

Nomenclature

Symbols
:Zero matrix with lines and columns
:Identity matrix of dimension
:Number of samples
:State vector of order, where ,
:Initial condition of
:Reference vector of the variable
Model Notation
:Right and left rotors’ thrusts, respectively
:Tilting torque for the right and left rotors, respectively
:Fixed inertial frame
:Moving body frame
:Frame rigidly attached to the main body’s center of mass
:Frame rigidly attached to the right rotor’s center of mass
:Frame rigidly attached to the left rotor’s center of mass
:Frame rigidly attached to the suspended load’s center of mass
:Translation between the origins of frames and
:The main body attitude with respect to frame , described by Euler angles with the roll-pitch-yaw convention
:Tilt angles of the right and left rotors, respectively
:Degrees of freedom of the suspended load
:Constant rotation of right and left rotors around , for
:Translation between the origins of frames and , for
:Length of the rigid rod
:Generalized coordinates vector
:Point rigidly attached to frame represented in generic frame
:Inertia matrix
:Coriolis and centripetal forces matrix
:Gravitational force vector
:Independent generalized input force vector
:External disturbance force vector
:Drag force vector
:Drag coefficients matrix
:Kinetic energy of the whole system
:Kinetic energy of the body
:Velocity of a point of body with respect to frame
:Mass density of body
:Mass of the body
:Inertia tensor of body with respect to frame
:Inertia tensor of body expressed in frame
:Potential energy of the whole system
:Potential energy of the body
:Gravity vector with respect to frame
:Gravity acceleration
:Thrust coefficient of the rotors
:Drag coefficient of the propellers
:Translational force vector expressed in the inertial frame
:Rotational torque vector expressed in the inertial frame
:System’s input vector
:Force matrix (input coupling matrix).
Controllers Notation
:Inner generalized coordinates vector
:Outer generalized coordinates vector
:Nonlinear drift vector field of the dynamics for ,
:Nonlinear steering vector field of the dynamics for ,
:Nonlinear external steering vector field of the dynamics for ,
:Nonlinear output vector field of the dynamics for ,
:Vector including unmodeled dynamics and the unknown external disturbances ,
:Additional control input vector,
:Function of the residual terms due to model simplifications, unmodeled dynamics, and unknown external disturbances,
:Saturation function
:Error vector,
:Intermediary input values for the outer-loop controller
:Control effort vector,
:Linear state matrix,
:Linear input matrix,
:Linear external input matrix,
:Control matrix,
:Attenuation level of the problem
:Transfer function between the external disturbance and the cost variable
:-norm of the transfer function
:-norm of the transfer function
:Weighting matrices.
State Estimation Notation
:Positioning system equipment’s sampling time
:Controller’s sampling time
:Process noise
:Unknown input vector
Process noise’s covariance matrix
:Measurement noise
:Measurement noise’s covariance matrix
:Expected value operation
:Kalman Filter’s gain matrix
:Forecast error
:Innovation
:Data-assimilation error
:Forecast error covariance
:Innovation covariance
:Cross covariance
:Data-assimilation error covariance.

Conflicts of Interest

The authors declare that they have no conflicts of interest.

Acknowledgments

The authors would like to thank the Brazilian research agencies CAPES, CNPq, and FAPEMIG for their financial contribution for the accomplishment of this work. Guilherme V. Raffo would like to acknowledge the National Institute of Science and Technology for Cooperative Autonomous Systems Applied to Security and Environment (InSAC).