Path following of an Underactuated AUV Based on Fuzzy Backstepping Sliding Mode Control

This paper addresses the path following problem of an underactuated autonomous underwater vehicle (AUV) with the aim of dealing with parameter uncertainties and current disturbances. An adaptive robust control system was proposed by employing fuzzy logic, backstepping and sliding mode control theory. Fuzzy logic theory is adopted to approximate unknown system function, and the controller was designed by combining sliding mode control with backstepping thought. Firstly, the longitudinal speed was controlled, then the yaw angle was made as input of path following error to design the calm function and the change rate of path parameters. The controller stability was proved by Lyapunov stable theory. Simulation and outfield tests were conducted and the results showed that the controller is of excellent adaptability and robustness in the presence of parameter uncertainties and external disturbances. It is also shown to be able to avoid the chattering of AUV actuators.


Introduction
The autonomous underwater vehicle (AUV) plays an important role in the exploration of ocean resource and military affairs [1][2][3][4]. To achieve these tasks, the AUV needs the ability of accurate path following [5][6]. The paths are described by curve parameters which are usually not relevant to time. There are not lateral and vertical thrusters for most AUVs, and only longitudinal speed, yawing and pitching angle speed are controlled directly. Therefore, the AUV is a typical underactuated system which makes path following more difficult.
The path following problem of an underactuated AUV has been addressed in a large number of publications. Approaches based on the Line-of-Sight (LOS) guidance principle are very popular, by which horizontal path following in two dimensions (2D) of underactuated marine vessels was achieved in [7][8]. Moreover, Walter Caharija [9] introduced an integral LOS guidance for path following controller of underactuated AUVs in the presence of ocean currents. Advanced nonlinear control techniques were adopted in [10] to control the yaw rate of an underactuated marine vessel and hold a desired course. Yu Jiancheng [11] conducted horizontal path following experiments by direct adaptive control method based on neural network. Tang Xudong [12] put forward a process neuron control model. Repoulias Filoktimon [13] designed a horizontal path following controller based on Lyapunov stability theorem and backstepping method. Xiao Liang [14] proposed a novel method based on Lyapunov stability theorem and feedback gain backstepping to reduce the complexity of controller and improve adjustability of the controller parameters. Zaopeng Dong [15] proposed a state feedback based backstepping control algorithm to address the horizontal path following problem of an underactuated marine vessel. Jian Gao [16] proposed a global path following method for the AUV based on the same coordinates to achieve global asymptotic stability of the following error. Zhou et al. [17] designed three adaptive neural network controllers which are based on the Lyapunov stability theorem to estimate uncertain parameters of the vehicle's model and unknown current disturbances. These controllers are designed to guarantee that all the error states in the path following system are asymptotically stable. Lapierre [18] designed a kinematic controller and extended it to cope with vehicle dynamics by resorting to backstepping and Lyapunov-based techniques. As mentioned above, the control algorithms for AUVs have been advanced significantly. However, when it comes to solve the disturbance problems of exterior interfere and uncertain model of AUV, the above control algorithm is incapable of achieving high performance [19].
In recent years, fuzzy modeling and control algorithm have obtained a rapid development and applied to practice due of its function approximation ability [20][21][22]. Backstepping technology has obtained widespread application in AUV motion control [14,15]. To avoid the explosion of complexity in backstepping design which is caused by differentiation at each step, researchers have proposed some methods to eliminate the problem in some studies [23][24][25]. In this paper, we propose to adopt fuzzy backstepping sliding mode control to solve the problems of nonlinearity, uncertainties and external disturbances in the horizontal path following of underactuated AUVs. Firstly, we adopt fuzzy logic system to approximate unknown nonlinear function in the AUV model and fuzzy method to serialize the switching items of sliding mode controller to reduce the chattering of AUV actuators. Then, the system stability is proved by Lyapunov stable theory. Finally, simulation and outfield tests are conducted to verify the feasibility and superiority of the novel approach.

Problem Description
For ease of problem description, this paper establishes two kinds of coordinate system according to the glossary of ITTC and SNAME, fixed coordinate systemE − ξηζ and moving coordinate system O-xyz. The fixed coordinate system is inertial reference system whose origin is a fixed point in the horizontal plane. The origin of moving coordi-nate system is located in the center of gravity B of AUV, and the coordinates of point B in fixed coordinate system is (ξ B , η B , ζ B ). Assuming u, v and r represent the AUV longitudinal speed, transversal speed and yawing speed in O-xyz respectively. ψ is the yawing angle of AUV, which is defined as the turning angle from O-xyz to E − ξηζ [26] This paper only considers path following in the horizontal plane, so heave, roll, and trim are ignored. The AUV kinematic equations in horizontal plane can be expressed as cos sin sin cos The AUV dynamic equations can be expressed as where m is the weight of the AUV, and I z is the moment of inertia around z axis. X{•}, Y{•} and N{•} represent the AUV hydrodynamic coefficients. f{•} is unknown disturbances assuming |f{•}|≤F{•}. X is the longitudinal thrust provided by tail propellers of AUV. N is the torque around z axis produced under the joint action of thrusters and rudders.
The AUV is a complex nonlinear dynamic system and its dynamic model precision can be affected by external disturbances and load change.
(2) are simplified equations which ignore higher-order hydrodynamic coefficients, so the horizontal kinematic equations based on (2) are not precise. However, they can be used as nominal model in simulation. Without affecting the generality, the horizontal kinematic equations of AUV can be expressed as where υ=[u v r] T . As shown in Figure 1, an AUV is moving in the horizontal plane ζ and its reference path Ω is a free curve which is described by the parameter s. P is a free reference point in path Ω and on point P, we can establish {SF} coordinate system ξ sf η sf which consists of tangent vector and normal vector. ξ sf axis goes along tangential direction at point P and η sf axis goes along normal direction at point P. Reference point P moves along path Ω at a speed of U p and the included angle between ξ sf axis and ξ axis is ψ p . The coordinates of point B in {SF} coordinate system are (τ e , n e ) which is the path following error.
The path curve is described by parameter s and the reference point P(ξ(s), η(s)) is determined by s only. The moving speed of point P can be expressed as The included angle between ξ sf axis and ξ axis is The curve angular rate is where ψ e is the following error of yaw angle, ψ e =ψ-ψ p . Therefore, the problem discussed in this paper can be described as: In the presence of model uncertainty and external disturbances, we set the path Ω to follow and the desired longitudinal motion speed u d according to the kinematic and dynamic model of the AUV. The AUV seeks for longitudinal force X, turning stem torque N and the changing rate of curve parameter s from any initial position. In this way, we expect the following error τ e , n e to converge to zero, and the longitudinal speed u to converge to desired speed u d , that is,

Fuzzy Backstepping Sliding Mode Control
Consider the n order nonlinear controlled object .,x n ] T ∈R n is system state vector. u∈R is control input, and y∈R is the system output. d(t) is unknown disturbances and |d(t)|≤D+η=D η D is the maximum value of absolute value ofd(t), η is a small positive number. The purpose is to design proper sliding mode control law based on backstepping method and to make the system output y = x 1 and desired output y d and all signals kept bounded.

Controller design
The controller is designed into three parts: the first is backstepping algorithm, and the second is sliding mode control, and the third is fuzzy logic system.

Step 1 Backstepping algorithm
The first step: Define following error 1 d z y y = - Define virtual control value where k 1 >0.
Substitute (9) into (12) and we can obtain The second step: Define Lyapunov function Define virtual control value where k 2 > 0.
The n-1 step: Step 2 Sliding mode control The n step: Considering the strong robustness of sliding mode control, we can modify the backstepping algorithm and introduce sliding mode control in the last step of backstepping. Then the sliding mode surface can be designed as follows.
Define Lyapunov function If f(x,t), b(x,t) are both known, the sliding mode control law can be designed as follows.
where h is a positive constant.

Step 3 Adaptive fuzzy logic system
Control law (23) is not applicable when f(x,t), b(x,t) are unknown. Besides, switching item D η sgn(S) is easy to cause the chattering. To solve these problems, we will use fuzzy logic systems f , b and d to respectively approximate f, b and d.
We will use product inference engine, single value fuzzy unit and center average defuzzifier to design fuzzy logic systems. The output of system [27] is , μ A i m (x i ) are the membership func- tions of x i . The control law can be designed as is the output of fuzzy system in (25), and β is positive constant. As external disturbance d(t) is continuous changing, so is d (S, t). In this way, we can avoid the chattering caused by D η sgn(S). Adaptive law can be designed as follows, 1 1

Stability proving
Define optimal parameters: where Φ f , Φ b and Φ d are the collections of χ f , χ b and χ d .
Define minimum approximation error: According to universal approximation theorem, there are small positive number ε 1 , ε 2 and ε 3 satisfying the following conditions, Substitute (25) and (28) into (22), we can obtain then T  T  T   T  T   T  T  T  T   T  T  T   T  T  T   1  2  3  1  2  1  1  2  1   3  1  2  3 1 2 1 Substitute (26) (30) into the above formula, we can obtain Because γ is a small positive constant, there is β≥γ satisfying V n ≤ z T Qz. We can make |Q|>0 and Q a positive definite matrix by selecting the values of h, c i , k i , then V n ≤0.

Longitudinal speed controller
According to (25), longitudinal speed controller can be designed as follows, ( ) There are 125 fuzzy rules that can be used to approximate f 1 (x,t) and b 1 (x,t) and 3 fuzzy rules can be used to approximate d 1 (t). The corresponding adaptive control laws are 1 1 1 1 To make the following error of longitudinal speed convergent, we can select the value of h 1 to make |Q 1 |>0. In this way, we can ensure that the longitudinal speed will converge to the expected value and at that time Q 1 =h 1 .

Yaw angle controller
Control the yaw angle and the longitudinal speed simultaneously. Define sideslip angle relative to longitudinal speed β d =arctan(v/u), then (5) Design calm function as Ψ d = − arctan(k n n e ), Ψ d ∈ ( − π/2,π/2). The goal is to makeΨ converge to Ψ d , that is to make yaw angle ψ converge toΨ d + ψ p − β d .
Thus, there are 125 fuzzy rules that can be used to approximate f 3 (x,t) and b 3 (x,t), and 3 fuzzy rules can be used to approximate d 3 (t). The corresponding adaptive control laws are: To make the following error of yaw angle convergent, we can select the value of h 2 , c 1 and k 1 to make |Q 2 |>0. In this way, we can ensure that the yaw angle converge to the expected value. At that time,

Stability analysis
Select the moving speed U P =U d +k τ τ e of point P in reference path and consider

Simulation
To verify the feasibility of fuzzy backstepping sliding mode controller proposed in this paper, we conduct simulation research for an underactuated AUV WL-II developed by Harbin Engineering University in China [28][29][30]. The original state of AUV is ξ B (0)=0, η (0)=10m, u(0)=0.05m/ s, v(0)=r(0)=ψ(0)=0 and the desired speed of AUV is u d =1m/ s. Choose straight line and circle respectively as following path by using the control parameters in Table 1. To verify the robustness of controller, we set the parameters to be 1.2 times of the nominal value, then take it as the controlled object. We also assume that the AUV is affected by white noise disturbances which have the largest amplitude of ω=5 (N/N m). To verify the performance of the controller designed in this paper, we compare and analyze the simulation results of AUV path following through PID control system. What needs to be pointed out that the path following error in Figure 3       As shown in Figure 2 to 9, in the presence of model perturbation and unknown disturbances, both controllers can achieve straight and circle path following of underactuated AUV. However, As can be seen from Figure 3 and 7, the path following error based on fuzzy backstepping sliding mode control converges obviously faster than that under PID control. There is steady-state error in path following under PID control, But the path following error under fuzzy backstepping sliding mode control eventually converges to 0, which indicates the fuzzy backstepping sliding mode controller is of strong robustness. As can be seen from Figure 4 and 8, the longitudinal speed control in PID controller has an overshoot at about 10%, but fuzzy backstepping sliding mode controller can control the longitudinal speed of underactuated AUV fast, gently and without overshoot. As shown in Figure 5 and 9, actuator can continuously output and the fuzzy backstepping sliding mode controller doesn't show chattering phenomenon which usually happens.
To verify the feasibility of the approach further, outfield test is conducted on WL-II AUV in Hilongjiang River, China. The result show that the AUV can follow the reference path exactly enough, as shown in Figure 10.
In conclusion, the fuzzy backstepping sliding mode controller designed in this paper can make longitudinal speed of AUV converge to desired speed fast and without 1. It has good rapidity, that is the AUV can quickly follow the desired path.

2.
It doesn′t need precise mathematical model of AUV and is not sensitive to uncertainties like model perturbation and external disturbances.

3.
For different following paths, it can use the same control parameters and has good adaptability and strong robustness.

Conclusion
This paper considered the problems of path following for the underactuated autonomous underwater vehicle (AUV) in the presence of parameter uncertainties and external current disturbances. Considering kinematic and dynamic equations of AUV, we designed a fuzzy backstepping sliding mode controller which can not only restrain external unknown disturbances, but also avoid the chattering of AUV actuators. This paper theoretically proved the feasibility of the designed controller. Further work is to conduct an extension from horizontal path following to three dimensional space description.