Implementation of automated ship control
Within this work package, the tuned algorithms from work package 3.1 (fine conception and tuning of the algorithms) will be implemented on the ship. For this purpose, a ROS2 infrastructure will be established. ROS2 stands for Robot Operating System 2 and contains a framework for the simple exchange of data between several distributed systems. The sensors installed on the ship provide their data in the form of ROS2 topics within the infrastructure. Nodes of the ROS2 network, which contain an implementation of various algorithms, can then receive and process the data. The same principle is used to provide the control data, which is calculated by the algorithms and then made available to the ship’s actuators.
In addition to simple communication, however, the ROS2 system has other advantages. A recording capability of all sensor and also control data is already natively available within this system. Many algorithms for the navigation of robots, which are already state of the art, are furthermore already integrated into the ROS2 framework. These can also be used for navigation of the autonomous barge. Via the NAV2 package, for example, the A-Star as well as the Time Elastic Bands algorithm can be executed directly with the sensor data provided.
As already described in WP 3.1, navigation is divided into global and local path planning. Both are performed on the basis of so-called obstacle maps and include static (global path planning) and dynamic obstacles (local path planning) in their calculations.
For first tests within the test drives, virtual obstacles are used at first. Using simulated (lidar) point clouds, encounters with other road users and driving through narrow sections of water can initially be tested with a significantly reduced risk.
As soon as a path has been calculated by the path planning, the ship has to follow this path with the help of a controller. For this purpose, different control concepts are tested and parameterized to represent the test vessel. In addition to a PID controller, a sliding window controller is also implemented and tested.