I think it may be helpful for others planning a build of a 24" copter around 5.5 … 6 kg, when I give an update here:
After adjusting and testing some FFT parameters for the inflight FFT, the “learned” hover frequencies look better. I will show them at the end of this post.
With these settings I started another AutoTune - this time with AUTOTUNE_AGGR = 0.075. The reported results were:
Roll Angle P: 10.234, Max Accel: 63064
Roll Rate: P: 0.119, I: 0.119, D: 0.0028
Pitch Angle P: 11.283, Max Accel: 70317
Pitch Rate: P: 0.126, I: 0.126, D: 0.0033
(To remember: The QuikTune rate P and I were around 0.108 on each axis and when I tuned with AUTOTUNE_AGGR = 0.1, the rate P and I were around 0.148 (pitch) and 0.164 (roll)).
So, the PIDs were lower after that autotune but the max accels (ATC_ACCEL_P_MAX and ATC_ACCEL_R_MAX) as well as the angle Ps (ATC_ANG_PIT_P and ATC_ANG_RLL_P) were still pretty high for that large copter.
Perhaps I should also mention, that during the AutoTune there were some messages saying “AutoTune: failing to level, please tune manually”, but the process continued without visible problems and finally succeeded.
With these settings, the reaction to stick commands in AltHold feels very tight and it did not oscillate. When switching to Loiter, oscillations were not as visible anymore as before (after first AutoTune), but still audible after short stick impulses. May be, this could also be solved by tuning the position controller, but that’s another story…
So I decided to manually lower the relevant values stepwise. After several tests, the following settings feel ok and do not result in visible/audible oscillations after short stick commands in Loiter any more:
Roll Angle P: 7.0, Max Accel: 48000
Roll Rate: P: 0.115, I: 0.115, D: 0.0028
Pitch Angle P: 7.0, Max Accel: 48000
Pitch Rate: P: 0.115, I: 0.115, D: 0.003
Regarding the FFT settings for the inflight FFT, these are my current values after the last flight:
(some of the values are “learned” results)
The trick in this case seemed to be to set the “FFT_MAX_HZ” value slightly lower than the first harmonic (fundamental hover frequency was around 32 … 35 Hz and first harmonic was around 65 … 70 Hz - just to make clear what I mean, because ArduCopter seems to use other naming conventions for these peaks). Further adaptions were made at FFT_HMNC_FIT (changed from 10 to 20) and FFT_HMNC_PEAK (changed from 0 to 2) and FFT_WINDOW_OLAP (changed from 0.75 to 0.5).
During a longer flight with altitudes up to 100m, this was the resulting FTN1.PkAvg graph:
The determined peak frequencies during the flight seem a bit lower than expected (may be, due to the changed setting of FFT_HMNC_PEAK from 0 to 2), but at least, they are not as far off than before.
The CPU load of the Pixhawk 6X (H7) with these settings was around 33%.