Skip to content

Sailrobot Package

Ulysse Vautier edited this page Sep 11, 2019 · 2 revisions

Package Summary

The sailrobot package provides groups of algorithms for sailboat control.

Algorithms

0 Nodes

The Potential Field is a well known navigation algorithm using a vector field with attractive points (goal points) and repulsive points (obstacles). In this version, the wind is taken into account for the sailboat.

0.0.0 Used Subscribed Topics

/GPS/fix (common_msgs/GPSFix)       Current GPS Coordinates of the sailboat.

/IMU (sensor_msgs/IMU)
      Current heading of the sailboat.

/wind (geometry_msgs/Pose2D)
      Force and Direction of wind.

0.0.1 Published Topics

/sailboat_cmd (geometry_msgs/Twist)
      Heading Vector of the calculated potential.

0.0.2 Parameters

~goal (string, default: data/goalpoint.txt)
      Filepath (absolute or relative) of the GPS coordinates file for the goal waypoints.

~obstacles (string, default: data/obstacles.txt)
      Filepath (absolute or relative) of the GPS coordinates file for the obstacle waypoints.

The Waypoint Follower is a simple algorithm that controls the sailboat to go from one waypoint to the other.

0.1.0 Used Subscribed Topics

/GPS/fix (common_msgs/GPSFix)       Current GPS Coordinates of the sailboat.

/IMU (sensor_msgs/IMU)
      Current heading of the sailboat.

/wind (geometry_msgs/Pose2D)
      Force and Direction of wind.

0.1.1 Published Topics

/sailboat_cmd (geometry_msgs/Twist)
      Heading angle of the bearing between the sailboat and the next waypoint.

0.1.2 Parameters

~waypoints (string, default: data/waypoints.txt)
      Filepath (absolute or relative) of the GPS coordinates file for the waypoints.

The Line Following algorithm can be seen as a Waypoint Follower. The difference is that the sailboat will try to stay as close as possible of the line between one waypoint to the next.

0.2.0 Used Subscribed Topics

/GPS/fix (common_msgs/GPSFix)       Current GPS Coordinates of the sailboat.

/IMU (sensor_msgs/IMU)
      Current heading of the sailboat.

/wind (geometry_msgs/Pose2D)
      Force and Direction of wind.

0.2.1 Published Topics

/sailboat_cmd (geometry_msgs/Twist)
      Rudder and Sail angle.

0.2.2 Parameters

~waypoints (string, default: data/line_following.txt)
      Filepath (absolute or relative) of the GPS coordinates file for the waypoints.

The keeping position algorithm is hard. The sailboat has to stay in position centered on a GPS coordinate. This algorithm does a complex scenario to position itself upwind when arriving on the waypoint and tries to stay on it.

0.3.0 Used Subscribed Topics

/GPS/fix (common_msgs/GPSFix)       Current GPS Coordinates of the sailboat.

/IMU (sensor_msgs/IMU)
      Current heading of the sailboat.

/wind (geometry_msgs/Pose2D)
      Force and Direction of wind.

0.3.1 Published Topics

/sailboat_cmd (geometry_msgs/Twist)
      Rudder and Sail angle.