Let's Make Robots!

CD Cart

avoid obsticles

Parts list:

*  Arduino Diecimila
*  Sharp GP2Y0A21YK0F Distance Sensor
      Pin 1 => Analog 2
      Pin 2 => Gnd
      Pin 3 => +5V
*  1K 5% resistor (Brown Black Red Gold)
*  T-1 3/4 5mm Full Color LED (Radio Shack part #276-028)
      Pin 1 => Digital 9
      Pin 2 => 1K resistor => +5V
      Pin 3 => Digital 10
      Pin 4 => Digital 11
*  Pololu dual serial motor controller
      Pin 1 => +9V
      Pin 2 => GND
      Pin 3 => +5V
      Pin 4 => Digital 2
      Pin 5 => Digital 7
      Pin 6 => Left motor +
      Pin 7 => Left motor -
      Pin 8 => Right motor -
      Pin 9 => Right motor +
*  GWS mini servo
*  Old CD
*  Double sided foam tape
*  9V battery + case

This is just a simple obsticle avoiding robot.  I used a CD as the base.  Components are attached with double sided foam tape.  Seems to work well enough.

Front view

Side view

Top view

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
You should add a caster, it would keep it level.
It's just what I had on hand.  Actually, it took a while to program and get right, but the deceleration timing keeps it from flipping forward when it slows or stops.

Hey cool - I bet it is actually pretty fast with these motors.. And turn pretty fast as well!?

On a video I am sure it would look cool if you made it sop that whenever it SHOULD turn LEFT, it turned RIGHT - a complete spin, until it is where it would have ben if it was turning in the right direction.. If you know what I mean..

I think it is a little spinning devil! :D But is it?

Wow just saw that you are using 9V for all these things.. must run out pretty fast, no? 

/ Fritsl

It is fairly fast.  The spinning would be cool!  I will work on it!

Yea, batteries drain pretty fast, maybe 15 minutes of running.  Hooray for rechargables!

Do you have the budget for another IR sensor? I would put one pointing down towards the ground and use THAT to keep the bot level on the two co-axial wheels. IN fact, I might do that with: http://letsmakerobots.com/node/655.

God created the integers; all else is the work of man - Leopold Kronecker

That is a no-go, no can do:

These pager motors are fast and strong compared to size.. But no way strong enough to prevent a tilt.

The sensors are no way precise enough; They change the input depending on the surface, angle, and ambient light.

Also a small bump on the surface - where the sensor points, would make it tilt etc.

/ Fritsl

Yes. Never thought of that. Let's hear it for BIG MOTORS!! YAY!

How do you get so little space at the bottom of your messages? Every time I post there appears to be an indeterminate number of blank lines at the bottom of my message!

That may be your auto signature that has some returns left in it? 

Perhaps I should edit mine as well, it is quite obvious that this is written by.. 

/ Fritsl

It doesn't balance, it drags the back end.  I just ramp down speed as quick as possible to prevent tippping forward. 

int decelerateControl(int) {
for(int motorSpeed; motorSpeed >= 0; motorSpeed -= 50)
    mc_send_command(LEFT_MOTOR, FORWARD, motorSpeed);
    mc_send_command(RIGHT_MOTOR, FORWARD, motorSpeed);

 You can speed up deceleration by either lowering delay or increasing the step size.