Ship Dynamic Positioning Control Based on Active Disturbance Rejection Control

Nowadays, Dynamic Positioning (DP) is applied to various tasks such as subsea pipeline laying and the requirements for the positioning performance in marine operations are higher and higher. The main objective of this paper is to design a DP controller based on the Active Disturbance Rejection Control (ADRC) to solve the problems of long response time, large overshoot and low positioning accuracy in ship positioning. Firstly, the mathematical models of the ship and environmental disturbances are established. Secondly, the basic principle of ADRC is described. Meanwhile, stability analysis of the control system is introduced. Thirdly, ADRC is improved by the fal function filter and phase prediction method which solve the problem of dither and phase delay in tracking differentiators. Finally, simulations are carried out to verify the performance of the designed ADRC and the improved ADRC. Several simulation results show that the designed ADRC can realize the fixed-point control of the ship, which effectively solves the problems of long response time, overshoot and positioning accuracy, and compared with the traditional ADRC, the improved ADRC can reduce the error of straight track control, which indicates that ADRC can meet the requirements for the positioning performance and has a strong application value.


Introduction
With the development of modernization and the continuous improvement of living standards, people's demand for coal and oil is increasing. Due to resource shortages caused by the over-exploitation of terrestrial resources, people began to turn their attention to the ocean whose rich resources are of great significance for people to improve economic development and social progress. Dynamic Positioning (DP) is one of the indispensable functions of modern ships, which refers to a technology in which the ship uses its propulsion device to generate thrust to resist external interference and keep the ship in a certain position or sail along a fixed trajectory [1]. It can be applied to lots of maritime activities, such as convoy, subsea pipeline laying, exploitation of marine resources and hydrological investigation. Research on DP can make ships' control position, heading and trajectory more accurate so that ships can realize safe and flexible operation in crowded offshore production fields without risk of damage to seabed infrastructure and risers [2]. A cablelaying vessel with DP system is shown in Figure 1 [3].

Figure 1.
A cable laying vessel with DP system [3].
Since the 1960s, many scholars all over the world have already conducted studies on the DP. The challenges facing DP control methods are nonlinearity of the model, uncertain disturbances and complexity of the algorithm [4][5][6][7][8]. Therefore, traditional control methods may be not applicable, leading to many advanced methods being proposed to solve the above problems, such as fuzzy control, intelligent algorithm, robust control, Model Predictive Control (MPC), improved Proportional-Integral-Derivative (PID), Sliding Mode Control (SMC) and adaptive control.

Fuzzy Control
Fuzzy control can be used in combination with other algorithms, which plays a great role in parameter problems. In [9], Xu et al. proposed a fuzzy-PID controller to solve the problems of difficult parameter adjustment and nonlinear ship dynamics. The designed controller considered the positioning error and the low frequency velocity as inputs and the Proportional-Derivative (PD) parameters as outputs of the fuzzy inference. The integral control parameters remained unchanged. The simulation results showed that the proposed fuzzy PID controller could automatically tune the control coefficients according to the positioning accuracy to reduce the percent maximum overshoot, rise time and settling time. In [10], Zhang et al. proposed an adaptive control based on neural-fuzzy networks to overcome negative effects caused by unavailable velocities and unidentified control parameters. The simulations showed that the designed controllers were capable of making the ship converge to the desired point.

Intelligent Algorithm
Intelligent algorithms include many novel algorithms, such as deep reinforcement learning or Particle Swarm Optimization (PSO). In [11], Ø vereng et al. introduced a DP control method based on deep reinforcement learning to solve modeling inaccuracies and computational complexity, which were numerically trained through neural networks and used an optimized learning algorithm called Proximal Policy Optimization (PPO) algorithm. The simulation results showed that the proposed method could eliminate body frame errors compared with traditional methods. In [12], Ryalat et al. proposed an Interconnection and Damping Assignment-Passivity-Based Control (IAD-PBC) controller and used PSO to obtain the gains of the IDA-PBC controller which provides an effective way to tune these gains, thus improving the control performance of DP system. The simulation showed that the states with PSO converged to the desired position and heading angle and had less overshooting.

Robust Control
Robust control means that the system can maintain certain performance under parameter perturbation. In [13], Zhang et al. studied a robust anti-disturbance strategy to Figure 1. A cable laying vessel with DP system [3].
Since the 1960s, many scholars all over the world have already conducted studies on the DP. The challenges facing DP control methods are nonlinearity of the model, uncertain disturbances and complexity of the algorithm [4][5][6][7][8]. Therefore, traditional control methods may be not applicable, leading to many advanced methods being proposed to solve the above problems, such as fuzzy control, intelligent algorithm, robust control, Model Predictive Control (MPC), improved Proportional-Integral-Derivative (PID), Sliding Mode Control (SMC) and adaptive control.

Fuzzy Control
Fuzzy control can be used in combination with other algorithms, which plays a great role in parameter problems. In [9], Xu et al. proposed a fuzzy-PID controller to solve the problems of difficult parameter adjustment and nonlinear ship dynamics. The designed controller considered the positioning error and the low frequency velocity as inputs and the Proportional-Derivative (PD) parameters as outputs of the fuzzy inference. The integral control parameters remained unchanged. The simulation results showed that the proposed fuzzy PID controller could automatically tune the control coefficients according to the positioning accuracy to reduce the percent maximum overshoot, rise time and settling time. In [10], Zhang et al. proposed an adaptive control based on neural-fuzzy networks to overcome negative effects caused by unavailable velocities and unidentified control parameters. The simulations showed that the designed controllers were capable of making the ship converge to the desired point.

Intelligent Algorithm
Intelligent algorithms include many novel algorithms, such as deep reinforcement learning or Particle Swarm Optimization (PSO). In [11], Øvereng et al. introduced a DP control method based on deep reinforcement learning to solve modeling inaccuracies and computational complexity, which were numerically trained through neural networks and used an optimized learning algorithm called Proximal Policy Optimization (PPO) algorithm. The simulation results showed that the proposed method could eliminate body frame errors compared with traditional methods. In [12], Ryalat et al. proposed an Interconnection and Damping Assignment-Passivity-Based Control (IAD-PBC) controller and used PSO to obtain the gains of the IDA-PBC controller which provides an effective way to tune these gains, thus improving the control performance of DP system. The simulation showed that the states with PSO converged to the desired position and heading angle and had less overshooting.

Robust Control
Robust control means that the system can maintain certain performance under parameter perturbation. In [13], Zhang et al. studied a robust anti-disturbance strategy to deal with unknown time-varying disturbances of DP system and established a disturbance observer to estimate the disturbances online. The simulation results showed that the strategy could realize the fixed point and yaw control. To solve the problems of unmeasurable speed and disturbances estimation, a Finite-Time State Observer (FTSO) and Finite-Time Feedback Control (FTFC) system based on finite-time control law were proposed in [14] by Xia et al. The simulation results demonstrated that the proposed FTSO and FTFC could provide a faster convergence speed, better disturbance and parameter perturbation rejection and higher accuracy.

MPC
MPC is a special control related to the model. In [15], Li et al. applied the MPC algorithm with a state estimator to ship DP system, aiming at solving the problem of unmeasurable states and measurement noises to improve the control accuracy. The simulation results showed that the MPC controller with the state estimator had the characteristics of fast, stable and accurate responses. In [16], Zheng et al. introduced two different MPC approaches to address the nonlinear horizontal trajectory tracking problem of surface vehicles. The simulation results showed that Nonlinear MPC (NMPC) was better than Linearized MPC (LMPC) in tracking error through a comparison of tracking error of NMPC and LMPC, while NMPC took a much longer time to run the simulation.

5.
Improved PID Due to the limitations of classical PID control, many scholars began to improve PID. A Multi-Variable (MV) PID controller was proposed by Tiwari and Krishnankutty in [17] to overcome the coupled nature of the ship system. The results showed that the force requirement of MV PID controller was minimal only with a bit of sluggishness and a slight overshoot compared with parallel PID and Linear Quadratic Regulator (LQR) controllers. Reference [9] also introduced a PID controller with fuzzy control, which reduced the percentage maximum overshoot, rise time and settling time. 6. SMC SMC is also called variable structure control, which is essentially a special nonlinear control. In [18,19], Ashrafiuon proposed a sliding mode control method using the first-order sliding mode surface and the second-order sliding mode surface to overcome the uncertainty of the system and enhance robustness to interference. The simulation results showed that the proposed methods could successfully make the small boat follow straight-line and circular trajectories. Tannuri et al. proposed a sliding mode control to solve the problem that the positioning performance varied with environmental or loading conditions due to the nonlinearity of the ship in [20]. This paper made use of systematic experimental tests with a scale model to verify its robustness to variations in its displacement and environmental conditions. In [21], Alattas et al. proposed an adaptive non-singular Fast Terminal Sliding Mode Control (FTSMC) with integral surface for the finite time tracking control of nonlinear systems with external disturbances. The method derived an adaptive parameter-tuning law to tackle the unknown bounded disturbances and alleviate the undesired chattering problem. In [22,23], Vu et al. adopted SMC to design controllers and proved the stability of the system based on Lyapunov criteria. The former reference proposed a robust Station-Keeping (SK) control algorithm based on SMC to tackle model uncertainties and ocean current disturbance. Besides, an optimal allocation control was also designed to keep the linear position and Euler angles. The latter reference proposed a motion control based on Dynamic Sliding Mode Control (DSMC) to improve the system robustness with the model uncertainties. Compared with the Least Square (LS) and Quadratic Programming (QP), the QP method could distribute a proper thrust and provide higher stability with smaller steady-state error and stronger robustness. In [24], Piao et al. designed a sliding mode controller based on approach law and adaptive backstepping control and added a tracking differentiator to eliminate the large chattering. Compared with traditional sliding mode control, the designed controller had a better performance on dynamic positioning under certain disturbances.

7.
Adaptive Control Hu et al. introduced an adaptive control approach based on Dynamic Surface Control (DSC) and Minimal Learning Parameter (MLP) techniques in [25]. The proposed complete system was developed to overcome the negative effect of input saturation constraints and the singularity problem of the controller. The simulation results showed that the tracking error could converge to a small interval. In [26], Zhao et al. designed an adaptive nonlinear course controller based on the backstepping control method and dynamic surface control to solve the problems of parameter uncertainties and completely unknown control gain, but also to overcome the "explosion of terms" of the traditional backstepping control method. The simulation results showed that the method could make the error converge approximately to 0, which was proved effective. In [27], Li et al. proposed a Robust Adaptive Neural Network Control (RANNC) scheme for DP of marine vessels to overcome model uncertainties, external disturbances and input saturation. This scheme combined adaptive control and neural network, which tackled the changes of inertial matrix and damping matrix.
In the above studies, although the requirement of DP ships can be met, there are common problems of long response time, large overshoot or low positioning accuracy which may cause position deviation in laying subsea cables or oil extraction, especially when the environmental interference is large; it may cause the motion of ships to be out of control. At the same time, the ship modeling is complex and needs nonlinear approaches. Therefore, it is difficult to define their accurate kinematic and kinetic models. The Active Disturbance Rejection Control (ADRC) can overcome the dependence on the precise model and has the advantage of fast speed, and its estimation and compensation of the total disturbance can avoid the side effect of error integral feedback, which makes the signal achieve complete tracking to reduce the error and increase positioning accuracy without large overshooting. Therefore, this paper uses ADRC to realize the fixed-point control and the straight track control of the ship. For the setting of the trajectory, this paper uses a parametric equation to simplify complex problems. The objective of the fixed-point control is to keep the ships constantly near of the set position and stay berthed after reaching the set position. In the fixed-point control, through comparison between ADRC and backstepping method, it can be seen that ADRC does have a fast response speed. The objective of the straight track control is to make the ship sail along the set trajectory and minimize the error, while keeping the ship speed at the set speed. Due to the possible problems of dither and phase delay of classical ADRC, this paper is to use fal function filter and phase prediction to improve these limitations. The fal function has fast convergence and can filter out dithering well. This paper applies the fal function filter to the tracking differentiator to solve the dither problem. The phase prediction based on mathematical differential allows good phase compensation and is easy to realize. This paper combines the two methods with ADRC into dynamic positioning to improve the control performance. The simulation results demonstrate the effectiveness and practicality of the proposed controllers and their robustness to external disturbances.
The paper is constructed as follows. Firstly, Section 2 introduces the ship model including coordinate systems and mathematical models of the ship. Next, Section 3 describes the models of environmental disturbances including wind and waves. Then, Section 4 introduces the DP controller based on the basic principle of ADRC and describes the stability analysis of the control system. After that, Section 5 analyzes the problems of the controller and improves the controller by fal function filter and phase prediction. Subsequently, Section 6 presents the simulations that the designed controller is used to realize the fixed-point control and yaw control compared with backstepping method, and the effectiveness of the Improved Active Disturbance Rejection Control (IADRC) is verified under the condition of straight track control. Finally, Section 7 provides conclusions of this paper and introduces suggestions for future research.

Assumptions
To simplify the problem, this work is based on the following assumptions: (1) The motion of the ship in roll, pitch and heave is neglected.
(2) The motion of the ship is regarded as a plane motion.
(3) The water area of the ship is wide enough, and the hull draft is unchanged during the movement.

Coordinate System
The first step in solving the DP problem is to describe the motion of the ship in an appropriate coordinate system. Generally speaking, two coordinate systems are used to describe the motion of the ship, including the North-East-Down (NED) coordinate system (X 0 , Y 0 , Z 0 ) and the body-fixed coordinate system (X, Y, Z). The two coordinate systems are shown in Figure 2 [28]. under the condition of straight track control. Finally, Section 7 provides conclusions of this paper and introduces suggestions for future research.

Assumptions
To simplify the problem, this work is based on the following assumptions: (1) The motion of the ship in roll, pitch and heave is neglected.
(2) The motion of the ship is regarded as a plane motion.
(3) The water area of the ship is wide enough, and the hull draft is unchanged during the movement.

Coordinate System
The first step in solving the DP problem is to describe the motion of the ship in an appropriate coordinate system. Generally speaking, two coordinate systems are used to describe the motion of the ship, including the North-East-Down (NED) coordinate system (X 0 , Y 0 , Z 0 ) and the body-fixed coordinate system (X, Y, Z). The two coordinate systems are shown in Figure 2   The NED coordinate system is a coordinate system based on the earth. Its origin O can be selected at any point on the surface of the earth, and its three axes point to north, east and the direction of gravity, respectively. Once determined, the three-axis directions are always maintained constant.
The origin of the body-fixed coordinate system is located at the center of gravity of the ship: its horizontal axis X is parallel to the hull and points to the forward direction; the longitudinal axis Y is perpendicular to the hull and points to the starboard side of the hull; the axis Z is same as the direction of gravity and points to the direction of the keel.

Mathematical Model of the Ship
The mathematical models of ship motion include the kinematic model and the dynamic model. The actual motion of the ship is extremely complex, and generally has six Degrees of Freedom (DOF). The mathematical model proposed by T.I. Fossen in [29] is used to model the ship motion in this study.

Kinematic Model
For marine ships, six DOF models are often used to describe the motion of ships. These six DOF are named surge, sway, heave, roll, pitch and yaw. The vector η consists The NED coordinate system is a coordinate system based on the earth. Its origin O can be selected at any point on the surface of the earth, and its three axes point to north, east and the direction of gravity, respectively. Once determined, the three-axis directions are always maintained constant.
The origin of the body-fixed coordinate system is located at the center of gravity of the ship: its horizontal axis X is parallel to the hull and points to the forward direction; the longitudinal axis Y is perpendicular to the hull and points to the starboard side of the hull; the axis Z is same as the direction of gravity and points to the direction of the keel.

Mathematical Model of the Ship
The mathematical models of ship motion include the kinematic model and the dynamic model. The actual motion of the ship is extremely complex, and generally has six Degrees of Freedom (DOF). The mathematical model proposed by T.I. Fossen in [29] is used to model the ship motion in this study.

Kinematic Model
For marine ships, six DOF models are often used to describe the motion of ships. These six DOF are named surge, sway, heave, roll, pitch and yaw. The vector η consists of the position components and angle component of the marine ships. The vector ν consists of the linear speed components and angular speed component of the marine ships. The vectors can be described as follows: The kinematic model of ships is shown in Equation (1): The J 1 (η) and J 2 (η) are rotation matrices: cos θ cos ψ cos ψ sin θ sin ϕ − cos ϕ sin ψ sin ψ sin ϕ + cos ψ cos ϕ sin θ cos θ sin ψ sin ψ sin θ sin ϕ + cos ϕ cos ψ −cos ψ sin ϕ + sin ψ cos ϕ sin θ −sin θ cos θ sin ϕ cos θ cos ϕ   , So Equation (1) can be expressed as Equation (2): For general surface vessels, the six DOF can be simplified to three DOF including surge, sway and yaw because vessels always travel at a low speed. In this case, ϕ and θ are very small and can be neglected. It is a good approximate expression for most conventional ships and offshore platforms [30,31]. Therefore, the rotation matrices can be expressed as: Therefore, the kinematic model of ships with three DOF can be rewritten as: That is: where In the kinematic model (4), the simplified vector η = x y ψ T denotes the ship position (x, y) and yaw component ψ in the earth fixed coordinate system. The simplified vector ν = u v r T denotes the ship linear speed (surge: u, sway: v) and angular speed r (yaw component). J(ψ) is the rotation matrix between earth fixed frame and body-fixed frame, which is nonsingular for all ψ and has the following property: J −1 (ψ) = J T (ψ) [32].

Dynamic Model
The rigid body dynamic equation can be expressed in the following form: In the dynamic model (5), M is the total inertia matrix including additional mass, which can be expressed as: The matrix M can be expressed as M = M A +M RB . M A is the inertia matrix of the hydrodynamic system and M RB is the inertia matrix of the rigid body system (platform or vessel). C(ν) is the Coriolis-centripetal force matrix. Generally, in the case of low-speed motion, the Coriolis-centripetal force matrix C(ν) is very small and can be neglected, namely C(ν) ≈ 0. D(ν) is the damping matrix which the surge mode can be decoupled from steering modes (sway and yaw). Therefore, the linearized damping matrix can be written: The damping coefficients can be considered linear in the case of low-speed operation which means that N v = Y r such that D T = D [29].
The vector τ = [Fx Fy Fn] represents the total thrust forces and moment generated by thrusters. The term a is used to represent the external environmental disturbance forces and moments.
In summary, the three DOF motion mathematical model of the ship can be expressed as a combination of the kinematic model and the dynamic model, as shown in Equation (8) [33]:

Environmental Disturbances including Wind and Wave
Some experts and scholars have conducted studies on environmental disturbances. Reference [34] predicted for KVLCC2 performing straight ahead motion in head regular waves by using the expanded RANS solver based on OpenFOAM. Reference [35] proposed a numerical model of sea wave generation and a forming filter based on the wave spectrum. This paper adopted external disturbances models from Thor I. Fossen. For control system design it is common to assume the principle of superposition when considering wind and wave disturbances. For most marine control applications this is a good approximation [29]. Environmental disturbances vector a can be expressed as: a = a wind + a wave (9) a wind means the wind forces and moment vector. a wave means the waves forces and moment vector.

Wind Disturbance
The wind speed V T at any height can be expressed as: where V is the average wind speed and h is height. Relative wind speed V r can be expressed as: where V s is the speed of ship, ϕ wind is the wind direction, ϕ ship is the ship direction and γ is the drift angle. The generalized wind force vector is a wind = [X wind , Y wind , N wind ]. The wind disturbance models in this paper proposed by Isherwood [36] are expressed in Equation (12): where C X and C Y are the empirical force coefficients, C N is a moment coefficient, which can be obtained by regression analysis. ρ α is the density of air, A T and A L are the transverse and lateral projected areas, and L is the overall length of the ship.

Wave Disturbance
The wave force can be divided into first-order wave force and second-order wave force. The first-order wave force is often ignored due to its small effect. The second-order wave force can be considered to be generated by the wave spectra. This paper adopts Pierson-Moskowitz Spectrum (PM Spectrum) to model the wave, which is shown as: where g is gravitational acceleration, ω i is the wave frequency of the i-th wave and H s is wave height. The waves force vector is a wave = [X wave , Y wave , N wave ]. The wave disturbance can be expressed as follows: where χ is encounter angle and µ is wave amplitude. C XW , C YW and C NW are coefficients obtained by regression analysis. In this paper, the fourth-level sea state is taken into account as environmental disturbances, which have 2 m wave height and 10 m/s average wind speed.

ADRC Ship DP Controller
The control objective of the system modeling is to find a control law such that the actual position and trajectory can converge to a desired position and trajectory.
η, a state space model of the ship can be obtained from Equation (15) as follows: where u = JM −1 τ is the control quantity, ω(t) = JM −1 a is the unknown disturbance and f(x 1 ,x 2 ,t) = .
Jν−JM −1 Dν is the known disturbance. y is the output and b is the control gain. Due to the good decoupling performance of ADRC, a single dimension is considered in the following part to simplify analysis. The control analysis of this system is described as follows: Step 1: Arranging the transition process.
In classical control, T is generally used to generate differential signals. The smaller T is, the closer the output is to the differential signal. However, if T is too small, this process may result in the amplification of noise effects. Therefore, it is necessary to take a suitable method to extract the differential signal.
For the system shown below, it is hoped that η 1 can be asymptotically stable at the target η 0 and η 2 can be asymptotically stable at the differential of the target. The algorithm formula is as follows: .
Γ is a control law which can be taken as a sign function or a sat function (a saturation function). However, the two functions will produce high-frequency noise when the system enters a steady state. Hence, this paper adopts fst function to design the fastest discrete feedback system. The specific expression of fst function is [37]: Equation (18) is the fastest synthesis function, which can be obtained by the 'Isochronic Region method'. Due to the complexity of derivation process, the specific derivation process and variable meanings can be learned in reference [38] written by Prof. Han. In the Equation (18), r 0 is the factor of tracking speed and h 0 is filter factor that represents filter effect. For the speed factor r 0 , the value should not be too large or too small. If the value is too small, the tracking speed is too slow, while if the value is too large, the differential signal is poor when the given signal will be noisy.
Therefore, transition process can be designed as Equation (19) and then the tracking signal η 1 and differential signal η 2 can be obtained according to the given input signal η 0 . This module can be called Tracking Differentiator (TD). The specific algorithm formula is shown in Equation (19): where fst(·) is the modified fastest synthesis function. η 1 is the tracking signal and the η 2 is the differential signal. h is the sample step time. For the step h, the value should not be too small, otherwise the differential performance will not be guaranteed. The value of the step h can generally be chosen in the (0.001, 0.1) range.
Step 2: Estimating the state of each order of the controlled system.
The total disturbance f(x 1 , x 2 , t)+ω(t) in the second-order ship system (16) is expanded into a new state variable f. Then state equation of the system can be expressed as: For such a system, the state observer can be expressed as: whereη 1 ,η 2 ,f are the estimations of x 1 , x 2 , f, respectively. β 01 , β 02 , β 03 are adjustable parameters whose values should be greater than 0. The three parameters determine the effect of estimating the disturbances and have a mutually restrictive relationship, the ideal estimation effect of which can be obtained by coordination action. Hence, as long as the appropriate β 01 , β 02 and β 03 are selected, the system can estimate the state variables x 1 , x 2 and f, namelyη 1 → x 1 ,η 2 → x 2 andf → f . In order to avoid the phenomenon of high-frequency flutter, |e| 0.5 sign(e) and |e| 0.25 sign(e) need to be transformed into a nonlinear function which is continuous around the origin. The fal function was therefore proposed by Han in [39]. Its expression is shown as follows: Fal function is a nonlinear function that has fast convergence which can be referred to in Section 5.2.1. δ is a small number greater than 0 and α is a parameter that determines the shape of the fal function. This parameter is chosen in (0, 1) range.
According to the input u and output η of the system, the observer can be designed as shown in Equation (23): where b is control coefficient. β 01 , β 02 , β 03 are adjustable parameters greater than 0.
This observer is called Extended State Observer (ESO) and the control effect of the system depends on the observation of the total disturbances by ESO.
Step 3: Non-linear combination and the compensation of total disturbance. The control variable u of classical control is usually a linear combination of the error related to present (e(t)), past ( t 0 e(t)dt) and future ( de(t) dt ). However, such a combination is not necessarily applicable in a large number of engineering practices. Therefore, ADRC uses the fal function mentioned before to change the linear combination into the nonlinear combination. The non-linear combination is called Non-linear State Error Feedback (NLSEF) and its expression is shown in Equation (24): where k 1 and k 2 are adjustable parameters. As long as the parameters of fal function and k 1 and k 2 are selected appropriately, it can ensure that the controller may have good robustness and adaptability.

Stability Analysis of Control System
Rewrite the state space form of the second-order controlled ship system in this paper as follows: To simplify the analysis of the problem, this paper uses the following assumptions: (1) Set z 1 =η 1 , z 2 =η 2 and z 3 =f. The three variables are the estimations of tracking signal, differential signal and total disturbances, respectively. (2) Let the input be 0, then the output of TD is also 0.
(3) Change the Nonlinear State Error Feedback (NLSEF) into Linear State Error Feedback (LSEF): (5) Let the control object be a linear time-invariant object: ..
Substitute Equation (26) into Equation (27) to get: Combine Equation (29) and Equation (30) can get: where Let Y = A 11 X + a 13 z 3 , z 3 = z 3 /β 03 and Equation (32) can be available after arranging the equation: That is: Equation (33) conforms to a standard form of the first critical case of absolute stability, which is: Theorem 1. The necessary condition for the absolute stability of the zero solution of F(0, ∞) in System (34) is Re[λ(A)] < 0, ρ > 0, [40].
We can construct a Lyapunov function: If Q is a positive definite matrix and , β ≥ 0, V(x, y) is a positive definite function. Find the derivative of V(x, y): Since yϕ(y) > 0, ρ > 0, as long as ≥ 0 and the first three terms of Equation (36) are the positive definite quadratic form, then . V must be negative definite, thus ensuring the global asymptotic stability of the system. Therefore, as long as the parameters are properly selected to satisfy the relevant conditions, the stability can be ensured.

Structure of ADRC
According to the above analysis, ADRC method of the DP ship can be obtained based on Equations (19), (23) and (24). ADRC is composed of three parts [41]: TD, ESO and NLSEF. The structure of ADRC is shown in Figure 3 [42]. ADRC is a nonlinear control that does not rely on precise mathematical models [43]. It promotes and enriches the error-based idea of classical control and has strong advantages, especially in uncertain models and the ocean environment [44], which has fast speed, strong anti-disturbance ability and good nonlinear control performance.
According to the above analysis, ADRC method of the DP ship can be obtained based on Equations (19), (23) and (24). ADRC is composed of three parts [41]: TD, ESO and NLSEF. The structure of ADRC is shown in Figure 3 [42]. ADRC is a nonlinear control that does not rely on precise mathematical models [43]. It promotes and enriches the errorbased idea of classical control and has strong advantages, especially in uncertain models and the ocean environment [44], which has fast speed, strong anti-disturbance ability and good nonlinear control performance.

Analysis of TD Behavior and Limitations
Since ADRC has good decoupling performance and different working conditions have different requirements on the ship's trajectory, this section only considers the control effect of single control channel to conduct simplified theoretical analysis, which is shown in Figure 4. This paper assumes that the input reference signal is a sinusoidal signal ϕ(t)=sin(0.1t) to illustrate the existing problems. The simulation result on TD is shown in Figure 5. The red line is the input signal ϕ(t), and the blue line is the tracking signal ϕ 1 (t). It is found that the tracking signal ϕ 1 (t) has a phase delay and dither, which has a great impact on the track control and may cause the tracking error to be non-zero all the time. This error may lead to a decrease in the accuracy of the ship's DP control, possibly resulting in position deviations in some marine operations such as oil extraction and cable laying. Therefore, this paper adopts an effective method to solve the problems of dither and phase delay to reduce the error of straight track control.

Analysis of TD Behavior and Limitations
Since ADRC has good decoupling performance and different working conditions have different requirements on the ship's trajectory, this section only considers the control effect of single control channel to conduct simplified theoretical analysis, which is shown in Figure 4.
NLSEF. The structure of ADRC is shown in Figure 3 [42]. ADRC is a nonlinear control that does not rely on precise mathematical models [43]. It promotes and enriches the errorbased idea of classical control and has strong advantages, especially in uncertain models and the ocean environment [44], which has fast speed, strong anti-disturbance ability and good nonlinear control performance.

Analysis of TD Behavior and Limitations
Since ADRC has good decoupling performance and different working conditions have different requirements on the ship's trajectory, this section only considers the control effect of single control channel to conduct simplified theoretical analysis, which is shown in Figure 4. This paper assumes that the input reference signal is a sinusoidal signal ϕ(t)=sin(0.1t) to illustrate the existing problems. The simulation result on TD is shown in Figure 5. The red line is the input signal ϕ(t), and the blue line is the tracking signal ϕ 1 (t). It is found that the tracking signal ϕ 1 (t) has a phase delay and dither, which has a great impact on the track control and may cause the tracking error to be non-zero all the time. This error may lead to a decrease in the accuracy of the ship's DP control, possibly resulting in position deviations in some marine operations such as oil extraction and cable laying. Therefore, this paper adopts an effective method to solve the problems of dither and phase delay to reduce the error of straight track control. This paper assumes that the input reference signal is a sinusoidal signal φ(t) = sin(0 .1t) to illustrate the existing problems. The simulation result on TD is shown in Figure 5. The red line is the input signal φ(t), and the blue line is the tracking signal φ 1 (t). It is found that the tracking signal φ 1 (t) has a phase delay and dither, which has a great impact on the track control and may cause the tracking error to be non-zero all the time. This error may lead to a decrease in the accuracy of the ship's DP control, possibly resulting in position deviations in some marine operations such as oil extraction and cable laying. Therefore, this paper adopts an effective method to solve the problems of dither and phase delay to reduce the error of straight track control.

Fal Function Filter
To solve the dithering problem, this paper adopts the fal function filter to eliminate dither. The fal function has good filtering performance and can also solve the dithering problem well. The characteristic analysis of the fal function filter is given below.

Fal Function Filter
To solve the dithering problem, this paper adopts the fal function filter to eliminate dither. The fal function has good filtering performance and can also solve the dithering problem well. The characteristic analysis of the fal function filter is given below.
The following system is available: where w(x, t) represents environmental disturbances and is less than w d which is maximum value of external disturbances. The form s is the control variable. This paper takes the feedback s of state x as s = s(x). Let s(x) = −k * fal(x, α, δ) and then the fal function can be rewritten as follows: When |x|> δ , system (37) becomes: Multiply both sides by 2x and Equation (40) can be obtained as follows: When |x (t)| > ( w d k 1 α , control variable s = − k|x| α sign(x) can control the steady error caused by w(x, t) within the range of |x| ≤ w d k 1 α . When |x| ≤ δ, system (37) becomes: Multiply both sides by 2x and Equation (42) can be obtained as follows: When |x (t)| > |w d |δ 1−α k , control variable s = − k|x| α sign(x) can control the steady error caused by w(x, t) within the range of |x| ≤ |w d |δ 1−α k . The feedback structure of fal function filter can be shown in Figure 6 [45]. The formula of this filter can be expressed as [46]: where k is the scale factor. p is the input signal of the filter and p 0 is the output of the filter. The feedback structure of fal function filter can be shown in Figure 6 [45]. The formula of this filter can be expressed as [46]: where k is the scale factor. p is the input signal of the filter and p 0 is the output of the filter. This paper analyzes the filter shown in Equation (43). When |e|>δ, nonlinear feedback k * |e| α sign(e) makes the system state rapidly approach the input signal p, so that the error e approaches δ.
When |e| ≤ δ, . q = k * fal(e, α, δ) = k * e/δ 1−α . Set k f = k/δ 1−α . In this case, a transfer function from input to output can be obtained in Equation (44): Equation (44) is actually a low-pass filter. When k decreases, the bandwidth becomes narrower and the filtering effect may be better.
According to the above analysis, a fal function filter is used at the output of the TD. As shown in Figure 7, the blue signal is the filtered signal. It can be clearly seen that compared with Figure 5, the original dither signal is turned into a smooth signal by the operation of the fal function filter, which solves the dithering problem. This paper analyzes the filter shown in Equation (43). When |e|>δ, nonlinear feedback k * |e| α sign(e) makes the system state rapidly approach the input signal p, so that the error e approaches δ.
When |e|≤δ, q̇=k * fal(e,α,δ)=k * e/δ 1−α . Set k f =k/δ 1−α . In this case, a transfer function from input to output can be obtained in Equation (44): Equation (44) is actually a low-pass filter. When k decreases, the bandwidth becomes narrower and the filtering effect may be better.
According to the above analysis, a fal function filter is used at the output of the TD. As shown in Figure 7, the blue signal is the filtered signal. It can be clearly seen that compared with Figure 5, the original dither signal is turned into a smooth signal by the operation of the fal function filter, which solves the dithering problem.

Phase Prediction
As is shown in Figure 8, the phase prediction method is used in this paper to solve the phase delay problem.

Phase Prediction
As is shown in Figure 8, the phase prediction method is used in this paper to solve the phase delay problem. In Figure 8, the red signal is the input curve ϕ(t) and the blue one is the tracking curve ϕ 1 (t).
According to Figure 8, the new tracking curve ϕ 1 ' (t) can be expressed as Equation (45): where Δϕ=ϕ(t 2 ) − ϕ(t 1 ). In Figure 8, the red signal is the input curve φ(t) and the blue one is the tracking curve φ 1 (t).
According to Figure 8, the new tracking curve φ 1 (t) can be expressed as Equation (45): where ∆φ = φ(t 2 ) − φ(t 1 ). Considering that φ 2 (t) is the differential signal of the input signal φ(t), Equation (46) can be obtained according to the definition of differential: When the time interval is small, Equation (46) can be approximately rewritten as: Then Equation (45) can be rewritten as: where t 2 − t 1 = λ * h. h is the step time in the tracking differentiator parameters, λ = 2 * r 1 = 2 * h 0 h is the compensation coefficient and h 0 is the filter factor which represents the filter effect.
Then the new tracking signal φ 1 (t) can be expressed as: The meaning of Equation (49) is that the new tracking signal of the input signal is taken as the original tracking signal plus the product of the differential signal and the predicted step size.
The input signal is already defined above. The simulation result is shown in Figure 9. It can be seen that the error between the input signal and the tracking signal is significantly reduced compared with Figure 7, indicating that the phase prediction method can well overcome the phase delay problem of the tracking differentiator. The two improvements are applied to design an IADRC to the straight track control. The principle of IADRC is shown in Figure 10. The two improvements are applied to design an IADRC to the straight track control. The principle of IADRC is shown in Figure 10. The two improvements are applied to design an IADRC to the straight track control. The principle of IADRC is shown in Figure 10.

Simulation and Analysis
During the dynamic positioning and tracking process of the ship, the controller calculates the corresponding thrust according to the deviation between the set position and the current position and transmits it to the ship to drive the ship [47]. The ship then feeds the position information back to the controller through the navigation system to form a closed control loop. The control structure of DP system is shown in Figure 11 [48]. Figure 11. The structure of DP system [48]. Since the ship system in this paper is a coupled MIMO system, ADRC has good decoupling performance. It means that ADRC can be designed separately for each control channel [49]. Therefore, the surge, sway and yaw can be controlled separately in the following study in this paper.
To verify the performance of the controller designed above, a case study ship is used. Its parameters are shown in Table 1 and the mass matrix and damping matrix of the ship follow [50].

Simulation and Analysis
During the dynamic positioning and tracking process of the ship, the controller calculates the corresponding thrust according to the deviation between the set position and the current position and transmits it to the ship to drive the ship [47]. The ship then feeds the position information back to the controller through the navigation system to form a closed control loop. The control structure of DP system is shown in Figure 11 [48]. The two improvements are applied to design an IADRC to the straight track control. The principle of IADRC is shown in Figure 10.

Simulation and Analysis
During the dynamic positioning and tracking process of the ship, the controller calculates the corresponding thrust according to the deviation between the set position and the current position and transmits it to the ship to drive the ship [47]. The ship then feeds the position information back to the controller through the navigation system to form a closed control loop. The control structure of DP system is shown in Figure 11 [48]. Figure 11. The structure of DP system [48]. Since the ship system in this paper is a coupled MIMO system, ADRC has good decoupling performance. It means that ADRC can be designed separately for each control channel [49]. Therefore, the surge, sway and yaw can be controlled separately in the following study in this paper.
To verify the performance of the controller designed above, a case study ship is used. Its parameters are shown in Table 1 and the mass matrix and damping matrix of the ship follow [50]. Figure 11. The structure of DP system [48]. Since the ship system in this paper is a coupled MIMO system, ADRC has good decoupling performance. It means that ADRC can be designed separately for each control channel [49]. Therefore, the surge, sway and yaw can be controlled separately in the following study in this paper.
To verify the performance of the controller designed above, a case study ship is used. Its parameters are shown in Table 1 and the mass matrix and damping matrix of the ship follow [50].  The focus of this paper is to improve the structure of ADRC to achieve the control effect. Therefore, parameter tuning of ADRC is not involved in this paper and the parameters of the controllers in this paper are empirical parameters. The automatic adjustment of parameters will be studied in detail in the future.

Fixed-Point Control and Yaw Control Based on Classical ADRC
To solve the problems of large overshoot, long response time and low positioning accuracy, this paper uses firstly classical ADRC to verify the fixed-point control and yaw control of the ship compared with classical backstepping control.
In the late 1980s, the idea of backstepping was initiated. Some scholars proposed a backstepping design method based on Lyapunov stability for partially linear strict feedback systems [51]. The idea of backstepping control is to divide the entire design process into multiple steps and each step is designed with virtual control and stabilization functions. Then, the control starts from the lowest-order equation of the system, gradually recurses to higher-order equations, and finally realizes the global adjustment of the system. The control structure composed of multiple subsystems can effectively control the n-order nonlinear system. Therefore, the backstepping method has a certain representativeness. The idea of dynamic positioning backstepping controller can be found in the Reference [52].        It is obvious from Figures 12 and 13 that both controllers can bring the ship to the set position without overshooting. After reaching the desired position, the ship remains berthed, and the yaw angle reaches the predetermined angle and remains constant. However, ADRC takes about 30 s, while backstepping control takes about 50 s, indicating that the designed ADRC controller can effectively solve the problem of long response time compared with backstepping control. It can be seen from Figure 14 that the linear speed in the surge and sway directions and the angular speed in the yaw direction of the ship with ADRC have large accelerations at the start, and then gradually decelerate. The linear speed in the surge and sway directions of the ship with backstepping control fluctuates greatly in the early stage, and the largest fluctuation is about 2 m/s. The angular speed in the yaw direction of that is consistent with the trend of ADRC, but its maximum speed is only about 2.5 m/s and the deceleration is more stable. After the ship reaches the specified position, the speed decreases to 0 and stays parked. Figure 15 shows the forces and moments of the two controllers. It can be seen that the oscillations of the forces in surge and sway direction in the early stage of backstepping method are more obvious which may cause damage to thrusters and do not exceed about 2 kN and 5 kN. The yaw moment of the backstepping method is much smaller than that of the ADRC, but there is still a small oscillation. The above results prove that the two controllers can both realize fixed-point control and yaw control under ideal sea condition, but according to the comprehensive analysis of position, speed and forces, the performance of ADRC is better than backstepping.

Simulation under Environmental Disturbances
For control system design, it is common to assume the principle of superposition when considering wind and wave disturbances. For most marine control applications, this is a good approximation. In this paper, the fourth-level sea state has 2 m wave height and 10 m/s average wind speed [29,53]. It is obvious from Figures 12 and 13 that both controllers can bring the ship to the set position without overshooting. After reaching the desired position, the ship remains berthed, and the yaw angle reaches the predetermined angle and remains constant. However, ADRC takes about 30 s, while backstepping control takes about 50 s, indicating that the designed ADRC controller can effectively solve the problem of long response time compared with backstepping control. It can be seen from Figure 14 that the linear speed in the surge and sway directions and the angular speed in the yaw direction of the ship with ADRC have large accelerations at the start, and then gradually decelerate. The linear speed in the surge and sway directions of the ship with backstepping control fluctuates greatly in the early stage, and the largest fluctuation is about 2 m/s. The angular speed in the yaw direction of that is consistent with the trend of ADRC, but its maximum speed is only about 2.5 m/s and the deceleration is more stable. After the ship reaches the specified position, the speed decreases to 0 and stays parked. Figure 15 shows the forces and moments of the two controllers. It can be seen that the oscillations of the forces in surge and sway direction in the early stage of backstepping method are more obvious which may cause damage to thrusters and do not exceed about 2 kN and 5 kN. The yaw moment of the backstepping method is much smaller than that of the ADRC, but there is still a small oscillation. The above results prove that the two controllers can both realize fixed-point control and yaw control under ideal sea condition, but according to the comprehensive analysis of position, speed and forces, the performance of ADRC is better than backstepping.

Simulation under Environmental Disturbances
For control system design, it is common to assume the principle of superposition when considering wind and wave disturbances. For most marine control applications, this is a good approximation. In this paper, the fourth-level sea state has 2 m wave height and 10 m/s average wind speed [29,53].
The initial signal and desired signal are still the same as the simulation under ideal sea conditions. The surge, sway, yaw and position under environmental disturbances can be seen in Figures 16 and 17, respectively. The speed of the ship is shown in Figure 18. Figure 19 shows the forces and moment of thrusters under environmental disturbances.           It can be seen from Figure 16 to Figure 17 that after adding environmental disturbances, the ship with the two controllers can still reach the desired position in a state of oscillation due to the influence of wind and wave interference. However, it can be observed that ADRC reveals more stable performance with a smoother trajectory than backstepping and the ADRC is still about 20 s faster than backstepping control to reach the set position. Figure 18 indicates the comparison of the speed of three DOF with ADRC and backstepping control. As can be seen from Figure 18, the speed change trend of ADRC is basically the same as that without disturbances, which oscillates much more slightly than backstepping. It is obvious from Figure 19 that there is a huge fluctuation in the forces and moment of thrusters with disturbances. The maximum abrupt values of forces and moment in the three directions are 10 kN, 20 kN and 40 kN·m, respectively. From the positioning results, it proves that the designed controllers can still realize the positioning function to reach the desired position without large overshooting. ADRC has a stronger antiinterference ability than backstepping control, but the forces and moment both have a fluctuation, which may be harmful to the use of thrusters.
In summary, the use of the classical ADRC can realize the fixed-point positioning control and yaw control of the ship, which proves that ADRC does make the ship reach the desired reference quickly without overshooting and have higher positioning accuracy than backstepping control. However, from the results of forces and moment, there is much room for improvement in the future research.

Straight Track Control Based on IADRC
According to the above simulations and analysis of the fixed-point control and yaw control, the classical ADRC has a better effect than backstepping control. However, according to the analysis in Section 5.1, due to the complexity of track control, the problems of dither and phase delay in the classical ADRC may have an impact on the straight track control, and the classical ADRC may be not suitable in this case. Therefore, the IADRC which has been presented in Section 5.2 is applied and compared with the classic ADRC.
To compare the errors before and after improvement more intuitively, the mean value of the square value of the tracking error is used to compare the size of the tracking error, as shown in Equation (50): where error is the distance between the desired position and the actual position and n is the number of samples. ε represents the degree to which the actual value deviates from It can be seen from Figure 16 to Figure 17 that after adding environmental disturbances, the ship with the two controllers can still reach the desired position in a state of oscillation due to the influence of wind and wave interference. However, it can be observed that ADRC reveals more stable performance with a smoother trajectory than backstepping and the ADRC is still about 20 s faster than backstepping control to reach the set position. Figure 18 indicates the comparison of the speed of three DOF with ADRC and backstepping control. As can be seen from Figure 18, the speed change trend of ADRC is basically the same as that without disturbances, which oscillates much more slightly than backstepping. It is obvious from Figure 19 that there is a huge fluctuation in the forces and moment of thrusters with disturbances. The maximum abrupt values of forces and moment in the three directions are 10 kN, 20 kN and 40 kN·m, respectively. From the positioning results, it proves that the designed controllers can still realize the positioning function to reach the desired position without large overshooting. ADRC has a stronger anti-interference ability than backstepping control, but the forces and moment both have a fluctuation, which may be harmful to the use of thrusters.
In summary, the use of the classical ADRC can realize the fixed-point positioning control and yaw control of the ship, which proves that ADRC does make the ship reach the desired reference quickly without overshooting and have higher positioning accuracy than backstepping control. However, from the results of forces and moment, there is much room for improvement in the future research.

Straight Track Control Based on IADRC
According to the above simulations and analysis of the fixed-point control and yaw control, the classical ADRC has a better effect than backstepping control. However, according to the analysis in Section 5.1, due to the complexity of track control, the problems of dither and phase delay in the classical ADRC may have an impact on the straight track control, and the classical ADRC may be not suitable in this case. Therefore, the IADRC which has been presented in Section 5.2 is applied and compared with the classic ADRC.
To compare the errors before and after improvement more intuitively, the mean value of the square value of the tracking error is used to compare the size of the tracking error, as shown in Equation (50): where error is the distance between the desired position and the actual position and n is the number of samples. ε represents the degree to which the actual value deviates from the set value, which is similar to Mean Square Error (MSE) in statistics. MSE is the averaged squared difference between the outputs and the targets [54]. The smaller the MSE is, the less the actual value deviates from the set value and the more stable the system is.

Simulation under Ideal Sea Condition
The initial state of the ship is that the initial position is at the origin of the coordinates. The straight reference track is set as y = x + 5. The set yaw angle is 45 • and the set speed is 1 m/s. In the case of low speed, the ship needs to keep the set yaw angle unchanged when sailing along the set trajectory.
First, the environment is ideal sea condition. The simulation time is 200 s. Figure 20 shows the straight track of the ship. Figure 21 shows the tracking error and Figure 22 shows the speed of the ship. Figures 23-25 show the forces and moment. the set value, which is similar to Mean Square Error (MSE) in statistics. MSE is the averaged squared difference between the outputs and the targets [54]. The smaller the MSE is, the less the actual value deviates from the set value and the more stable the system is.

Simulation under Ideal Sea Condition
The initial state of the ship is that the initial position is at the origin of the coordinates. The straight reference track is set as y=x+5. The set yaw angle is 45° and the set speed is 1 m/s. In the case of low speed, the ship needs to keep the set yaw angle unchanged when sailing along the set trajectory.
First, the environment is ideal sea condition. The simulation time is 200 s. Figure 20 shows the straight track of the ship. Figure 21 shows the tracking error and Figure 22 shows the speed of the ship. Figures 23-25 show the forces and moment.   the set value, which is similar to Mean Square Error (MSE) in statistics. MSE is the averaged squared difference between the outputs and the targets [54]. The smaller the MSE is, the less the actual value deviates from the set value and the more stable the system is.

Simulation under Ideal Sea Condition
The initial state of the ship is that the initial position is at the origin of the coordinates. The straight reference track is set as y=x+5. The set yaw angle is 45° and the set speed is 1 m/s. In the case of low speed, the ship needs to keep the set yaw angle unchanged when sailing along the set trajectory.
First, the environment is ideal sea condition. The simulation time is 200 s. Figure 20 shows the straight track of the ship. Figure 21 shows the tracking error and Figure 22 shows the speed of the ship. Figures 23-25 show the forces and moment.            It can be seen from Figures 20 and 21 that both ADRC and IADRC can effectively make the ship track the given trajectory. As is clearly shown in the two figures, the tracking error of the two controllers gradually decreases from 5 m and the tracking error of them is less than 1 m after the ship sails steadily. However, the tracking error of IADRC is smaller than that of classical ADRC, which proves that the DP performance of IADRC is better than that of ADRC under ideal sea condition. According to Equation (50), the error dispersion before and after improvement can be calculated as ε 1 =0.1644 and ε 2 =0.1260, respectively, in which ε 2 is about 23.4% less than ε 1 . It indicates that the improved controller brings the trajectory closer to the given track. Figure 22 shows the speed of the ship with the two controllers. It can be seen that the ship starts from the origin, It can be seen from Figures 20 and 21 that both ADRC and IADRC can effectively make the ship track the given trajectory. As is clearly shown in the two figures, the tracking error of the two controllers gradually decreases from 5 m and the tracking error of them is less than 1 m after the ship sails steadily. However, the tracking error of IADRC is smaller than that of classical ADRC, which proves that the DP performance of IADRC is better than that of ADRC under ideal sea condition. According to Equation (50), the error dispersion before and after improvement can be calculated as ε 1 = 0.1644 and ε 2 = 0.1260, respectively, in which ε 2 is about 23.4% less than ε 1 . It indicates that the improved controller brings the trajectory closer to the given track. Figure 22 shows the speed of the ship with the two controllers. It can be seen that the ship starts from the origin, accelerates with a certain acceleration, decelerates after basically synchronizing with the given track, and finally maintains a low speed of about 1 m/s. The maximum speed of the two controllers is around 3.1 m/s. Figures 23-25 show the comparison of the forces and moment of three DOF with ADRC and IADRC. In the initial stage of the tracking process, in order to enable the ship to achieve fast tracking, the control forces and moment of thrusters change more rapidly, and the maximum abrupt values of forces and moment in the three directions are 8 kN, 150 kN and 100 kN·m, respectively. Although the forces in surge and sway direction after improvement is smaller than that before improvement, both of the two have severe fluctuation. This analysis shows that the IADRC can reduce the error of straight track control compared with the classical ADRC so that the actual trajectory of the ship is more synchronized with the set trajectory, which ensures the stability of sailing.

Simulation under Environmental Disturbances
This case considers the straight track control of the ship under the environmental disturbances the same as in the previous case (fixed-point control) and the initial state is the same as Section 6.2.1. Figure 26 shows the straight track of the ship. Figure 27 shows the tracking error and Figure 28 shows the speed of the ship.              It can be seen from Figure 26 to Figure 27 that the two controllers can still realize the straight track control of the ship under the environmental disturbances. According to Equation (50), the error dispersion before and after improvement can be calculated as ε 1 =0.1095 and ε 2 =0.0736, respectively, in which ε 2 is about 32.8% less than ε 1 . It indicates that the improved controller brings the track closer to the given track and the error is smaller under the environmental disturbances. The speed of the ship can be stabilized It can be seen from Figure 26 to Figure 27 that the two controllers can still realize the straight track control of the ship under the environmental disturbances. According to Equation (50), the error dispersion before and after improvement can be calculated as ε 1 = 0.1095 and ε 2 = 0.0736, respectively, in which ε 2 is about 32.8% less than ε 1 . It indicates that the improved controller brings the track closer to the given track and the error is smaller under the environmental disturbances. The speed of the ship can be stabilized at about 1 m/s and the maximum speed is slightly larger than that under ideal sea condition due to the environmental disturbances. It can be seen in Figures 29-31 that the forces and moment of thrusters in the three directions with ADRC or IADRC all have different degrees of oscillation due to external disturbances. The maximum fluctuation amplitude in the surge and sway directions does not exceed about 10 kN and that in the yaw direction is not more than about 20 kN·m. In conclusion, the IADRC can better realize the straight track control of the ship under environmental disturbances according to the positioning results.
From the above analysis, it can be seen that ADRC can achieve fast and accurate tracking both for the fixed-point control and the straight track control, and the IADRC can significantly reduce the error, indicating that the control methods used in this paper have good dynamic control performance. Although the above controllers can all have good results from a position perspective, the results of forces and moment are not perfect, which are also the focuses of future work.

Conclusions
This paper focuses on DP control of ships based on ADRC. This paper proposes a new ADRC controller which is significantly improved by the uses of fal function filter and phase prediction. The designed ADRC can realize the fixed-point and yaw control in a short time of about 30 s compared with backstepping control. It can reach the set value without overshoot, and it also has better positioning performance under environmental disturbances. With the fal function filter and phase prediction, the phase delay and dither problems of the tracking differentiator are improved. Compared with the classical ADRC, the IADRC can not only realize the straight track control of the ship, but also effectively reduce the error, among which the degree of the error ε decreases by 23.4% under ideal sea condition and by 32.8% under external environmental disturbances. The simulations indicate that the proposed methods can meet the requirements of DP and have better positioning performance than more classical methods. However, although the proposed methods can achieve dynamic positioning, they still have some limitations. The forces and moment oscillations are large, which are harmful to the stable operation of the thrusters and may damage the equipment for a long time. Besides, ADRC has many parameters that need to be tuned. Hence, the future work will focus on improving control output and parameter optimization. Artificial intelligence algorithms, conjugate gradient algorithm, sliding mode control or fuzzy control will be considered to optimize control parameters and adjust control output to improve the control effect.

Data Availability Statement:
The datas that support the findings of this study are available within the article.

Conflicts of Interest:
The authors declare no conflict of interest. The funders had no role in the design of the study; in the collection, analysis, or interpretation of data; in the writing of the manuscript, or in the decision to publish the results. The position and angle vector η 1 ,η 2 The position vector and angle vector respectively x, y, z

Nomenclature
The positions (m) ϕ, θ, ψ The angles (deg) ν The speed vector ν 1 ,ν 2 The linear speed vector and angular speed vector respectively u, v, w The linear speed (m/s) p, q, r The angular speed (deg/s) J, J 1 ,J 2 The rotation matrices τ The total thrust and moment generated by thrusters Fx, Fy, Fn The force (kN) and moment (kN·m) of thrusters a The external environmental disturbance force and moment a wind , a wave The force and moment of wind and wave M The total inertia matrix M A , M RB The inertia matrix of the hydrodynamic system and the inertia matrix of the rigid body system D The damping matrix C The Coriolis-centripetal force matrix V T , V, V r , V s The absolute wind speed, the average wind speed, the relative wind speed and the speed of ship (m/s) ϕ wind , ϕ ship The wind direction and the ship direction (deg) γ The drift angle (deg) X wind , Y wind , Z wind The force and moment of wind in three directions C X , C Y , C N The empirical force and moment coefficients ρ α The density of air (kg/m 3 ) A T , A L The transverse and lateral projected areas (m 2 ) L The overall length of the ship (m) g The gravitational acceleration (m/s 2 ) ω i The wave frequency of the i-th wave (Hz) H s The wave height (m) ρ The density of sea (kg/m 3 ) χ The encounter angle (deg) µ The wave amplitude (m) C XW , C YW , C NW The coefficient obtained by regression analysis