Introduction: Arduino Robot for Lowest Cost

Picture of Arduino Robot for Lowest Cost

SEE ME AT THE NYC MAKER FAIRE!

It all started with this:
 Arduino Robot Challenge: How inexpensively can you create a robot using an Arduino for 5th Graders?

 I hope that this instructable has a certain elegance to its simpleness and will convince you to build your own and get some kids excited about technology with it!
Video of robot in Action!
 
Video -  Beta version:  improved front swivel (works on various floors better) and ENTER the pug named Mabel!

NEW - Wixel version in wall following mode!

 

<a href="http://www.makezine.com/go/makerfaire"><img src="http://cdn.makezine.com/make/makerfaire/newyork/2011/banners/mf_newyork_150X60_seeme.gif"See me at Maker Faire!" width="150" height="60" border="0" /></a>

Step 1: Whats Needed....

Picture of Whats Needed....

The lightbulb moment in this project was when I realized that I could use the DC motors within the K'nex Flash Robo Battlers for my robot drives.

- K'nex are familiar to kids. 
- They are inexpensive and readily available at the big box retailers (no shipping charges).
- The motor comes with a clutch and is a very durable and kid safe module to build a robot around.

So the BOM:

- 2 K'nex Flash Robo Battlers, $10 each at Walmart, Target, etc.
- Arduino Uno, approximately $30 at the MakerShed.
- Breadboard, switch for collision detection and jumpers from Radio Shack, less than $20.
- BOM from the H-bridge driver project at ITP. (the H-bridge driver chip cost about $3 plus shipping...wish I could have found this close by)

Step 2: Hack the K'nex Motor Drive

Picture of Hack the K'nex Motor Drive

Ok, first objective is to get a right and left drive motor for the robot:

1. Remove 5 screws.
2. Slice through the K'nex label so that you can split case open.
3. Open case with the "top" up, fewer things will fall out.  I have a video of the innards...this was a challenging part of this project...pay careful attention.
4. Now you can take out the motor, battery contacts, and circuit board.
5. Solder leads onto the motor, and to the battery post.

Step 3: Trim Motor Case for Wires

Picture of Trim Motor Case for Wires

It was hard for me to show this.  You will need to remove plastic wherever the wires get in the way.  You can route and tuck the wires in similar places to the originals.  Goal is to get the 4 wires out the opening that had the switch of forward/off/backward.

Using the battery contacts was a later inspiration, allowed me to eliminate the need for a battery case.  It also means the weight distribution is good.

Step 4: Test the Motor Drive

Picture of Test the Motor Drive

Open source means a mechanical engineer like me can cannibalize from the smart electrical people out there.

I tested my motor using this project.

AND

This project at ITP, they have great tutorials on Arduino's, and basic electronics.

Step 5: Now the Easy Part...

Picture of Now the Easy Part...

Build a robot!  However you want...and add sensors...I used a Sharp IR sensor for distance measurement to follow a wall.

I then used Scratch 4 Arduino (S4A) to control the robot in a tethered mode. You will need a specific patch of Citilabs S4A.

I tried a bluetooth link that was no good and then I tried Xbee and my challlenged brain couldn't get it to work.  Then I found the Wixel product at Pololu.  It was a piece of cake with their documentation.  I would suggest using this.

 So now I have a robot for not much money that can be "created" by the students using the building blocks of a K'nex kit.  Then they can program in a drag and drop mode in Scratch!

Sweet!

Thanks for checking this out...shouldn't I win a Makerbot for this?  It would be an incredibly helpful part of our afterschool program!

Comments

peregrin5 (author)2014-06-23

I was trying to download those sb files for scratch for arduino. They tmp files now for some reason. Can you reupload them?

doncrush (author)peregrin52014-06-23

Please visit the creating site:

http://s4a.cat/

peregrin5 (author)doncrush2014-06-24

I'm also having trouble getting the two dc motors to run at the same speeds in unison. I understand that this is due to natural difference in the manufacturing process, but one motor runs about 1.5 times faster than the other. Is there a way to correct this? I was reading into pulse with modulation but I'm kind of lost.

doncrush (author)peregrin52014-06-26

Yes, I have had that issue also. I am not sure if the version of S4A that I used is still available, it had an analog output that set the motor speed. The latest official version of S4A that works with servos doesn't allow changing speed. I was able to do some balancing by changing the PWM setting via the S4A analog output that went to the PWM pin on the Hbridge...but even that varied forward vs. reverse. I have had some robot experts say the best way to overcome tracking problems is to use 4 driven wheels, though I haven't experimented with that solution. A good primer on PWM is inside of http://www.makingthingsmove.com/about-the-book/

sholtob (author)2011-12-13

you could have used a smaller arduino like the sparkfun pro mini or an arduino nano, they are bothe quite alot cheaper than the uno

doncrush (author)sholtob2011-12-13

Good point. I am a newbie and trying to minimize any potential issues since we are working with 5th graders that do stuff like incessantly push the reset button while you are running demos...glad that my teaching partner noticed that, I thought I was losing my mind!

sholtob (author)doncrush2011-12-13

the uno is also easier as you dont need to solder headers on if you want to reuse it, but the title is a little misleading

doncrush (author)2011-09-10

Video thanks to Wendy!

asd32gfg5 (author)2011-07-01

Can you please give more details about your circuit in step 4? You give detailed instructions on how to open up the knex motor and then completely skip over the arduino circuit...lol :)

doncrush (author)asd32gfg52011-09-10

Updated PDF (outputs re-arranged)

doncrush (author)asd32gfg52011-07-04

http://itp.nyu.edu/physcomp/Labs/DCMotorControl

Can you tell I am a mechanical engineer?  And a total slackhacker when it comes to circuits.  The link above helped me figure it out.  Take a look at this page and see if you get it figured out.  If not let me know.

Thanks for asking!

doncrush (author)2011-05-06

Note: school hallways are really dusty...these wheels did not get good enough traction to turn...weekend project!

About This Instructable

21,478views

26favorites

License:

Bio: A mechanical engineer, instructor at Thaddeus Stevens College, and lifelong maker. Thanks Dad! A founding member of make717. Check them out at www.make717.org
More by doncrush:3d Printed Replacement Puzzle Piece3d Printed Lithophane - Step by stepLEDs For Kids!
Add instructable to: