Well, for making a robot from scratch, you have four major things to
confront. First, what do you want it to do? This will point the way to the
sensors, effectors, and chassis layout. Your sensors can be as simple as switch
closures, or as complex as analog waveforms from an ultrasonic or radar head, or
even live video images. The operating environment will dictate whether it needs
to handle sand and gravel, mud, grass, or tile and carpeting. Also consider
whether it needs waterproofing. And the weight and size of those things will
help to define the chassis style and layout.
Second, what processor will handle the inputs and outputs? This will help
weed out the underpowered, slow, or those with inadequate I/O, because the
sensors and how you handle them will require a certain type of I/O structure and
speed. Also, whether you need floating point capabilities!
Third, what sort of power source will you use? Batteries are almost always
the answer, but the size, type, and quantity will be dictated by needs and
restrained by chassis size and how much motor power it takes to haul them
Fourth, how will you program it? Many processors require special
development tools to be in place- for virtually any processor, there is a
specific socket or adapter, software package, and perhaps a motherboard or
development card that you must have. Others are as simple as an infrared
interface, like the Mindstorms, but those are pretty scarce.
One thing that helps a great deal is how you arrange your software. Write
all the low level functions, like bit level I/O and masking instructions,
elementary timers and interrupt generators, etc. as a group. Then make mid
level functions that call those low level functions and make things happen.
Finally, a level of high order instructions will accept a function name, some
arguments and conditional statements, and call the other routines to make
composite actions get executed.
This one department alone is what makes the Legos kits successful- any kid
with a USB port can program a robot. I taught a couple of courses this summer
using the Mindstorms and the kids were doing things that actually drew the
attention of some local TV stations- we got some pretty decent news coverage of
the students making robots that carried out complex tasks. There is a great
deal to be said for what you can accomplish once the legwork is out of the way,
and software is often the most complex part of any robot.
Now, your specific questions about getting parts are easy to resolve. There
are many online stores where you can order things- I use Mouser, Scott Edwards,
Jameco, Parallax, Dontronics, and many others.
Local stores in town are more scarce, but Radio Shack does still carry
resistor assortments, capacitors, transistors, some microchips, and perf board.
We knock them a lot here, but in a crunch, you can actually do a great deal with
what they sell. You just have to be creative.
As for other sources of parts, find a military or electronics surplus store
or even a junk yard. Scrap yards sell the electronics by the pound often
enough, and I have purchased circuit cards for $1.00 per pound. Old copiers.
telephone network switching gear, even PCs and televisions can be good sources
of parts. Real gold mines can be found- VCRs, old floppy drives, old
printers... they have motors, sensors, processors, microchips, bypass
You can get some really excellent soldering practice by disassembling these
devices. That was how I started out as a kid; pulling old TVs and radios apart.
If you have specific needs or ideas, please ask.
My robotics, space and CGI web page - http://home.cfl.rr.com/aichip