Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MPC: LAND: Split Landing out of FlightTaskAuto into FlightTaskLand #23678

Open
wants to merge 3 commits into
base: main
Choose a base branch
from

Conversation

Claudio-Chies
Copy link
Contributor

@Claudio-Chies Claudio-Chies commented Sep 17, 2024

Solved Problem

image
The #23546 did not consider the case when we trigger land from Altitude or Manual FlightTask, where the commanded velocity can greatly exceed the velocity possible in FlightTaskAuto.

Solution

  • Creation of a Landing Flighttask
  • adding of a "stop" motion primitive, to slow down the vehicle to a complete stop given any initial velocity.

With this PR, we are splitting the Landing Logic into a separate FlighTask called FlightTaskLand, and handle the landing logic in there.

Test on Hardware
image

Changelog Entry

For release notes:

Bugfix: Multicopter vehicles slow down smoothly when transitioning from a manual flight mode to the landing flight mode.

Dependent PR's

Test coverage

@Claudio-Chies Claudio-Chies changed the title Misc: Matrix: Added Addition and Subtraction to Slices MPC: LAND: Split Landing out of FlightTaskAuto into FlightTaskLand Sep 17, 2024
@dakejahl
Copy link
Contributor

I wonder how does this effect PrecisionLand? The precland logic lives in navigator as a submode, and I believe puts the vehicle into FlightTaskAuto with a land setpoint type. Something to keep in mind!

@Claudio-Chies Claudio-Chies force-pushed the pr-flight_task_land branch 4 times, most recently from 1b23655 to d3d49fd Compare September 30, 2024 09:29
@Claudio-Chies
Copy link
Contributor Author

Claudio-Chies commented Sep 30, 2024

@dakejahl

I wonder how does this effect PrecisionLand? The precland logic lives in navigator as a submode, and I believe puts the vehicle into FlightTaskAuto with a land setpoint type. Something to keep in mind!

I now made it so that Landing Flightmode goes into FlightTaskLand, and Precision landing remains in FlightTaskAuto.
This way we can/should split out precision landing into its own flight task in the future, or also integrate it into FlightTaskLand.

I wasn't able to also integrate precision landing into it, as i dont have the means to test it, and FlightTaskLand is currently not set up to handle movement around to setpoint triplets as FlightTaskAuto. it just brakes, and lands.

@Claudio-Chies Claudio-Chies force-pushed the pr-flight_task_land branch 3 times, most recently from 776b848 to a1f1b9f Compare October 4, 2024 12:04
@Claudio-Chies Claudio-Chies force-pushed the pr-flight_task_land branch 2 times, most recently from 6a22182 to f019e3a Compare October 18, 2024 09:36
@Claudio-Chies Claudio-Chies force-pushed the pr-flight_task_land branch 6 times, most recently from 1a853a8 to 46ef94b Compare October 28, 2024 08:41
@Claudio-Chies Claudio-Chies marked this pull request as ready for review December 3, 2024 10:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants