Sub $500 Robot and $587 need to cut costs

The sub-$500 robot is designed to be a platform anyone with a moderate skill set and limited budget can build. The idea is that this can be built by a
highschool student or class with basic understanding of electronics and computers and a little supervision from a teacher.
The price is *VERY* important as schools have *NO* money these days.
Overall complexity must be minimal. There should be a very easy to understand build and operation process. At any point in time, the state of the system should be "knowable." The whole system's operation should be able to be debugged and "viewed" using a single debugging session.
The above requirement is why I do not want any programmable micro-controllers on the system. While we may disagree as to whether or not this is a reasonable requirement, please understand that this is an important requirement.
Each component in the system should be easily testable independent of the system. I.e. the wheels will use a mouse for encoders, so any program what display mouse movement can test the motors.
I am using a POSIX style OS (Linux) because it is free and IMHO is better suited for the task. While it is not a RTOS, it does have much better response time characteristics and the various delays on a system that is running a set of well define programs is manageable.
I am not using FreeBSD (or any other BSD) for a couple reasons. Device drivers in linux are both easier to construct and load (IMHO) and more plentiful. Linux also has better support for video and other I/O.
I am not using Windows for a few reasons. Product activation, each time you materially change a Windows XP system you need to ask for microsoft's permission to use it again. In a robot I will likely be reinstalling the OS multiple times and is just not worth it. Response time, Windows is not as responsive as a UNIX type system. Bloat, Windows is very large, a UNIX system can be trimmed down as needed. Stability, Windows is not stable enough to run for long periods of time.
I am using a mini-ATX or mini-ITX motherboard because it will be familiar to almost anyone attepting this.
I am still considering the final I/O system. Right now I am using a Velleman K8000 I2C board, and am not too happy with it. I am looking for a cheap 8255/8253 I/O board, but while I suspect there are vendors that can supply it for less than $60, I haven't been able to find one. I may end up building the I/O system off the parallel port.
I am using 3 separate power supplies. One 70W ATX power supply which costs $35 at mini-box.com, one 12V 1.25A DC/DC converter, and one 5V 3A DC/DC converter. I'm sure I can get a dual output supply for less.
Any cost cutting ideas and comments would be very welcome.
Robot Parts List $587.00 Motherboard $100.00 Mini-ITX with built in video, network and sound RAM $35.00 256M DIMM 12V ATX Power supply $35.00 12V 70W ATX 5V DC to DC Converter $35.00 For electronics 12V DC to DC Converter $35.00 For electronics 12V Battery $35.00 12V Charger $10.00 Ride around toy $40.00 Steel shaft w/2 motor wheels (find at discount, surplus warehouses, ebay, yardsale) I/O Card $65.00 Electronic parts $50.00 ICs, wire, protoboards, Wireless Router/WAP 802.11g $30.00 Belken or Linksys on sale with rebate PS/2 Ball Mouse $3.00 Refurb 40G Hard Disk $29.00 Hardware $50.00 USB Camera $35.00
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
I'd be very interested in finding out just what motherboard and power supply & batteries you chose. Also, I've been looking at buying usb cameras and you can get them cheaper than 35 bucks. Target right now is selling a logitec two packs (targeting b/f g/f chatting) for 30 bucks. So unless you have a specific camera in mind, that gives you $20 more.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
godavemon wrote:

I have a year or so old EPIA 800 board. You can get faster than that these days. I think I sent a link to find the power supply.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
mlw wrote:

This list is missing some parts to make a functional robot of the size and weight you suggest. Even with an excellent vision system, auxillary proximity sensors are highly desirable -- and for schools, probably mandatory given liability issues. Even if it's just a couple of IRPD sensors near the bottom skirt of the robot you need an independent method of detecting obstacles. Mechanical switches could also be used, but these tend to get banged up quite a bit when used on a robot weighing 20-30 pounds. They don't last long, and besides, you really want to stop this thing *before* it hits someone. Your camera is not on a turret, and I doubt it can see the ground immediately in front of the robot, while also looking out.
Perhaps some rudimentary proximity detection is included in "Electronic parts." Impossible to tell for sure.
I don't see the need for two expensive DC-to-DC converters for electronics that in the above description shouldn't pull much current at all. Most of the electronics hang off the ITX board and is powered by its power supply. You can make decent DC-DC converters with some Maxim chips, and save some money there.
I missed the part about why you have the *router* on the robot, rather than just a wireless node.
$40 for the ride-on toy is a bit optimistic, and your encoder solution requires a motor design that cannot always be assumed. Someone *might* get lucky and find something similar locally, but anything on eBay will cost $40 MORE just for shipping. Forty bucks is not a realistic price point, and from what I recall of your earlier description is $25 cheaper than what you paid. I think you're better off specing some known motor that is commonly available on surplus. $20/piece gear motors are not hard to find, though you also need to consider the wheels. You need to rig up a more common encoder solution that will work with a wider variety of available motors. I believe it's not wise to leave such an important design issue up to chance.
-- Gordon
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Gordon McComb wrote:

That is the idea, it is incorporated in the "hardware" and "electronic parts." These are estimates for now.

True.
Well, that's one of those, wow isn't that interesting, things. A WAP (Wireless access point) is actually more expensive than a router with a few RJ45 jacks. This works out well, because it doubles as a hub if you want more than one computer.

I saw the very ride around to that I bought for $65 at a liqudation center a while back for $35. FYI, it was a "Scrambler," a two wheeled round toy with a switch on each side for forward and reverse.
Also, while I don't want it to be impossible, I certainly don't want it to be totally easy. The builder should need to improvise a little.

The encoder design is one of those "must" features, because I think it really joins robotics technology to common computing and demystifies the topic. It universally gets a "cool" from my nephews.
Besides, all you have to do is cut the shaft of the mouse wheel, and drill the right sized hole for your motor.
As for the motors and wheels, I spend a lot of time looking for "motorized wheels." They used to be very popular, but now I can't find any. Also, I don't like to attach wheels right to the shafts of geer motors. Unless the gear box is designed to do that, it isn't a good design.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Please post diagram of how to attach encoder to drive system.
It is something I've hacked, but it doesn't work great.
I'd like to see what exactly you have in mind.
Rich
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
snipped-for-privacy@gmail.com wrote:

See: PS/2 Mouse PID motor control on Linux, code and description On this news group
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
mlw wrote:

Hmmm. I bought my USB 802.11g wireless "stick" for about $25. Seems to me this would be the overall less expensive approach, as the router needs a 12v (or whatever) power source to substitute for its wall-wart. A USB wireless adapter will simply draw its power from the MB, and its power supply.
I assume you plan on additional networked devices than just the MB, and don't to add a hub.

It's not so much hacking the encoder as it is getting to the shaft of the motor. You're lucky to have found a motor that allowed access to the shaft opposite the pinion. Many motors are sealed in their case, and the case can't be readily removed to get to the shaft. And it's not always possible to slip the encoder around the shaft on the other end, as the pinion gear there is usually hydraulically press fit.
I'm not saying an encoder isn't a good idea for this, but the design you have is fairly dependent on a particular drive motor.

Overhung load on a motor of reasonable quality will likely be adequate for a robot of this weight, considering that even in a three-point base configuration, each motor will take approximately 1/3 of the weight. The output bearing on motors used for ride-on toys is probably as good, or possibly worse, than the bearing on a surplus 12 or 24 volt motor (since these motors may have cost >$100 new). Either way the design liabilities end up being about the same. (The armature shaft bearing is of less concern, since it's not directly taking the overhung load placed on the output shaft of the motor.)
-- Gordon
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Gordon McComb wrote:

Either way, something is drawing power. Maybe the USB stick will be a little more efficient, but I can't see it as being all too much (depending on what is "too much")
Also, most mini-atx or itx boards have network adapters in them and they are more efficient than usb versions. I may want to use the usb for something else and don't want to dedicate any USB bandwidth to the network, since I already have a network adapter. After all, it is a whole lot more flexability for $5.00 difference.

Well, (not part of the sub $500 robot, per se') there is also the possibility that I may load Linux onto the actual router processor and use it to manage a communications interface.

I have yet to see a motor that doesn't have some shaft coming out at the opposet end.

True, but I don't think it is a hard thing to instruct people to look for.

I seriously don't agree with this statement.

The motors I am using and the configuration that they are in, a steel axle supports the weight of the wheel and the bearing surface (the plastic wheel shaft hole) rotates around it. It will eventually widen and probably have a limited life, but by then you'll probably decide to make something more elegant.
The problem with using the shaft of a gear motor is that it is a simple two point bushing designed to ensure stability to the shaft at the maximum torque of the motor. The robot weight (in addition to the stress of the motor torque) will be focused on the top of the bushing closest to the wheel and on the bottom of the other bushing. Brass brushings are fairly soft. Depending on the weight of your robot, and/or if any impurities get into gear box, the output shaft will eventually wobble and start destroying teeth or binding.
You're probably right in that it will work well enough, but it isn't a very good design. The cheap plastic wheels on my system may wear, but there is no weight bearing stress on on the gear box, and the assembly was rated for (I think) 65lbs. Maybe it is just an emotional decision, but I don't have any problem destroying plastic wheels, but I don't like the idea of destroying a metal gear box.

One of the things I really want to stress is "junk yard" engineering.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

Really? I been in electronics and robotics for many years and motors with usable lengths of shafts out the rear have always been rare. I've seen them, could track one down if I needed one, but not common by any means. By usable I mean long enough to slip tubing over, attach a pully or sprocket, decoder stripes, etc.
-Hoss hossweb.com
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Hoss wrote:

Wow, I have over a dozen motors here and all have at least an 1/8 of an inch.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
mlw wrote:

Wow! You get to play with the good toys.
I've played with quite a few motors, and *none* of them had shafts coming out the back end.

It depends on the motor. Many motors are made for this sort of thing. Many will die quickly if you try it. -- D. Jay Newman http://enerd.ws/robots /
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
D. Jay Newman wrote:

Even an 1/8 of an inch?

Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
mlw wrote:

Nope. A solid metal for a backing. -- D. Jay Newman http://enerd.ws/robots /
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
D. Jay Newman wrote:

That sucks. I'm using much cheaper motors, maybe that's the difference.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
mlw wrote:

It's not a question of cost -- it really just depends on the motor. I have a boatload of DC gear motors, and some have an exposed aramture shaft, and some don't -- I generally go surplus, and you're pretty much stuck with what's available. Sometimes there's even a glut of suitable motors with built in encoders -- you just never know. I don't think I'd assume an armature shaft is available unless you are designing with a specific motor in mind -- or at least have a plan b.
--
(Replies: cleanse my address of the Mark of the Beast!)

Teleoperate a roving mobile robot from the web:
  Click to see the full signature.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Gordon McComb wrote:

I use a Linksys 802.11g card that uses the rt2500 driver for Linux. -- D. Jay Newman http://enerd.ws/robots /
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
mlw wrote:

What is the point of a large, complex and expensive robot for students at a high school? What exactly is it going to teach them and how much hands on experience is each student going to get?
One reason for building small uC based robots is because they are cheap and yet can cover all the stuff a student needs to learn including how to program and use a uC which may in fact be a requirement for anyone interested in electronics.
It is a no brainer to program a micro processor using C or even Assembler. It takes years to become proficient in fully understanding the requirements and protocols to make use of a complex OS unless you use something simple like Visual Basic.
Cheap small robots means that more can be built so more students have hands on experience with many different configurations including interaction between robots such as Sumo wrestling, tag along and so on...
As for vision you need to determine your goal. Is this something that is high school relevant?
A Pentium based board may be a requirement for an advanced vision system including making use of MMX technology and PIII streaming SIMD extensions and so on. Not exactly high school stuff?
Have you really identified your target builder or is this really an mlw robot which will really only appeal to those with the same background in programming and electronics?
Cheers,
John Casey
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
JGCASEY wrote:

What's it going to teach them? Motor control, programming, operating systems, computer math, electronics, etc.

The only difference is "programming a microcontroller." I'm not sure of the singular value of this.

This is clearly an opinion, you are free to have it, but I don't subscribe to it.

I see a different project.

Maybe.
Why?
It is impossible for anyone to create anything that doesn't reflect their background.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
mlw wrote:

You might be able to turn that $30 hard disk into a $8 floppy drive. Booting off the floppy to use a ram disk would avoid the cost, power consumption and fragility of the Hard Disk. You could also set up a loader on the floppy to run a net-boot off your wireless network. If you are not running X and a window manager, most of that 256MB RAM will be unused.
I looked at the Adlink site that I mentioned in another post for a timer/8255 card and they had something close for AT bus, but nothing close for PCI. I think that card may be an expensive one for PCI.
Bob
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

Polytechforum.com is a website by engineers for engineers. It is not affiliated with any of manufacturers or vendors discussed here. All logos and trade names are the property of their respective owners.