Keywords

1 Introduction

With the rapid development of the world economy, economic globalization has greatly promoted the international economic exchanges. Container ship as carrier of sea transport is becoming increasingly busy. Large-scale, high-speed become main trend. The twin-rudder twin-propeller system can set different speeds for the two main engines, so that the propeller produces different thrust to produce transshipment torque [1]. However, with limited data available for the twin-rudder twin-propeller ship, it’s difficult to estimate parameters for a given position of the ship. The theory of manipulation of twin-rudder twin-propeller ship is not very mature at present, and the research institutions include Dalian Maritime University, Shanghai Jiaotong University, Harbin Engineering University.

The cerebellar model controller (CMAC) neural network is widely used due to good generalization capability. And the sliding-mode controller has a strong robustness. In Ref. [2,3,4], the NISM is not only apt to design, but also can be directly applied to the nonlinear model of ship. The paper explores the intelligent control method of ship course control, designs the NISM controller and combines with the CMAC control algorithm for twin-rudder twin-propeller ship system, which avoids the estimation of the uncertain term and the interference term of the model, effectively suppresses the chattering problem. What’s more, the Maersk Triple E ship is taken as the research object, and the simulation result is compared with the PID control.

2 Mathematical Mode for Twin-Rudder Twin-Propeller Ship

The mathematical model is the core of ship simulation and motion control. The model for twin-rudder twin-propeller ship will be described based on the MMG model and the wind, wave and current disturbances are added into the model. It’s worth noting that this paper only studied the plane motion. The effect of the heave, pitching and rolling of the ship is very tiny and can be ignored, so the ship is simplified to three degrees of freedom. The model is given as follows:

$$\left. \begin{aligned} \dot{\delta }_{p} & = (\delta_{Ep} - \delta_{p} )/T_{Ep} \\ \dot{\delta }_{s} & = (\delta_{Es} - \delta_{s} )/T_{Es} \\ \dot{u} & = [(m + m_{y} )vr{ + }X_{H} + X_{P} + X_{R} + X_{wind} + X_{wave} + X_{current} ]/(m + m_{x} ) \\ \dot{v} & = [ - (m + m_{x} )ur + Y_{H} + Y_{P} + Y_{R} + Y_{wind} + Y_{wave} + Y_{current} ]/(m + m_{y} ) \\ \dot{r} & = (N_{H} + N_{p} + N_{R} + N_{wind} + N_{wave} + Z_{current} )/(I_{zz} + J_{zz} ) \\ \dot{\varphi } & = r \\ \dot{x}_{0} & = u\,\cos \varphi - v\,\sin \varphi \\ \dot{y}_{0} & = v\,\cos \varphi + u\,\sin \varphi \\ \end{aligned} \right\}$$
(2.1)

where \(X\), \(Y\), \(N\) are external forces and moment, u, v, r are the surge velocity, the sway velocity and the yaw rate respectively, \(\psi\), \(\delta_{p}\), \(\delta_{s}\) are the heading angle and rudder angle, x 0, y 0 is the position of the ship’s gravity center in the fixed coordinate system. The subscripts ‘H’ ‘P’ ‘R’ ‘wind’ ‘wave’ ‘current’ refer to hull, propeller, rudder wind, wave and current respectively, \(I_{zz}\) is the yaw moment of inertia, \(J_{zz}\) is added yaw moment of inertia, \(\delta_{E}\) is command rudder angle, \(T_{E}\) is time constant.

3 CMAC and NISM Integrated Controller

3.1 Nonlinear Iterative Sliding Mode Description

The iterative sliding mode design idea is to obtain the tracking error of the system through a series of first order low pass filter via the sliding mode surface, until the iterative access to the final filter output. At this time, the high order tracking problem of the system is transformed into a series of iterations of low order stabilization problem [5].

The system state variable \(f(r,\delta_{p,s} ,t)\) is a smooth unknown continuous function with a continuous partial derivative of \(\delta_{p,s}\). \(d(\psi ,t)\) is the influence of uncertain term and interference term, the ship course nonlinear control system can be simplified as follows:

$$\left. \begin{aligned} \dot{\psi } & = r \\ \dot{r} & = (N_{H} + N_{p} + N_{R} + N_{wind} + N_{wave} + N_{current} )/\left( {I_{zz} + J_{zz} } \right) \\ & = f(r,\delta_{p,s} ,t) + d(\psi ,t) \\ y & = \psi \\ \end{aligned} \right\}$$
(3.1)

According to the iterative sliding mode design idea, aiming at the tracking error \(\psi_{e}\) of the actual ship course, a nonlinear sliding mode controller is designed with strictly bounded hyperbolic tangent nonlinear function tanh (x).

$$\left. \begin{aligned} & s_{1} (\psi_{e} ) = k_{2} \tanh (k_{1} \psi_{e} ) + \dot{\psi }_{e} \\ & s_{2} (s_{1} ) = k_{4} \tanh (k_{3} s_{1} ) + \dot{s}_{1} \\ & \psi_{e} = \psi - \psi_{d} \\ \end{aligned} \right\}$$
(3.2)

where \(k_{i} \in {\text{R}}^{ + } (i = 1,2,3,4)\), \(\psi_{d}\) is desired heading angle. From the above formula, when s1 tends to zero, the \(\dot{\psi }_{e}\) tends to \(- k_{2} \tanh (k_{1} \psi_{e} )\). According to the characteristics of the hyperbolic tangent function, in order to ensure that the s2 close to 0 when the s1 tends to 0, the formula should meet \(k_{4} \ge k_{2}\).

The sliding mode surface feedback value s2 is used to obtain an easy-to-implement sliding mode feedback control law [5]:

$$\dot{\delta }_{p,s} = - k_{p} s_{2} - \varepsilon \,\text{sgn} (s_{2} )\quad (k_{p} ,\varepsilon \in R^{ + } )$$
(3.3)

3.1.1 Stability Analysis

Make the following assumptions for the system:

  1. (1)

    The system is controllable;

  2. (2)

    \(f(r,\delta_{p,s} ,t)\) and \(d(\psi ,t)\) is a continuous bounded function.

Based on Lyapunov stability theory and twin-rudder twin-propeller ship mathematical model, the Lyapunov function is constructed:

$$V = \frac{1}{2}s_{2}^{2}$$
(3.4)

The derivative of the function is:

$$\dot{V} = s_{2} \dot{s}_{2} = s_{2} \frac{{\partial s_{2} }}{{\partial \delta_{p,s} }}\dot{\delta }_{p,s}$$
(3.5)

Combined with the ship model the s2 can be expressed as:

$$s_{2} = k_{3} \tan \,{\text{h}}(k_{2} s_{1} ) + \frac{{k_{1} k_{0} \dot{\psi }_{e} }}{{\cos \,{\text{h}}^{2} (k_{0} \psi_{e} )}} + \ddot{\psi }_{e}$$
(3.6)

From the ship model we can see that only \(\ddot{\psi }_{e}\) derivation of \(\delta_{p,s}\) is not zero, and only N R is related to the rudder angle, so the sign of \(\frac{{\partial s_{2} }}{{\partial \delta_{p,s} }}\) depends on the sign of \(\frac{{\partial N_{R} }}{{\partial \delta_{p,s} }}\). NR is described as [6]:

$$\begin{aligned} N_{R} & = - [\left( {x_{R} + \alpha_{H} x_{H} } \right)\left( {F_{N(s)} \cos \delta_{(s)} + F_{N(p)} \cos \delta_{(p)} } \right)] \\ & \quad - \frac{{b_{r} }}{2}\left( {1 - t_{R} } \right)\left( {F_{N(p)} \sin \delta_{(p)} - F_{N(s)} \sin \delta_{(s)} } \right) \\ \end{aligned}$$
(3.7)

When the twin-rudder twin-propeller ship is under oceanic navigation conditions, in other words, ship is under double rudders linkage control condition, \(\frac{{\partial N_{R} }}{{\partial \delta_{p,s} }} \ge 0\). Then the sign of \(\dot{V}\) depends on the sign of \(\dot{\delta }_{p,s}\) and s2 based on Eq. (3.5):

$$s_{2} \dot{\delta }_{p,s} = - k_{p} (s_{2} )^{2} - \varepsilon \left| {s_{2} } \right| \le 0$$
(3.8)

Therefore,

$$\dot{V} = s_{2} \dot{s}_{2} = s_{2} \frac{{\partial N_{R} }}{{\partial \delta_{p,s} }}\dot{\delta }_{p,s} \le 0$$
(3.9)

According to the Lyapunov stability theorem, it can be seen that the tracking error of the ship heading angle \(\psi_{e}\) under the sliding mode controller is asymptotically stable.

3.2 CMAC Neural Network Control

CMAC is a learning structure that mimics the human cerebellum. It’s table inquiry self-adapting neural network used to express complex nonlinear function, which has rapid study and local generalization capacity and it can change the contents of a table by learning algorithms. Though the unit weights are also adjusted, but it doesn’t have the neural network structure of the connection level and the dynamic behavior, but just a nonlinear mapping [7]. CMAC is recognized as an important part of a class of associative memory neural networks, which can learn any multi-dimensional nonlinear mapping. CMAC algorithm can be effectively used for nonlinear function approximation, dynamic modeling, control system design.

The structure of the CMAC is summarized Fig. 1.

Fig. 1
figure 1

The architecture of CMAC network

3.3 CMAC and NISM Integrated Controller

CMAC controller is suitable as a feed forward controller which can achieve the inverse dynamic model of the controlled object, while the nonlinear iterative sliding mode controller (NISM) is as a feedback control. Combining the two algorithms above can embody their advantages and overcome their shortcomings. The CMAC and NISM integrated controller is shown in Fig. 2.

Fig. 2
figure 2

Block diagram of CMAC and NISM integrated controller

In this chapter, the CMAC controller uses a learning algorithm of tutor. At the end of each control cycle, the corresponding output \(u_{n} (k)\) of the CMAC is calculated and compared with the total control input \(u(k)\), then correct the weights and enter into the learning process. The purpose of learning is to minimize the difference between the total control input and the CMAC output [8]. After CMAC learning, the total control output of the system is generated by CMAC. In other word, in the early stage, the system is controlled by iterative sliding mode algorithm, after the end of learning, the system is mainly controlled by CMAC control algorithm. The control algorithm of the system is shown as below:

$$\begin{aligned} u_{n} (k) & = \sum\limits_{i = 1}^{c} {w_{i} a_{i} } \\ u(k) & = u_{n} (k) + u_{p} (k) \\ \end{aligned}$$
(3.10)

where c refers to network generic parameters, \(a_{i}\) refers to the selected vector of system, \(u_{n} (k)\) refers to the output produced by CMAC, \(u_{p} (k)\) refers to the output of NISM controller. The adjustment indicators are as follows:

$$\begin{aligned} E(k) & = \frac{1}{2}(u_{n} (k) - u(k))^{2} .\frac{1}{c} \\ \Delta w(k) & = - \eta \frac{\partial E(k)}{\partial w} = \eta \frac{{u_{p} (k)}}{c}a_{i} \\ w(k) & = w(k - 1) + \Delta w(k) + \alpha (w(k) - w(k - 1)) \\ \end{aligned}$$
(3.11)

During the entire simulation system is running, assume \(w = 0\), so \(u_{n} = 0\), \(u = u_{p}\). The system is controlled by iterative sliding mode controller, then gradually make the output \(u_{p} (k)\) approaches zero, and the value of control variable \(u_{n} (k)\) produced by CMAC will be gradually closed to the \(u(k)\).

3.4 Simulation Studies

At this point the simulation state of ship is listed as follows: given course angle is 15°, initial speed is 23 km, propeller speed is 76.5 r/min. The parameters of environmental interference are shown as follows: wind speed is 10 m/s, wind direction angle is \(30^{ \circ }\), wave height is 2 m/s, wave direction is \(10^{ \circ }\), flow rate is 2 m/s, flow direction is \(10^{ \circ }\).

The simulation is given as follows:

Figures 3 and 4 show the curves of the ship’s course angle and the rudder angle under the setting environment and working conditions. It can be seen from the simulation diagram that the curve of the rudder angle is smoother and there is no obvious chattering. The CMAC and NISM integrated controller is stable at about 500 s, while the PID is stable at 400 s. In addition, the peak of the rudder angle of the former controller is about 14°, which meets safety requirements and extends the service life of the steering engine. But the peak of the PID controller rudder angle is about 24°. The course angle can reach the expected value, but the PID controller is faster.

Fig. 3
figure 3

Rudder angle curve

Fig. 4
figure 4

Course angle curve

4 Conclusions

In this chapter, the mathematical model of the twin-rudder twin-propeller ship with interference is established by using MMG model. In order to overcome the disturbances, a nonlinear iterative sliding mode controller based on CMAC algorithm is illustrated and applied, which can effectively improve the performance and reduce the consumption. Nonlinear iterative sliding mode controller is designed with strictly bounded hyperbolic tangent nonlinear function tan h(x). And the stability of the algorithm is proved by the Lyapunov theory. In addition, the performance of the CMAC and NISM integrated controller scheme is compared with that of PID controller according to course tracking, stability and robustness. The simulation results demonstrate that the curves of ship rudder angle and course angle are both smooth, and the controller has strong robustness for interference, therefore, stability can be achieved.