Need help understanding FW autoland overshoot

#1

Hello all,

I’m experimenting with a Skywalker X5 flying wing. It flies very well in stabilized and mission mode. Now I’m trying to understand the autoland planning in QGC and how it works in the air.

My playground is a large football pitch surrounded on 3 sides by trees and the other side by high voltage power transmission lines. So my landing space is a bit constrained. I need to do the pre-land loiter at about 40m and make as steep a descent as is feasible.

I see that PX4 warns the user via QGC if the distance from loiter to landing spot is too short, so I planned a landing that PX4 would accept and then I tested the mission.

Waypoint following and altitude control were very good. On transition to landing, the wing started a perfect 15 degree descent but was still 8 meters above the ground at the landing point, making a beeline for the trees at the edge of the field. I tried to abort and pull out of the landing but was too late and the plane slammed into a tree at 20 m/s.

Log is here: https://review.px4.io/plot_app?log=d030852f-da16-49b3-89b4-5d58700a8609

Amazingly, no serious damage. This is a great plane!

Anyway I would like to understand my mistakes. I was expecting the plane would land within 10m of the target spot and allowed for that, but in this case, I think the overshoot would have been about 60m.

From the logs, I notice that the estimated altitude at launch was -2m, then the estimated altitude on the ground after it fell from the tree was -4m. The difference is partly because I mistakenly armed the plane while holding it, preparing to hand launch. I guess if I had armed on the ground then the beginning and ending altitude would have been closer. Anyway, with the 2m altitude error at 15 degrees, I’d expect 8m or so of overshoot, not 60m.

For the landing parameters, I’m using the defaults for the Skywalker X5: 5 m flare height, -10m HVIRT, 15 degree descent.

So my questions would be:

  • why does PX4 allow this plan, if there is not enough distance from the loiter to the landing spot?
  • is the landing routine using altitude of 0 or the estimated altitude at launch (-2m)?
  • shouldn’t landing be at a lower speed than the cruising speed? When I see videos of flying wing autolandings online they seem very nice and gentle, not 80kph! But I didn’t see any parameters to control this.

Sorry for all the noob questions and thanks for any help!

Matt

#2

@mdailey welcome to the world of fixed wing auto landing! Your flight log shows that your ground speed was faster than your airspeed during landing. If your airspeed sensor is reading correctly this means you had a tailwind, which is always a bad idea for fixed wing landings.

Most videos you see of nice gentle fixed wing landings are almost always landing into the wind so that the ground speed is nice and slow, but the wing still has enough airspeed to create lift.

It turns out that your glide slope through the air is exactly equal to your lift-to-drag ratio. Lift = weight for a steady glide slope so lift does not change much during landing. To change the glide slope the vehicle has to change drag. On an X5 the only way to increase drag and therefore achieve steeper glide slope is to increase airspeed. This makes sense because with throttle off, the only way to increase airspeed is to dive steeper.

With a tailwind the vehicle needs a actual glide slope through the air much steeper than 15%, which the X5 probably cannot do within the default airspeed limits. I’m guessing here as I have no experience with the X5.

I often see more than 2 meters of altitude error/drift over the course of a flight. More typically up to 7 meters of altitude error/drift on a long flight.

#3

@Antiheavy thanks for the tip! That day there was an easterly breeze that was so light I could easily land in any direction manually myself, so I didn’t think it would affect a crosswind landing, but you must be right.

A fun project would be to get the autopilot to compensate for light tailwind during autolanding…

#4

sure, but compensate how? the wing has to generate lift so it HAS to travel faster over the ground with a tailwind. Even a light tailwind has a huge negative impact on landing ability.

Another thing to consider is kinetic energy = 0.5mV^2 so the impact energy is WAY more with a tailwind than a head wind, even a small one.

One way people try to increase landing accuracy and ability to land in wider wind conditions is to have some way to modulate the Drag on the vehicle. The most common way to do this is with spoilers/flaps/slats or airbrakes. Some people try reverse thrust propellers which is very cool.

My best advice though is: never land with a tailwind! :slight_smile:

#5

@Antiheavy you were absolutely right about the tailwind; in another try with a mild headwind during landing I got my first successful autoland, very close to the target, approximately 7m short:

https://logs.px4.io/plot_app?log=caa40068-3b4a-4d2b-9139-5fb17528f965

However. I didn’t see any flare, and the default landing airspeed (130% of the minimum speed, 19.5 m/s for the X5) and descent rate (6 m/s) is scary fast. The wing hit the ground so hard it bounced 1m in the air and bumped like a skipping stone 4 or 5 times before coming to a halt. Very cool looking but maybe not so good for the longevity of the plane!

Looking more closely at the estimated altitude data, I am confused. At the time the plane hits the ground, GPS thinks it’s 1 m below the altitude at arm, barometer thinks it’s 1.5 m above the altitude at arm, and the fused estimate is 2 m above the altitude at arm – the fused estimate seems to be worse than either of the raw sensor readings. I would have to look closely at the altitude estimation code to understand why that’s possible. Any advice appreciated.

Finally, though, given that altitude estimate is off by 2 m and my flare altitude is 5 m, should I expect to see see some evidence the plane is attempting to flare before it hits the ground?

It looks like the pitch setpoint does go from -9 degrees to 0 degrees just before the altitude estimate hits 5 m, so that is a good sign. But the actual pitch change seems to be too little too late.

I will try increasing the flare altitude to 10 m to see if it helps. Besides that, should I try to improve the pitch response, for example by increasing the throw of the ailerons?

#6

@mdailey It looks like the vehicle started to flare < 1 second before impact, this was probably not enough time to notice a response. You are probably going to have to play around with a combination of landing speed (slower means less steep and more time to flare) and flare height and flare minimum pitch angle. You could try increasing pitch response if you like, either through mechanical means or changing the autopilot gains. Who knows if your exact weight, center of gravity, and servo/linkages setup matches that of whoever created the default X5 parameters, so you might want to review all that stuff in the long run.