In this study, we develop a Joystick control algorithm for remote berthing and deberthing of an unmanned ship propelled by an waterjet.
We also develop a fully autonomous berthing and deberthing control algorithm of the ship that follows given way point sets and desired for speeds.
Figure 1. The Unmanned Ship used in this study(Aragon³)
1. Motivation
Currently, small unmanned ships are being actively developed for reconnaissance, search and combat purposes. Control algorithms are needed to berth or deberth the unmanned ship using a Joystick or fully autonomously in a narrow water area near a port. For this reason, I studied the situation in all directions through the camera from the outside and researched to make it possible to safely use the Joystick to remotely control the berth.
2. Goal
In this study, there are two functional purposes:
1) Remote manual control using Joystick
2) Fully autonomous berthing.
The purpose of the remote manual berthing is to perform the following functions by using the Joystick as the controller.
Figure 2. Joystick(SPC-2000) used in this study
1) Speed control for forward and backward directions.(X direction)
2) Crabbing control for left and right directions.(Y direction)
3) Control of yaw rate in clockwise and counterclockwise directions.(Z direction)
The functional purposes of the autonomous berthing is as follows.
1) Autonomous movement along the path of a manually given waypoint set.
2) Automatically generation of waypoint set by inputting the coordinates of the given marina.
- Waterjet Propell System Overview
The driving part of Waterjet consists of desired Engine, Bucket, Nozzle and Bow-thruster.
Figure 3. Waterjet, Bucket and Nozzle
Figure 4. Bow-thruster in Aragon³
The driving part of the waterjet-ship adjusts the ratio of the direction and magnitude of the thrust by using the bucket, and adjusts the magnitude of the thrust by adjusting the RPM of the diesel engine. Also, the angle of the nozzle is used to control the direction and yaw rates of the ship. In addition, the bow-thruster assists the nozzle as an auxiliary yaw rate control devices.
- Control Algorithm Design
Figure 5. Waterjet Thrust Force Model as a Fuction of Bucket Opening Step and Engine RPM
1) Forward speed control using the error value of u (forward velocity), the target thrust value is obtained through the PID control equation.
(1)
(2)
Using the model of the waterjet force model(Fig.5), the solution of RPM and bucket step are obtained.
2) Yaw rate control using the error value of r (Yaw rate), the target moment value is obtained through the PID control formula.
(3)
(4)
The desired nozzle angle is obtained by equation (5).
(5)
- Control algorithm verification through simulation using Matlab and Unity
Using the dynamic nonlinear model of the ship, the control algorithm is tested through Matlab, and the configured algorithm is executed in Unity Environment to check the ship's motion status in real time.
Figure 7. Simulation Result using Matlab
Figure 8. Remote Manual Control in Unity Environment
Figure 9. Crabbing Simulation in Unity Environment
Real Sea Test
- Remote Manual Berthing / Deberthing
The joystick is used to perform remote control, and the control center recognizes the situation around the ship through the camera. It also checks the current ship's position and destination through the chart. This helps to anchor the ship safely and conveniently.
Using GPS and IMU sensor, data (the ship's current position, heading angle, forward speed, lateral speed, and yaw rate) are obtained.
The X direction of the joystick determines the velocity value for the forward and backward directions of the ship, the Y direction determines the crabbing direction, and the Z axis determines the direction of the yaw rate and the magnitude of the angular velocity.
- Fully Autonomous Berthing / Deberthing
The ability to create a route using waypoints and autonomously drive to a destination reduces the burden on the ship driver. Control using the joystick can also be difficult, so it is a function that allows you to berth with autonomous driving by simply designating a route.
In addition, there is also a function that allows you to automatically create and drive a smooth route by directly creating additional waypoints by inputting only two points of the destination and one point to pass through.
The concept of autonomous driving using waypoints is as follows.
Figure 10. Concept Diagram of Autonomous Path Tracking of Watpoints
Real Sea Test Results
Figure 11. u(forward velocity) & r(yaw rate) Step Input Simultaneous Control Result
Figure 12. Actuators(RPM, Bucket, Nozzle, Bow thruster) Status during Test
Figure 13. Autonomous Driving Test Result