Intro: SPROT, My SimPleROboT
in this instructable i will show you how to make a very simple robot, using an arduino. this robot could be the base for a wide range of projects, i am planning on adding LDRs to mine so it can seek put light and also follow a line. it uses a small shield I made out of a piece of stripboard on the arduino so i can easily remove it from this robot and use it in other projects. this also means that there is no danger of the wires falling out as it often bumps into things!
Sprot is an acronym of SimPle ROboT
Step 1: What You'll Need
2x geared motors http://www.hobbytronics.co.uk/robotics/worm-drive-gearbox
motor driver chip (http://www.hobbytronics.co.uk/motor-control/h-bridge-driver-sn754410 or you could make your own out of transistors)
medium sized piece of perfboard
small strip of strip board
ir distance sensor (http://www.hobbytronics.co.uk/sensors/sensors-proximity/sharp-distance-sensor-10cm)
wheels (i used mechano wheels but you could easily make your own)
glue(bostik and superglue)
battery casing +batterys
Tools you might need:
Step 2: Making the Chassis
the chassis of the robot is where the motors are held onto the rest of the robot, it is a piece of perfboard with the motors attached to the back using superglue, I origionally used bostik but it was to bendy and kept coming loose so i used a craft knife and scored lots of lines onto the base of the motor holder and the perfboard, this helped the superglue to grip the two parts and hold them together. I also used two right angle brackets from the same mechano set that I stole the wheels from and they are superglued in place. It would be much more secure to drill into the perfboard and screw the motors on but I didn't have a drill bit that was the right size.
the axles on the motors had to be cut down so the would ft side by side, you could use the hacksaw to do this.
The marble caster at the front was made out of a marble and some gardening wire, the wire was wrapped around the marble leaving the tip exposed, I then soldered two leads coming from the marble onto the perfboard.
Step 3: Wheels
i eventually used wheels out of a mechano set, i origionally meant to make them, the robot in this instructable is the second one that I made, the first didnt really work, the motors weren't strong enough but I made wheels for it out of bottle caps with elastic bands wrapped around them, I made a hole in the centre of the cap with an old soldering iron and glued a pulley wheel into this hole with bostik, this made a really grippy wheel, I originally intended to do this for the larger axles on my geared motors but i couldn't find pulleys with wide enough holes, this meant I had to use the wheels from my mechano set which fit perfectly onto the axles.
Step 4: Controlling a Motor
i used a H-Bridge Motor Driver 1A - SN754410 chip to drive my motors, each chip can drive two bi-directional motors, i used the schematic to bild the circuit on a breadboard then soldered it onto the perfboard the motors are attached to. you could easily make the an h-bridge out of transistors but it would take up much more space than the chip on the board.
you may want to use a heat sink if your chip heats up excessively, mine does slighlty but as I only run it for a few minutes I decided it wouldnt be necessary
Step 5: IR Distance Sensor
the ir distance sensor is a very simple sensor, it is either of or on, if it is of it sends out a signal of 1 but if it is on it sends out a signal of 0, it cannot say how far away something is but only if something is there, It has a red led on the back that light3s up when something is present, this is a very nice feature as it makes trouble shooting much easier. it is attchd to pin 9 on the arduino and the other two pins to the 6v power supply from the battery
I anyone else build a robot like this I recommend they put the sensor in the middle and set the caster back a bit, it would work much better if you are only using one, as I am planning on adding another sensor to the chassis on the other side that doesn't really matter to me
Step 6: The Brains
the robot is controlled by a freeduino, this is an arduino clone and uses the arduino IDE, you could also use a picaxe or other mirocontroller, it takes binary data and uses that to controll the motors through the h-bridge. I made a basic arduino sheild by scoring a line across a piece of perfboard then soldering headers onto it, it covers pins 8 to 13 on the to and the first four pins on the bottom row allthough only +5 volts and ground are actually used, the arduino is powered by th 4 AA batterys which are soldered onto the stripboard onto the correct polarity. The H-bridge takes 4 inputs to controll the motors, i used pins 10, 11,12, and 13, 10 and 11 have PWM so that means the speed can be controlled, so you can controll the speed going forward but not back, i have added notes to the schematic of the H-bridge showing which pins are soldered onto where.
Step 7: The Breadboard
the breadboard is optional but I think that it is useful if you want to quickly try something out on the robot but didn't want to solder it permanently, it also makes experimenting much easier as this is what I plan to do with the robot. I is attached by a piece of plastic tube that lifts it to the heigh of the motors, it is taped onto a piece of thick cardboard which also has the arduino attached to it, there is a hole cut into the bottom of the card which the tube fits into and the arduino is held onto the back with electrical tape.
Step 8: The Battery
the project uses 4 AA batterys, this delivers slightly more than the 5v that the arduino needs but that doesnt affect it, I used a battery holder that doesnt stack the battery's, if ou make this robot ou would probably b better of with a shorter fatter battery holder that stacks the battery's. the battery's are also important as they act as a counterweight against the heavy motors, if you where considering powering a robot like this with a lighter battery (eg. a lithium polymer battery) it might not be heavy enough to act as a counterweight
Step 9: Possible Improvements
This is a very simple robot and that means here are lots of ways you could improve and extend its functionality, I am planning on adding another distance sensor, as well as two positionable photo resistors, this would allow the robot to follow a line or search for the brightest light, another thing might be a claw that can collect things or possibly a mini hoover to make it into a desktop roomba.