PX4 / PX4-Autopilot

PX4 Autopilot Software
https://px4.io
BSD 3-Clause "New" or "Revised" License
8.6k stars 13.56k forks source link

[Fixedwings] Instantaneous path setpoint for vertical axis #22774

Open Jaeyoung-Lim opened 9 months ago

Jaeyoung-Lim commented 9 months ago

Describe problem solved by the proposed feature

For fixed-wing vehicles, it is only possible to either specify a height setpoint or a height rate setpoint for TECS.

This is enough for most use cases in waypoint-based missions but is insufficient to guide the vehicle along a glide slope.

It would be very useful if one can guide the vehicle along a (feasible)glide slope for various use cases such as landing, navigation from a path planner.

Describe your preferred solution

Currently, the longitudinal axis is completely decomposed. It would be great if we can specify the height as closest point on the glide path and the height rate, which would be the projected speed the vehicle is expected to descend along the path.could

Describe possible alternatives

We could also introduce full 3D position setpoints and output acceleration setpoints to track the path. However, this might be less energy efficient compared to using TECS.

Additional context

No response

vacoff commented 9 months ago

Would it also allow to use px4 with unpowered gliders?

Jaeyoung-Lim commented 9 months ago

@vacoff You can already use px4 for unpowered gliders, if you want to stay on an arbitrary glide slope by regulating airspeed

vacoff commented 9 months ago

What about gliders dropped from mr platforms with 0 airspeed at the start? I think px4 would have a hard time trying to level up the flight.

sfuhrer commented 9 months ago

@KonradRudin @tstastny food for thought

tstastny commented 9 months ago

Yes we should do this.

closest point on the glide path and the height rate

except i would recommend not "true" closest point, but rather closest point in height axis -- see longitudinal guidance implementation in Section 2.3, Paper VI of https://tstastny.github.io/pdf/tstastny_phd_thesis_wcover.pdf (you can ignore the wind considerations if we dont have 3d wind estimate anyway)

@KonradRudin and I have a refactor diagram somewhere which considers this input. Just time has not been on our side for prioritizing the necessary interfaces.

Jaeyoung-Lim commented 9 months ago

What about gliders dropped from mr platforms with 0 airspeed at the start? I think px4 would have a hard time trying to level up the flight.

@vacoff I think this is not related to the feature we are discussing here. This would be about regulating airspeed using TECS, irrespective of being on a 3D path. If you think there is something missing in PX4 for this use case, I would suggest opening a new issue.

ryanjAA commented 9 months ago

Great idea!

AshhadRasheed commented 3 months ago

im a little late to this discussion, but didnt 1.10.1 and a few earlier releases had first-order and zero-order hold funtionality for height setpoints?