The ArduPilot QuadPlane code now supports autotune for the VTOL controller PIDs. This uses the same system as the AUTOTUNE mode for copter. It should allow you to improve the tune without having to manually adjust PIDs.
This is still considered experimental so we would like some users to test it and see how well it performs. If you try it then please post logs below, and also describe how the flight performance of the aircraft in Q modes changes after performing the tune.
To try it out, load the latest plane firmware on your quadplane. If using MissionPlanner then use control-Q in the firmware load screen to access the latest firmware. Otherwise download an apj file from here:
To enable QAUTOTUNE do the following:
- load the new firmware
- setup QAUTOTUNE mode (mode 22) on one of your mode switch positions. It may not show up as an available mode in your GCS, so you may need to set the FLTMODEn parameter in the full parameter list
- select which axes you want to tune with Q_AUTOTUNE_AXES. As an autotune can take quite a long time (3 to 5 minutes per axis is common) you may wish to tune one axis at a time.
- choose whether you want position hold support while tuning. If you enter QAUTOTUNE mode from QLOITER then it will use a loose position hold, preventing wind from carrying it away while tuning. If you start from QHOVER then it will not hold position, and you may need to reposition while tuning
- it will only do tuning (“twitching” to measure responses) while the sticks are centered. You may need to increase the deadzone on your input channels or re-calibrate your RC channels to ensure it can start the tune.
- once you start the tune it will “twitch” on the axis it is tuning. So if it is tuning roll then it does small sharp roll movements to measure response.
- you can tell that QAUTOTUNE has finished when it stops twitching. You need to then land while staying in QAUTOTUNE mode and disarm without changing modes to save the tune.
- if you land in QAUTOTUNE and disarm after some axes have completed but the whole tune is not complete then the PIDs for the axes that have completed will be saved
- you can reposition while tuning by moving your sticks. Once you re-center the sticks the tune will continue
- if you change modes then the tune stops immediately
You can read more about AutoTune for copters here:
the autotune for quadplanes works the same way.
NOTE: QAUTOTUNE does not work on axes that need feed-forward. This means it doesn’t work on the pitch axis in tailsitters. If you want to QAUTOTUNE a tailsitter then make sure the pitch axis is disabled by setting Q_AUTOTUNE_AXES=5. If you do use QAUTOTUNE on the pitch axis of a tailsitter then you will end up with a very bad (completely unflyable) tune.