I have a very weird problem with IR-lock
We tested lidar and irlock camera on small drone, and it worked flawlesly.
Than we mounted it on a big drone and problems started.
As you can see on video
when i iniciate RTL, drone goes above beacon when it always makes one big “swing” 0:35. than it lands, but not accurately at all.
We tried with PLND_EST_TYPE set to both 0 and 1.
Do you have any idea what can cause this problem?
Logs included in video folder
I can’t access the video because I think you linked the log files directly, rather than the folder.
From the log, it looks like this behavior is normal. The drone will only track the beacon during the landing stage, so the big swing happens when the drone begins its landing sequence and it immediately corrects its position to follow the beacon. This can be seen by the desired position PSC.TPX (orange line) changing just before the drone starts descending. You can test this by hovering over a beacon and switching to Land mode or Precision Loiter. The drone will quickly move to follow the beacon as soon as you switch modes.
Not sure about this one, but I see the LAND_REPO_ACTIVE event, which means you took control because you saw the drone do the big swing. I have not used the reposition feature myself so I am not familiar with the intended behavior, but as far as I can tell it no longer attempts to follow the beacon afterwards. Maybe try flying again and don’t touch the controls once it starts landing to see if it lands more accurately.
Thank you both for your replies.
I looked at LAND_REPO_ACTIVE and indeed it looks like it was trigered by change of PWM on some channel. Unfortunately its not my input. The PWM signal is generated by companion computer and peaks you can see in logs are actually errors in computer calculations. It looks like ±40 us pwm peak can triger LAND_REPO_ACTIVE.
Do I understand correctly that LAND_REPO_ACTIVE cancels PLND and goes back to just LAND?
About the “swing”. Is there any parameter to make it smoother?
There must be something else wrong. I did 4 more attempts.
Because the PWM peaks i previously had, i changed RC2-4_dz to 100.
If i see clearly in logs now the LAND_REPO_ACTIVE happened only during first landing.
In second landing it was human error that drone didnt see the beacon. But as you can see during 3rd and 4th landing the camera saw the beacon all the time, yet it landed very inacurately. (i guess arround 1.5 meters).
Any more help?
It might be possible to tune this out by changing position control PIDs ( PSC_POSXY_*, PSC_VELXY_*), but note that it can also affect PL accuracy. You can also try the LOIT_ parameters, but I’m not sure they affect PL. ATC_ACCEL_* will limit how fast the drone will rotate in pitch and roll, but this can strongly affect general stability tuning.
Hm it looks like it’s not tracking the beacon at all. The position controller should be changing the target position PSC.TP* to follow the beacon. Last time I assumed it was because of the land repositioning, but maybe not. Have you tried Land or Precision Loiter modes? Also, you can try turning off land reposition with the LAND_REPOSITION parameter.
By the way, was it very windy during this flight? If not, look into tuning your drone a bit more; it is not maintaining attitude or position as well as it could be. Also there is a right roll and pitch up bias, which could be caused by wind or center of gravity. This isn’t the problem with PL, but I figured I could point it out.
I was trying RTL mode with parameter PLND enabled. This setup worked perfectly with smaller drone.
About tuning. Its relatively light drone (9kg) compare to motor used Tmotor u8II + 28*9,2 propellers. It is very effective drone, but difficult to tune, since motors spin very slowly.
I went through this tuning guide https://ardupilot.org/copter/docs/tuning-process-instructions.html
But i havent initiate Autotune yet. Little bit scared of it with such a big propellers
But maybe thats the only way to make it stable.
But yes, it was quite windy that day.
Unfortunately turning land_reposition off, is no solution for me, because while landing in LAND/RTL mode i need option to move it a little bit in my application. But for purpose of test, i can do that, it may tell us what is wrong.
Well. I managed to solve this problem the weird way. saving parameters to file, then reset all parameters to default, than upgrading AC to 4.0.5 and loading the same parameters. Its still very shaky, but at least it most of the time lands precisely.
But right now i have another problem.
The target detection is very good. however drone hovers for a long time above the target (see the video) and then drops a little and does the same. It still tries to correct its position. But that is a big problem, because it sometis does is 5cm above the ground, what is dangerous, because drone may flip. Is there any parameter that makes drone land faster, while not correcting so much above ground? https://drive.google.com/drive/folders/10ERCHaLlDTh4KlFFWnOqk0UTXun6fWHJ?usp=sharing