View Single Post
  #4   Spotlight this post!  
Unread 25-03-2009, 21:12
dnguyen3725 dnguyen3725 is offline
Engineering Mentor
FRC #0687 (Nerd Herd)
Team Role: Mentor
 
Join Date: Mar 2009
Rookie Year: 1999
Location: Manhattan Beach, CA
Posts: 1
dnguyen3725 is an unknown quantity at this point
Send a message via AIM to dnguyen3725
Re: PID on a one directional Shooter

If your controller is overshooting your setpoint as you are describing then you could have an underdamped system. You can add some damping by implementing D control. To understand why, you can think about your system as a free swinging frictionless pendulum. With no damping, the pendulum will continuously swing and will settle on a set point. If you add a little damping (e.g. friction) the pendulum will eventually settle on a point. Add enough friction and the pendulum will swing directly to a point without overshooting at all. You can think of D control like adding virtual friction to your system. You'll notice that the equation for D control and the equation for friction are the same with your D gain equivalent to the coefficient of friction.

However, unless you have a relatively heavy wheel with low friction bearings I would suspect that the mechanical system itself has enough damping to prevent the kind of rail to rail oscillation that you are referring to. I would guess that P control is sufficient. When you say "extremely low" for your P gain, what do you mean? How "high" or "low" this value is would depend on the units you are using for your inputs and outputs. Don't be afraid to set this value even lower. I believe my students tuned our robot's shooter with a P gain in the 1e-5 range.

I hope this is helpful.