Backstepping active disturbance rejection control for trajectory tracking of underactuated autonomous underwater vehicles with position error constraint

In this article, the three-dimensional trajectory tracking control of an autonomous underwater vehicle is addressed. The vehicle is assumed to be underactuated and the system parameters and the external disturbances are unknown. First, the five degrees of freedom kinematics and dynamics model of underactuated autonomous underwater vehicle are acquired. Following this, reduced-order linear extended state observers are designed to estimate and compensate for the uncertainties that exist in the model and the external disturbances. A backstepping active disturbance rejection control method is designed with the help of a time-varying barrier Lyapunov function to constrain the position tracking error. Furthermore, the controller system can be proved to be stable by employing the Lyapunov stability theory. Finally, the simulation and comparative analyses demonstrate the usefulness and robustness of the proposed controller in the presence of internal parameter uncertainties and external time-varying disturbances.


Introduction
Autonomous underwater vehicles (AUVs) are widely used in marine scientific investigation, marine mineral exploration, and oceanographic mapping. 1 So the need for AUVs has become increasingly apparent and the research on the trajectory tracking control of AUVs becomes more important. Considering reducing the actuator cost and weight or increasing the reliability of the system in case of actuator failure, most of AUVs have fewer actuators than the number of degrees of freedom. 2,3 Nowadays, motion control of underactuated AUVs has been absorbing significant attention of researchers mainly in nonlinear control.
In past decades, lots of methods have been proposed to track AUVs, such as sliding mode control, 4,5 robust control, 6 neural network control, 7 and so on. There are also several methods combining the backstepping technique and other methods that are proposed to solve trajectory tracking problem of underactuated AUVs in a variety of complex environments. A current observer-based backstepping controller is developed to achieve trajectory tracking control of underactuated AUVs in the presence of unknown current disturbances. 8 The combination of backstepping technique and adaptive sliding mode control enhances the robustness of an AUV in the presence of model parameter uncertainties and external environmental disturbances. 9 Backstepping technique and bio-inspired models are used to increase system robustness and avoid the singularity problem in backstepping control of virtual velocity error. 10 Active disturbance rejection control (ADRC) was originally proposed by Han. 11 It's worth noting that nonlinear tracking differentiator (TD) and extended state observer (ESO) are important parts of ADRC. The uniqueness of ADRC is that it treats all factors affecting the plant, such as system nonlinearities, uncertainties, and external disturbances as total disturbances to be observed and compensated by ESO and it has been applied in almost all domains of control engineering. 12 ADRC has been adopted to solve the path following control problem of underactuated AUVs, 13 but it has rarely been used in underactuated AUVs' trajectory tracking control.
On the other hand, in some cases, it is necessary to constrain the position tracking error of an underactuated AUV within certain given boundary function all the time for safety reasons. It has been proved that the barrier Lyapunov function method [14][15][16][17] and prescribed performance control method 18,19 are effective solutions to prevent constraint violation. A barrier Lyapunov function is incorporated with the backstepping control scheme to handle the position tracking error constraint. 20 Prescribed performance functions have been adopted to constrain the position and orientation errors of an underactuated AUV which can ensure both the prescribed transient and steady-state performance constraints. 21,22 But in these studies, point-to-point navigation is used and it is worth noting that the desired yaw angle is not continuously differentiable when the position error equals zero. To avoid this problem, the position tracking error converges to a constant instead of zero.
Underactuated AUVs lack sway and heave propellers, so the transverse and vertical position errors of trajectory tracking are usually eliminated by controlling the yaw and pitch angles, that is also why the backstepping technique is often employed in the trajectory tracking control of underactuated AUVs. However, backstepping controller has two obvious disadvantages. The first one is that the unknown transverse and vertical disturbances are usually omitted when deducing the virtual control variables of yaw angular and pitch angular velocities. As a result, the unknown transverse and vertical disturbances cannot be compensated in time, which always affects the result of trajectory tracking. The other one is that the problem of "explosion of terms" caused by the operation of differentiation always exists. Based on the above analysis, that reduced-order linear extended state observers (RLESOs) are used to estimate and compensate for the total disturbances which can improve the performance of backstepping controller and enhance the robustness of underactuated AUVs. Besides, TD can be used to provide the filtered version of the input signal and its differentiation. So TDs are employed to solve the problem of "explosion of terms." What's more, by barrier Lyapunov function, the controller can prevent the violation of the time-varying position error constraint and render the position tracking error converges to zero. In this work, the proposed controller can solve the threedimensional trajectory tracking control problem of underactuated AUVs in the presence of internal parameter uncertainties and external unknown disturbances.
The rest of this article is organized as follows. The mathematical model of an underactuated AUV system is presented in the second section. In the third section, RLESOs are designed to estimate the total disturbances. The backstepping ADRC controller design procedure for the three-dimensional trajectory tracking of an underactuated AUV is illustrated in the fourth section. The simulation and comparative analyses are provided in the fifth section and some conclusions of this article are brought forward in the sixth section.

Problem formulation
This section presents the five degrees of freedom kinematics and dynamics model of an underactuated AUV and then formulates the problem of trajectory tracking.

AUV modeling
We define the earth-fixed coordinate system fEg and the body-fixed coordinate system fBg of the AUV as shown in Figure 1, where x, h, and z represent the inertial coordinates of the vehicle in the earth-fixed frame; u, v, and w are the surge, sway, and heave velocities, respectively, defined in the body-fixed frame; p, q, and r represent roll angular velocity, pitch angular velocity, and yaw angular velocity; ', q, and are roll angle, pitch angle, and yaw angle.
The underactuated AUV is assumed to satisfy the following assumptions 23,24 : (1) the center of gravity coincides with the center of buoyancy, (2) the mass distribution is homogeneous, and (3) the hydrodynamic drag terms of order higher than two and roll motion are neglected. Then the five degrees of freedom (DOF) AUV kinematics equations can be written as The five DOF underactuated AUV dynamics equations, considering the internal parameter uncertainties and external environmental disturbances, can be expressed by the following differential equations and w r ¼ w À w c represent the relative velocities of the vehicle with respect to current in the body-fixed frame and V cx , V cy , and V cz represent the ocean current velocities in the earth-fixed frame; DðÞ represents the parameter uncertainties in the vehicle model. d 1 , d 2 , d 3 , d 5 , and d 6 are the external environmental disturbances; D u , D v , D w , D q , and D r are the total disturbances to be estimated; t u , t q , and t r are considered as the available control inputs. Assumption 1. The underactuated AUV's velocities and control inputs are bounded, that is, w, q, and r are the known upper bounds. (2), the total disturbances and their derivatives are all bounded. There exists:

Control objectives
In order to facilitate the formulation, p ¼ ½xðtÞ; hðtÞ; zðtÞ T is defined as the actual coordinate variable and p d ¼ ½x d ðtÞ; h d ðtÞ; z d ðtÞ T is a given sufficiently smooth time-varying desired trajectory with its derivative with respect to time bounded.
Considering the kinematics and dynamics equations, design a controller to render the tracking error jjp À p d jj converges to a neighborhood of the origin that can be made arbitrarily small.

RLESOs design
According to the design principle of RLESO which is firstly proposed by Huang and Xue, 12 RLESOs for the estimations of the total disturbances are designed as follows whereD u ,D v ,D w ,D q , andD r are the estimations of D u , D v , D w , D q , and D r ; b i are the observer gains and p i (i ¼ 1; 2; 3; 4; 5) are the auxiliary states of the observer. If Assumption 2 is satisfied, we can obtain 25 : represents the estimation error of the RLESOs and can be tuned arbitrarily small by increasing the observer gains b i .

Coordinate transformation
The desired yaw angle and pitch angle are obtained only based on the reference trajectory where . Then the position and attitude error variables x e , y e , z e , q e , and e are defined as x which express the errors in the body-fixed frame. x d , h d , z d , q d , and d are the desired position and attitude variables in the earth-fixed frame. The derivatives of the position and attitude error variables are described as _ x e ¼ u À v p cos q d cos q cos e À v p sin q d sin q þ ry e À qz e _ y e ¼ v þ v p cos q d sin e À rx e À rz e tan q _ z e ¼ w À v p cos q d sin q cos e þ v p sin q d cos q þ qx e þ ry e tan q _ Backstepping controller with RLESOs This section designs a trajectory tracking controller by combining the backstepping technique and RLESOs and analyzes the stability based on the Lyapunov stability theory.
Step 1: A time-varying barrier Lyapunov function is defined as where r is the position error constraint function and r e 2 ¼ x e 2 þ y e 2 þ z e 2 . The time derivative of V 1 yields Choose virtual velocity error variables 26 In order to make _ V 1 negative, we choose u, a 1 , and a 2 as virtual controls, and their desired values are as follows a 1d ¼ Àv À k 2 y e þ y e _ r=r ð15Þ where k 1 , k 2 , and k 3 are positive constants.
Since the virtual variables u d , a 1d , and a 2d are not true controls, we define error variables Substituting equations (14) to (19) into equation (11) þ a 1e y e À a 2e z e Þ=ðr 2 À r e 2 Þ ð 20Þ Step 2: To stabilize the error variable u e , define Its derivative along with equation (17) and equation (2a) becomes _ V 2 ¼ ðÀk 1 x e 2 À k 2 y e 2 À k 3 z e 2 þ a 1e y e À a 2e z e Þ=ðr 2 À r e 2 Þþu e ð _ u À _ u d þ x e =ðr 2 À r e 2 ÞÞ ¼ ðÀk 1 x e 2 À k 2 y e 2 À k 3 z e 2 þ a 1e y e À a 2e z e Þ=ðr 2 À r e 2 Þ þ u e ðf u þ t u =m 11 þ D u À _ u d þ x e =ðr 2 À r e 2 ÞÞ ð22Þ If we choose control input t u as where k 4 is a positive constant. Then equation (22) can be rewritten as _ V 2 ¼ ðÀk 1 x e 2 À k 2 y e 2 À k 3 z e 2 þ a 1e y e À a 2e z e Þ=ðr 2 À r e 2 Þ À k 4 u e 2 þ u eDu Step 3: To stabilize the error variable a 1e , consider the following Lyapunov function Then the time derivative of V 3 becomes Define $ ¼ Àk 2 y e þ y e _ r=r ð27Þ It can be known The time derivative of equation (18) along with equation (12) and equation (29) becomes In order to make _ V 3 negative, define r ¼ r cos e and its desired value r d ¼ r d þ _ d cos qðcos e À 1Þ. The desired value of r is as follows where _ v 1 ¼ f v þD v and k 5 is a positive constant. Considering that r d is not a true control input, we define error variables r e ¼ r À r d ð32Þ We can obtain where d 1 ¼ ðr d À _ d cos qÞðcos e À 1Þ. Substituting equations (30) to (34) into equation (26) yields _ V 3 ¼ ðÀk 1 x e 2 À k 2 y e 2 À k 3 z e 2 À a 2e z e Þ=ðr 2 À r e 2 Þ À k 4 u e 2 À k 5 a 1e 2 þ u eDu þ a 1eDv þ a 1e v t r e cos À1 q Step 4: To stabilize the error variable r e , define Its derivative along with equation (32), equation (35) and equation (2e) becomes _ V 4 ¼ ðÀk 1 x e 2 À k 2 y e 2 À k 3 z e 2 À a 2e z e Þ=ðr 2 À r e 2 Þ À k 4 u e 2 À k 5 a 1e 2 þ u eDu þ a 1eDv þ a 1e v t r e cos À1 q þ r e ð_ r À _ r d Þ ¼ ðÀk 1 x e 2 À k 2 y e 2 À k 3 z e 2 À a 2e z e Þ=ðr 2 À r e 2 Þ À k 4 u e 2 À k 5 a 1e 2 þ u eDu þ a 1eDv þ r e ðf r þ t r =m 66 þD r À _ r d þ a 1e v t cos e cos À1 qÞþa 1e v t d 1 cos À1 q ð37Þ In order to make _ V 4 negative, control input t r is chosen as t r ¼ À m 66 f r À m 66Dr þ m 66 _ r d À m 66 a 1e v t cos e cos À1 q À k 6 m 66 r e ð38Þ where k 6 is a positive constant. Then equation (37) becomes _ V 4 ¼ ðÀk 1 x e 2 À k 2 y e 2 À k 3 z e 2 À a 2e z e Þ=ðr 2 À r e 2 Þ Àk 4 u e 2 À k 5 a 1e 2 À k 6 r e 2 þ u eDu þ a 1eDv þ r eDr þ a 1e v t d 1 cos À1 q Step 5: To stabilize the error variable a 2e , consider the following Lyapunov function Then the time derivative of V 5 becomes À k 4 u e 2 À k 5 a 1e 2 À k 6 r e 2 þ a 2e ð _ a 2e À z e =ðr 2 À r e 2 ÞÞ þ u eDu þ a 1eDv þ r eDr þ a 1e v t d 1 cos À1 q Define ¼ v p cos q d sin qðcos e À 1Þ À k 3 z e þ z e _ r=r ð42Þ It can be known The time derivative of equation (19) along with equations (16) and (44) becomes In order to make _ V 5 negative, define q ¼ q cos q e and its desired value q d ¼ q d þ _ q d ðcos q e À 1Þ. The desired value of q is as follows where _ w 1 ¼ f w þD w and k 7 is a positive constant. Considering that q d is not a true control input, we define error variables We can get where Substituting equations (45) to (49) into equation (41) yields _ V 5 ¼ ðÀk 1 x e 2 À k 2 y e 2 À k 3 z e 2 Þ=ðr 2 À r e 2 Þ À k 4 u e 2 À k 5 a 1e 2 À k 6 r e 2 À k 7 a 2e 2 þ u eDu þ a 1eDv þ r eDr À a 2eDw þ a 2e v p q e þ a 1e v t d 1 cos À1 q Step 6: To stabilize the error variable q e , define Differentiating V 6 with respect to time along with equation (47), equation (50), and equation (2d) yields _ V 6 ¼ ðÀk 1 x e 2 À k 2 y e 2 À k 3 z e 2 Þ=ðr 2 À r e 2 Þ À k 4 u e 2 À k 5 a 1e 2 À k 6 r e 2 À k 7 a 2e 2 þ u eDu þ a 1eDv þ r eDr À a 2eDw þ a 2e v p q e þ a 1e v t d 1 cos À1 qþq e ð _ q À _ q d Þ ¼ ðÀk 1 x e 2 À k 2 y e 2 À k 3 z e 2 Þ=ðr 2 À r e 2 Þ À k 4 u e 2 À k 5 a 1e 2 À k 6 r e 2 À k 7 a 2e 2 þ u eDu þ a 1eDv In order to make _ V 6 negative, control input t q is chosen as where k 8 is a positive constant. Then equation (52) becomes The complete Lyapunov function is as follows Here, if we define Then with the help of the inequality logðr 2 =ðr 2 À r e 2 ÞÞ < r e 2 =ðr 2 À r e 2 Þ, we have where g ¼ min k 1 ; k 2 ; k 3 ; k 4 ; k 5 ; k 6 ; k 7 ; k 8 f g . We know from the section "RLESOs design" that E ¼ ½D u ;D v ;D w ;D q ;D r T is bounded, so it is easy to know that d is bounded. According to the comparison principle, 2 the following inequality can be obtained Therefore Equation (59) means that the tracking error signals converge to a compression bounded value near the zero by increasing control gains appropriately and the system is stable.

Backstepping controller with TDs and RLESOs
TD can be used to provide the filtered version of the input signal and its differentiation as fast as possible. And it is well known that the operation of differentiation always causes the problem of "explosion of terms" when the traditional backstepping technique is employed. In order to solve this problem, we add TDs to the above-mentioned controller and the TDs are as follows f h ¼ f hanðr c ðkÞ À r d ðkÞ; R 2 ; hÞ f h ¼ f hanðq c ðkÞ À q d ðkÞ; R 3 ; hÞ where R 1 , R 2 , and R 3 are the acceleration factors to be adjusted and h is the sampling period. The function f hanðÁÞ can be found in Han 11 and the following statement can be found in Miao et al. 13 Corollary: Considering the TDs described by equation (60), if the input signals u d , q d , and r d are differentiable and bounded, and if there exist arbitrarily small values a, b, c, e k ðk ¼ 1; 2; Á Á Á ; 6Þ, then the solution of the considered TDs are Using u c , q c , r c and _ u c , _ q c , _ r c produced by TDs, the controller can be rewritten as u c þ k 9 ðu c À uÞ À m 11 x e =ðr 2 À r e 2 Þ À k 4 m 11 u e t q ¼ Àm 55 f q À m 55Dq þ m 55 ½ _ q c þ k 10 ðq c À qÞ À m 55 a 2e v p cos q e À k 8 m 55 q e t r ¼ Àm 66 f r À m 66Dr þ m 66 ½_ r c þ k 11 ðr c À rÞ À m 66 a 1e v t cos e cos À1 q À k 6 m 66 r e 8 > <

> : ð62Þ
Redefine equation (56) as where d is still bounded. And the system is still stable.

Simulation and discussion
In this section, the simulation and comparative analyses demonstrate the usefulness and robustness of the proposed controller. The simulation is performed in MATLABR2014a/ Simulink and the following two controllers are compared.
The simulation results are shown in Figures 3 to 8. As can be seen in Figure 3, the vehicle actual trajectory fluctuates around the desired trajectory under the backstepping sliding mode controller which is induced by the model uncertainties and disturbances, but the backstepping ADRC controller shows perfect performance. Clearly, the performance of the backstepping ADRC control laws is better than that of the backstepping sliding mode control laws in the presence of both internal parameter uncertainties and external time-varying disturbances.
The position error r e and x e , y e , and z e are displayed in Figure 4. It shows the proposed control laws can constrain the position tracking error of an underactuated AUV within the given boundary function all the time by using a time-varying barrier Lyapunov function and make position tracking errors converge to zero while backstepping sliding mode control method results in large tracking error.
The responses of velocity errors and virtual variable errors are shown in Figure 5. The velocity errors and virtual variable errors converge to zero rapidly and smoothly under the proposed controller, but the velocities and virtual variables fluctuate around desired values with the disturbances under the backstepping sliding mode controller. The results clearly demonstrate the effectiveness of the designed RLESOs.
The responses of actual control inputs are displayed in Figure 6.
The actual values of the total disturbances and the estimation values of the RLESOs are shown in Figure 7 which demonstrates that the designed RLESOs can quickly and accurately estimate the total disturbances D u , D v , D w , D q , and D r .
In addition, Figure 8 shows _ u c ,_ r c , _ q c and u c , r c , q c produced by TDs, which can rapidly converge to u d , r d , q d .

Conclusion
In this work, a backstepping ADRC controller based on the time-varying barrier Lyapunov function is developed to achieve three-dimensional trajectory tracking control of underactuated AUVs in the presence of internal parameter uncertainties and external time-varying disturbances and guarantee the satisfaction of predefined performance requirements. RLESOs are used to estimate and compensate for the total disturbances and TDs are employed to calculate the derivative of virtual control commands. From the simulation results, the proposed controller can remain satisfactory performance of an underactuated AUV in a complex environment and the simulation shows high accurate tracking capacity which demonstrates that using RLE-SOs can improve the performance of backstepping controller and using TDs can make the calculation of backstepping control laws simplified. Conclusions can be drawn that the backstepping ADRC controller has the ability to reject both internal parameter uncertainties and external time-varying disturbances. Experiments will be conducted to demonstrate the effectiveness of the proposed control laws and the effect of actuator saturation and faults will be studied in the near future.

Declaration of conflicting interests
The author(s) declared no potential conflicts of interest with respect to the research, authorship, and/or publication of this article.