RTL loiter radius=90m, expecting 30m

I have WP_LOITER_RAD=30 and RTL_RADIUS=0, so it should fall back on WP_LOITER_RAD. Despite my efforts, the RTL loiter radius seems to be around 90m. What setting am I missing?

Log: https://github.com/arikrupnik/ardupilot-config/blob/master/logs/FIXED_WING/7/2023-01-11%2009-18-05.rtl.bin?raw=true

rtl-loiter

I see LIM_ROLL_CD is set to 4500 (45 degrees). In the RTL circle the plane is reaching that max angle so I suspect it simply can’t turn any tighter with these settings.

Oooh! That makes sense. Thank you for catching that!

This actually brings up a different, related question. This is a 4-channel airplane (2.1m CZ Cub), but it mostly likes to turn with the rudder. You can give it full aileron, and it will just happily slip along dragging its tail. In manual, I mostly turn this plane with the rudder and then correct with aileron. In an established turn, the ailerons are neutral–or even opposite. Increasing LIM_ROLL_CD will help for sure, but I wonder if I can address the bigger problem–the slip.

I had KFF_RDDRMIX=1, but autotune overwrote it to 0.5 on the previous flight and I didn’t notice. Is there a way, beyond KFF_RDDRMIX, to tell AP to use rudder as the primary and aileron is secondary for turns? RUDDER_ONLY seems wrong, as it has fully-functional ailerons. I haven’t changed YAW2SRV_* parameters from their defaults yet, but they all treat rudder as secondary control. Bank, notice slip, correct with rudder. I almost want to switch rudder and aileron servos so that AP applies rudder first, then corrects with aileron :=)

You’ve got me thinking here that it’s been a couple years since I’ve tuned anything with a rudder. It’s all been wings and V-tails recently. You’ve probably seen this, but I think your best chance is tuning the yaw damper and sideslip controller.

https://ardupilot.org/plane/docs/new-roll-and-pitch-tuning.html#yaw-damper-sideslip-tuning

I only had a quick look at your log, but what I saw of the tuning seemed reasonable. I’ll have another look and see if anything jumps out.

Thank you for looking into this. It’s all stock except for roll and pitch autotune. This is the second flight on this plane with a completely new AP setup (first flight was autotune, log in the same directory). Relevant parameters are here: ardupilot-config/aircraft/cub-blue at master · arikrupnik/ardupilot-config · GitHub. You can see the diff from autotune here: diff

Ari.

First set SERVO_AUTO_TRIM,1. This will trim things up. You can leave this on and it will keep it in check. You need to fly in FBWA (or any stabilized mode) hands off for a few seconds for it to make any changes. (DON’T USE RADIO TRIMS!!!) Note: Have you done an RC calibration yet?

Maybe before you get too far into the yaw tuning try a improving the auto tune a bit. Try it first as is, and then if you feel it can do more set the AUTOTUNE_LEVEL,7 and re-do the pitch and roll tuning.

You will also need to adjust PTCH2SRV_RLL. I did a CZ C150 a couple years ago and it needed a lot of adjustment here, so it might be worth getting this sorted before you work on the yaw.

1 Like

Yes. I use the same OpenTX memory for all my ArduPilot vehicles: https://github.com/arikrupnik/ardupilot-config/blob/master/rcinput-config.param

It’s too windy to fly today, but I expect that increasing the roll limit and the the yaw response can bring this under control. A more aggressive autotune may help also, but I understand that it mostly has the effect of increasing roll and pitch rates. It will hardly matter how fast the airplane gets to its bank limit if it can’t produce the turn rate I need :=)

Thank you for your insight!

Ari.

Your plane has an airspeed of 24m/s in the rtl circle. With a bank angle of 45° she can achieve a minimal turn radius of 58m. With a bank angle of 60° she can turn at a radius of 34m. You can calculate these values by an online calculator like this one

But I think turn angles more than 45° can produce problems because of less lift and more drag. I would go to higher values for turn radius.

2 Likes

Not the same thing. That is good for your radio, however the RC calibration on the FC is to make sure your FC knows exactly what the center and end limits of your radio are. There are a lot of variables in the system between your fingers on the sticks and the serial port getting the input. The RC calibration on the FC clears all of that up.

https://ardupilot.org/plane/docs/common-radio-control-calibration.html

Not exactly. By improving the tune the airplane will be better equipped to handle the higher bank angles. The tune of this plane isn’t bad, but if you want to increase it’s flight envelop you’re going to need to improve the tune. If you simply increase the LIM_ROLL_CD to 6000, but the tune can’t support it you’re going to have a mess on your hands (or in the field)

On that same line, @jreise-d has me thinking that the speed also needs looking at. I just went back and looked, and when you did the RTL the plane had 100% throttle on. This was because the throttle stick was at max, and THROTTLE_NUDGE,1. None of this is wrong, if that’s what you wanted to do. but with full throttle on the plane is going to make a wider turn. Throttle Nudge will increase the throttle output anytime you’re in an auto-throttle mode and the stick is above 50%. RTL will manage the throttle on it’s own, so if it needs 100% it will take it, but if you override it to 100% it will do it.

My revised recommendations:
1- Perform the RC calibration as linked above. (won’t be a game changer, but will clear up some issues especially around the end points)
2- Try RTL again, but this time with the throttle stick at half, or slightly below. Let’s see what the plane will do on it’s own.
3- Run autotune again.

2 Likes

That is an excellent point that had escaped my attention entirely. Thank you for bringing it up! I like to change one thing at a time. Let’s see if I can get from 90m to 60m radius with 45-degree limit.

Yes. I was completely oblivious of the effect throttle might have on turn radius. I am indebted to you and Joerg for bringing it to my attention.

I usually have THROTTLE_NUDGE off unless I have the airspeed enabled (I have AS on this plane but didn’t want to enable it before verifying that it worked). I think I misunderstand how it works. The parameter description says it can increase airspeed (or throttle) if throttle input is above 50%. Is it a one-way thing? Is there a way to decrease target throttle?

Another way to describe it is that Throttle Nudge is only effective above 50% throttle. You can adjust up and down at will between 50% and 100%, but once the throttle stick is below 50% the plane will stay at it’s cruise speed or trimmed throttle setting.

1 Like

Thank you @jreise-d and @Allister. Big improvement on the flight today.

Lower airspeed and more rudder bring turn radius way down.

Airspeed seems to track GPS speed well. I’ve enabled it going forward, so throttle stick will control airspeed demand not throttle PWM. Thank you both for your help.

Ari.

https://github.com/arikrupnik/ardupilot-config/blob/master/logs/FIXED_WING/7/2023-01-13%2008-44-20.bin?raw=true

1 Like

Looks good. Have fun with it.

1 Like