Design Versatility Complements Advanced Programming Options
by Jamie Hyneman, Grant Imahara and Adam Savage
Photos By Cris Rocha & Grant Imahara
Jamie Hyneman, Grant Imahara and Adam Savage, cohosts of the popular MythBusters TV show on the Discovery Channel, have many years of experience designing animatronic robots used in commercials, science fiction movies and other popular media. This team also has broad experience in radio control and hobby robotics. We are proud to include their review of Radio Shack’s new VEXTM Robotics Design System in the inaugural issue of ROBOT. Visit www.botmag.com/issue1 for additional photos, a detailed, photo-rich “build report” by Grant Imahara and video clips of the MythBusters commenting on their VEX PackBot system. —the editors
Jamie Hyneman: As a holder of some patents and a designer and builder of dozens of prototypes and devices, I must admit I was expecting to turn up my nose at a do-it yourself robotics kit from Radio Shack. But guess what? The VEX System kicks butt. In a total of about 12 person-hours, Adam Savage and Grant Imahara (my cohosts on MythBusters) and I were able to build a functional, if somewhat basic, prototype equivalent of an iRobot’s PackBot.
Grant Imahara: For those unfamiliar with the PackBot, it’s a military UGV (unmanned ground vehicle) used for scouting and surveillance. This modular robot is equipped with a unique tank tread system (called “QuickFlip”) that uses a small pair of tracks (called the “flippers”) that pivot off the front edge of the chassis/payload bay.
Jamie Hyneman: The key mechanical challenge here is that this propulsion system has four independent tread assemblies: two main treads and two flippers. The flippers raise and lower to allow the robot to climb over objects and debris.
Adam Savage: Our goal was to see if we could get it to climb stairs. As far as I know, there are few (if any) toys that will climb stairs; and only a few high-end robots like the PackBot and the humanoid Honda robots that can perform this task.
Jamie Hyneman: Before we tell you how our prototype did, let us explain what you get with the VEX System. The basic kit is about $300 and includes an erector set style hardware kit with pre-formed plates and angles riddled with holes so that no drilling or machining is necessary (a real time saver). You have nuts, screws, and a couple of small wrenches to attach everything together. Note that the screws are button-head Allen type, which is what most serious prototypers use – no amateur-hour slotted or phillips heads here. Also, all main drive components (motors, wheels, shafts) are square drive, so you don’t have to deal with slipping set screws. There’s also a selection of plastic fixtures that serve as bearing blocks, as well as other standard mechanical items such as gears and shaft collars.
Grant Imahara: As far as the electronics go, the kit includes a radio control transmitter and receiver, a servo, three drive motors and a few sensor switches. Not to fear radio control flyers – the transmitters are equipped to communicate on ground frequencies, so there should be no potentially dangerous interference with planes. For power, you can use regular alkaline batteries; but for repeated testing, you should really purchase the rechargeable battery setup (sold separately) which includes a charger. Also available is a programming module that will allow you to hook your robot up to a computer and download a program for adding autonomous capabilities. You can use the remote control only, let it operate autonomously, or have some combination of the two.
Adam Savage: Where the fun starts for us is when you start adding accessories. You can buy extras of all of the components in the kit as well as more specialized sensors, chain and sprockets, different gears, a tracked (caterpillar) system, and different wheels. They have pretty thoroughly supplied everything you need to build at least a basic version of most small robotic assemblies.
OUR THOUGHTS ON THE SYSTEM
Jamie Hyneman: The thing that really got me is that everything is integrated so well. You don’t need to do anything but design and assemble. Unless you’re used to building by doing everything in CAD/CAM (Computer-Aided Design/Computer-Aided Machining), this set will allow you to make relatively complex robotic machines in hours instead of weeks or months.
Adam Savage: And, if you made a mistake, you just unbolt it, move something or change a gear and you try out the change—continuing to improve it until it works. In prototyping, these changes can take days or weeks to implement. With the VEX System, we were making changes in minutes on our PackBot. Motor not powerful enough? Grab another gear or two and shaft the motor to a different hole. EVERYTHING fits. I love this system and the engineers did a great job.
Grant Imahara: During our brainstorming/design discussions, I found myself saying, “Let’s just try it.” With the VEX System, it’s not like you’re sacrificing a lot of time and energy just to try an idea. It’s quick and easy, and it promotes discovery through trial and error, which is what engineering is all about. That’s a fantastic way to learn.
Jamie Hyneman: I‘m not criticizing the VEX System, but we do have some additions or changes we’d like to see. I’d like to see more selection in hardware. We built according to the shapes and sizes available. While kids can play with it as a toy, it is a powerful enough system for a professional to use for prototype work, problem solving and even low volume, light duty robotic applications. So with that in mind, a wider selection of sizes and varieties of hardware would be useful—bigger, smaller, etc. I’d also like to see reduction gears: a large gear and a small one on the same hub.
Grant Imahara: It would be great to have some Y-connectors to gang multiple servos on the same control channel, more programmable mixing positions on the transmitter, and both larger and smaller motors and servos as well as premium, compact, high-output servos.
Jamie Hyneman: High power servos are available from vendors like Hitec that have over ten times the power of the one in the kit. If VEX does not produce these, somebody should make adapter kits. I would also really like to see someone start making components that are standardized. I just want to build, and incompatibility slows me down and puts us back in the “machine it yourself” mode. This kit lets you avoid that to some degree, but unless they give you every last thing that you could ever use, which they probably won’t, we need adapters or standards.
Adam Savage: They should have at least an aluminum accessory hardware kit, which will make your robots lighter. I know steel is cheaper, but give us an accessory kit in aluminum.
Grant Imahara: All in all, a very cool system. But let’s get on to the fun stuff: our PackBot!
THE VEX PACKBOT: BUILD SUMMARY
by Grant Imahara
To explore the capabilities of the VEX Robotics System, we chose to build our very simplified version of iRobot’s PackBot. The goal was for the robot to be able to climb stairs and small piles of debris using only VEX components. Sounds like a tall order, right? You bet. Fortunately, our friends at Radio Shack were kind enough to allow us to preview some of the exciting accessories planned for the VEX System, including tank treads, a programming kit, ultrasonic rangefinder sensors, and optical shaft encoders. ROBOT magazine provided us with a wireless remote camera (available from Shulman Aviation) to complete our PackBot’s control package. I will highlight a few of the challenges we encountered and our solutions in this article.
Although the basic VEX kit contains several different wheels, the PackBot is a tracked vehicle, which gave us a great opportunity to try out the new VEX tank tread kit. The kit consists of two long tracks comprised of snap-together pieces. These plastic pieces allow the builder to make the track longer or shorter simply by adding or removing links. Also included are two pairs of custom toothed rollers that can be used as idlers, or to transmit drive power from a motor to the track via the familiar square shafts used in the rest of the system. The rollers are positioned at the front and back of each side, and a tensioner (also included) goes somewhere in the middle to pick up the slack.
The first step in our build was to construct the tracks and connect them in pairs. We needed two pairs of tracks – one for the front (equivalent to the real PackBot’s “flippers”) and one for the back, or base of our PackBot. We dutifully followed the assembly instructions, opting for the longest tread we could make. One of the toothed rollers was connected to a motor, while the other was allowed to spin freely.
We knew that the iRobot PackBot’s front and back tracks were joined together with a common pivot, which was something we would also have to duplicate. The PackBot has the ability to lift its front tracks in order to climb over obstacles and debris. Our PackBot had to perform the same duties, so we immediately decided to use servos for their ability to hold a commanded position, which would be helpful in keeping a track elevated.
In initial drive tests, we noticed that sometimes the front tracks would stop turning, and sometimes the back tracks would. Upon closer inspection, we found that the single-supported square driveshafts were slipping out of the clutches in the drive motors. Easily enough, we added another rail running on the outside of each track, thus making all axes double-supported, and preventing any further slipping problems.
We also noticed a major problem with the pivot axis. Originally, we created two identical tracks of equal width: one for the front, and one for the back, with a pivot in the middle. When we attempted our first lift, we found that there was ample clearance to lift the front track, but when it was lowered (as in the case of climbing down off of a debris pile), the front and rear tracks crashed into each other, which was a major design flaw. Well, it’s back to the drawing board with a few changes. Fortunately, with the VEX System, major system changes like this only took an hour or two.
In order to remedy the crashing problem with our tracks, we decided to make the front tracks skinnier, so that they could fit within the rear tracks. As detailed in the online discussion, we ultimately designed a track-raising gear system with an idler. All of this engineering was accomplished using parts included in the VEX System.
DAY ONE: STAIR CLIMBING TEST
For the final step of day one, we took our PackBot to the main staircase at our headquarters, M5 Industries. We raised the tracks in anticipation of the first step, and the motors lifted them beautifully. As we advanced towards the step, we changed the angle of the front tracks to give us more leverage, which worked great for getting up onto the first step.
To get to the second step, however, we had to flex the body almost straight, which caused the plastic tracks to slip on the smooth front edges of the stairs. Quite a bummer, but we realized that the relative smoothness of the tracks gave almost no traction on the equally smooth step corners.
In a moderate debris pile test (i.e. driving over Jamie’s legs), our PackBot performed well and had plenty of climbing power, as the front track provided leverage for the back track. While the stair climbing was a failure, the debris pile was a complete success; and this given only a single day’s work.
DAY TWO: ADDING VISION AND SENSORS
We returned to the shop the next day to continue our explorations into the VEX System. So far, our PackBot is little more than a remote controlled vehicle. Out in the real world, these robots are sent into hazardous locations, usually without the benefit of a direct line of sight to the vehicle. Next, we added the wireless camera to the PackBot for remote vision capability, and a host of sensors to help with driving over debris and obstacles, since the driver won’t always be able to see what he or she is maneuvering around.
The miniature wireless camera was mounted to the frame using a bracket bent from a long plate. Power to the camera was provided by an onboard 9-volt battery. The receiver was connected to a standard video input for monitoring.
Radio Shack’s new VEX ultrasonic rangefinder modules use high frequency sound waves to detect barriers. The robot emits a short burst of ultrasonic sound, and then listens for a return signal, which bounces off the object. The amount of time it takes to travel to the object and return to the robot can be used to approximate the distance. We mounted the ultrasonic modules on both front and back of the robot. The front module will sense upcoming objects, while the rear one will tell the robot when the back end is facing the ground, such as during a stair-climbing sequence, which requires a different set of movements compared to simply driving over a debris pile. Using these sensors together, the robot would be able to decide what type of climbing operation to perform.
An optical shaft encoder mounted to the shaft that drives the front track up and down was installed to help the robot keep track of the elevation angle of the front track. As the shaft rotates, it turns a perforated wheel inside the sensor. The slots in the wheel create pulses as they interrupt the light path between an infrared LED emitter-detector pair. By counting these pulses, the robot will know exactly how much the shaft has rotated. Since the shaft encoder is on the motor shaft, we made sure to compensate for the gear ratio when figuring the final angle of the front track.
STRIPPED GEAR BLUES
Programming the robot to read the ultrasonic sensor and raise the front tracks was a snap using the easyC® programming environment that comes with the VEX System. Building from the included sample routines, we were able to quickly write a program to test the ultrasonic sensors and download it to the microcontroller. Though the optical encoder had not yet been installed, we went ahead and tested the program. When a hand was placed in front of the ultrasonic sensor to simulate an approaching barrier, the robot responded by raising the tracks as expected. We used a short “WAIT” statement to run the lifting motors for a brief period of time, so that the tracks wouldn’t slam into the body and strip the gears.
HITEC HIGH-TORQUE SERVOS
by Jamie Hyneman
The main reason our PackBot design was not capable of climbing stairs was power; the motors and servos supplied are the standard ones used for RC control and while we ganged them to lift the front section of the bot, it was impractical for our design to climb a full-size staircase. If you are looking for extra “muscle” to achieve this, the Hitec HSR-5995TG digital servo can easily handle the above task. It provides 333 oz.-in. of torque at 6 volts, and over 400 oz.-in. at 7.4 volts! That’s over ten times the torque of a standard analog servo at about the same physical size!
The HSR-5995TG digital servo even incorporates titanium gears to handle that massive torque. Some minor modifications would be necessary to make the shaft outputs compatible with the VEX hardware, but this is easily done. Because these servos are more expensive than standard RC servos (street price of about $125), it is unlikely their equivalent would be included in the VEX starter kit. Also note that Hitec offers 168 oz.-in. servos, the HS-5645MG, for about $60 – that may be plenty of torque for a hop-up at a more affordable price. Check out www.hitecrcd.com.
Even so, it is amazing that the PackBot we built in a day or so could go right over an apple box autonomously! If the kit doesn’t include a few high performance gadgets, it can’t be faulted.
Unfortunately, we didn’t count on the robot interpreting multiple triggers; and the tracks continued to rise, slamming into the body and stripping the 60-tooth gear on the first stage, which is a situation we had hoped to avoid. Upon removal, we found that the square hole in the gear had failed, allowing the gear to spin freely. Just goes to show that even experienced builders need to be careful. Deciding that this was indeed an excellent situation for a limit switch, we wasted no time in installing one as well as the shaft encoder, so the robot would know exactly where its front track was at all times.
PROGRAMMING AUTOMATED CLIMBING
With our sensors in place, we were able to continue programming with position feedback, giving the robot an accurate idea of the elevation angle of the tracks. The limit switch was used to calibrate the track position each time upon startup, giving us a home position. This absolute home reference is required because the optical shaft encoder only provides relative motion information in the form of pulses each time the shaft rotates.
Our goal was to give the robot some ability to make autonomous decisions for the driver, especially in conditions where he or she may not be able to see upcoming debris. In our test program, the driver has control of the robot under normal conditions, but the robot continually scans for obstacles directly ahead using the ultrasonic sensor. When an object is sensed, the robot takes over and initiates an automated climbing sequence, shown in the sequence, where it climbs over a large obstacle. After the sequence is complete, the robot returns control to the driver. Several versions of the program were tested to adjust timing and track angles.
Though we only had two days to build our PackBot, various expeditions around our shop at M5 have proven highly entertaining.
Future refinements have been planned, including modifications to the tracks to improve their traction on stairs, and the addition of more drive motors for increased climbing power. Once we have the traction to climb stairs manually, we also plan to add a routine in the program to deal with autonomously climbing stairs, which requires a different sequence of events than climbing over a single obstacle. Finally, a pan/tilt system for the camera built with VEX servos will expand our ability to assess our PackBot’s immediate surroundings. The best part is that with the VEX System, modifications can be completed easily, and numerous versions can be tested quickly until the best configuration is found. The pieces are well designed and their ease of use promotes creativity in the problem solving process. We’ve found the system to be highly adaptable and accessible for the robotics enthusiast from beginners to advanced builders; and look forward to seeing what the rest of you can do with this versatile system.
BUMPER CAR SWARM-BOTS
by Jamie Hyneman
As we go to press, I am in the middle of a project that really demonstrates the beauty of the VEX System. I was hired by a large software company to create a “robotics” entertainment event at an annual corporate gathering at which company strategies and other things would be discussed. I was retained to put together something ‘robotic’ in nature, but the question was what? I came up with this idea: what if I were to make bumper cars like you see at a county fair, but with a twist? Rig the cars for remote control; so that you can drive your own car, but if you hit an override button, you will shut down your car and instead be driving someone else’s.
We would set up two teams, each trying to get to a goal line to make a touchdown – but the players would never know whose car was on which team because at any time a player could override someone else and send them into another car or a wall. The client liked the idea and I was awarded the job to make ten of these cars. I decided to use an electric wheelchair chassis as the vehicle platform as it would cost less than scratch building. All we had to do is make an exterior with padding and install the control system. This is the interesting part: while I was considering which radio system to use, I realized the VEX System had all the necessary features: mixing (to give skid-steer control), FM (for a good signal), and reasonable price. Then it hit me; it also has a brain!
When you start to think about what is necessary to rig this ‘override’ capability (a somewhat complicated setup requiring a lot of frequencies, a combination of normally on and off relays), it starts to get confusing pretty fast. I also wanted to have an override time-out built in; because I was pretty sure that within a few minutes of play, the players would all be going right for the overrides and all ten cars would end up getting beat against a wall over and over; and while funny, the game wouldn’t go anywhere.
I called the guys at VEX and they immediately told me that the VEX System’s brain was capable of giving me what I wanted without any extra hardware – just a little programming! This solution saved me a ton of time and money. The VEX robot’s control system is actually very powerful – it does much more than enable a tinkerer to experiment with a robot that tracks lines or senses walls. The “brain” is something that can be programmed with very little effort to make the radio system much more dynamic and flexible.
The next time the company holds a convention, they can have these cars demonstrate “swarm-bot behavior,” for example, by going into automatic evasive patterns that are autonomously controlled by the VEX brains. The possibilities are endless, and all each car has in it is one transmitter, one receiver, one brain, and a couple of speed controllers. One of these days, you will be able to get into your car in New York, relax with a good book and end up in LA. A system no more complicated than the robot brain in the VEX kit will get you there, and the local traffic system will override your car (just like we are doing for fun) to integrate it with other traffic and put you at the correct speed. I’m serious. Of course, to do that you may need additional hardware and the cooperation of the local government and highway authorities. Look to a future issue of ROBOT for more details on the bumper car robots.
The VEX Robotics Starter kit is available at your local Radio Shack for $299.99 (catalog No. 276-2151). Be sure and check out the wealth of accessories that can be used with the VEX kit. —the editors
Hitec RCD USA, Inc.
www.hitecrcd.com (858) 748-6948
www.irobot.com (781) 345-0200
VEX Robotics Design System
www.shulmanaviation.com (407) 359-1020
For more information, please see our source guide on pg. 93.