3. SHIP POSITIONING CONTROL
3.1 Ship Motion Model
Assuming that the state variables of the ship's motion are x(t) = [XG, YG, ψ, u,v,r]T,
Fig.2 Co-ordinate systems
where XG and YG are absolute coordinates of the controlled position, ψ is the clockwise heading angle from the XG axis. u is the speed of the xs direction, v is the speed of the ys direction and r shows the yawrate. Here we assume that the controlled position indicated in the ship fixed axis xs-ys is (-xc, 0), the state equation of the ship's motion is shown in (7).
In above equation, M1 shows the ship's mass plus the added mass to the longitudinal direction, M2 shows the ship's mass plus the added mass to the lateral direction, I shows the moment of inertia plus the added inertia, u1, u2, u3 is a thrust command to each direction, and XH, YH, NH are hydrodynamic forces which act on the ship's hull, and they are approximated functions from the models.
3.2 Setting RH Control Problem
The ship positioning control can easily carry out in a mission to trace on a straight line at a constant speed, but in the case of turning on the pre-set waypoints (WP) of the route, it needs the approximation with a smooth curve not to change the thrust commands suddenly. But here we formulate the optimization problem by the RH control as a fixed time terminal constraint problem to avoid these problems Equations (8), (9), (10) show the evaluation function and terminal constraint condition:
where r1,2,3 is weighting coefficient of each manipulated variable, xf is the desired value of the state variables in the terminal time t + T. In this way, it is possible to relieve sudden changes of manipulated variables in case of the change of the moving direction or heading angle reference on the waypoints by setting the desired value only in the terminal time T. The optimality conditions of the fixed-time terminal constraint problem are given by the following form:
Hu + νμfu = 0 (14)
where H is the Hamiltonian L + λf , λ is the co-state row vector of the x, v is the Lagrangean multiplier row vector for the terminal constraint condition (10). Also, μ is a matrix variable μ = Ψx(τ) defined in [t, t + T]. x0 is the initial state variable, and in the RH control problem, it becomes a feedback signal measured at each control calculation periods. We also apply the C/GMRES method mentioned before to this optimization problem as the optimal thrust allocation problem.
3.3 Route Tracking Algorithm
We introduce a route tracking algorithm for multiple waypoints. Firstly, when the ship's speed Vs is set on the leg between two waypoints, the target point (PT) which plays a reference point in T seconds future must move on the leg with the constant speed Vs. Also, we set the heading angle ψf in PT. When the PT passes through the WPk and goes to the next waypoint WPk+1, Vs and ψf are set in the new values defined on the next leg.
Fig.3 Waypoint and target point
We assume that the reference of the state variables at the terminal time T is xf =[XTf, YTf, ψf, 0, 0, 0]T, where (XTf, YTf) is the position of the target point PT.
Eventually, the ship maneuvering controller consists of three main parts, that is, position and heading reference generation part, ship's position control part and the optimal thrust allocation part.
Fig.4 Block diagram of ship maneuvering controller