固定翼 PID 调参指南

This guide explains how to tune the fixed_wing PID loop.

This guide is for advanced users / experts only. Incorrect PID tuning may crash your aircraft.

All parameters are documented in the Parameter Reference. The most important parameters are covered in this guide.

Establishing the Airframe Baseline

If a pilot capable of manual flight is available, its best to establish a few core system properties on a manual trial. To do this, fly these maneuvers. Even if you can't note all the quantities immediately on paper, the log file will be very useful for later tuning.

This guide will use these quantities to set some of the controller gains later on.

Tune Roll

Tune first the roll axis, then pitch. The roll axis is safer as an incorrect tuning leads only to motion, but not a loss of altitude.

Tuning the Feedforward Gain

To tune this gain, set the other gains to zero.

Gains to set to zero

  • FW_RR_I = 0

  • FW_RR_P = 0

  • FW_RSP_OFF = 0

Gains to tune

  • FW_RR_FF - start with a value of 0.4. Increase this value (doubling each time) until the plane rolls satisfactorily and reaches the setpoint. Back down the gain 20% at the end of the process.

Tuning the Rate Gain

  • FW_RR_P - start with a value of 0.06. Increase this value (doubling each time) until the system starts to wobble / twitch. Then reduce gain by 50%.

Tuning the Trim Offsets with the Integrator Gain

  • FW_RR_I - start with a value of 0.01. Increase this value (doubling each time) until there is no offset between commanded and actual roll value (this will most likely require looking at a log file).

Tune Pitch

The pitch axis might need more integrator gain and a correctly set pitch offset.

Tuning the Feedforward Gain

To tune this gain, set the other gains to zero.

Gains to set to zero

  • FW_PR_I = 0

  • FW_PR_P = 0

  • FW_PSP_OFF = 0

Gains to tune

  • FW_PR_FF - start with a value of 0.4. Increase this value (doubling each time) until the plane pitches satisfactory and reaches the setpoint. Back down the gain 20% at the end of the process.

Tuning the Rate Gain

  • FW_PR_P - start with a value of 0.04. Increase this value (doubling each time) until the system starts to wobble / twitch. Then reduce value by 50%.

Tuning the Trim Offsets with the Integrator Gain

  • FW_PR_I - start with a value of 0.01. Increase this value (doubling each time) until there is no offset between commanded and actual pitch value (this will most likely require looking at a log file).

Adjusting the Time Constant of the Outer Loop

The overall softness / hardness of the control loop can be adjusted by the time constant. The default of 0.5 seconds should be fine for normal fixed-wing setups and usually does not require adjustment.

  • FW_P_TC - set to a default of 0.5 seconds, increase to make the Pitch response softer, decrease to make the response harder.

  • FW_R_TC - set to a default of 0.5 seconds, increase to make the Roll response softer, decrease to make the response harder.

Last updated