PHOTOS VIDEOS RESUME HOME BLOG PROJECTS

Rumble Robot Arduino Hack 


Want to build your own Rumblebot? Great! Let's get started.

First, find a Rumble Robot on eBay, a thrift store or a yard sale.
You can get them for $5 - $20 each.

You will also need an Arduino micro controller, a Parallax PING sensor,
an LED, a micro switch and a 100 ohm resistor.

You can buy an Arduino for about $30 from many suppliers.
Click here for a list of world wide sources.

The Parallax PING sensor is an ultrasonic device that can sense distance. They are made by Parallax, a very good source for robotics supplies. You can purchase one directly from Parallax or from Radio Shack for about $30.

You will also need the Arduino software and a computer with a USB port to upload code to the Arduino.
You can write the code yourself, or simply use some free code I've made available. Open the link below, copy the text and past it into a new window in the Arduino software. Save the sketch as "rumblebot ping bump. Get the code here.

Now let's get inside the robot and get to work.

First, let's look at the pin outs on the main board inside the robot. You can gain access to this circuit board by removing a small screw on the back of the robot's head. It's located at the bottom near the base as seen in photo # 1 below.After removing the screw, slide the head forward to release it from a retaining tab located at the front. In photo # 2 we remove the white connector from the circuit board and set the head aside for now.
In photo # 3 , you can see the "black blob" micro controller soldered to the circuit board.
The main pins we're concerned with are the four that operate the drive motors. They are connected to an on board "H-bridge" which will allow us to trigger the motors to rotate forward or reverse, by applying a positive voltage to one of two wires for each motor. One for forward, one for reverse, on EACH motor.

They are connected as follows:
Pin 1.0    Left motor FORWARD
Pin 1.1    Left motor REVERSE
Pin 1.2    Right motor FORWARD
Pin 1.3    Right motor REVERSE

In photo # 4 we see the ground wire which is connected to the pin I've labeled in the photo on the white connector and the other four wires soldered in place.

Following the schematic in photo # 5,(click here for a PDF of the schematic) wire everything together. Make your wires at least 5" in length to make it easier to mount everything up.

NOTE ON THE EUROPEAN VERSION:
A  robot builder from Europe has informed that the EU version requires that you connect pins 5 & 6 ( white & grey wires respectively) together in order for the motors to function. An option is to just leave the original on/off switch connected. You can see these wires in photo # 2 on the white connector.

Now we need to mount the PING sensor, bump switch and Arduino. I gutted the head on mine and mounted it there. LOTS of work, but it sure looks cool!
To save time you can simply mount everything on top of the chassis where the head used to be and mount the bump switch on the front. I used a micro switch and glued on some pieces of wire from a paper clip as whiskers.
The whiskers on the switch should extend  left and right the same width as the robot. Add one more whisker pointing down close to the floor. These will help the bot avoid anything that might not return an echo from the PING sensor. Make sure the PING sensor points towards the front and is at 90 degrees to the floor.
The LED connected to pin 13 blinks each time the PING scans and it can mounted anywhere you like. The power switch is optional and simply goes in line on the positive battery lead. Finally, install 4 AA batteries in the battery compartment on the bottom of the robot.

Now that everything is assembled, we're ready to upload some code to the Arduino.
Connect the USB cable to your computer and plug the other end into the Arduino's USB port. Set your robot on a riser so the wheels don't touch anything and power up the Arduino. Open the Arduino software, open the sketch you saved called "rumblebot ping bump" and upload the code. After it's uploaded, power down the Arduino, disconnect the USB cable, set the bot on the floor and power up the Arduino. It should start to drive forward with the LED blinking. As it gets within 30 cm of and object, it should turn away and keep driving forward. If it hits and object and triggers the bump switch, it should stop, reverse it's direction and turn, then proceed forward.

Watch the video tutorials below. 

Have Fun and see you at the Maker Faire! 

 See me at Maker Faire!

.

Click on a photo below to view large version.

Photo # 1
Head removal
Photo # 2
Connector removal
Photo # 3 Pin outs
Photo # 4 Arduino connections
Photo # 5
Wiring schematic.

© 2009 Dean Segovis - All Rights Reserved