Automatic landing but no flare

I recently added a Lidar and reversed thrust to my plane but the flare stage is not performed.
The plane in fact once reached the flare point continues to sink to the ground and land much before the landing point.

I’m surely making a big mistake but I need some help to see it .
Since I use a Lidar I set Land_Flare_Alt to 1,5 meters and Land_Flare_Time to zero , basically to disable it but I wonder if Land_Flare_Time must be a positive value to engage flaring.

Here are my parameters
no flare 15 degrees.param (14.3 KB)

I did several tries and with a steepest angle things get worst , and finally the landing become a crash with a sink of 4,76

Airspeed is reduce by reverse thrust but did not reach LAND_PF_ARSPD = 9 and remains higher
I’m not sure Pre flare stage is engaged

Lidar is engaged at different altitudes is that related to EKF_RNG_USE_HGT ?

TECS_LAND_SINK = 0,25 but seems to be ignored.

1 Like

Finally I found out that the reason why I got no flare stage during my landings is because the controller is extremely slow and need quite a lot of time to react.
In my case touching ground happened earlier than flare .

I think that the problem might be that the controller, even if I use brake on my ESC, wait that the motor goes speed zero before going in to flare stage while just before flare it was still using reverse thrust.

If I set the flare point much higher , at least 2,5 meters , but usually 3 or even 4 meters to be sure , then the plane enter in flare stage.

It is not clear to me what parameters would speed up the controller action and engage flare stage immediately once reached the flare height.

I also met this problem. The flare height is set to be 5.5m, but the actual flare height is 2.5m. Do you find a solution?

I have experinces similar inconsistwncies.
No idea why. I have lidar and break. yet I have to set to 4m for safe reaults.Actual flare hight varies. Even though breaks keep landing approach air speed constant.

Hello, Awesome and pompecukor , part of the answer is probably in my previous reply.

One reason is that the controller waits to see a neutral value to Esc output when the reverse is disengage so usually this takes 1 second and during that time the plane continues to drop with the same sink rate to the ground.

For this reason in my opinion the statement in the wiki that with Lidar a 2 meters flare_alt is a good starting value is wrong.

A value for LAND_FLARE_SEC of 1.5 and LAND_FLARE_ALT of 2 is a good place to start with a LiDAR

Another aspect that is unclear about that statement is why is I have a Lidar and set 2 meters for LAND_Flare_ALT I should leave a value different from zero for LAND_FLARE_SEC ?

I think that when you want to have a steep landing using Lidar and airspeed sensor then you have a lot of problems .

The reason is because most of Arduplane users do Automatic landings relying on Gps and barometer only, so they probably use LAND_FLARE_SEC parameter and do not complain too much if the plane stops a little far, having a nice gliding automatic landing looks like a little miracle.

I went five times at the airfield and did dozens of different tries of automatic landing and finally I’m still at the starting point in trying to have a steep landing with even 10 or 15 degrees slope.
The more steep is the landing the more things get difficult.

I respect a lot the work of the developers of Arduplane code but IMO the strategy for automatic landing is not the best one for steep landing using Lidar and airspeed sensor and it is really very , very difficult to tune it up because of at least 25 parameters and it is very difficult to understand what it is happening during landing , you can change the parameters but results are most of the time unpredictable and the risk of crashing your plane is very high.

I’m an awful RC pilot but I’m by far much, much better than the Arduplane controller when a deep landing has to be done and this do not make much sense since I do not have a Lidar or a airspeed sensor and my reaction time is much slower than a 32 bits board.

You see the problem clearly.
After a lot of auto landing, much more than yours.

I can conclude same as you do. Here are some of the problems.

  1. They (the lidar assisted reversed landing) are absolutely not consistent.
  2. I have had stall, due to Flare pulling too high at such low air speed. I am yet to find how to control this.
  3. I too believe that because 99% of the people use Land_Flare_sec (not alt) that it has not been toughly tested with lidar and actual height.
  4. There is still another extremely dangerous aspect that is yet to be fixed (see my issue with land abort deg).
    See here: LAND_ABORT_DEG: More dangerous than not?
    (issue has been open a few months ago on github, but no PR yet). My advice is to set 0 till it is fixed. It is very dangerous as it is now. Especially since the way it work is not that on next turn it would explicitly use lidar measurement. Rather it would offset the entire ground level. So even if lidar tells it is 1m above ground, it will take it as 1m+ whatever offset it decided to use on the rerun.

Your analysis about the wait for the throttle down, causing the delay does make sense. As that would explain the inconsistency, especially when there is wind. As the wind (if strong enough) helps the plane to descend more steep and not need much breaks. In those cases the the flare would seem at normal height as there was little to no throttle before cutoff.

About your question on Flare alt and Flare sec.

If you want the AP to use alt, then you must set sec to 0. If it is not zero, then the alt will be ignored.

I agree with you about LAND_FLARE_SEC priority vs LAND_FLARE_ALT, as I wrote, the wiki should be more clear about that.
I never meet the stall issue you expose in point 2, my plane is always pretty fast.
I agree about point 4 , I will also leave to 0, thanks !

I think that we could request the following things to the developers that could help us a lot .

1- Enhance the debug of landing stage , i.e. marking on graphs when the pre flare stage begins , or any other information that could help us to understand what happens during landing stages to better tune it.

2- To change the landing strategy allowing the use of the reverse after the flare , it make no sense to me that after the flare the engine is cut and the only way to change speed for the plane is to use pitch.
Especially if the plane has a Lidar and the reverse,
When the plane is at a few decimeters from ground it can be stopped with the reverse even roughly with no damages for the plane.

3- To explain in the wiki how to use the 18 parameters that allows Deep Stall Landing , since 3.8 it is a new feature but I did not found any explanations about how it is supposed to work and nobody will do experiments that would probably involve several crashes.

I have also been experimenting with autlandings and I am trying to perfect it. I don’t have quite the same issues as you have but I agree that the parameters are difficult to understand. Right now I am trying to lower my airspeed with a pre flare stage, so far there has been problems with the rangefinder not recording the distance until way below the pre flare alt. But I have had decent landings, only issue is that the plane flares while going around 8-14 m/s, which is way to high a speed for my plane ( large wingspan, glider type). I don’t have flaps and haven’t implemented flaperons but that could be one thing to help, but I am using reverse thrust.

During some of my attempts i noticed when the plane flew over obstacles and recorded a hight close to the flare height it did initiade reverse thrust and lowered the airspeed. So after a lot of diging in the code and parameters I think I have found the culprit. The parameters are TECS_SPDWHEIGHT and TECS_LAND_SPDWHEIGHT.

Since TECS_LAND_SPDWHEIGHT was set to -1 and TECS_SPDWHIGHT set to 1, the AP scaled the control of airspeed and height from 1 to 0 as I approached the landing site and only started reverse thrusting at a very low altitude (once the spdwhight had been scaled down sufficiently)

For me atleast, since I want the airspeed to be primarily controlled by throttle, these seem to play a key role in how the AP uses pitch vs throttle to achieve the target airspeed. I am going to perform some landings next week, but I think setting TECS_SPDWHEIGHT to 0.5 (throttle controls airspeed and pitch height) should do the trick, as TECS_LAND_SPDWHEIGHT is set to -1 and scales from there it should start reverse thrusting sooner