This is a short video demonstrating the progress that has been made on rover sailboat support in the past few weeks.
The boat is a International One Meter class that has been fitted with a pixhawk, standard set up with GPS and telemetry. The only bit of special equipment is a wind vane. This is used to sense the direction of the wind allowing the sails to be trimmed and the best course to be chosen.
The sensor is a 360 degree rotation potentiometer, this allows the wind direction to be read using a analog input. A new wind vane library has been written, we hope to support other devices and methods of sensing the wind direction and speed in the future.
Sailboat now supports:
- Maunal mode, rudder like standard rover, throttle controls sail position
- Acro mode, the heading is controlled like a standard rover but the sails are trimmed to the wind automatically.
- Hold mode, the sails are let out and the boat steers into the wind to try and minimize is speed
- Auto mode, if the next waypoint can be reached the sailboat takes a direct route like a standard rover, the sails are trimmed automatically. If the next waypoint is upwind and cannot be reached directly the sailboat will tack into the wind to the next waypoint. By default this results in a long leg and a single tack to reach the waypoint so for confined water a tack can be triggered from a transmitter switch or from a full rudder input in the correct direction.
- RTL mode, the same logic as auto mode is used so the sailboat will tack upwind to reach the home location if necessary
Still a few more things to be done before its ready to merge but its coming along nicely. If anyone has and use-cases or ideas that would be great. The clear advantage is the power efficiency as our propulsion is free. Possibly for mapping a boat with both sails and a motor would be the way to go, we can do the easy bits with the sails and the tricky bits with the motors.
The main thread is here: Sailboat Support
and the code is here: https://github.com/ArduPilot/ardupilot/pull/9322
If anyone has a sailboat and fancy’s doing some testing that would be great!