Abstract
In this paper, the position control and swing motion control problem are investigated for an aerial payload transportation system which consists of a quadrotor unmanned aerial vehicle (UAV) and a suspended payload. Under the constraints of underactuated properties and unknown system parameters, a nonlinear adaptive control strategy is designed based on the energy methodology, which achieves accurate position control of the UAV as well as the payload’s fast swing suppression during the flight. The stability of the closed-loop system, asymptotic convergence of the UAV’s position error and payload swing suppression are proved via Lyapunov-based stability analysis. Real-time experimental results validate the effectiveness of the developed technique.
Similar content being viewed by others
Explore related subjects
Discover the latest articles, news and stories from top researchers in related subjects.Avoid common mistakes on your manuscript.
1 Introduction
A quadrotor UAV has many advantages in respect of its rapid maneuvering, precise hovering and vertical taking-off and landing (VTOL) features [1,2,3,4,5,6], which plays an important role in many fields such as search and rescue [7], aggressive maneuvering [8], fire fighting [9], environmental monitoring [10], infrastructure reconstruction [11] and so on. The cargo transporting by using a quadrotor UAV is a promising application area.
The control of unmanned aerial vehicle such as satellite or quadrotor UAVs has been a topic of considerable interests. The modeling and control for unmanned aerial vehicle has been intensively studied over the past decades [12, 13], especially the nonlinear robust control under the uncertainties [14,15,16,17,18]. However, the task for the quadrotor aerial transportation system is extremely hazardous because the quadrotor dynamic is affected by the suspended payload through the tension force along the connecting cable. In the past few years, researchers have paid great attentions on the quadrotor aerial transporting system, the applications of the system vary from obstacle avoidance [19, 20], payload lift maneuvering [21, 22], transporting a payload via flexible cable [23, 24], multiple quadrotors cooperative transporting [25,26,27] and so on. The control objective for the system is to deliver slung-payload to its destination in a smooth, safe and efficient way. Two main methods have been adopted to solve the control problem. One is the open loop strategy to generate the desired trajectory via different methodologies such as dynamic programming, differential flatness approach and so on. Palunko et al. present a discrete piecewise linear model of the quadrotor slung-payload system in [28], then a dynamic programming approach is used to generate the swing-free trajectory. In [29], Sreenath et al. propose a nominal trajectory generation method by using differential flatness property of the quadrotor slung-payload system, meanwhile a controller is designed which enables tracking of the quadrotor’s attitude and the payload’s position. The second method is the closed-loop strategy which utilizes the payload swing angles directly for the control development. A reinforcement learning-based control algorithm is proposed in [30] for a quadrotor slung-payload system to achieve trajectory tracking of the quadrotor UAV without exact model knowledge of the system’s dynamics. In [31], a nonlinear hierarchical control scheme is proposed for the system. For the outer-loop subsystem, the position controller is designed based on an energy storage function, and then, a coordinate-free geometric attitude controller is designed for the inner-loop subsystem.
Despite the aforementioned achievements, there are still some important problems about the system that need to be addressed: (1) Some existing control algorithms are developed based a simplified 2D dynamic model (i.e, only the horizontal motion of the quadrotor aerial is considered) and the payload’s swing angles are assumed to be very small thus the coupling between the quadrotor motion and the payload’s swing motion can be neglected. (2) Some existing works utilize a linear dynamic model which is obtained via linearizing the nonlinear model near a specified equilibrium point, normally chosen near the hovering mode. Thus the controller is only valid for a very restricted flight envelope. (3) Few works have considered about the uncertainties associated with the dynamic model of the system, meanwhile the exact model knowledge of the system is not easy to be obtained. (4) For many existing works, only numerical simulation results are presented which prevent their application from the practical aerial transporting operation.
In this paper, the flight control strategy is designed based on a three-dimensional dynamic model, and thus, both the horizontal motion and the vertical motion are included for the control development. Motivated by passivity property of the system’s energy, we construct a nonlinear adaptive controller, which can achieve position control of quadrotor as well as suppression of payload swing motion. Finally, the stability of the closed-loop system is proved via Lyapunov-based analysis, and the effectiveness of the proposed control strategy are validated via real-time experimental results. Therefore, the main contributions of the proposed nonlinear controller include the following: (1) A nonlinear dynamic model is employed to formulate the proposed control strategy without linearization; thus, the operation range of the controller is not limited to a very narrow scope near the system’s equilibrium point. (2) Nonlinear adaptive estimation laws are developed to compensate for the unknown system parameters; thus, explicit model knowledge of the nonlinear model is not required. (3) The proposed anti-swing controller can regulate the quadrotor to its destination asymptotically and suppress swing motion effectively without restriction on the payload’s swing motion while most existing works require the payload’s swing angle should stay in a small range (i.e, assuming that \(sin\theta \approx \theta \) [32, 33]). (4) The proposed controller is developed based on a three-dimensional model of the system, so it is more suitable for the real flight of the quadrotor aerial transporting system.
Comparing with the most recent work in [34], the main difference of this paper can be summarized as: (1) In [34], the disturbances are considered to be small enough that can be ignored. In this paper, it is shown that the proposed control strategy is robust against the unknown external air turbulence both theoretically and experimentally. (2) The payload’s mass is considered to be exactly known in [34]. In this paper, not only the influence of the uncertainty of the payload’s mass can be compensated, but also the proposed parameter update law can accurately estimate the payload’s mass online. (3) In addition to the basic regulation control verification and robustness to initial swing disturbance in [34], the robustness to different payload’s mass and the external disturbances during the transportation are considered in this paper.
The rest contents of this paper are organized as follows. The nonlinear dynamic model of the quadrotor aerial transporting system is described in Sect. 2. Section 3 provides a nonlinear adaptive controller inspired by energy analysis of the system. In Sect. 4, we detail the stability analysis of the quadrotor aerial transporting system with the proposed controller by using Lyapunov-based analysis. Section 5 shows experimental results and compares the proposed controller with linear quadratic regulator (LQR) controller with regard to the control performance. Finally, some concluding remarks are presented in Sect. 6.
2 Problem formulation
This section describes the three-dimensional dynamic model for the quadrotor with a cable suspended load. As Fig. 1 shows, the payload is attached to a quadrotor via a massless and unstretchable cable. And the payload is hinged by mean of a ball joint at the quadcopter’s center of mass.
To describe the kinematics of the quadrotor, let \({\mathscr {I}}=\{X_{I},Y_{I},Z_{I}\}\) represent a right hand inertia frame with \(Z_{I}\) being the vertical direction to the earth. The body fixed frame is denoted by \({\mathscr {B}}=\{X_\mathrm{B},Y_\mathrm{B},Z_\mathrm{B}\}\). By using the Eulerian–Lagrangian formulation, the three-dimensional quadrotor with a slung-payload is given as follows:
where \(q(t)=[x(t),y(t),z(t),\gamma _{x}(t),\gamma _{y}(t)]^{T}\in {\mathbb {R}}^{5}\) denotes the system state vector, x(t), y(t), z(t) represent the quadrotor position in the \(X_{I}\), \(Y_{I}\), \(Z_{I}\) directions, respectively, \(\gamma _{x}(t)\), \(\gamma _{y}(t)\) represent the payload swing angle about \(X_{I}\) and \(Y_{I}\), respectively, as shown in Fig. 1. The terms \(M_{c}(q),C(q,{\dot{q}})\in {\mathbb {R}}^{5\times 5}\), G(q), f(t), \(f_{d} (t)\in {\mathbb {R}}^{5}\) in (1) denote the inertia matrix, the centripetal-Coriolis matrix, the gravity vector, the control input vector, the aerodynamic drag force vector, respectively, which are defined as
In (2)–(6), \(m_{q}\), \(m_{p}\) are the mass of the quadrotor and the payload, respectively, and \(m_{p}\) is unknown, l is the cable length, g is the acceleration of gravity, \(f_{x}(t)\), \(f_{y}(t)\), \(f_{z}(t) \) denote the control inputs in \(X_{I}\), \(Y_{I}\), \(Z_{I}\) directions, respectively, \(c_{x}\), \(c_{y}\), \(c_{z}\), \(c_{\gamma _{x}}\), \(c_{\gamma _{y}}\) are unknown aerodynamic drag force coefficients, \(C_{x}\), \(C_{y}\), \(S_{x}\), \(S_{y}\) are abbreviations of \(\cos \gamma _{x}\), \(\cos \gamma _{y}\), \(\sin \gamma _{x}\) and \(\sin \gamma _{y}\), respectively.
Remark 1
The control inputs \(f_{x}(t)\), \(f_{y}(t)\) and \(f_{z}(t)\) in inertia frame \({\mathscr {I}}\) can be converted to actual lift forces and torque generated by four motors in body fixed frame \({\mathscr {B}}\) via the similar procedure in [1].
Remark 2
The quadrotor itself is an underactuated system [1]. The introducing of the payload results in the increase in system’s degree of freedom. That is, the quadrotor’s states x(t), y(t) and z(t) are affected by the input \(f_{x}(t)\), \(f_{y}(t)\) and \(f_{z}(t)\) directly while the payload’s swing angles \(\gamma _{x}(t)\) and \(\gamma _{y}(t)\) are not controlled directly with \(f_{x}(t)\), \(f_{y}(t)\) and \(f_{z}(t)\). Thus, the dynamic system in (1) is underactuated.
The inertia matrix \(M_{c}(q)\) has the following properties [35, 36]:
Property 1
The inertia matrix \(M_{c}(q)\) is symmetric and positive definite. Furthermore, for any vector \(\chi \in {\mathbb {R}}^{5}\), there always exist two positive constants \(\lambda _{m}\) and \(\lambda _{M}\) which satisfy the following inequality
Property 2
The inertia matrix \(M_{c}(q)\) and the centripetal-Coriolis matrix \(C(q,{\dot{q}})\) satisfy the following equation
Although the controller design is under the condition of the unknown payload’s mass \(m_{p}\), we can usually obtain a prior information about the upper and lower bounds for \(m_{p}\) as follows:
According to the practical flight scenarios, the following assumptions will be invoked in the subsequent control development and stability analysis..
Assumption 1
The payload is always below the quadrotor, and the swing angle \(\gamma _{x}(t)\), \(\gamma _{y}(t)\) satisfy
Remark 3
For most quadrotor UAV, the rotational dynamics converge faster than the translational dynamics, thus a lot of existing works do not take the rotational dynamics into consideration [28, 37, 38]. Similarly, the controller design developed in this paper mainly focuses on the translational dynamics of the quadrotor.
In this paper, we will develop an adaptive nonlinear controller of the quadrotor with a slung-payload subject to unknown parameters such as payload mass and air damping coefficients. The control objective is to ensure that the quadrotor moves to the target position precisely, while the payload’s swing angles are suppressed rapidly, which can be described as follows:
where \(x_{d}\), \(y_{d}\), \(z_{d}\in {\mathbb {R}}\) denote the target position of the quadrotor.
To quantify the control performance, regulation error signals are defined as follows:
3 Control development
In this section, an adaptive controller will be presented firstly based on energy analysis of the system. Then, a parameter adaptive update law will be proposed in the presence of the unknown plant parameters (including payload’s mass and drag coefficients of aerodynamic drag force).
The energy E(t) of the quadrotor slung-payload system, combining the kinetic and potential energy, can be denoted as follows:
Taking the time derivative of (13), and substituting (5) and (6) into the resulting equation yields
where \(\delta _{x}(t)\), \(\delta _{y}(t)\), \(\delta _{z}(t)\) and \(\xi _{x}\), \(\xi _{y}\), \(\xi _{z}\) are defined as
Based on the passivity property of the quadrotor slung-payload system energy, the adaptive controller can be designed as [39]:
where \(\varDelta _{x}(t)=\kappa _{x}\varsigma _{x}e_{x}(t)\), \(\varDelta _{y} (t)=\kappa _{y}\varsigma _{y}e_{y}(t)\), \(\varDelta _{z}(t)=\kappa _{z}e_{z}(t)\) with \(\varsigma _{x}=\left[ \frac{\sqrt{2}(x_{d}+\varepsilon _{x})}{(x_{d} +\varepsilon _{x})^{2}-x^{2}(t)}\right] ^{2}\), \(\varsigma _{y}=\left[ \frac{\sqrt{2}(y_{d}+\varepsilon _{y})}{(y_{d}+\varepsilon _{y})^{2}-y^{2} (t)}\right] ^{2}\), \(\varsigma _{z}=\left[ \frac{\sqrt{2}(z_{d}+\varepsilon _{z})}{(z_{d}+\varepsilon _{z})^{2}-z^{2}(t)}\right] ^{2}\), and \(k_{px}\), \(k_{\text {d}x}\), \(k_{\text {d}\gamma _{x}}\), \(k_{py}\), \(k_{\text {d}y}\), \(k_{\text {d}\gamma _{y}}\), \(k_{pz}\), \(k_{\text {d}z}\), \(\kappa _{x}\), \(\kappa _{y}\), \(\kappa _{z}\in {\mathbb {R}}^{+}\) are some positive gains. The gains \(\varepsilon _{x}\), \(\varepsilon _{y}\), \(\varepsilon _{z}\in {\mathbb {R}}^{+}\) in (16) are introduced to restrict the maximum overshoots for \(e_{x}(t)\), \(e_{y}(t)\), \(e_{z}(t)\), respectively, where they satisfy
The dynamic estimates \({\hat{\xi }}_{x}(t)\), \({\hat{\xi }}_{y}(t)\) and \(\hat{\xi }_{z}(t)\) are estimations for the unknown parameters \(\xi _{x}\), \(\xi _{y}\) and \(\xi _{z}\), respectively, and denoted as
Remark 4
The controller in (16) is referred to [39], but it is different from the one in [39]. The system’s degree of freedom in this paper is bigger than the one in [39], and consequently, the stability analysis becomes much more complicated. On the other hand, new auxiliary functions \(\varDelta _{x}(t)\), \(\varDelta _{y}(t)\) and \(\varDelta _{z}(t)\) are added in the controller for the consideration of overshoot restriction in this paper while the control design in [39] does not take this issue into account. This will also make the stability analysis in this paper is much different from the one in [39].
By substituting (16) into (14), it can be obtained that
where \({\tilde{\xi }}_{x}(t)\), \({\tilde{\xi }}_{y}(t)\), \({\tilde{\xi }}_{z}(t)\) are online errors for \(\xi _{x}\), \(\xi _{y}\), \(\xi _{z}\), respectively, and defined as follows:
Based on the subsequent stability analysis, the parameter estimates \(\hat{\xi }_{x}(t)\), \({\hat{\xi }}_{y}(t)\) and \({\hat{\xi }}_{z}(t)\) are updated via the following adaption algorithm
where \(\varGamma _{x}=\mu _{x}>0\), \(\varGamma _{y}=\mu _{y}>0\), \(\varGamma _{z} =diag\{\mu _{m_{p}},\mu _{z}\}>0\) and \(\alpha \in {\mathbb {R}}^{+}\) are some positive gains. The function \(\rho (s)\) in (21) is a differential saturation function, which is defined as
It can be proved that the following properties hold for \(\rho (s)\) in (22):
- 1.
for any value \(s\in {\mathbb {R}}\), \(\left| \rho (s)\right| \le 1 \),
- 2.
the partial derivative of \(\rho (s)\) with respect to s can be expressed as
$$\begin{aligned} \rho _{s}(s)=\frac{\partial \rho (s)}{\partial s}=\left\{ \begin{array} [c]{ll} 0,&{}\quad \left| s\right| >\pi /2\\ \cos (s),&{}\quad \left| s\right| \le \pi /2 \end{array} \right. \end{aligned}$$(23)and for any \(s\in {\mathbb {R}}\), \(\left| \rho _{s}(s)\right| \le 1\),
- 3.
for any \(s\in {\mathbb {R}}\), \(\rho ^{2}(s)\le s\rho (s)\).
4 Stability analysis
The main stability result of the adaptive controller proposed in (16) and (21) can be stated by the following theorem.
Theorem 1
The proposed adaptive controller in (16) and (21) ensure that all the closed-loop signals are bounded, and quadrotor’s positive errors are asymptotically regulated in the sense that
the payload’s swing angles are asymptotically regulated in the sense that
Meanwhile, the quadrotor’s motion during the flight procedure are ensured to stay in a bounded region in the sense that
The estimate for the unknown mass of the payload converges to its real value such that
Proof
To prove the above theorem, a nonnegative Lyapunov function candidate V(t) is chosen as follows:
where \(\rho _{e}(\frac{e}{2})\) is defined as
To show that V(t) is nonnegative, we can rearrange the first four terms in (28), denoted as \(V_{f4}(t)\), as follows:
By using the Young’s inequality, \(V_{f4}(t)\) in (30) can be lower bounded as follows:
Here, the control gains \(k_{px}\), \(k_{py}\), and are \(k_{pz}\) chosen to satisfy
Besides, the fifth term in (28) can be lower bounded as
The control gain \(\alpha \) is selected to satisfy the following inequality
Thus, it is not difficult to check that \(V_{f4}(t)+\rho _{e}^{T}(\frac{e}{2})M_{c}(q){\dot{q}}\ge 0\) holds, and consequently V(t) in (28) is nonnegative.
The time derivative of (28) can be expressed as follows:
For \(\rho _{e}^{T}(\frac{e}{2})M_{c}(q)\ddot{q}\) in (35) denoted as \(H_{0}(t)\), substituting (1) into it yields
For \(\rho _{e}^{T}(\frac{e}{2}){\dot{M}}_{c}(q){\dot{q}}\) in (35) denoted as \(H_{1}(t)\), by utilizing the expression of (8), it can be obtained that
For \({\tilde{\xi }}_{x}^{T}(t)\varGamma _{x}^{-1}\overset{\cdot }{{\tilde{\xi }}} _{x}(t)+{\tilde{\xi }}_{y}^{T}(t)\varGamma _{y}^{-1}\overset{\cdot }{{\tilde{\xi }}} _{y}(t)+{\tilde{\xi }}_{z}^{T}(t)\varGamma _{z}^{-1}\overset{\cdot }{{\tilde{\xi }}} _{z}(t)\) in (35) denoted as \(H_{2}(t)\), substituting (21) into it yields
After substituting (36)–(38) into the (35), the following expression for \({\dot{V}}(t)\) can be obtained
From (39), by defining
the following inequality can be obtained upon the use of the third property of \(\rho (s)\)
For \(-\,k_{\text {d}x}{\dot{x}}(t)\rho \left( \frac{e_{x}(t)}{2}\right) -k_{\text {d}y}{\dot{y}}(t)\rho (\frac{e_{y}(t)}{2})-k_{\text {d}z}{\dot{z}}(t)\rho (\frac{e_{z}(t)}{2})\) in (39) denoted as \(H_{4}(t)\), the following inequality holds upon the use of the Young’s inequality
For \(-m_{p}glS_{x}(t)C_{y}(t)\rho (\frac{\gamma _{x}(t)}{2})-m_{p} glC_{x}(t)S_{y}(t)\rho (\frac{\gamma _{y}(t)}{2})\) in (39) denoted as \(H_{5}(t)\), the following inequality can be obtained
For \({\dot{q}}^{T}C(q,{\dot{q}})\rho _{e}(\frac{e}{2})\) in (39) denoted as \(H_{6}(t)\), after substituting (3) and (29) into it and some mathematical manipulation, the following inequality can be obtained
For \(k_{\text {d}\gamma _{x}}{\dot{\gamma }}_{x}(t)\rho (\frac{e_{x}(t)}{2})+k_{\text {d}\gamma _{y}}{\dot{\gamma }}_{y}(t)\rho (\frac{e_{y}(t)}{2})\)in (39) denoted as \(H_{7}(t)\), similarly, the following inequality holds
For \({\dot{\rho }}_{e}^{T}(\frac{e}{2})M_{c}(q){\dot{q}}\) in (39), based on the second property of \(\rho (s)\) and (7), it is implied that
Substituting (41)–(45) and (46) into (39) yields
where \(\varLambda (t)\) is defined as
If the positive gains \(\alpha \), \(k_{\text {d}x}\), \(k_{\text {d}y}\), \(k_{\text {d}z}\), \(k_{px}\), \(k_{py}\), \(k_{pz}\), \(k_{\text {d}\gamma _{x}}\), \(k_{\text {d}\gamma _{y}}\), \(\kappa _{x}\), \(\kappa _{y}\), \(\kappa _{z}\) are chosen to satisfy the following conditions
it can be guaranteed that \(-\varLambda (t)\) is negative definite, where the gains \(\beta _{1}\), \(\beta _{2}\), \(\beta _{3}\), \(\beta _{4}\) and r are chosen to satisfy
The details for how to obtain the conditions in (49) and (50) are presented in the “Appendix”.
By integrating both sides of (47) with respect to time, it can be obtained that
Thus, it indicates that
Now, it is not difficult to obtain that \(\left| e_{x}(0)\right| <x_{d}+\varepsilon _{x}\), \(\left| e_{y}(0)\right| <y_{d}+\varepsilon _{y}\), \(\left| e_{z}(0)\right| <z_{d}+\varepsilon _{z}\) from (17). Assuming that \(e_{x}(t)\) (respectively, \(e_{y}(t)\), \(e_{z}(t)\)) tends to exceed the boundary of \(\left| e_{x}(t)\right| <x_{d} +\varepsilon _{x}\) from the interior (respectively, \(\left| e_{y} (t)\right| <y_{d}+\varepsilon _{y}\), \(\left| e_{z}(t)\right| <z_{d}+\varepsilon _{z}\)), then we can conclude from (28) that \(V(t)\rightarrow \infty \) which invalidates \(V(t)\ll +\infty \) in (52). Thus, we have
It is not difficult to show that \({\dot{x}}(t)\), \({\dot{y}}(t)\), \({\dot{z}}(t)\), \({\dot{\gamma }}_{x}(t)\), \({\dot{\gamma }}_{y}(t)\), \(e_{x}(t)\), \(e_{y}(t)\), \(e_{z}(t)\), \({\tilde{\xi }}_{x}(t)\), \({\tilde{\xi }}_{y}(t)\), \({\tilde{\xi }}_{z}(t)\in L_{\infty }\), and \(\frac{e_{x}^{2}(t)}{(x_{d}+\varepsilon _{x})^{2}-x^{2}(t)}\), \(\frac{e_{y}^{2}(t)}{(y_{d}+\varepsilon _{y})^{2}-y^{2}(t)}\), \(\frac{e_{z} ^{2}(t)}{(z_{d}+\varepsilon _{z})^{2}-z^{2}(t)}\in L_{\infty }\) according to (28) and (52). Moreover if \(e_{x}(t)\rightarrow 0\), then \(\frac{1}{(x_{d}+\varepsilon _{x})^{2}-x^{2}(t)}\rightarrow \frac{1}{(x_{d}+\varepsilon _{x})^{2}-x_{d}^{2}}\in L_{\infty }\). In addition, if \(e_{x}(t)\) does not converge to 0, then it follows from \(e_{x}(t)\in L_{\infty }\) and \(\frac{e_{x}^{2}(t)}{(x_{d}+\varepsilon _{x})^{2}-x^{2}(t)}\in L_{\infty }\) that \(\frac{1}{(x_{d}+\varepsilon _{x})^{2}-x^{2}(t)}\in L_{\infty }\). Similar analysis can be applied on \(\frac{1}{(y_{d}+\varepsilon _{y} )^{2}-y^{2}(t)}\) and \(\frac{1}{(z_{d}+\varepsilon _{z})^{2}-z^{2}(t)}\), thus we can obtain that \(\frac{1}{(y_{d}+\varepsilon _{y})^{2}-y^{2}(t)}\in L_{\infty } \), \(\frac{1}{(z_{d}+\varepsilon _{z})^{2}-z^{2}(t)}\in L_{\infty }\). Consequently due to (16), we can obtain that \(f_{x}(t)\), \(f_{y}(t)\), \(f_{z}(t)\in L_{\infty }\). Then, based on the structure of the system dynamics in (1), it is not difficult to conclude that \(\ddot{x}(t)\), \(\ddot{y} (t)\), \(\ddot{z}(t)\), \(\ddot{\gamma }_{x}(t)\), \(\ddot{\gamma }_{y}(t)\in L_{\infty }\). Moreover, we can obtain \(\int _{0}^{t}\varLambda (e_{x}(\tau )\), \(e_{y}(\tau )\), \(e_{z}(\tau )\), \(\gamma _{x}(\tau )\), \(\gamma _{y}(\tau )\), \(\dot{x}(\tau )\), \({\dot{y}}(\tau )\), \({\dot{z}}(\tau )\), \({\dot{\gamma }}_{x}(\tau ) \), \({\dot{\gamma }}_{y}(\tau ))\text {d}\tau \in L_{\infty }\) since \(V(t)\in L_{\infty } \). And it implies from (64) that \({\dot{x}}(t)\), \({\dot{y}}(t)\), \({\dot{z}}(t)\), \({\dot{\gamma }}_{x}(t)\), \({\dot{\gamma }}_{y}(t)\), \(\rho (\frac{e_{x}(t)}{2})\), \(\rho (\frac{e_{y}(t)}{2})\), \(\rho (\frac{e_{z}(t)}{2}) \), \(\sin \gamma _{x}(t)\), \(\sin \gamma _{y}(t)\in L_{2}\). By invoking Barbalat’s lemma, we can conclude that
By applying (54) to the first and second entry of (16), it leads to the fact that \(\underset{t\rightarrow \infty }{\lim }f_{x}(t)=0\), \(\underset{t\rightarrow \infty }{\lim }f_{y}(t)=0\). Substituting (54) into the dynamics of x(t), y(t) in (1), it can be concluded that
Thus, we have
According to the dynamics of z(t) in (1), we can obtain that
The expression in (57) leads to
where \(\varXi (t)\) is defined as follows:
Based on (54) and (56), it can be concluded that
and from the third entry of (21), we can obtain
and \(\overset{\cdot }{{\tilde{m}}}_{p}(t)g\in L_{\infty }\). Based on (58), (60) and (61), the extended Barbalat’s lemma [40] can be invoked to show that
Thus, it can be concluded that
since g is a nonzero positive constant. \(\square \)
5 Experimental results
To validate the control performance of the proposed strategy, real-time experiments are performed on a self-build UAV testbed shown in Fig. 2. The testbed consists of a small-size quadrotor, a cable-connected payload, a motion capture system, a ground station, and a XBee based wireless data link. For the quadrotor platform, the STM32 chip is used as a real-time engine, which can provide the accurate attitude information with the gyroscope and accelerometer sensors integrated on the board. In addition, the real-time embedded controller offers the attitude controller and position controller. The motion capture system Optitrack is employed to measure the positions of quadrotor and the payload. Based on these position informations, the swing angles can be calculated and then the data packets are transmitted to the ground stations via the Ethernet. The ground station PC plays two roles. On the one hand, the ground station is used to record the experimental data during the flight. On the other hand, the ground station is responsible for parsing the data packets transferred from the Optitrack. In order to achieve the communication between the Optitrack and the quadrotor, we use two XBee modules which provide cost-effective wireless connectivity to devices in ZigBee networks. One is connected to controller chip of the quadrotor and the other one is connected to the Serial port of the ground station.
The parameters of the quadrotor slung-payload system are listed as \(m_{q}=1.0082\) kg, \(m_{p}=0.0761\) kg, \(l=1.085\) m and \(g=9.81\,\mathrm{m}/\mathrm{s}^{2}\). In all cases, the initial and desired positions for the quadrotor are set as \(x(0)=-\,0.5\) m, \(y(0)=1.5\) m, \(z(0)=-\,1.6\) m, \(x_{d}=0.5\) m, \(y_{d}=-\,1.0\) m and \(z_{d}=-\,1.7\) m. And the control parameters of the proposed adaptive controller for the quadrotor slung-payload system are set \(\alpha =0.5\), \(\varGamma _{x}=\varGamma _{y}=2.0\), \(\varGamma _{z}=\mathrm{diag}\{1.2,10\}\), \(k_{px}=k_{py}=4.9\), \(k_{\text {d}x}=k_{\text {d}y}=8.0\), \(k_{pz}=16.0\), \(k_{\text {d}z}=9.0\), and \(k_{\text {d}\gamma _{x} }=k_{\text {d}\gamma _{y}}=0.7\).
To compare and analyze the effectiveness of the proposed methodology, a LQR controller is also implemented on the testbed. The dynamic mode in (1) is linearized to obtain the LQR controller. The LQR controller is designed as \(f(t)=-\,Kx(t)\), where \(x(t)=\left[ \right. e_{x}(t)\text { }e_{y}(t)\text { } e_{z}(t)\text { }{\dot{x}}(t)\text { }{\dot{y}}(t)\text {}{\dot{z}}(t)\text { } \)\( \gamma _{x}(t)\text { }\gamma _{y}(t)\left. {\dot{\gamma }}_{x}(t)\text { } {\dot{\gamma }}_{y}(t) \right] ^{T}\in {\mathbb {R}}^{10\times 1}\), K is control gain matrix which is the optimal solution in theory calculated via MATLAB toolbox.
For the convenience of quantitative analysis of the experimental results, some definitions in this paper are given as follows:
- 1.
The steady-state value is the region when the deviation between the actual value and desired state value stay in the given range \(\varTheta \), in this paper, \(\varTheta _{x}=0.08\) m, \(\varTheta _{y}=0.1\) m, \(\varTheta _{z}=0.03\) m, \(\varTheta _{\gamma _{x}}=3^{\circ }\), \(\varTheta _{\gamma _{y}}=3.5^{\circ }\).
- 2.
The adjusting time \(T_{a}\) is defined as the required time to reach the steady-state process.
In this section, four cases of experiments are implemented on the testbed.
Case 1–Comparison with LQR controller The experimental results are shown in Figs. 3, 4, 5, which, respectively, represent the quadrotor’s positions, the payload’s swing angles, the control outputs of the proposed controller and LQR controller and the estimation of payload’s mass of the proposed controller. We analyze the data in a quantitative form as listed in Table 1, which includes adjusting time \(T_{a}=\left[ t_{ax}\text { }t_{ay}\text { }t_{az}\text { }t_{a\gamma _{x}}\text { } t_{a\gamma _{y}}\right] \), standard deviation of steady-state process \(\varSigma _{d}=\left[ \sigma _{\text {d}x}\text { }\sigma _{dy\text { }}\sigma _{\text {d}z}\text { }\sigma _{\text {d}\gamma _{x}}\text { }\sigma _{\text {d}\gamma _{y}}\right] \) and maximum residual of steady-state process \(M_{r}=\left[ m_{rx}\text { }m_{ry}\text { }m_{rz}~m_{r\gamma _{x}}\text {}m_{r\gamma _{y}}\right] \). From Figs. 3, 4 and Table 1, one can see that the proposed controller can achieve higher positioning accuracy and faster convergence for horizontal motion of the quadrotor, meanwhile suppress the payload swing angle faster. Particularly, maximum payload residual swing angles in steady-state process for the proposed controller are far less than that LQR controller. In particular, when the system reaches the steady-state process, the proposed controller has better performance than LQR controller according to both standard deviation and maximum residual. From Fig. 5, we can see that the estimation of the unknown payload mass is about 0.0743 kg, and the estimation error is about 0.0018 kg, which indicates the online estimation for payload’s mass converges nearly to its real value. And the result is consistent with theoretical analysis.
Case 2–Robustness to different payload’s mass We change the payload from 0.0761 to 0.1789 kg, the experimental results of the proposed controller are shown in Figs. 6, 7, 8, which, respectively, represent the quadrotor’s positions, the payload swing angles, the control outputs, and the estimation of payload’s mass of the proposed controller. Similarly, the quantitative results are listed in Table 2. Compared with the experimental results in case 1, it can be seen obviously that overall control performance of the proposed controller does not vary much although the payload’s mass has changed. We can obtain that the steady-state mean in vertical direction of the proposed controller is about \(-\,1.7037\) m, which indicates the final position of the proposed controller is almost to its desired position. According to Fig. 8, the online estimation for the payload’s weight is approximately 0.1825 kg that means the estimation error is about 0.0036 kg. So we can conclude that the proposed online estimator for payload’s weight can converge to its true value precisely.
Case 3–Robustness to initial disturbances We consider the system is perturbed by initial swing angles. The initial payload’s swing angles \(\gamma _{x}(t)\), \(\gamma _{y}(t)\) are set as \(22.1^{\circ }\), \(13.5^{\circ }\), respectively, as shown in Fig. 9. The corresponding experimental results are shown in Figs. 9, 10, which represent the quadrotor’s positions, the payload’s swing angles and the control outputs of the proposed controller, respectively. And the relevant quantitative results are shown in Table 3. We can see that adjusting time \(T_{a}\) is a bit long because of the large initial swing angles. However, the payload’s swing angles \(\gamma _{x}(t)\), \(\gamma _{y}(t) \) drop down to half of maximum swing angles (\(\gamma _{x\max }=23.9^{\circ }\), \(\gamma _{y\max }=21.2^{\circ }\)) in a short time (about 2.6 s, 5.2 s, respectively), which indicates the proposed controller has good effect in reducing the large swing angles. From Figs. 9, 10 and Table 3, we can see that the overall control performance keeps good in terms of steady-state mean error, standard deviation and maximum residual in steady state. These experimental results demonstrate that the proposed control law has good robustness to the initial swing disturbances.
Case 4–Robustness to external disturbances In this case, we introduce some disturbance at about 19.5 s when the quadrotor has reached the definition for a while. The disturbance induced swing angles \(\gamma _{x}(t)\), \(\gamma _{y}(t)\) are approximately \(32.5^{\circ }\) and \(36.0^{\circ }\), respectively. The experimental results are shown in Figs. 11, 12, which represent the quadrotor’s positions, the payload’s swing angles and the control outputs of the proposed controller, respectively. And the quantitative results are shown in Table 4. We can see that the control force changes due to disturbance, as a result, the quadrotor’s positions are regulated by the controller in order to suppress the payload’s swing motion. From the adjusting time \(T_{a}\) in Table 4, we can conclude that the regulation process is quick with small adjusting time for the quadrotor’s position x(t), y(y) in \(X_\mathrm{B}\), \(Y_\mathrm{B}\) directions and payload’s swing angles \(\gamma _{x}(t)\), \(\gamma _{y}(t)\). The payload’s swing angles \(\gamma _{x}(t)\), \(\gamma _{y}(t) \) reach the steady-state process in 4.490 s, 6.299 s, respectively, under the large interferences, which shows the satisfying robustness of the proposed controller with respect to the external disturbances. From the third entry of Table 4, one can conclude that behaviors in the steady state stay very well with small standard deviation of steady-state process \(\varSigma _{d}\) and small maximum residual of steady-state process \(M_{r}\).
6 Conclusion
A nonlinear adaptive controller for the quadrotor slung-payload system has been presented under the unknown aerodynamic drag force and unknown system parameters, which can achieve accurate quadrotor positioning and rapid payload swing suppression simultaneously. Besides, a parameter online estimation can precisely identify the unknown payload’s mass. The Lyapunov-based analysis is used to prove the stability of the proposed control laws. Experiment results performed on the self-build testbed confirm its superior performance and robustness.
About the future work, we will extend the current design to multiple quadrotor cooperative aerial transportation system. In addition, since the actual flight is susceptible to external gust disturbance, the corresponding adaptive robust controller will be designed considering the coexistence of unknown parameters and external wind disturbance.
References
Zhao, B., Xian, B., Zhang, Y., Zhang, X.: Nonlinear robust adaptive tracking control of a quadrotor UAV via immersion and invariance methodology. IEEE Trans. Ind. Electron. 62(5), 2891–2902 (2015)
Teuliere, C., Marchand, E., Eck, L.: 3-D model-based tracking for UAV indoor localization. IEEE Trans. Cybern. 45(5), 869–879 (2015)
Xie, H., Low, K.H., He, Z.: Adaptive visual servoing of unmanned aerial vehicles in GPS-denied environments. IEEE-ASME Trans. Mechatron. 22(6), 2554–2563 (2017)
Xian, B., Hao, W.: Nonlinear robust fault-tolerant control of the tilt trirotor UAV under rear servo’s stuck fault: theory and experiments. IEEE Trans. Ind. Inf. 15(4), 2158–2166 (2019)
Xian, B., Diao, C., Zhao, B., Zhang, Y.: Nonlinear robust output feedback tracking control of a quadrotor UAV using quaternion representation. Nonlinear Dyn. 79(4), 2735–2752 (2015)
Xian, B., Zhao, B., Zhang, Y., Zhang, X.: Nonlinear control of a quadrotor with deviated center of gravity. J. Dyn. Syst. Meas. Control-Trans. ASME 139(1), 011003-1–011003-7 (2017)
Tomic, T., Schmid, K., Lutz, P.: Toward a fully autonomous UAV: research platform for indoor and outdoor urban search and rescue. IEEE Robot. Autom. Mag. 19(3), 46–56 (2012)
Mellinger, D., Michael, N., Kumar, V.: Trajectory generation and control for precise aggressive maneuvers with quadrotors. Int. J. Robot. Res. 31(5), 664–674 (2012)
Ghamry, K.A., Zhang, Y.: Fault-tolerant cooperative control of multiple UAVs for forest fire detection and tracking mission. In: Proceeding of the 3rd Control and Fault-Tolerant Systems, Barcelona, Spain, Sept. 07–09, pp. 133–138 (2016)
Alvear, O., Zema, N.R., Natalizio, E., Calafate, C.T.: Using UAV-based systems to monitor air pollution in areas with poor accessibility. J. Adv. Transp., to be published. https://doi.org/10.1155/2017/8204353
Jia, B., Chen, J., Zhang, K.: Drivable road reconstruction for intelligent vehicles based on two-view geometry. IEEE Trans. Ind. Electron 64(5), 3696–3706 (2017)
Cao, L., Qiao, D., Chen, X.: Laplace L1 Huber based cubature Kalman filter for attitude estimation of small satellite. Acta Astronaut. 148, 48–56 (2018)
Mahony, R., Kumar, V., Corke, P.: Multirotor aerial vehicles: modeling, estimation, and control of quadrotor. IEEE Robot. Autom. Mag. 19(3), 20–32 (2012)
Xiao, B., Yang, X., Karimi, H.R., Qiu, J.: Asymptotic tracking control for a more representative class of uncertain nonlinear systems with mismatched uncertainties. IEEE Trans. Ind. Electron. to be published. https://doi.org/10.1109/TIE.2019.2893852
Xiao, B., Yin, S.: Exponential tracking control of robotic manipulators with uncertain dynamics and kinematics. IEEE Trans. Ind. Inf. 15(2), 689–698 (2019)
L’Afflitto, A., Anderson, R.B., Mohammadi, K.: An introduction to nonlinear robust control for unmanned quadrotor aircraft: how to design control algorithms for quadrotors using sliding mode control and adaptive control techniques. IEEE Control Syst. Mag. 38(3), 102–121 (2018)
Liu, H., Ma, T., Lewis, F.L., Wan, Y.: Robust formation control for multiple quadrotors with nonlinearities and disturbances. IEEE Trans. Cybern., pp. 1–10. https://doi.org/10.1109/TCYB.2018.2875559
Liu, H., Li, D., Zuo, Z., Zhong, Y.: Robust three-loop trajectory tracking control for quadrotors with multiple uncertainties. IEEE Trans. Ind. Electron. 63(4), 2263–2274 (2016)
Tang, S., Kumar, V.: Mixed integer quadratic program trajectory generation for a quadrotor with a cable-suspended payload. In: Proceedings of the IEEE Conference on Robotics and Automation, Seattle, WA, USA, May 26–30, pp. 2216–2222 (2015)
Faust, A., Palunko, I., Cruz, P., Fierro, R., Tapia, L.: Learning swing-free trajectories for UAVs with a suspended load. Proceedings of the IEEE Conference on Robotics and Automation, Karlsruhe, Germany, May. 06–10, 4902–4909 (2013)
Cruz, P.J., Fierro, R.: Cable-suspended load lifting by a quadrotor UAV: hybrid model, trajectory generation, and control. Auton. Robot. 41(8), 1629–1643 (2017)
Cruz, P.J., Oishi, M., Fierro, R.: Lift of a cable-suspended load by a quadrotor: a hybrid system approach. Proceedings of the American Control Conference, Chicago, IL, USA, Jan. 01–03, 1887–1892 (2015)
Goodarzi, F.A., Lee, D., Lee, T.: Geometric control of a quadrotor UAV transporting a payload connected via flexible cable. Int. J. Control Autom. Syst. 13(6), 1486–1498 (2015)
Dai, S., Lee, T., Bernstein, D.S.: Adaptive control of a quadrotor UAV transporting a cable-suspended load with unknown mass. In: Proceedings of the 53rd IEEE Conference on Decision Control, Los Angeles, CA, USA, Dec. 15–17, pp. 6149–6154 (2014)
Wu, G., Sreenath, K.: Geometric control of multiple quadrotors transporting a rigid-body load. In: Proceedings of the 53rd IEEE Conference on Decision Control, Los Angeles, CA, USA, Dec. 15–17, pp. 6141–6148 (2014)
Lee, T., Sreenath, K., Kumar, V.: Geometric control of cooperating multiple quadrotor UAVs with a suspended payload. In: Proceedings of the 52nd IEEE Conference on Decision Control, Florence, Italy, Dec. 10–13, pp. 5510–5515 (2013)
Lee, T.: Geometric control of multiple quadrotor UAVs transporting a cable-suspended rigid body. In: Proceedings of the 53rd IEEE Conference on Decision Control, Los Angeles, CA, USA, Dec. 15–17, pp. 6155–6160 (2014)
Palunko, I., Fierro, R., Cruz, P.: Trajectory generation for swing-free maneuvers of a quadrotor with suspended payload: a dynamic programming approach. In: Proceedings of the IEEE Conference on Robotics and Automation, St Paul, MN, USA, May 14–18, pp. 2691–2697 (2012)
Sreenath, K., Michael, N., Kumar, V.: Trajectory generation and control of a quadrotor with a cable-suspended load–a differentially-flat hybrid system. In: Proceedings of the IEEE Conference on Robotics and Automation, Karlsruhe, Germany, May 06–11, pp. 4888–4895 (2013)
Palunko, I., Faust, A., Cruz, P., Tapia, L., Fierro, R.: A reinforcement learning approach towards autonomous suspended load manipulation using aerial robots. In: Proceedings of the IEEE Conference on Robotics and Automation, Karlsruhe, Germany, May 06–11, pp. 4881–4886 (2013)
Liang, X., Fang, Y., Sun, N.: Nonlinear hierarchical control for unmanned quadrotor transportation systems. IEEE Trans. Ind. Electron. 65(4), 3395–3405 (2018)
Alothman, Y., Jasim, W., Gu, D.: Quad-rotor lifting-transporting cable-suspended payloads control. In: Proceedings of the 21st International Conference on Automation and Computing, Glasgow, UK, Sept. 11–12, pp. 1–6 (2015)
Alothman, Y., Gu, D.: Quadrotor transporting cable-suspended load using iterative linear quadratic regulator (iLQR) optimal control. In: Proceedings of the 8th Computer Science and Electronic Engineering, Colchester, UK, Sept. 28–30, pp. 168–173 (2016)
Yang, S., Xian, B.: Energy-based nonlinear adaptive control design for the quadrotor UAV system with a suspended payload. IEEE Trans. Ind. Electron., In Press (2019). https://doi.org/10.1109/TIE.2019.2902834
Wu, C., Fu, Z., Yang, J., Wei, Y.: Nonlinear control and analysis of a quadrotor with sling load in path tracking. In: Proceedings of the 36th Chinese Control Conference, DaLian, China, Jul. 10–13, pp. 6519–652 (2017)
Klausen, K., Fossen, T.I., Johansenn, T.A.: Nonlinear control of a multirotor UAV with suspended load. In: Proceedings of the 2015 International Conference on Unmanned Aircraft Systems (ICUAS), Denver, CO, USA, June 9–12, pp. 176–184 (2015)
Liang, X., Fang, Y., Sun, N.: A hierarchical controller for quadrotor unmanned aerial vehicle transportation systems. In: Proceedings of the 35th Chinese Control Conference, Chengdu, China, Jul. 27–29, pp. 6148–6153 (2016)
Nicotra, M.M., Garone, E., Naldi, R., Marconi, L.: Nested saturation control of an UAV carrying a suspended load. In: Proceedings of the American Control Conference, Portland, OR, USA, June 4–6, pp. 3585–3590 (2014)
Sun, N., Yang, T., Fang, Y., Wu, Y., Chen, H.: Transportation control of double-pendulum cranes with a nonlinear quasi-pid scheme: design and experiments. IEEE Trans. Syst Man Cybern. Syst. 49(7), 1408–1418 (2019)
Khalil, H.K.: Nonlinear Systems, 3rd edn. Prentice-Hall, Englewood Cliffs, NJ (2002)
Acknowledgements
This work was supported in part by the National Key R & D Program of China (2018YFB1403900) and the National Natural Science Foundation of China (91748121, 90916004).
Author information
Authors and Affiliations
Corresponding author
Ethics declarations
Conflict of interest
The authors declare that they have no conflict of interest.
Human participants
The research work of this submission does not involve any human participants. The research work of this submission does not involve any animals.
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Appendix
Appendix
1.1 Parameter condition derivation
The function \(\varLambda (t)\) in (48) can be expressed as follows:
where \(\eta _{1}\), \(\eta _{2}\), \(\eta _{3}\), \(\eta _{4}\), \(\eta _{5}\), \(\eta _{6}\), \(\eta _{7}\), \(\eta _{8}\) are defined as
Now, we define S(t) as follows:
where P is a \(5\times 5\) matrix, \(s=\)\(\left[ \begin{array} [c]{ccccc} {\dot{x}}&{\dot{y}}&{\dot{z}}&{\dot{\gamma }}_{x}&{\dot{\gamma }}_{y} \end{array} \right] \in {\mathbb {R}}^{1\times 5}\) and denoted via the following equations
Consequently, S(t) in (66) can be described as
By substituting (68) into (64), we can obtain
In order to ensure \(-\varLambda (t)\) to be negative definite, it is implied that P need to be positive definite, then the conditions can denote as follows:
and it yields from (70) that
Suppose that \(k_{\text {d}x}=k_{\text {d}y}=k_{\text {d}z}=\frac{1}{r}\alpha \) where \(r\in {\mathbb {R}}^{+}\) is positive constant. Hence, (71) can be denoted as
By making some mathematical manipulation, it is reduced as
Thus, \(\alpha \) should be selected to satisfy
with
and r should be chosen to satisfy
On the other hand, considering the negative property of \(-\varLambda (t)\), the following inequalities hold
that means
Thus, combined with (32) and (34), we can obtain the conditions for \(\alpha \), \(k_{\text {d}x}\), \(k_{\text {d}y}\), \(k_{\text {d}z}\), \(k_{px}\), \(k_{py}\), \(k_{pz}\), \(k_{\text {d}\gamma _{x}}\), \(k_{\text {d}\gamma _{y}}\), \(\kappa _{x}\), \(\kappa _{y}\), \(\kappa _{z}\) in (49) and (50) based on (71)-(78).
Rights and permissions
About this article
Cite this article
Xian, B., Wang, S. & Yang, S. Nonlinear adaptive control for an unmanned aerial payload transportation system: theory and experimental validation. Nonlinear Dyn 98, 1745–1760 (2019). https://doi.org/10.1007/s11071-019-05283-0
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11071-019-05283-0