Autotune consistently fails to tune Roll + noisy Pitch and Roll

Hi all,

I need some help with tuning a small quad (X, 920kv, 9.5’’, AUW incl payload: 1.300g, 4S 6500mAh, AC3.5, EKF3, BlHeli, OneShot). It is a little overpowered (MOT_THST_HOVER = 0.235) and the battery is mounted in front-back direction, so it should be easier for the copter to roll comapred to pitch.

The first problem is that Autotune failed in several tests to tune the Roll axis. Autotuning finishes successfully but the copter is not flyable.
All Roll values are 1/2 or 1/3 of the pitch values:

ATC_ACCEL_P_MAX 111951.5
ATC_ACCEL_R_MAX 56937.1

ATC_ANG_PIT_P 18
ATC_ANG_RLL_P 6.452277

ATC_RAT_PIT_D 0.002601937
ATC_RAT_PIT_I 0.03337713
ATC_RAT_PIT_P 0.03337713

ATC_RAT_RLL_D 0.001315915
ATC_RAT_RLL_I 0.01605497
ATC_RAT_RLL_P 0.01605497

If I set the Roll PIDs to the Pitch PIDs it flies (relatively) fine. If not the roll axis reacts much to slow, which is mainly due to the low ATC_ACCEL_R_MAX, and which is dangerous.
Since this is reproducible, I am wondering if there is some other parameter to adjust. It seems obvious that the Roll values should be lower regarding to how the battery is mounted. [OT: most GCS complain if I try to set the Roll setting to the Pitch settings because they are out of range. QGroundControl on Android refuses it completely.]

Some screenshots and logs:
The failed autotune log: AT_2017-07-21_16-31-47.bin

The following log and screenshot show the effect of the failed Autotune: ATres_2017-07-21_2016-42-37.bin

The next problem is that the copter is a little noisy/nervous on pitch and roll. I am not referring to RC_FEEL_RP but the difference between Pitch and DesPitch as well as Roll and DesRoll. It can be seen in this log: ATcorr_2017-07-21_16-53-20.bin with adjusted PIDs for Roll based on Pitch tune. I assume it is a tuning issue, because the Vibes are low (Vibration 3.3 are < 20 at full speed, < 10 normally and < 6 in Loiter)

Compared to that, a bigger hexa (15’’, 4S, AC3.5, EKF2) looks much much better (however it also has very high ATC_ANG_PIT_P/R values, 17 to 18, which are out of range according to the GCS).

In summary four questions:
Autotune:
Why does Autotune fail on this copter?
What should I try with respect to chaning some settings (copter, ESC)?

Noise:
Is this an (auto)tuning issue or is this the cause for the failed tunes?
If it is related to tuning what manual changes in the PIDs do you recommend to test, if not what might be the cause?

Thanks a lot!!!
Cheers,
Thorsten

Regarding the noise it seems that the XKF3 IPD is too high. I’ll check the foam.

Replaced the foam, compressed it a little more, and reduced the airflow in the frame. Without sucess. Still noisy. Will play with EK3_ALT_SOURCE and EK3_ALT_M_NSE next.

Although this is not a 250 quad (motor-to-motor diagonal = 400mm) I followed the suggestions from @Leonardthall for smaller quads I now have a pretty good tune.

Values used:
AUTOTUNE_AGGR, 0.1
AUTOTUNE_MIN_D, 0.0005

MOT_THST_EXPO, 0.6
MOT_PWM_TYPE, 2

ATC_RAT_PIT_FILT, 20
ATC_RAT_RLL_FILT,20

INS_ACCEL_FILTER, 10
INS_GYRO_FILTER, 40

Autotune results (incl. payload):
ATC_ANG_PIT_P and ATC_ANG_RLL_P maxed out at 18 and I reduced it to 12.

Roll PID values were 50% of the pitch values. It flies better when using the Pitch PIDs on the Roll axis as well:
ATC_RAT_PIT_P 0.08163819
ATC_RAT_PIT_I 0.08163819
ATC_RAT_PIT_D 0.00409838
ATC_ACCEL_P_MAX 177842.7

Hi Thorsten,

I am sorry it took me so long to see this but I am glad you got a good result. You did the right thing dropping the ATC_ANG parameters too.

Hi Leonard,

I see ATC_ANG_PIT_P and ATC_ANG_RLL_P maxing out on most of my copters (10’’ quad and 15’’ hex) . Reducing it to 10-12 still seems to high in some cases. Is there any rule - in relation to other parameters mybe - on how much it should or can be reduced?

I need copters that fly smooth on survey mission, i.e. no racing. What parameters do you suggest to adjust in which direction to make it as smooth as possible without loosing stabilty?

Thanks a lot!
Thorsten

I will be updating Autotune to do this automatically.

I generally find 10 is fine but you can go down to 6 if you find that more acceptable.

There is no specific number.

2 Likes