PPID - arthurbenemann/ardupilot GitHub Wiki

http://ardupilot-mega.googlecode.com/svn/ArduPilotMegaImages/missionplannerPIDsAPM.PNG

The basic APM code is designed to fly some typical small and medium-sized aircraft, such as the EasyStar, SuperStar and Skywalker, well with the default settings. But if you're flying a different airframe or have an unusual configuration, you may need to tweak the settings. Most of these fall into the category of "Propotional Integral Derivative" (PID) constants, which refers to the sort of control algorithm that APM, like most autopilots, uses (you can read more about PID controllers here).

This is a bit of a black art, but some basic tips are here.

The Mission Planner provides an easy graphic interface to change most of APM's PID settings. Using it is pretty self-explanatory (make the changes you want, then click on "Write PIDs" to save them APM's EEPROM memory), although the meaning of each setting is not. Please see this page for explanations of those. Someday smart Adaptive Control will do this automatically, but sadly not quite yet. Maybe in APM 3.0!