The Ardupilot manual keeps saying to adjust the Servo PID gains, but shouldn't servos be fast enough to respond these days without gain tuning?

What is the difference between Mission Planner's Nav Roll PID, Nav Pitch AS PID, Nav Pitch Alt PID and their Servo PID counterparts? Shouldn't gain tuning involve the Nav PIDs more so than the Servo PIDs?

Does this have something to do with how the cascaded PID loops are set up? I still haven't been able to picture what the APM's cascaded PID looks like.

Views: 754

Reply to This

Replies to This Discussion

I believe I have read the Manual thoroughly and have not found a complete key to the parameters.  So, I have experimented and parsed the code to learn their effects.  I also have not found a detailed key to the log files.  I figured documenting the parameters and the log files was a place I could make a contribution.  Before I put some polish on what I've done, do these already exist and I just haven't found them?

Haven't found anything yet. I would've thought it would either be in the manual or at least in the PDE comments. I'd be interested to hear about your findings David.

The Servo PID gains as the name suggests are for your servos, and are adjusted to get good stable attitude performance from your ArduPilot Mega, IE not oscillating too much when in stable mode.

The NAV PIDs are for the navigation, so if you find that your aircraft is not following the path correctly, then you need to adjust them.


  • The P term is the primary tuning value.  This determines how the control deflection varies in proportion to the required correction.
  • The I term is used to control drift.
  • The D term is used to control overshoot.  Avoid adjusting this term if you are not familiar with tuning PID loops.

If you want to change anything always change them in small amounts and graduly tune them

What do you mean the PID gains are for the servos? There should be PID controller in the physical servos, but can the APM modify the internal (inner loop?) PID controller of the servos? 

the best way to set pids is like this
setup FBW-A

tune servo gains while using FBW-A , so there is no oscillating

then set crosstrack gain to 0. and tune your nav gains while in auto.

then finaly add back crosstrack so you get better line following.

Reply to Discussion


© 2019   Created by Chris Anderson.   Powered by

Badges  |  Report an Issue  |  Terms of Service