Find Me
Follow Me
My Shots

Support Me!

Entries in Code (2)

Monday
Mar302009

Designing a PID (Making your robot get from point A to point B smoothly)

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.

Click to read more ...

Friday
Feb202009

We just can't leave things well enough alone.

As you may find, there's a developing theme, here at the NC State Underwater Robotics Club we're good at finding solutions that come close enough to our needs that they can be made to work. You may also find... we usually make them work. Todays post is on dealing with PWM signals from an Arduino to an Seabotics Brushed motor. This presented a couple of complications.

Click to read more ...