ArduPilot / ArduPilot/ardupilot

Rover: interpret LAND mission command to beach a boat

Open
#7,355 1 comment 0 reactions 0 assignees View on GitHub
Enhancement Rover
Dominant language
C++
Stars
15.9k
Forks
21.4k
Avg merge
3d 17h
Merged PRs (30d)
119

Description

It might be a useful function if boats (which use the rover firmware) could be ordered to beach themselves using the LAND mission command. I think it could work if we use the position target provided in the LAND command to aim the vehicle at the beach. Then we monitor the motor outputs and the forward progress of the vehicle. If the motor output stays at full but the vehicle makes no forward progress for a given amount of time (5 seconds?) then we consider the vehicle beached and complete the command. Potentially we would also disarm the vehicle at this point.

As a side note, it would be worth checking whether using the regular waypoint controller (i.e. lateral acceleration + speed controller) is best or whether this would lead to the vehicle fighting to get back on the line too much. It may be better to use a velocity control which doesn't try to maintain a position so that the vehicle remains pointed at the beach.

Contributor guide

Open the contributing guide

Research direction

Start by locating the Rover firmware's LAND mission-command handling, then compare the regular waypoint controller with velocity control and identify how motor outputs and forward progress can be monitored. Done means a boat can aim toward the LAND position, detect sustained full output without forward progress, complete the command, and potentially disarm safely.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
embedded-iot, robotics
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.