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
#1 Philips Screwdriver
#2 Philips Screwdriver
1/4" Nut Driver
3/8" Nut Driver
Drill, with a full set of bits
Metal Saw (Hacksaw, Jigsaw, reciprocating saw, etc.)
Scrap wood, for sawing jig, and clamps
Step 2: Gather Supplies
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.
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
- 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
Gearmotors salvaged from Printers, qty. 2 (found in the dumpster at work)
scrap sheet metal, scraps of PCB
Step 3: Measure Your Laptop PC
Mine measures 13" x 10 3/4".
Step 4: Cut Out Two Sheets of Plexiglas
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.
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
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
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
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 ...
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
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
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
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!
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
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 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.