Designing a PID (Making your robot get from point A to point B smoothly)
Monday, March 30, 2009 at 10:56AM A PID controller is a piece of code which is designed to help your robot move smoothly. It's roots come from a "critically damped" second order differential equation. After, stating that, I'm going to try my best to stay away from getting overly mathy in this description of a PID. To make it easier to explain, I'm going to use my specific application of reaching a certain depth as the system by which the PID was acting on.
So here's the problem, we have Seawolf floating at 1 foot below the surface, we want it to head down to 5 feet. There's a few ways to go about this, we could simply design a basic controller that would turn the motors on and then kick them off when we got to 5 feet, but the Seawolf is naturally buoyant, meaning the motors would kick on, then off, then on then off, granted, we could figure out power is needed for the motors to hold steady, but every time we changed the load at all it would be totally thrown off. Also, we're engineers, we're smarter than a dumb system that has to keep oscillating, and besides, we're trying to be nice to the vision system here.
Matthias |
5 Comments | 