Thread: Tuning PID
View Single Post
  #4   Spotlight this post!  
Unread 22-01-2016, 17:43
plnyyanks's Avatar
plnyyanks plnyyanks is offline
Data wins arguments.
AKA: Phil Lopreiato
FRC #1124 (The ÜberBots), FRC #2900 (The Mighty Penguins)
Team Role: College Student
 
Join Date: Apr 2010
Rookie Year: 2010
Location: NYC/Washington, DC
Posts: 1,113
plnyyanks has a reputation beyond reputeplnyyanks has a reputation beyond reputeplnyyanks has a reputation beyond reputeplnyyanks has a reputation beyond reputeplnyyanks has a reputation beyond reputeplnyyanks has a reputation beyond reputeplnyyanks has a reputation beyond reputeplnyyanks has a reputation beyond reputeplnyyanks has a reputation beyond reputeplnyyanks has a reputation beyond reputeplnyyanks has a reputation beyond repute
Re: Tuning PID

Quote:
Originally Posted by TimTheGreat View Post
How much do I increase it by? 1?

And how do I know when the P value is tuned? It seems to work, but is there a way I could make it work "better"?
There's going to be a lot of guesswork involved, no matter what you do.

A good method to start with (it's in no way optimal, but often good enough), is the Ziegler-Nichols method.

Basically, set all three of P, I, and D to 0. Then, raise P (this can be by any amount, again, see guesswork) until there is oscillation around the setpoint. Then, increase D until the oscillation stops. If you're noticing a lot of friction in the system so it never quite gets to the setpoint, add some I to compensate.

Take note, however, that long arms are tricky. The gravitational forces acting to pull the arm down vary nonlinearly based on the arm position - this makes it difficult to control, since it's difficult to model. That's not saying it's uncontrollable, but it'll take more work to make smooth.
__________________
Phil Lopreiato - "It's a hardware problem"
Team 1124 (2010 - 2013), Team 1418 (2014), Team 2900 (2016)
FRC Notebook The Blue Alliance for Android

Last edited by plnyyanks : 23-01-2016 at 12:34.