Simple and Cheap Robotic Projects?
siavash_of_stockholm asks: "I have a lot of spare time this so summer, so I've decided to be productive and make my own simple robot. It will come with some basic functions and it should move around without colliding or somehow avoid getting stuck in small areas and so on. I'd prefer to do this without using the popular Lego Mindstorm-kits and instead try to use a laptop and a controller card for the motors and a cheap webcam for vision. Has anyone in the Slashdot community made a similar project (on a tight student budget) and have some documentation of it they can share?"
at Wil Wheaton's (of Startrek fame) blog. He's working on an C3-P0 clone.
The laptop isn't a bad option, especially since you've probably already got it and the battery, but you might want to look at mini-ITX or nano-ITX, which will hopefully be available soon. They're smaller and probably consume less power.
LOAD "SIG",8,1
Johnny Sokko and his Flying Robot
http://www.dalekempire.com/GiantRobo1.html
Does your laptop have a parallel port? Here, here, and here are good places to look for schematics/project ideas. You can scavenge stepper motors out of dead hard drives and floppy drives. Here's a nice project that demonstrates building DC drive controller w/proportional speed control. Neat! I haven't built any such animals since my C64 and TI-994/a were new and shiny.
Here come da fudge!
Other than that, build it yourself. Take two servos (you can get 'em pretty cheap at hobby stores) or just two little motors (make an H-Bridge out of some transistors), add a microcontroller (PIC, AVR, or Basic Stamps are self contained), some simple switches or photocells and some random stuff (maybe some wood to make a simple frame or something) and you'll have a cheap robot that you can program and mess around with.
Comment forecast: Bits of genius surrounded by a sea of mediocrity.
Well, first the disclaimer - I know nothing about this project that I will link to, but was pretty interested in the same thing.
I've written a bunch of book reviews, including those on Slashdot, and some publishers are sending me now catalogs with upcoming titles as part of their reviewing program.
So, anyway, Wiley has this book with the robot kit, that they plan the next edition of some time this September, although the publisher told me before that the deadline might move into the future. I have not read the previous edition, nor have I played with it.
It seems to have received brilliant reviews on Amazon for that 1999 edition, so I'd suggest just perusing it and maybe buying the book+kit used if it's in buildable condition (i.e. not the robot that is already all built, polished, given guns and ammo, and right now just needs the ON switch to be turned).
Check out the Robot Store and pay attention to all the cool things like engines, logic modules, and memory wire.
Have fun, make me one too.
Glonoinha the MebiByte Slayer
If I'm not mistaken I believe that Scott Edwards is one of the most prominent of the latest generation of robotics pioneers. His SSC and other projects have (in my opinion) helped to shape the aftermarket/hobbyist robotics industry.
I wanted to give him due propers for his project back in 1996, but I never really had an opportunity (I was too busy studying women and beer at FSU at the time).
Don't think that a small group of dedicated individuals can't change the world. It's the only thing that ever has.
I wouldn't use a laptop, then you have to have a robot big enough to carry it around. You are also pretty much limited to the parallel port for I/O.
Look into microcontrollers (the most common are the Microchip PIC and Atmel AVR
A microcontroller will give you heaps more I/O pins, and PWM for driving motors, serial ports, analog/digital converters etc Both PICs and AVRs are available with all sorts of combinations of features.
There are plenty of resources available for both, look in newsgroups and search with google. GCC for the AVR is available for linux and windows so you can easily write C/C++ code for them. Also look into AVRfreaks
Look at the newsgroup comp.robotics.misc for other people doing similar things.
Good luck!
-Daniel
Also, if you are looking for a cheap means of mobility, consider building it atop the chassis of a cheap remote controlled car. this gets you a powered rear axle with a differential, plus a steering mechanism, a suspension and rubber tires. Other models feature independently controllable caterpillar style treads which can enable tighter turning radii.
Unknown host pong.
There is some book on robotics I read that uses a Palm Pilot as the brain of a robot. The catch is that you have to build a simple serial to parallel convertor so you can interface the Palm to the servos and sensors. An old plam can be gotten for $20-$30 and it has an IR sensor, display, fast cpu and lots of memory compared to a microcontroller.
Absolutely, I've thought of this, and intended to do something similar for a project a few years ago. I wanted to create a rover that could negotiate terrain using onboard AI with only user defined waypoints determining its path. To do it cheaply, I planned on using a remote control car with a wireless camera affixed to it on a rotatable base. The PC would control the rover via a parallel port I/O board connected to the remote control. The PC was to do the vision processing work.
Good plan, but I got bogged down in perfecting the AI for the vision processing and path finding. I had more fun with that than implementing the actual rover.
Here come da fudge!
I'm building a submarine using a PC/104 stack. Found almost all the parts on eBay, including a relay controller and 20 channel servo/stepper motor controller, as well as the PC/104 mainboard. This is exactally what I bought, but there are others.
My requirements are way different than yours, however. I'm going to require a rather large control program onboard the sub to reach the level of atonomy I'll need for deep dives.
Good luck to you.
Why is the parent modded down?
I have some experience building robots. It has been a few years though...
Those sites listed in the parent are neat and some good starting points. But I have some more...
---BRAINS---
I might recommend something like an old HP 100LX, 200LX or similar, or maybe an old Pocket PC or Palm. A robot large enough to hold a real laptop will likely damage furniture and walls when it hits (and it IS a "when" and not "if). You are much better off using something about the same size/wieght as a PDA. This also means smaller (cheaper) batteries, smaller (cheaper) motors, and a smaller and lighter frame. The only downside is that you get less processing horsepower, and debugging is not quite as nice as using an IDE on a PC. If you really want to use a PC, I would suggest using a microcontroller talking to your PC over a wireless serial link.
If you have the money to blow and want nothing but the best, use a PC104 card and a wireless ethernet interface. This will rapidly burn through your cash, though.
One great idea is to have a small microcontroller (cerebellum) board handle the motors and sensors, and use an RS-232 link to transfer this information to your more powerful PDA (cerebrum), which will do the actual behaviors. If you do decide to use the parallel port, you stand a small chance of blowing the outputs in your parallel port if there are any wiring mistakes. Also, your IO is very limited on a parallel port.
---SENSORS---
First, scrap the webcam unless you are looking to do something on the order of a Master's thesis. The human brain is good at taking a 2-d image and exctracting 3-d information from it. With a webcam, all you will get is three matrices of numbers, and it will take some VERY clever programming to get anything useful from that. Perhaps the best that you could do would be to have a "follow the red ball" type mode. A camera is close to useless as far as obstacle avoidance unless you are in a VERY structured environment (not your home). Shadows can be very problematic to most algorithms.
As for sensors, check out this site. I should disclose that this site is run by a former professor as a robotics lab that I used to hang out at. Check their sensors page for the hack of the IR receiver can. This is one of the best hacks that I have seen in that it takes a remote control receiver and turns it in an analog sensor. Very cool.
---MOTORS---
The other great hack is listed under the servos section of the above web site, and will tell you how to turn a $15 hobby servo into a geared DC motor. You do not have to buy anything from there, but the documentation is worth a look.
Avoid stepper motors. They are not very powerful, and they are power hogs. The ONLY advantage is that they do not need gears.
---CONSTRUCTION---
And if you do make a small robot, the near-perfect material is model aircraft plywood. It is light, inexpensive, easy to cut with hand tools, and easy to glue together using Zap-a-Gap glue. The wood and glue are available at your local hobby store, and use a hack saw or coping saw from your favorite hardware store.
---PROGRAMMING---
I hate to toot my own horn here, but here is a document that I wrote almost ten years ago, but is still useful as a general guideline on programming robot behaviors. Also, check out all of the handouts from this web site, which is the main site for a robotics class at the University of Florida.
It should be possible to do a robot for well under $300.
"-1 Troll" is the apparently the same as "-1 I disagree with you."
A GIRL Robot? This is gonna be the best prom ever!
Old floppy drives, especially 5 1/4", are good for stepper motors and controllers. Salvage them from old computers along with the power supplies. On the controller's edge connector there are three pins you need: ground, direction and step. You can drive these signals from the parallel port of your laptop. You can epoxy the motors to lego blocks or meccano or whatever other construction set. This is easy enough that you can get it going in an afternoon.
This may not be what you were thinking when you thought "robot" but it uses all the same control principles. Check out John Kleinbauer's site. He's got plans that are great for a beginner. I purchased his "Brute" plans and the really walk you through every step, from finding the materials to programming. I've changed so many things from the plan since I started building that it's barely the same machine, but the plans helped me to avoid problems I'm sure I would have hit without a framework from an experienced designer to follow. Using PVC, Delrin and aluminum as materials makes the construction fairly easy with a minimum of tools too. For one section where I needed an extra precise cut I had a local metal shop make the cut on their abrasive chop saw for me, but other than that the construction has all been done on the tablesaw and drill press. It's been a fun project.
If you insist on using a parallel port for control, use optical isolation on your board (the chips are cheap and easy to obtain), and, don't try to draw drive power from the port.
Words of advice from a proffesional...
Only on Slashdot would this be called "productive"...
Check out the Toy Robots Initiative at Carnegie Mellon's Robotics Institute. In particular, the CMUcam and Palm Pilot Robot Kit are worth checking out.
Evolutionrobotics.com has an interesting kit (ER-1). However they are discontinuing the ER-1 hardware and focusing on just software. So if you like it, you better buy one soon.
P.S. Anyone ever notice how in older movies (40's-50's) they called robots, "ro-bits"?
I'm surprised no one has suggested a Basic Stamp. Personally I have stopped using them because I started needing more power on my projects, but for simple robot platforms, they are a pretty good teaching tool. If you get a BS2 kit with one of the books to go a long with it, you'll basically have everything you need to get started. You wont have laptop control, but if you are interested in controlling it with a laptop I would try rentron and get some transmitters/receivers and play with making it wireless. The basic stamp is limited in it's ability, but its hard to find any other kind of robot kit that comes with an entire curriculum like anything from parallax does.
That is a good way to upgrade a lego robot for offroad capabilities.
Because that is what they are for...
Reason is the Path to God - Anon
http://www-2.cs.cmu.edu/~reshko/PILOT/
Has instructions and software ready made or you could base something different off of it. Pretty cheap also.
Facts do not cease to exist because they are ignored. -Aldous Huxley
Check out http://tutor.al-williams.com http://www.piclist.com and http://www.avrfreaks.net
I used their digital I/O and stepper motor controllers for my 3D scanner project - they're pretty good for low-res, low-budget projects.
I write code.
Actually, you will be worrying more about RF interference from the motors than back EMF (which is why you should put at least some caps across the motor terminals - if DC - if using steppers, they should be placed between the power supply rails).
Reason is the Path to God - Anon
Charmed Labs makes a great interface card and software to interact with the gameboy. This card can (but isn't required to) interface with many of the lego sensors and motors.