Tuning PLND (IR-lock)

I managed to get IR-lock work (well…sort of) on a big drone with AC 4.0.5
Now i would like to tune it a little. because it lands a dangerous way.
As you can see in my logs:

  1. the moment that RTL switch to PLND, the drone does a big swing (not pleasant) but i can live with that
  2. the moment it goes to PLND, the shaky behaviour occurs. (not a problem with LOITER at all). I dont like it, but can live with it also.
  3. The thing i cannot live with is: As you can see despite the fact, that the drone sees Target all the time above the ground, it hovers about it (and i guess corrects its position) for a long time, but what is really dangerous is, that sometimes (not very much in this video) it corrects its position 5cm above the ground, which few times would flip my drone if i wouldnt interfere. This is quite dangerous.

Therefore i decided my PLND needs tuning.
Somebody told me, that Cube corrects its position with the same algorithm in both loiter and PLND.
But in loiter the drone flies nicely. Why is it so shaky while on PLND? i guess it might cause the problem with last 1 meter dangerous behaviour. But not sure.
I tried to change PSC_VELXY_P a little in order to make it better. well i think the shakiness was less obvious, but the problem with landing endured.

  1. Can someone please give me a short guide, which parameters to tune to make PLND landing better? (yes i tried with both kalman filter on and off (that time with AC 4.0.3))
  2. Is there any way to make the last cca 1m to land faster (even less acurate), but safer, so the drone wont correct its position few centimeters above the ground?

Is there anyone who could help me (and others) make som short tuning guide for IR-Lock PLND? (the one on ardupilot page is very unsuficient) Maybe @ThomasSFL ?

The landing video looks nice. Also, the rangefinder and IR-LOCK Sensor are detecting well. (although, you may be able to remove some vibration/movement in the sensor)

There is no easy way to tell the drone to stop correcting its position. You would need to modify the code itself to get that particular behavior (which is possible).

Thank you. i will try to remove som vibrations with the different mounting.
I am sorry to hear that there is no easier solution to remove corrections near ground. However i didnt have the same problem maybe year ago, with very similar drone but much older arducopter. maybe something around 3.6 something.
So i dont know if they changed anything in the code.
I agree that this video looks quite nice, but sometimes drone does big corrections few centimeters above groung, what i dont like at all.
Do you think using wider lens could change something? (i understand that detection height would be reduced)

You can also try setting up the dynamic notch filter. That might help in this scenario, but there’s no way to be certain without testing.

There aren’t many tuning parameters that are specific to Precision Landing. Most of it is interdependent with the standard tuning params. You could try tuning the loiter speed/accel/maxes/etc. of your copter, but that will also affect the standard loiter performance.

The default PL controls work pretty good for a wide range of copters, but it’s difficult to make one control code that works flawlessly for every copter. That is how we ended up with two control codes (PLND_EST_TYPE), and people oftentimes work on their own custom developments. My primary job is to make sure the IR-LOCK Sensor gives fast and reliable readings. The controls are a separate advanced topic.

As you can see in the picture above, it doesn’t look like the target is ever lost by the sensor, so I don’t think a wider lens would make any difference (also, you would have to change the lens model in the code).

So update.
I once again tried PLND_EST_TYPE = 1. I tried it before with AC 4.0.3 and it was worse. Now with 4.0.5 it looks a little better than PLND_EST_TYPE = 0. A little less jerkiness and and more accurate landings. I dont know how its possible, because release notes of 4.0.4 and 4.0.5 dont mention changes in this. but …whatever. Still not perfect, but better.
So the last remaining big problem is that there should be height from which it doesnt follow target so strictly few centimeters above ground, so it wont flip. But i guess there is no chance tuning that with parameters present in current release.

I agree that it would make more sense for the controls to go back to GPS (hold) control at a very low altitude. But the issue isn’t experienced in the vast majority of cases, so somebody would have to take the initiative to introduce it to the master code. Currently, it is only featured in custom code developments (which probably are not publicly available).

Maybe it has something to do with the fact, that my drone has a large propellers 28", but short landing gear. Or maybe its always bigger problem with bigger drone. We tested with 450frame and 10inch propellers, and it worked perfectly there.