# How bad does a P controller affect system?

I think I am in the correct forum… Should I have put this in the General Discussion Board?

Anyway, I am currently working on my quadcopter project, although I haven’t implemented any algorithm or radio yet due to personal reasons.

I downloaded an app to help me understand PID control better since I had no means to test. Along with this I read some stuff online and found no.com. I finally sort of wrapped my mind around this algorithm after struggling to understand whatever calculus Wikipedia gives me (come on, I am 16 and in Alg 2!)

I noticed from the app and online that a P controller is enough to control a system, but I also noticed that whatever component I may use (in my case an ESC and motor) that it might break.

I mean, look at the output! App glitched, but here are some sample graphs

Hi JeromeAriola,

I found Brett Beauregard's tutorial a good introduction to using PID controllers: http://brettbeauregard.com/blog/2011/04/improving-the-beginners-pid-introduction/.

The P term is simply the difference between your setpoint (from the pilot) and your input (from your gyroscope) muiltipled by some gain factor Kp.

The main thing to understand is that the PID doesn't care what your units are, so long as the setpoint and inputs use the same. What you're interested in is the PID controller's output. On your quadcopter the setpoint and input can be in either degrees/s, radians/s or centidegrees/s, so long and the setpoint and input use the same. You just increase or decrease the gain Kp until the output is at the value you require.

So the formula for the P controller is just:

P Controller Output = Kp * (pilot's desired rotational speed - gryoscope's measured rotational speed)

On a quadcopter are three control loops one for roll, pitch and yaw.

The output from the three control loops are simply added or subtracted from the raw pilot throttle value for each motor. To prevent the signal becoming too large or too small you can just constain (in software) the signal to each ESC, (usually between 1000us and 2000us PWM pulse widths).

MartinL: So the formula for the P controller is just:

P Controller Output = Kp * (pilot's desired rotational speed - gryoscope's measured rotational speed)

On a quadcopter are three control loops one for roll, pitch and yaw.

The output from the three control loops are simply added or subtracted from the raw pilot throttle value for each motor. To prevent the signal becoming too large or too small you can just constain (in software) the signal to each ESC, (usually between 1000us and 2000us PWM pulse widths).

Thanks; this provides so much help