I have an turbine jet I am trying to automatically land. I tried the landing approach flight path (four times) using waypoints at 80m altitude and the speed is able reduce below 25m/s after descending 50m. The plane is generally able to follow DO_CHANGE_SPEED commands with some delay. However, when I use the LAND waypoint at 80m on the same approach path, the TECS spdem demanded speed increases to 30m/s which increases the throttle and airspeed. This makes it unnecessarily fast for landing. Is it possible to stop the demanded speed increase?
I tried reducing AIRSPEED_CRUISE and TRIM_THROTTLE in SITL, which reduces the amount of demanded speed increase before landing, but it is still there.
Here is the speed graph, the demanded increase is right at the end of auto mode before manual.
I digged into the code.
When the approach begins, the state transitions as follows..
State1: SlopeStage::NORMAL:
Set the target airspeed to AIRSPEED_CRUISE.
If wp_proportion exceeds 0.15, transition to SlopeStage::APPROACH.
State2: SlopeStage::APPROACH
Set target airspeed to TECS_LAND_ARSPD.
After that, the state transitions sequentially to SlopeStage::PREFLARE and SlopeStage::FINAL.
Since your cruise speed is set to 40 m/s, the aircraft will accelerate for a short time after the approach begins.
I don’t think State1 is necessary, but given that this is how it’s implemented, I think you’ll just have to adjust your flight plan accordingly.