Introduction: Build an Autonomous Wall-E Robot
First a little introduction, watch the vide: http://www.youtube.com/watch?v=OJiMUzJHYFk
I started off with the toy titled "Interactive Wall-E". Available at toys'r'us current price $34.99
I am a robot hobbiest and have a lot of expierence with the programming and design to give robots expression and life. The first bit advice I can lend is to be confident. Second advice is to be creative. Together, you're mind will figure out the rest for you :)
There are plenty of peices available to you. My workshop is nothing special. I keep a supply of parts that are low cost. I usually collect items from disassembling other toys :) . Sadly, servos are the most expensive parts of the bunch.
For fasteners I use Zip Ties and an arragement of small screws, bolts and nuts. All are available in cheap combo kits at your local hardware store.
To modify the casings, i use a speed adjustable dremel and sometimes my soldering iron to melt plastic. For dremeling, please keep a vacumn nearby. *Warning: For melting, keep a window open with a fan!!
Also, if you choose to melt plastic peices, use a seperate bit on your soldering iron. The plastic will burn to the tip and make soldering a pain in the butt!
Now for the programming part... This is actually very easy. I do my programming for my robots using the EZ-Robot Project and the EZ-B Robot Controller. It does not require any programming. You can just plug in your servo motors and control the robot from your PC. It also contains voice recognition and a bunch of other neat features. You can get it here: http://www.ez-robot.com
Here's a video of Wall-e in action...
Here's a cute video of Wall-e falling over while chasing his ball :)
Step 1: Parts
Okay hopefully you've created a nice work area. Someplace with a table/bench that you don't mind getting dirty/burning/scratching/etc. (ie don't use your dining room table!)
Here is a list of the parts I used...
- 1 EZ-B with SDK or EZ-Builder software
Available at http://www.ez-robot.com
- 2 Parallex modified servos for the drivetrain
Available at: http://www.hvwtech.com/products_view.asp?ProductID=114
- 1 GWS Standard servo for the head (Left and Right motion)
Available at: http://www.hvwtech.com/products_view.asp?ProductID=878
- 2 GWS Pico servos for the arms (Up and Down motion)
Available at: http://www.hvwtech.com/products_view.asp?ProductID=863
- 1 GWS Micro servo for the head tilt
Available at: http://www.hvwtech.com/products_view.asp?ProductID=862
- 2 Sharp Analog Distance Sensors
Available at: http://www.hvwtech.com/products_view.asp?ProductID=88
- A collection of 3-Conductor Servo Cables
Available at: http://www.hvwtech.com/products_view.asp?ProductID=690
- 1 Box of assorted small screws/bolts/nuts
Available at your local hardware store
- 1 Hobby Hot Glue gun
Available at Walmart or hobby store
- 1 bottle of krazy glue
Or any type of good strong plastic glue
- 1 Soldering Iron
I use an adjustable temp range soldering iron, which is costly but recommended. Sometimes you can come across these used in bargain classifieds or at electronic supply surplus shops.
- 1 Case of Jeweler Screw Drivers
Avaiable at walmart or any hardware shop
Step 2: Take the Toy Apart
Using your screw driver set, you'll want to disassemble the entire toy. Keep track of how it came apart, because the goal is to re-assemble :) ..
*Note: It is not neccessary to take apart the Eye Encloser. The wires from the Eye Encloser can be connected to your micro.
Step 3: Arms
You'll need to mount the servos onto the top part of the toy's case. This is going to be your first modification to the body. Hold the two mid sized servos to where the original arm mechanism was and notice how to fit them.
The photo on this step shows a mounted servo, and the original mechanism. You'll of course want to have both servos mounted, one for each arm.
Use the dremel to cut away the plastic on the ends to fit the servos. Make sure you use a low speed on the dremel. Drill Style cutting bits work best.
- I used the glue gun to create a nice tight fit for the servos.
- I then melted two tiny holes in the plastic to fit small screws for additional support.
Mounting the arms to the servos is a little tricky. I don't have a clear photo of how i did it, but be creative. The servo packs come with a variety of bits and extensions. Be creative with those extensions. I took a 4 arm extension and trimmed it down to fit within the arm. No glue or screws were neccessary.
Also, once you figured out how to mount the arm to the servo, make sure the servo and arm are both in the centered position. Becuase remember, the servo doesn't spin 360 degrees. It has a Start and Stop position! So for full movement, you're not going to want the arm mounted at bottom of the servo's positioning, or it will only be able to go up from that point :)
Step 4: Mounting the Head/neck
The neck will mount to the GWS Standard servo. This will allow it to move left and right.
*Note: Like the arms, the servo needs to be centered ;)
I used a combination of the dremel and soldering iron to flatten the neck adapter. I then melted 3 small holes to fit screws onto the circular servo accessory.
To fit the servo and mounted head bracket, you'll need to dremel the hole larger. Also remove and break off any plastic peices that prevent the servo from sitting flush againt the plastic.
Recycling some of the wall-e screws and mounting locations, you'll be able to mount the servo.
When I mounted the head to the neck bracket, I used a zip tie temporarily. I later replaced it with a bolt and nut.
Step 5: Drivetrain - Part 1
Now let's give wall-e some wheels!
So the toy doesn't have any motors or drivetrain. It's a push toy. So you'll need to be very confident and creative here.
Twist and turn the wheels until the metal axel breaks loose. It's quite a struggle! I ended up using a dremel and cutting most of the pastic away that attached the axel to the wheels. You're going to want the inside of the wheels flat anyway, so don't worry :)
Now we're going to simply pry out the center cap on the wheels. This will expose a philips head screw. Remove that screw and the wheels will come apart.
Using the 4 arm accessory of the Parallex Modified servos, melt corresponding holes into the inside of the wheels. Use small screws and attach the 4 arm accessory to wheel.
Trim off any part of the servo accessory that sticks out using the dremel.
Do both sides the same.. Look at the pics :)
Step 6: Drivetrain - Part 2
Okay now we're going to mount the drivetrain to the case. This is exciting becuase it's a lot of dremeling!
Take a good look at the pictures and see how much to cut away.
It's best to take this part slow. I use a marker to outline where to cut. ... I cut a little, then measure, cut a little, then measure. Etc...
Once the servos fit flush and the mounting bracket fits to the case, then you must be close! Sweet!
To mount the servos, i first used a bead of hot glue gun to hold the servo in place. Glue guns are great because they'll provide a temporary mount, but not permenant by any means!
To securely mount the servos, i used zip ties! I used the nice fat zip tie, and a pair of plyers to tighten it up solid.
Yay next step!
Step 7: Distance Sensor & Assembly
I supposed you'll want your wall-e to see. So did i!
So I used one of the sharp distance sensors mounted on his neck. I had to dremel a bit of the sensor housing to make it fit flush.
Maybe melt/drill a little hole through the top plastic of the box to push the wires through.
The wires that come with the sharp sensor are very small and easily break from fatigue. I replaced the wires with the Servo wire/plug combo that is listed in the parts.
I use those servo wire/plug combos for everything.. LCD's, Speakers, LED's, etc...
Tuck all the wires through their holes when you assemble the unit.
Step 8: Head Tilt
Nothing makes Wall-e come more alive then his eye tilting. It adds a lot of character to his personality.
The eyes of the toy is tiltable by hand, but not automated. I put a drop of Krazy Glue to hold both parts of the eyes together. That way, the servo moves both eyes. You may want to not Krazy Glue the eyes together for an even funnier expression.
I mounted the smallest servo of the parts list to the neck. Of course I used a yellow zip tie and some hot glue gun ;)
Then use a peice of hard wire from the servo arm to the head.
Also, the electrical wires from the servo are very short. I used the servo wire/plug combo to extend the wires. And covered up the solder joints with shrink wrap.
*NOTE: Do not attempt to move this tiny servo arm by hand! You will break the plastic gears inside. Trust me, I broke one by trying. If the peice isn't lined up, simply remove the arm and attach it in line. DO NOT TRY TO MOVE IT.
Step 9: Circuit and Programming
This part isn't the most difficult because I am using the EZ-Robot project. It is a robot controller board that connects to your computer over bluetooth. The robot board comes with software called EZ-Builder. The software allows you to control your robot without needin to program. You can also add a bunch of other features, including voice recognition.
Here are a few links to get you started..
Form for Questions: http://www.ez-robot.com/Community/Forum
How A Servo Works: http://www.ehow.com/how-does_4970258_how-servo-motor-works.html
Step 10: Your Robot!
In autonomous mode, my Wall-e creates a 2 dimensional map of objects around him. This prevents him from getting stuck or backing into objects. The theory and logic behind this technique is difficult and the implementation can be very challenging.
In addition to his enviromental awareness, his personality is also complex. His actions, movements and modes are not entirely random. He collects points and begins to favour successful actions. Much like you would expect a pet.
It's taken years of observing, programming and pulling my own hair to figure a lot of this out. Start slow, and be creative. Figure out ways to add personality quirks to your robots that bring them to life!
Step 11: Battery.. POWER!
Because my wall-e does have 6 servos and a microcontroller, his power consumption is high.
Due to size constraints, i was limited to a small battery.
My choise was a 2000mha LION 7.4v cell. LION batteries don't like to be drained, so be prepared for a low life expentency.
The 2000mhz battery gives my wall-e about 60 minutes of life between charges.
You can purcahse your battery at any Battery Depot or similar outlet.
Step 12: Enjoy!
I hope you enjoy your new robot. For more information about my projects and robots, please feel free to visit my website at http://www.dj-sures.com/robots