Introduction: Connect Robotic Wheels to Your Old Laptop

Do you have an old laptop just laying around, while you use your shiny new one to play WoW and surf the interweb? Have you ever thought "I would like to bolt some wheels on that old laptop and drive it around"? Perhaps you'd just like a mobile low-angle camera tripod. Maybe, you're the kind of person who wants to post videos of driving underneath a moving police car on YouTube. Well, if so, then this may be for you.

I was recently playing with my original LaptopWheels robotic platform, that I had built from some old pine tongue-and-groove shelving, and it got stuck in the carpet in my living room because the motors driving the wheels were too weak. I decided that it was time to rebuild it, better, and to share the build process here.

Step 1: Gather Tools

Tools Needed:

Wire Strippers
Scissors
Tin Snips
Tape Measure
#1 Philips Screwdriver
#2 Philips Screwdriver
Flat-Blade Screwdriver
Needle-Nose Pliers
X-Acto knife
Sharpie Marker
1/4" Nut Driver
3/8" Nut Driver
Drill, with a full set of bits
Soldering Kit
Metal Saw (Hacksaw, Jigsaw, reciprocating saw, etc.)
Straight-edge
Scrap wood, for sawing jig, and clamps

Step 2: Gather Supplies

Electronics:
Any Laptop PC
USB-Serial cable, if your PC lacks a serial port
USB Webcam, for vision
LPC2000-Series Development Kit. I would recommend the Embedded Artists or Olimex kits, or the Keil Dev Kit, for those with bigger budgets. More experienced developers could design their own PCB and order it online from a PCB Manufacturing service.

Hardware needed:
10-24 x 3/4" long Bolt, qty. about 20
10-24 Hex Nut, qty. about 20
4-40 Machine Screw, qty. about 30
4-40 Machine Nut, qty. about 30
22-AWG Insulated Wire, several colors, one spool each.
5 1/2" Diameter Wheels
Cheap, Bolt-On Drawer Handle
3' Extruded Aluminum Drip Cap U-Channel (for Front Doors in Homes)
6' Extruded Aluminum 1/2" right-angle
24" x 30" x 1/8" plexiglas sheet
Panel-mount On-Off switch.

Hardware from the old LaptopWheels platform:
Pre-wired 4xD-Cell Battery Holders, qty. 2
1/4" long #4 Spacers, qty. about 30
D-Cell Batteries, qty. 8
Bolt-on Caster Wheels, qty. 2
LPC2000-Series MCU Circuit Board, with some attached Daughterboards
Mosfet H-Bridge Motor Controllers, qty. 2
12V Infrared/Visible Light LED Illumination Module
Wire Harnesses:
- 12VDC Power Cables, qty. 2
- H-Bridge Control Cables, qty. 2
- LED Illumination Module Wire Harness
- Specialized USB Parasitic-Power Cable for the MCU
- Specialized Serial Cable for the MCU
- 12VDC Power Harness System
- On/Off switch cable

Salvaged Hardware:
Gearmotors salvaged from Printers, qty. 2 (found in the dumpster at work)
scrap sheet metal, scraps of PCB

Step 3: Measure Your Laptop PC

Use a tape measure to find the dimensions of your Laptop PC.

Mine measures 13" x 10 3/4".

Step 4: Cut Out Two Sheets of Plexiglas

Mark your sheet of plexiglas up with a Sharpie Marker. You will need the first sheet to be the size of your laptop, plus the width of all of the angle braces that will fit on around it.

Since I used 1/2" angle braces, my total width will be the width of the laptop plus 1/2" on every side, which is 14" x 11 3/4" total. I set the laptop on the marked-up plexiglas, for a simple "will it fit" test.

Measure your saw, to be able to set up a jig for cutting your plexiglas.

Clamp your jig onto your plexiglas, taking care not to damage the plexiglas with your clamps. Check that your saw lines up exactly with the marked cutting lines, as shown in the photo.

Slowly and carefully, cut your first sheet out of the plexiglas.

Cut out the second sheet the same way. In my case, I had a 1/2" extra on the bottom sheet, which I chose to leave on as a front bumper, rather than cutting it off.

I ended up with more than half of the plexiglas left over, which I may use in some future projects.

Step 5: Cut Up Your Aluminum Parts.

Measure your aluminum U-Channel to the front-to-back length of your laptop, plus the width of the front and the back angle braces. In my case, that's 10 3/4" plus 1/2" plus 1/2", or 11 3/4" total. Cut out two lengths of the U-Channel. Mount the U-Channel to the bottom piece of plexiglas by drilling through both and using the 10-24 screws and nuts. This is just a mounting test, for right now; you'll need the parts apart for more work right away.

I layed my laptop on the top piece of plexiglas, and marked off the ports that needed to be accessible with the sharpie marker. Next, I cut out angle braces, and lettered them sequencially, to go on around the laptop. I also needed an additional angle brace across the bottom of the back, because the ports that were back there were making the plate too flimsy. I'm only bolting on the front and back angle braces, because the side angle braces have to bolt onto the U-Channel as well.

I pre-drilled and test-fit all of the mounting holes for the angle braces, at this point.

Step 6: Mount Your Gearmotors and On/Off Switch to the U-Channel

Your gearmotors will differ from mine, but your should be able to mount them pretty easily through the U-Channel metal.

The on/off switch, being a panel-mount part, is pretty easy to install, too. My switch wasn't entirely clear which way was on and which was off, so I tested it with a digital multimeter to find out.

Step 7: Mount the Caster Wheels

When I went to mount the Caster Wheels, I realized that I needed some shims for one side, so I built some spacer plates from scrap sheet metal.

Next, I just bolted the caster wheels on, as seen in these photos.

Step 8: Test-fit All of the Main Components on the Lower Plexiglas Plate

Test-fitting the main parts, I marked the outline of each, and marked the mounting hole positions, then went back later and drilled them out. I used a 1/8" drill bit to make all of the mounting holes for the electronics.

After drilling, I bolted on all of the the main parts, to test out the mounting holes I had just made. I used plastic beads for spacers under all of my PCBA's, to raise up the soldered leads, away from the plexiglas. This also gives some room for wiring to run below the boards.

I decided to put all of the mounting screws in from the bottom, to leave maximal ground clearance in the middle of the robotic platform. Except for the sides, this platform has about 2" of ground clearance, all around.

After the bulk of the holes are drilled, you can remove the protective plastic sheets from your plexiglas, and re-install your components.

Step 9: Oh No, I Forgot to Add ...

We're all human, and we all forget to do some things.

Please see the photos, for the list of additions after-the-fact.

I intended to use some piano hinge to allow the top plate to open up, for access to the lower electronics, however, that didn't work out. I also didn't find a very sturdy location for the handle to be mounted, so it's left out for the time being as well.

Step 10: Attach the Top Plate to the Robotic Platform

Since I decided against the piano hinge, I came up with an alternative. I mounted four screws, pointed up from the top of the robotic platform's U-Channel, as posts for the top plate to mount onto.

Next, I mounted the side angle braces onto the top plate, but I leave the screws out of the holes where the posts will fit through. These holes, I widened out to 1/4", to make fitting the top plate on easier.

I test fit the top plate onto the robotic platform. Since everything looks good, I install the laptop PC onto the top plate, and hook up USB.

Step 11: MCU Firmware

I used the LPC2148 MCU from NXP in my setup, because I'm familiar with them from experience at my job.

Other good choices would be any cheap MCU with analog inputs and free GPIO pins with a free GNU toolchain and an RS232 port.

I created a very basic serial-commanded motor controller system. It takes its commands at 9600bps, in the format "M%d%c%02.2X", as in "M1+0A" for "motor 1, speed 10/32, positive polarity", or "M2-00" for "motor 2, speed 0/32, negative polarity", and drives the H-Bridges with PWM signals. It responds with an "X" character to confirm that the speed command was received, parsed, and applied correctly. As long as your MCU can support the same protocol, and send PWM to the H-Bridges, you can use the same PC software for controls.

Step 12: Install PC Software

I created some PC client/server software, in Visual Basic Express 2005, for the control of the LaptopWheels Robotic Platform, and additional, for my ATRT Robotic Trike platform as well.

Unfortunately, it's still very buggy, and not ready for release. If anyone really wants a copy of the executables in their current state, please e-mail me via instructables, and I will be willing to share them. As I said, though, they are very very buggy.

Step 13: Test Drive!

Since I am still waiting for my drive wheels to ship to me, my "test drive" was a little boring, but the output shafts still spun in the right directions. [edit: the wheels finally arrived and got installed.]



Nothing's holding you back, though. Go ahead and press your drive wheels onto your gearmotor output shafts, and drive your LaptopWheels robotic platform around.

I've had good luck attaching a webcam and running skype alongside the remote control software, for remote vision, but I did find skype very laggy. It's also cool, to record videos from onboard:


With a webcam, I've also had RoboRealm (unsuccessfully) control the robotics based on machine vision cues, using a serial script, but because my camera was too low in picture quality, it behaved pretty erratically.

Step 14: Contact Me

If anyone decides to build one of these for themselves, I would love to see it in action. Please, go ahead and comment on this 'ible with your photos and videos.

Go crazy, because I'd like to see additional accessories on some of these, like robotic arms added, sonar sensors, laser distance sensors, spikes, Skil Saws instead of wheels, etc.

Thanks for reading :)

Step 15: Keep on Improving

I went back, and found a way to add that handle to the front of the machine.

I also test drove it, with the biggest wheels I have on hand right now, but, I wasn't very happy with my gearmotors, because the gears just spun on their shafts whenever much torque was needed. That was my fault, due to the way I modified them from the way I found them in the dumpster.

I plan to find a way to affix the output shafts to the output gears more solidly, or I may re-purpose those gearmotors for some low-torque project for the future, maybe a smaller, lighter robot with no laptop on top to weigh it down.

Right now, I'm working on some new ideas for powering the drive wheels. One thought is tearing down some cheap electric screwdrivers, and attaching the wheels to their 1/4" hex output shafts.

Edit: I mounted the new, big wheels onto dedicated 1/4" axles, with bearings on the wheels, and used some 1/4" pitch scooter chain and sprockets to connect the wheels to the gearmotors, after modifying the motors themselves significantly more. The Electronic Goldmine web site has great deals on sprockets.

Comments

author
snowluck2345 (author)2012-12-15

I was wondering, are the yellow wheels the ones you ordered? Where did you buy your wheels from? What rpm are your wheels running at?

author
psymansays (author)snowluck23452012-12-16

http://myworld.ebay.com/redingtoncounters

They run at varying RPM's depending on the speed command. I think they max out at about 120 RPM's, if I was just taking a guess. I haven't checked in any accurate way, I just think they may turn two full turns in a second.

author
psymansays (author)snowluck23452012-12-16

I bought them from an ebay user "redingtoncounters". Actually, they do not appear to be selling them any more. I would not really recommend them either. They took well over two weeks to ship, and when I e-mailed the seller to get status, they apparently didn't appreciate that, and they wouldn't allow me to place further orders when I was going to buy more of the same. They had blocked me on eBay. However, similar wheels are available from other sellers.

author
kburman (author)2010-09-21

Can your software can control servo directly from usb. Actually i have 2 servo and and a car which can move in omni direction i have developed a program in "Roborealm" which can follow a line and follow a ball but you know that can not  directly connect a servo or motor and the problem is that i have no board or PIC controller through which i can connect to computer and control it. So if your software can do this can you please mail me i will really very thankful to you or if you know any other way to do this please  tell me .Thanks In advance 
At last you have done a great project its really cool.I was thinking that if i had one with me.

author
psymansays (author)kburman2010-09-21

My system also uses a board in between the PC and the motors and servos, that the PC communicates with over a serial port.

Now, if you have a PC with a parallel port (virtually no modern laptop PC's have these, built-in) then you could program the parallel port to control servos directly, but otherwise, you do need a microprocessor.

One thing to keep in mind is that you can use an Atmel ATtiny2313 chip with almost no extra parts, which costs only $2.47 per chip, and you can program this chip with free gnu tools. (http://microcontrollershop.com/product_info.php?products_id=993)

You could make it as simple as taping the chip up-side-down to the top of your servo, and soldering directly to the pins (dead-bugging the chip)

AVR Freaks is an online forum with a lot of great resources for programming those chips, especially with servos.

author
kburman (author)psymansays2010-09-22

OMG when i click on checkout button i was stuned to see $2.47 was converted into $32.42. It will be better to use parallel port can you please give a link to it tutorial.

fchfdhf.PNG
author
psymansays (author)kburman2010-09-22

Wow, I had no idea international shipping was so crazy expensive! (Especially for such a small part)

When I bought chips from that same web site, for shipping here in the USA, the shipping was like $2.

Well, don't get discouraged. Look up "Atmel ATtiny2313" and your country's name, and find a more local online shop.

The USB-to-Parallel adaptors, unfortunately, are much less programmable than an old Parallel port that was controlled by the PC BIOS. They won't work with any of the existing code or tutorials I know of. If you can get a PCMCIA Parallel port card, that can be made to work, though. I've used one of those for some hacky projects before.

author
kburman (author)psymansays2010-11-23

Is there any way control even few LED's with USB to Parallel port converter

author
psymansays (author)kburman2010-11-23

You might be able to control up to 8 LED's with one of those USB-to-Parallel cords. Basically, you would have to trick your PC into installing a "Generic Printer (Text Only)" driver for the port, then any data that you try to "print" on it would be applied to the Data pins (D0 through D7) which you could plug a D-Sub connector with LED's on it into. It would be best to get a USB to DB-25 cable, otherwise you will have to work with the old Centronics standard 32-pin port.

To clarify, that is (http://en.wikipedia.org/wiki/D-subminiature) vs (http://en.wikipedia.org/wiki/File:Centronics.jpg) end connector.

author
kburman (author)psymansays2010-11-23

Controlling 8 LED's more then i expected .
So,i install "Generic Printer(Text Only)" and then connect a LED's from pin9,29 and then print a page but nothing happen(sorry i forgot to mention that i have 36pin parallel port and i get pinout connection from "http://hw-server.com/files/lpt/download/piny.html")

Capture.PNGCapture1.PNG
author
psymansays (author)kburman2010-11-23

I decided to try this out myself, and take some photos. When I hooked up the USB-to-DB25 adaptor that I have to this circuit, the LED was actually lit when the port was idle, and not printing. This is because the operating system and the USB device firmware use 0xFF (255 in decimal) as the parallel port's data pins' idle state. In one photo, I turned off my spotlight, so that you can (dimly) see the LED lit up.

PICT0192.JPGPICT0193.JPG
author
kburman (author)psymansays2010-11-24

Let me explain what i want to do.
I want to build a car which can follow any object. For that i need some thing which you have done above.Since i am fitting nettop in place of laptop as you have done in your projeect and nettop not have any port except USB.(So,no other option other than USB To Parallel port(Please don't ask for any MCU))
I want to control LED'S from USB TO Parallel port because if i can control Led from computer then i can control transistor then relay and almost everything(Like my Car Motor).
As you have done above i also done and found that it has very less power to control LED(or Transistor).
If you don't mind i want to ask one more question
like LPT1 has address Address: 0x378H or in VB Express &H378S
Is there any for USB001 {"https://www.instructables.com/files/deriv/FKA/89HD/GGPETDCS/FKA89HDGGPETDCS.LARGE.jpg}
You can see USB001 port at window titile as "Generic /Text_Only Properties "

author
psymansays (author)kburman2010-11-23

OK. Well, LED's are one-directional (the longer pin takes the positive voltage), and you should use a resistor in series with the LED (330 ohm, since the port is 5V). Another thing is, you should try running the circuit between Pin 2 and one of the ground pins instead of pin 9, because bit 7 (Data pin "8") will never be positive when you're printing normal text characters, but bit 0 (Data pin "1") will be positive about half of the time and negative the other half of the time. When you use windows to print to the port, the data will only be on the pins for less time than you will probably be able to see (microseconds) before changing to each next character and then being finished.

author
kburman (author)psymansays2010-09-22

Atmel are really very cheap i am going to buy it. Site which you have give is that genuine because from that i am going to purchasing it .
I have a laptop with USB port but i have seen a Parallel to USB converter means that i have parallel port in my laptop .Is there any tutorial for it how to control servo from Parallel port and Can you give me the name of the free gnu tool. So that i can download it.
Thanks for all your help.

author
smegger (author)2010-01-17

 I love how you've really tried and succeeded to make this nice and simple, oh, and cheap of course! I have a MOSFET lying around and two 300w motors (same as yours pretty much- the one from your newest video) and some wheels similar to your drive wheel- check my electric trike instructable. Reason for all those parts-- I stripped my electric trike!

I almost want to do what you've done here because it just a whole other different aspect from what i've done- definately needs a web cam strapped to it too!

Nice one man

author
psymansays (author)smegger2010-01-18

 Thank you for you interest in this project; it's really rewarding to inspire people with similar interests. I'll check out your trike project, soon.

If you do decide to build something like this, I'd like to see it in action.

author
smegger (author)smegger2010-01-17

 MOSFET Controller*****

author
jaxxster1 (author)2009-08-16

Where can i scavenge the parts on the cheap?

author
psymansays (author)jaxxster12009-08-17

Well, you could start with finding some obsolete computer printers (maybe at a thrift store, or yard sales), and get all the motors, belt, and gears you can from those. Next, don't buy plexi-glass or aluminum parts, use scrap wood (for your first built, at least).

You can scale down the microprocessor by using the ghetto development tutorial for the $1-2 AVR micros. The web site microcontroller pros got me what I needed for an AVR set up for really cheap; just a DB25 connector, a 20-pin socket, and some ATTiny2313 MCU's at a very low price.

A great place for other parts is goldmine electronics; I got sprockets from there for about $1 each, and lots of other stuff is cheap there. I also would check out your local "Dollar Store" to see if you can use anything from there for materials.

The hardest part to get for cheap, is the motor drivers. Mine cost nearly $20 each in electronics, after shipping, from Mouser.com. I wan't able to come up with any alternate sources for high-current H-Bridges, than building them from scratch. Some people have good luck using off-the-shelf ESC units, but those are more like $50-$100, AFAIK.

Anyway, good luck. Let me know if you decide to build something; I'd love to see it.

author
jaxxster1 (author)psymansays2009-09-13

thnks!

author
psymansays (author)jaxxster12009-09-15

No problem, buddy.

author
jaxxster1 (author)psymansays2009-09-16

p.s. can you please send me your current state software? i am going to try to build it.

author
mspark400 (author)2009-05-29

great job and a great project! cheers, mspark400

author
psymansays (author)mspark4002009-05-29

Hey, thank you for the encouragement.

About This Instructable

14,643views

25favorites

License:

Bio: Hi, I'm psymansays. I'm an engineer from California. I enjoy sunsets, and long robot test drives on the beach. More from me: http ...
More by psymansays:Patio Garden Wicking Bed From 55 Gallon Steel DrumThe Bare Minimum DIY LatheBrowser based teleoperation for the LaptopWheels project
Add instructable to: