Circle #60 on the Reader Service Card.

Circle #27 on the Reader Service Card.

SERVO
Features & Projects 26 Inside the Iron Man

30 35 39 47 51 76 82

Carlos Owens’ 18-Foot Mecha Giant Part 1: The Construction of a Hex Walker

The Mini Servo Walker Eastern Canadian Robot Games
Eighty Robots Compete for the Gold

26

R2-D2: A PC-Powered Robot
Bring the Movie into Your Living Room

Robosapien2, Bigger Than Ever
Introducing the New Model and Some Friends

Reusable Robot Software
Part 2: Localization and Odometry

Zoë on the Atacama Desert
Training Robots for Other Worlds

30

The Heath HERO Robot
Looking Back at a Popular Robot

On The Cover
Bounding onto the cover this month is Robopet, one of WowWee’s latest creations. Photo courtesy WowWee, Ltd. This Page: A night shot of the Atacama campground. Photo courtesy Carnegie-Mellon
SERVO Magazine (ISSN 1546-0592/CDN Pub Agree#40702530) is published monthly for $24.95 per year by T & L Publications, Inc., 430 Princeland Court, Corona, CA 92879. APPLICATION TO MAIL AT PERIODICALS POSTAGE RATE IS PENDING AT CORONA, CA AND AT ADDITIONAL ENTRY MAILING OFFICES. POSTMASTER: Send address changes to SERVO Magazine, 430 Princeland Court, Corona, CA 92879-1300 or Station A, P.O. Box 54,Windsor ON N9A 6J5; cpcreturns@servomagazine.com

76

If every tool, when ordered, or even of its own accord, could do the work that befits it ... then there would be no need of apprentices for the master, workers, or of slaves for the lords. — Aristotle, 322 B.C.

3.2005
VOL. 3 NO. 3

Departments
6 7 18 19 20 44 46 58 73 81
Mind/Iron
The R2-D2 Effect

Columns
8 12 22 60 65 67 80
Rubberbands
When Robots Talk Back

Bio-Feedback
Where You Have a Voice

Ask Mr. Roboto
Your Problems Solved Here

Events Calendar
Find a Show Near You

Twin Tweaks
Tweaking the Land Sea 2 R/C

Robotics Showcase
Get What You Need Quick

GeerHead
Six-Legged Forest Walker

Brain Matrix
Servos

Robytes
News from the Robotics World

New Products
The Latest Project Parts

Robotics Resources
Framework for Your Robot

Robo-Links
Your Link to Parts and Services

Appetizer
So You Want to Build Robots?

SERVO Bookstore
Feed Your Brain

Menagerie
ROBOlympics are Coming Soon

Advertiser’s Index
A List of Supporting Advertisers

Coming 4.2005
Neural Networks 101
Stephen L. Thaler, Ph.D., president and CEO of Imagination Engines, Inc., introduces the complex concepts of neural networks capable of human-level discovery and invention. He describes the “mental” structures needed to create neural networks and their power.

Mind / Iron
by Ryan Lee Price
f you were to ask any average person to name a robot, any robot, invariably they would rattle off the likes of R2-D2 and C-3P0 with minimal difficulty. That’s understandable. They’re the world’s most popular robotic duo, but — along with Robby the Robot from Forbidden Planet and the “Lost in Space” robot, B-9 — they represent the exception to the understanding that robots are generally portrayed as antagonists in the movies and on TV. Given the amount of evil robots as adversaries in mainstream films, it really comes as no surprise why the majority of people see robots as antagonistic characters that are constantly altering their directives, changing their programs, and disobeying their primary functions to enable themselves to do what we'd expect about 35 minutes into the film: resent and then try to destroy all of mankind. Popular entertainment is driven by conflict, struggle, and adversity. You'd be bored to tears if you sat through two hours of a movie without the drama of good versus evil. Sure, there are plenty of good robots out there (V.I.N.CENT and Bob, those two lovable trash cans from The Black Hole, the annoying Johnny 5 from Short Circuit, Andrew from Bicentennial Man, and those little service robots from Silent Running: Huey, Duey, and Luey). If we wanted to stretch it to television, we could even include KITT from “Knight Rider,” Data from “Star Trek,” and bumbling Twiki from “Buck Rodgers.” The vast number of these good robots aren't plot drivers (Bicentennial Man excluded); they don't create the central drama of a movie or TV show. The goodness of R2-D2 didn't convince Luke to fight the dark side (he only brought the message, to which Luke replied, "sorry, wrong number"), and KITT never caused a crooked sheriff to trick an old lady out of her land. He was

Published Monthly By The TechTrax Group — A Division Of T & L Publications, Inc. 430 Princeland Court Corona, CA 92879-1300 (951) 371-8497 FAX (951) 371-3052 www.servomagazine.com Subscription Order ONLY Line 1-800-783-4624 PUBLISHER Larry Lemieux publisher@servomagazine.com ASSOCIATE PUBLISHER/ VP OF SALES/MARKETING Robin Lemieux robin@servomagazine.com EDITOR Ryan Lee Price ryan@servomagazine.com MANAGING EDITOR Alexandra Lindstrom alexa@servomagazine.com CIRCULATION DIRECTOR Mary Descaro subscribe@servomagazine.com WEB CONTENT/STORE Michael Kaudze michael@servomagazine.com PRODUCTION/GRAPHICS Shannon Lemieux STAFF Dawn Saladino Corrie Panzer Kristin Rutz OUR PET ROBOTS Guido Mifune Copyright 2005 by T & L Publications, Inc. All Rights Reserved All advertising is subject to publisher's approval. We are not responsible for mistakes, misprints, or typographical errors. SERVO Magazine assumes no responsibility for the availability or condition of advertised items or for the honesty of the advertiser.The publisher makes no claims for the legality of any item advertised in SERVO. This is the sole responsibility of the advertiser. Advertisers and their agencies agree to indemnify and protect the publisher from any and all claims, action, or expense arising from advertising placed in SERVO. Please send all subscription orders, correspondence, UPS, overnight mail, and artwork to: 430 Princeland Court, Corona, CA 92879.

I

mostly transportation with know-it-all optional features that caused a lot of fantastic sparks. The evil robots are where we find the conflict and drama that drive people to the movies. HAL (though not really a robot, one could argue that he was autonomously the whole ship), on the other hand, caused the conflict in 2001 and had to be stopped. The first ever robot to grace the silver screen — Maria from Metropolis — is a prime example. Guess what happened after robot Maria received the soul from the human Maria? Yep, she turned evil, showing us that robots are not designed to handle human feelings, and they revert to the lowest form of emotion when forced to. Singing cowboy Gene Autry fought the evil robot army of Queen Tika in Phantom Empire, while 20 years later we watched “Gort” decide the fate of mankind in The Day the Earth Stood Still. Fast forwarding to a more modern era, the opinion hasn't much changed. Most notable in this group are: Ash in Alien — who killed most of the crew (as opposed to Bishop in Aliens who saved only some of the crew), the Cylons, Roy Batty, Leon, Pris and Rachael Rosen — the murderous lot from Blade Runner, Enforcement Droid 209 in RoboCop, all of the robots except Sonny in iRobot, and the list goes on. These robots controlled the outcome of the movies they were in because they were the central conflicts and the sources of the main characters’ motivation: destroy the robot before the robot destroys me. The more robots that come into common usage and become accepted as the tools, teammates, pets, and friends we want them to be, the less we'll have to watch a movie about a horde of them descending on a small village of innocent people. I mean, when is the last time you saw a movie about a hair dryer? SV

6

SERVO 03.2005

Contact Us
If you have general questions or comments about SERVO Magazine, please contact us: SERVO Bio-Feedback, 430 Princeland Court, Corona, CA 92879; or email: feedback@servomagazine.com

Up the Ante
I enjoy the magazine, but keep wishing for articles with more substance. I would like to see some articles that go the next step beyond just motorizing a platform with one or two sensors. This has been done several times, but I find that reading about what other people have done to compete in a competition shows more of the real word issues. The Trinity Fire Fighting contest is a good challenge. How about just taking one of the less trivial requirements and assisting the reader in solving it or seeing multiple solutions for them. We don’t even need to solve them, just discussing the problems helps. The difference between reading a university research paper and wanting to try an idea they discuss and what SERVO discusses is like the Grand Canyon. Yet, I don’t think they are really that far ahead of the amateur robotics person, except maybe in funding. I would like to see SERVO fill this gap and still embrace the new person if at all possible. Jef f Dunker via Internet As the new editor, Jeff, one of my ideas for future issues is to print more projects about purpose-built robots that show the reader a real-life application and how it might apply to something you’re building at home. There are thousands of roboteers out there who are building some amazing things. My job is to bring them to you. — Editor

three-axis feedback on the position of the body in mid-air. If there are accelerometer boards available that are easy to connect to a servopod, that connection information would be handy. Low-cost accelerometers measure two g-forces. What if my robot generates four g-forces? How about adding a search function on the website to search topics in past issues? My Internet connection is 26.4 kps. Broadband is not available where I live. Some of your web pages take a long time to download. Can you lighten them? Dennis Evans via Internet Dennis, we’re sorry to hear about your slow Internet connection speed, but in order to read the content on some of the pages of our website, it has to be a certain size. To answer your question, Signal Quest in Lebanon, NH (www.signalquest. com), offers the SQ-XL-DAQ line of accelerometers with digital serial output. Using a serial interface cable, it can function as a self-contained data acquisition system for two- or three-axis acceleration, tilt, and vibration measurements, with models available for ±1.5 to ±50 g-forces.

Complete the Projects
SERVO is a very nice magazine. I believe that a balance between howto and team reporting would serve the general robotic builder better. A series of articles that step the builder through the construction of a drive platform, controls, software, etc., would gain more interest. George Jones via Internet In future months, George, you will see SERVO not only as a source of entertainment, but as a guide to the future of building robots and automation for the beginner and the advanced alike. — Editor

Great Job, SERVO
It is great to see a magazine like this finally hitting the stands on a regular basis and packed with so many good articles spanning the world of personal robotics! I enjoy reading your magazine and seeing what other groups and individuals have worked on! Keep up the good work! Forrest via Internet Thank you very much, Forrest. We are happy that you are satisfied with the magazine.

Calling all Robots!
Attention roboteers! We want to hear from you! Do you have a great bot that you would like to share with the world? We’re looking for anything from sumos to line followers to multi-servo robotic arms. Send us a couple of pictures of your latest project, and we’ll be happy to show it off in our “Menagerie” department. Don’t forget to include a few words about how you built it and what went into it. For prints, send them to: SERVO Menagerie, 430 Princeland Court, Corona, CA, 92879; for digital images, email them to menagerie@servomagazine.com
SERVO 03.2005

Some SERVO Suggestions
Please do an article on accelerometers. I am looking at a trotting robot design that will need a

7

7

by Jack Buffington

When Robots Talk Back:
A Simple Way to Add Speech Capability to Your Robot

and by generating sounds of its own. This column will raise the bar a little higher yet by showing how you can give your robot a voice so that it can simply tell you something instead of requiring you to read a display or interpret a set of tones. This might sound like it would be a difficult task, but — in reality — it is quite easy. With just a little bit of work, you can have a remarkably natural-sounding voice that far exceeds the quality of other voice generators that were previously available. You may be familiar with a company called Winbond. A few years ago, they purchased a company called ISD, which produced a series of analog EEPROM devices that allowed you to record varying lengths of audio onto the chip for later playback. Winbond continues to produce these chips, but has started to branch off of that idea and is now producing other interesting audio products, such as chips that can play MIDI music and chips that allow you to convert text input into speech. There is a company called Grand Idea Studios that
Figure 1. Pinout for the Emic Text-to-Speech Module.

ou already have to give your robot the ability Yto communicate learned howusing a text-based LCD display with you by

took Winbond’s chip and packaged it into a very easy-to-use product that they are now selling through Parallax, Inc. (www.parallax.com). In the past, other speech processors have had some pretty terrible output. If you trained your ear, you could understand the words that they were saying, but if you were encountering a device that used those chips for the first time, you likely wouldn’t understand what they were saying. That is not the case now. With the Emic Text-to-Speech Module, you have a clearly intelligible woman’s voice that is only slightly synthetic-sounding due to the lack of pitch and speed variations that people use while speaking. Winbond has an interactive demo of what their chip sounds like on their website. You can find this demo at www.winbond-usa.com/ttsdemo/

Let’s Make It Work
When you order the Emic Text-to-Speech Module, it will

Figure 2. Connection between the Emic module and a PIC.

8

SERVO 03.2005

Rubberbands and Bailing Wire
arrive as a single inline pin package that you can fit into any TECH TIDBIT prototyping board that has 0.1-inch spacing. You only need to connect four of the pins to your microprocessor. Careful Not all nine-volt battery clips are equal. The flimsy experimentation with the timing of how you send your kind that you can get at your neighborhood store (the commands would allow you to reduce this down to just one. one that claims to have answers) will last between four You can connect a speaker directly to the circuit board and and 10 connections to a battery before the wires break hear the speech at a reasonable level. If you want it to be away from their solder louder, though, the board has a special pin that you can joints. Look for hardconnect to an external amplifier. The Emic board runs at five shelled connectors — such volts, so you will need an external regulator to power it. That as shown on the right — shouldn’t be a problem, since you will likely be using one from other suppliers. They already for your microprocessor. will last much longer. Figure 1 shows the pinout for the Emic module. Figure 2 shows how the module can be connected to a PIC microcontroller. The Emic’s serial lines communicate at 2400 baud. that you will want to know when using the Emic module. The Communication with the Emic module can be done through first — and most important — is the “say” command. If, for two different methods. The first method uses single byte example, you sent the string “say=I’ve been a bad robot!;” to commands to tell the module what you want to do. The the Emic module, it would faithfully speak that sentence. other method uses ASCII commands. In this column, we will Anything after the equals sign will be said. Notice that there is use the second method because it is more straightforward. If a semicolon following the sentence. This semicolon tells the Emic module that you have finished sending a command. If you you are limited in program space or processor time, you don’t send the semicolon, the Emic module will remain silent. might opt for the first method. The next command that you will want to know is the volLet’s go over the function of each of the four pins that ume command, as there are eight volume levels. They range you need to connect to. The /RESET pin allows you to do a from zero to seven. The default level is Level Four, while zero hard reset on the Emic module. This will clear all settings and sets the volume to be fully off. To change the volume to Level reset the board to its initial start-up state. In normal use, you Six you would send “volume=6;”. Notice that a semicolon will drive this pin high to activate the module. Going upward, once again followed the command. The Emic module can be the next pin in Figure 1 is the BUSY pin. This pin is almost directly connected to a speaker, as was shown in Figure 2, self-explanatory. When the Emic module is busy processing a but the volume level is only suitable for a device that will be command, it will raise this pin high. This pin does not instantused in a relatively quiet location when you do this. If you ly go high after you send a command, so you will need to need additional volume, then you could connect an external wait up to a millisecond after sending your commands before checking this pin’s state. Since it takes a varying amount of amplifier — such as the LM386 — to the AOUT pin. time to speak each sentence or process each command that you send to the Professional Integrated Development Environment Emic module, it is a good idea to check this pin to see if the module is ready to The C Compiler by xxxxxxx accept new commands. At the top of the module is the Designed specifically and only for the PICmicro®MCU Serial In pin. You will be sending What other compiler can you say that for? your commands to this pin in RS232 serial format, except that you will be Try our new Build-Your-Own Robotics Development Kit! using zero to five volt levels instead of Features Include: ±12 volts. All commands are sent at s Electronic Compass s Text to Speech Converter 2400 baud. There are two dipswitches with Speaker on the Emic module. The switch s Proximity Detection labeled “1” allows you to select s Infrared Remote Control Assembled Robot s Ball Bearing Servo Motors ASCII or hexidecimal commands. The s RS-232 Interface method described here will use ASCII s Durable Chassis s Expansion Port for commands, so set this switch to on. Additional Functionality Switch “2” allows you to choose (if you Starting at want) the module to echo bytes sent to FREE ground just $229 shipping* it back to the host processor. This Use offer code SVJ04 In-Circuit Debugger/Programmer *Offer expires April 1, 2005 won’t be necessary for this application, Offer valid in U.S. only so set this switch to the off position. For more information, request a free copy of our brochure today! Fax: 262-522-6504 Sales 262-522-6500 x35 There are four main commands www.ccsinfo.com/env
PIC® and PICmicro® are registered trademarks of Microchip Technology Inc. in the USA and other countries.

W indows and Linu x

Command Line

Circle #42 on the Reader Service Card.

SERVO 03.2005

9

Rubberbands and Bailing Wire
output_high(RESET); // connected to the Emic’s /RESET pin printf(“volume=5;”); waitOnBusy(); while(true) { printf(“say=Peat and Repeat went into a store;”); waitOnBusy(); printf(“say=Peat came out.;”); waitOnBusy(); printf(“say=Who’s left?;”); waitOnBusy(); delay_ms(1000); } // wait one second

void waitOnBusy() { // delays until the busy pin goes low delay_ms(1); while(input(BUSY)) { } }

For the volume, pitch, and speed commands, you can opt to send “+” or “-“ instead of a specific level. The Emic module will take care of adjusting the values for you and will not let them go above or below their limits. An example of this would be “speed=+;”. Figure 3 shows a program fragment that will endlessly cause the Emic module to repeat a stupid joke over and over. It should be pretty clear from this example that adding speech to your robot is almost a no-brainer, and it’s too bad that everything in robotics isn’t this easy! The final pin that you may want to use is the Serial Out pin. This pin will output “OK” after each section of text that you send to it to speak. This pin also allows you to communicate with the Emic module using other commands that allow you to do things like create abbreviations for words. You might, for example, send “TTYL” instead of “talk to you later.” Using the “help;” command will cause the Emic module to output a list of commands that you can view if you have the Emic module connected to a terminal program. The Emic module’s documentation is well written and provides descriptions of the commands not described here.

Figure 3. Code to drive the Emic module.

There are two commands that allow you to change the way that the Emic module sounds. These are the “speed=” and “pitch=” commands. The speed command has a range from zero to four and has a default of two. The pitch command has a range of zero to six and its default is one. In general, you will want to leave these settings alone, since the module sounds best at the defaults. For some situations, though, you may prefer to play around with these to achieve better results for your application.
Figure 4. Code that has the Emic module say a longer statement.
printf(“say=Four score and seven years ago, our fathers”); printf(“ brought forth upon this continent a new nation;”); // the buffer now has 95 characters waitOnBusy(); printf(“say=conceived in liberty and dedicated to the”); printf(“ proposition that all men are created equal;”); waitOnBusy();

Wrapping It Up
One thing to keep in mind when using the Emic module is that speech output does not happen immediately after you send it something to say. The Emic module needs a brief amount of time to process the text into the necessary phonemes (the individual sounds that words can be broken down into). Knowing this, you should try to send it the text to be spoken so that these pauses happen at appropriate times, such as the ends of sentences. The reason that you will need to break up your text is because the Emic module has a 128-byte buffer to hold commands and text to be spoken. If you wanted the Emic module to say something like, “Four score and seven years ago, our fathers brought forth upon this continent a new nation, conceived in liberty and dedicated to the proposition that all men are created equal,” you might want to send it in the manner shown in Figure 4. Figure 4 breaks this long sentence into two parts in a place where there would likely have been a dramatic pause. Neither section of the sentence is longer than 128 characters. The “say=” and the semicolon must be counted when counting the characters in the buffer. In Figure 4, each sentence fragment is broken into two parts. This was done to keep the lines of code short. The Emic module will only speak once it has received a semicolon. Adding speech capability to your robot allows it to communicate in a very natural way that people can understand. This month, you’ve learned how to easily add this capability. Now, you can do things like get feedback from your robot projects through the telephone, make your robot interact with someone who is blind, or let your technology-challenged friends have fun playing with your robots. SV

RESOURCES
www.ccsinfo.com Sells the C compiler for PIC processors used in this column www.microchip.com Manufacturer of the PIC microcontroller www.jameco.com or www.mouser.com Possibly the best sources for electronic parts www.parallax.com Sells the Emic module used in this article

10

SERVO 03.2005

Earn an Associate Degree from HOME!
Cleveland Institute of Electronics
• Electronics & Computer Training Programs • Nationally Accredited • Affordable Tuition / Military Tuition Assistance

Cleveland Institute of Electronics offers distance learning programs that will prepare you for rewarding careers in Electronics Engineering or Computer Technology - even if you have no experience! CIE's courses allow you to learn new technology at your own pace, in your own home, without disrupting your present job or lifestyle. No prior experience is needed and you can do all your training at home with full instructor support, extensive learning labs and on-line exams. They're fast, convenient, affordable and quickly becoming the new way to earn an accredited degree. Send for your FREE CIE course catalog and take the first step toward building a successful career in electronics and computer technology. You’ll find it has many rewards!

CIE’s Distance Learning Programs
• Electronics Associate Degree • Computer Associate Degree • Basic Electronics with Lab • Advanced Electronics Troubleshooting with Lab • Electronics Technology with FCC Preparation • PC Troubleshooting • Computer Networking • Wireless Technology • COMING SOON! Industrial Electronics with PLC Technology
Cleveland Institute of Electronics 1776 E. 17th St, Cleveland, OH 44114

Call (800) 243-6446 or visit www.cie-wc.edu for a FREE Career Catalog!

CD ROM & Certificate Training - CIE Bookstore
Introduction to Multimeters
2 meters • 4 lessons • 13 experiments 02-069 (Pictured) cert .......... $195

Introduction to Computers
9 lessons • certificate 01-IN01 ...................................... $195

Soldering Course with Lab
3 lessons • lab • video 01-SD01 (cert) ......................... $195

FCC License Prep Course
19 FCC prep lessons on CD ROM. 01-FCC01 (cert) ................... $49.95

Basic Electronics Course
39 lessons • 2 labs • 53 exercises 03-Introb (cert) ....................... $225

PC Board Design with Lab
4 lessons • lab • CD ROM 02-261 (cert) ............................ $195

Fiber Optics Course with Lab
2 lessons • Lab • Video • Certificate 01-FB02 ..................................... $175

Oscilloscope Course
7 learning topics • video 01-SCP01 (cert) ......................... $95

Intro to Information Systems
9 lessons • certificate 01-CET111 ................................ $195

FREE CIE BOOKSTORE CATALOG • www.ciebookstore.com • (800) 321-2155
Circle #25 on the Reader Service Card.

SERVO 03.2005

11

Our resident expert on all things robotic is merely an Email away.

roboto@servomagazine.com Tap into the sum of all human knowledge and get your questions answered here! From software algorithms to material selection, Mr. Roboto strives to meet you where you are — and what more would you expect from a complex service droid?

by

Pete Miles
What is the difference between digital and analog servos? The guys at the local hobby store tell me that digital ones are better because they are stronger and faster than regular servos, but you can buy different servos that are faster and stronger. The one thing I know for sure is that they are more expensive than regular servos. Why do I want to use a digital servo instead of the regular, analog servos? — Graham Wilson Issaquah, WA For the most part, they are the same. For example, in a given servo class that has both analog and digital versions of the same servos (i.e., the Hitec HS-645 and the HS-5645 servos), they use the same cases, gear sets, bearings, electric motors, and position feedback potentiometer. The main differences between them are the internal control electronics and the frequency in which they update the motor position. Before jumping into what is different about digital servos, here is a little background on how analog servos

Q A

Figure 1. An Atmel microcontroller is used to control the Hitec HS-5645 digital servo.

work, so that you can understand why digital servos are different. First off, analog servos use an analog circuitry to control servo arm position. This usually consists of using resistors, capacitors, transistors, and a custom IC (or two) to compare the input commanded position to the actual servo position, which is then used to control the direction of the electric motor to react to any positional errors. The first thing the servo’s control electronics does is to receive the typical one to two ms position command. Then it measures the servo arm’s position by reading the voltage across the potentiometer that is connected to the servo’s output shaft, which is then compared to the commanded position. If there is any positional error, then a voltage pulse is sent to the motor to force the motor to move in the opposite direction of the measured angular error. This is typical in any servo control application. What becomes interesting here is how the analog servos go about implementing this. Here, the control electronics will output a simple voltage pulse to the electric motor that is proportional to the positional error. When there is no error, no voltage is being sent to the drive motor, so the servo stops moving. When the error is small, the pulse width is small (i.e., the amount of time the voltage is being applied to the motor is small). As the positional error increases, the pulse width becomes longer. The electric motor will only move a small amount, based on how long the voltage pulse width is sent to the motor. If the pulse width is too small, the servo won’t turn because the pulse would not be sufficient for the electric motor to overcome all of the internal friction inside the overall servo. As the pulse width increases, the electric motor will move more. Due to the gear reduction in the servo, however, large electric motor rotations are needed to cause small servo output shaft movements and, therefore, small changes in the servo position’s feedback potentiometer. One of the reasons why the pulse widths sent to the electric motor are proportional to the positional error is so that the servo won’t overshoot the desired position. As the

12

SERVO 03.2005

servo’s output shaft approaches the desired position, it slows down to minimize any overshooting, which is one of the causes of “servo jitter.” The reason for the focus on what the servo does after it receives one position command is that the analog servo’s control electronics will output only one pulse to the electric motor for every one to two ms position command it receives. This is why the servo’s commanded position is updated 50 times a second (50 Hz) to make sure that the servo completes the move to its commanded position. Since the commanded position is sent to a servo 50 times per second, this, in turn, results in an electrical pulse width being sent to the electric motor 50 times per second. This, in effect, creates a PWM (Pulse Width Modulation) signal that controls the motor speed. When the positional error is small, the resulting PWM duty cycle is small; therefore, the motor moves slower because the average voltage is small. As the positional error increases, the PWM duty cycle increases; the motor’s speed will increase because of the higher average voltage. This, then, affects the torque the motor can deliver. Small positional errors result in slower shaft speeds, which then result in lower torque. Higher positional errors result in higher shaft speeds, which then result in higher motor torque. This is why the servos resist more the harder you try to turn them. The greater the error, the greater the torque. When the error becomes large enough, the resulting pulse width that is being sent to the electric motor will equal the time period for the incoming commanded position update frequency. When this occurs, a constant voltage is sent to the motor and the motor delivers its maximum torque. One bit of information that few people are aware of is that the incoming position command update frequency does not have to be updated at 50 Hz for a servo to work. The signal can be either faster or slower. The actual pulse width that is sent to the motor is only a function of the positional error. The motor speed and torque then become functions of the incoming

position update frequency. Faster frequencies will result in the motor responding to the errors faster and with higher torque. Slower update frequencies will result in the motor taking longer to correct positional errors and a lower servo output torque. If the frequency becomes too slow, then the servo will start to have noticeable power losses and will look like it is stepping (pulsing) toward its commanded position instead of moving smoothly. Digital servos work a little differently than this. They still take the same one to two ms input command pulse, but instead of outputting a single pulse to the electric motor, the microcontroller outputs a continuous PWM signal to a set of transistors/FETs to drive the motor. Figure 1 shows the Atmel microcontroller that is used to control the Hitec HS-5645 digital servo. The PWM frequency for most servos is 300 Hz, which is about six to 10 times faster than the normal updating signal approach used with analog servos. In parallel with controlling the motor position and speed, the microcontroller in also measuring the actual position of the servo and comparing it to the commanded position. Like with the analog servo, the pulse width of the PWM signal is proportional to the servo position error. When the positional error is zero, the pulse width is also zero, hence a zero percent duty cycle. As the error increases, the pulse width and duty cycle percentage increases until the error becomes large enough that a constant voltage is sent to the motor (100 percent duty cycle). Hence, the main difference between an analog servo and a digital servo is the PWM frequency for motor position and speed control. For analog servos, the PWM frequency is driven by the input position update frequency and, for digital servos, the PWM frequency is constant (i.e., 300 Hz) and independent of the input position command frequency. Figure 2 illustrates the control signal differences between an analog and digital servo. So, what are the advantages of a digital servo over an analog servo? They boil down to torque and a tighter
Circle #55 on the Reader Service Card.

13

dead band. Maximum torque will be the same between the two. This is because, once a 100 percent duty cycle has been achieved, 100 percent voltage (minus any voltage drop across the transistors) is applied to the motor. Still, the torque advantage occurs during small positional errors. For a given duty cycle, the higher PWM frequency allows more current to circulate through the motor to keep it turning during the off times, which results in the motor turning faster and more power going through the motor. This results in the servo delivering more torque quicker with smaller positional errors when compared to analog servos. With very small positional errors, an analog servo will

5 4 3 2 1 0 0 5 4 3 2 1 0 0 5 4 3 2 1 0 0 5 4 3 2 1 0 0 5 4 3 2 1 0 0

send a single, short pulse to the motor to make it move. The motor needs a certain amount of electrical current in order to overcome all of the internal friction of the motor to start moving. When the pulse width is not large enough to generate enough current to do this, the motor doesn’t move. Because of this, the servo shaft can move a small amount more or less than its commanded position without being corrected. This small oscillation is known as the dead band. With digital servos, the higher frequency results in more current going through the motor with small positional errors. Because of this, digital servos will start moving with smaller positional errors than analog servos. Hence, digital servos have a tighter (smaller) dead band. Figure 2. Illustration of the control signal differences in an analog and digital servo. For the R/C car and aircraft hobbies, the digital servos 5 mean faster response, more 4 LARGE POSITION holding/transient torque, and ERROR 3 tighter dead band control. This HIGH MOTOR PWM 2 DUTY CYCLE makes them very popular for 1 the high-performance people. 0 For the robotics community, 40ms 20ms 40ms 0 20ms though, are these advantages really that important? 5 Hopefully by now you have 4 noticed that the only difference MODERATE POSITION 3 ERROR between analog and digital serMOTOR PWM DUTY 2 vos is that the PWM frequency CYCLE AROUND 50% to the electric motors and the 1 digital servo frequency is fixed 0 at 300 Hz. The analog servo 20ms 40ms 20ms 40ms 0 frequency, however, can be 5 changed to whatever you want. The R/C community is stuck 4 SMALL POSITION using their transmitters and 3 ERROR LOW MOTOR PWM receivers that only update the 2 DUTY CYCLE servo’s position at a frequency 1 from 30 to 50 Hz. With robot 0 microcontrollers, though, the 20ms 40ms 20ms 40ms 0 servo motor’s PWM frequency can be easily increased just by 5 increasing the input position 4 NO POSITION frequency. In fact, just by ERROR 3 changing the frequency of the NO MOTOR PWM 2 one to two ms input position 1 updates, you can control the servo speed. Thus, the lower 0 20ms 40ms 20ms 40ms 0 cost analog servos can be made to perform as good as or better 5 than the more expensive digital 4 servos. This is not to say that digi3 INCOMING POSITION COMMAND PULSE tal servos don’t have their place 2 in the robotics community. 1 Some servo manufacturers have 0 servos that are programmable, 20ms 40ms 20ms 40ms 0 and these programmable DIGITAL SERVO ANALOG SERVO features can be very beneficial

14

SERVO 03.2005

to robots. Right now, there are only two Specification AI Motor-601 AI Motor-701 AI Motor-1001 programmable servo manufacturers on 5 to 10 volts the market — Ko Propo and Hitec. Input Voltage Range Multiplex has a programmable servo Max. Torque @ 9.5 V 83 oz-in 97 oz-in 139 oz-in line, but they only allow you to reverse Max Speed @ 9.5 V 90 RPM 82 RPM 60 RPM the servo direction. The speed, dead band, and servo Gear Ratio 1/160 1/173 1/241 travel of the digital servos sold by Plastic Plastic Plastic & Metal Ko Propo (www.kopropo.com) are Gear Material programmable with a PC. The servos Bearings None None Yes can be programmed to move faster or Size 51.6 x 34.3 x 37.1 slower, increase or decrease the dead 40 grams 40 grams 46 grams band, and create soft limits on the Weight range of motion the servo can travel. In Mechanical Connection Points Two addition, you can program both the rate Two of speed change at the dead bands Electrical Connection Points (called punch) and the overshoot Control Signal RS-232 allowance at the servos. 2400 to 460800 bps An interesting feature is that an Baud Rate over-current protection can be pro- Number of Modules Per Serial 31 grammed into the servos. If a maximum Line amount of current is detected for a Angular Controllable Range 0 to 332 degrees certain amount of time, the servos will Two levels, 1.3 degrees, 0.65 degrees automatically reduce power. This can be Angular Resolution very beneficial in preserving these Inverse Voltage Protection Yes expensive servos. Ko Propo also has a Yes class of three servos called the “Red Over-Current Protection Version” (KHR-8044 ICS, KHR-2346 ICS, 360 Degree Rotation Function Yes KHR-949 ICS). These digital servos are Yes not only programmable, but they can Position Feedback Function provide an actual position feedback. This Current Feedback Function Yes is beneficial for developing advanced Speed Control During Position Five levels animatronic posing programs or closed Control Mode loop servo position algorithms. The Ko Speed Control During 360 Degree 16 levels Propo servos are very popular in Japan Rotation Mode and Korea for many of the humanoid Table 1. Megarobotics Actuator Module (servo) specifications. robots that compete in the Robo-One event (www.robo-one.com). The only source for them that I am aware of in the US is Horizon that position. All you have to do is send the one to two ms Hobbies (www.horizonhobbies.com). position pulse to it once and it will move to that position The digital servos from Hitec (www.hitecrcd.com) and stay there until told to move differently. This is a great require a separate hand-held programmer called the HFP-10 advantage for robotics because it eliminates all of the Hitec Digital Servo Programmer. With this programmer, you can set the dead band width, servo rotation direction, servo Figure 3. Megarobotics AI Motor-601 Modules. speed, enable/disable failsafe, and the range of motion and neutral position. Failsafe is a position where the servo will move to if it stops receiving a position command, which is very important for model aircraft. The hand-held programmer has its own batteries so the servos can be programmed in the field. Also, the programmer can be used to test the servo to see if it is working properly. For robotics applications, the Hitec digital servos have a very nice feature that — to my surprise — no one has ever figured out or published. These servos do not require the position command to be repeated as long as the failsafe has been disabled (which is the default). When you first apply power to the servo, it won’t move for about a second. Then, wherever its current position is, it will hold SERVO 03.2005

15

servos have a range of motion that is 332 degrees, I think they will work quite well for your application. Table 1 shows a list of the specifications for these motors. Figure 3 shows a pair of the AI Motor-601 Modules. These servo modules have similar size, torque, and speed ratings as the higher-end R/C servos, but their many other features make them ideal for the robotics community. For example, many people will permanently modify R/C servos by gutting them so that they can rotate 360 degrees. The AI servos can operate in either position control or continuous rotation mode by a single program command. In addition, variable speed is also programmable, which eliminates the need for a separate speed controller. Since these servos provide both position and current draw feedback, closed loop position control systems can be created with overcurrent protection that will prevent the motors from Figure 4. Various attachments and replacement gears that are becoming damaged. included with each AI Motor Module. These servos are programmed using standard RS-232 signals and the control signals do not need to be repeated position update overhead headaches that are associated for the servos to hold their position. With baud rates up to with analog servos. This feature alone makes Hitec digital 460 kbps, multiple servos can be simultaneously controlled servos my servo of choice. without any noticeable lag between the first and last servo position command. Another attractive feature of these servos is that they can be daisy chained together so that a I want to build a model of one of those industrial single serial control line can control up to 31 different robots that are used to weld automobiles. Are there servos. The daisy chaining greatly simplifies the wiring any hobbyist level servos that have a greater range between the servos and a microcontroller. of angular motion than the standard R/C servos? Typical R/C servos come with four different servo horns — Mark Packs that can only be attached to the output spline of the shaft. Indianapolis, IN The AI Motors come with 11 different attachments that connect to the output shaft and to the motor’s frame. These Take a look at the Megarobotics AI Modules that are attachments allow multiple motors to be connected to each sold by Tribotix (www.tribotix.com). These servos are other without having to use additional mounting brackets. absolutely amazing. Since typical servos have a One of the other features that make these motors unique is maximum angular range of motion of 180 degrees and these that there are two different attachment points on the output shaft. One is on the side of the motor, which is similar to regular servos and the other is at the midpoint of the body. This allows motors to be mounted inline with each other and The technology builder's source for kits, components, supplies, tools, books and education. The technology builder's source for kits, components, supplies, tools, books and education. reduces the bending stresses on the output shaft. Figure 4 shows the variRobot Kits For All Skill Levels ICs, Transistors, Project Kits Robot Kits For All Skill Levels ICs, Transistors, Project Kits ous attachments and replacement gears that are included with every AI Motors, Frame Components Motors, Frame Components module. and Scratch Builder Supplies. and Scratch Builder Supplies. These motors are relatively new to the robotics community, but they are Order by Internet, phone, fax mail. Order by Internet, phone, fax oror mail. becoming more and more popular. www.HobbyEngineering.com www.HobbyEngineering.com Due to their modularity and ease of programming, they are becoming fairly 1-866-ROBOT-50 1-866-ROBOT-50 Books and Books and popular in the humanoid and 1-866-762-6850 1-866-762-6850 Educational Educational KK 1-650-552-9925 1-650-552-9925 quadruped robotics communities. 1-650-259-9590 (fax) 1-650-259-9590 (fax) Though Tribotix is located in sales@HobbyEngineering.com sales@HobbyEngineering.com Australia, it took less than a week for 180 El Camino Real 180 El Camino Real Millbrae, CA 94030 Millbrae, CA 94030 the servos that I purchased to reach BEAM Kits and Components BEAM Kits and Components Visit our store near SFO! Visit our store near SFO! Seattle. I was quite amazed, since it usually takes a month to get parts from Most orders ship the day received! World-wide shipping. Convenient payment options. Most orders ship the day received! World-wide shipping. Convenient payment options. Japan. SV

Q A

HobbyEngineering HobbyEngineering

16

SERVO 03.2005

Profiting from the 1st New Industry of the 21st Century

Produced by

Premier Sponsor

RoboticsTrends

SECOND ANNUAL

Conference and Exposition
The Nation’s Premier Business Development Event for Mobile Robotics and Intelligent Systems
May 10-11, 2005 Hyatt Regency Cambridge Cambridge, MA

www.roboevent.com
Photos courtesy of iRobot, SICK, K-Team, CTG, Business Design Lab, ActivMedia Robotics, LLC. Corporate Sponsors Media Sponsors Association Sponsors

SERVO 03.2005

17

Send updates, new listings, corrections, complaints, and suggestions to: steve@ncc.com or FAX 972-404-0269 There are a few interesting events shaping up for March, including the annual APEC Micromouse competition, which will be held in Austin, TX. Also planned for March is the second ROBOlympics, which promises to be even bigger than last year’s event, with over 50 events scattered across the San Francisco State University campus. The list of events for April and May — which tend to be the busiest months — continues to grow as we get final event information from organizers. We’re listing some new events this year, including TEAMS, which is a FIRST-like organization for Maryland middle schools. Also new to the list is Istrobot — a university-level event held in Slovakia. — R. Steven Rainwater For last minute updates and changes, you can always find the most recent version of the complete Robot Competition FAQ at Robots.net: http://robots.net/rcfaq.html FIRA, and robot combat. www.robolympics.net

A p r il 2 0 0 5
9-10
Trinity College Fire Fighting Home Robot Contest Trinity College, Hartford, CT Could the fire have been set by a robot builder frustrated with the voluminous rules? www.trincoll.edu/events/robot

12-14 DTU RoboCup
Technical University of Denmark, Copenhagen, Denmark Imagine your typical line following contest. Now add forks in the line, ramps, stairs, gaps in the line, shifts from indoor to outdoor lighting, reversals of the line shading (white to black), and 50-cm “gates” though which the robot must pass. www.iau.dtu.dk/robocup/about_robocup.html

March 2005
6-10
APEC Micromouse Contest Hilton Hotel, Austin, TX This will be the 18th annual APEC Micromouse event. www.apec-conf.org/

15

Carnegie-Mellon Mobot Races Wean Hall, CMU, Pittsburgh, PA The traditional Mobot slalom and MoboJoust events will be hosted by CMU. www.cs.cmu.edu/~mobot/ UC Davis Picnic Day Micromouse Contest University of California at Davis, CA Every year, UC-Davis has a campus-wide event known as Picnic Day. Every Picnic Day includes the annual micromouse contest. The event follows standard micromouse rules. www.ece.ucdavis.edu/umouse/

11-12 AMD Jerry Sanders
Creative Design Contest University of Illinois at Urbana-Champaign, IL The design problem for this contest is new and different each year. Check the website for the latest news and details. http://dc.cen.uiuc.edu/

16

19-20 Manitoba Robot Games
Manitoba Museum of Man and Nature, Winnipeg, Manitoba, Canada A variety of events, including sumo, a robot tractor pull, and Atomic Hockey. www.scmb.mb.ca/

21-23 FIRST Robotics Competition (National
Championship) Georgia Dome, Atlanta, GA Corporate sponsored teams of students from all over the country will converge on the Georgia Dome to pit robots designed from standardized kits of parts against each other. See the website for details on this year’s competition. www.usfirst.org/

24-27 ROBOlympics
San Francisco State University, San Francisco, CA Lots of events, including sumo, BEAM, Mindstorms,

18

SERVO 03.2005

Machine It Yourself & Save...Guaranteed!
Tired of PAYING for Machining?

THOUSANDS OF ELECTRONIC

PA R T S A N D S U P P L I E S

VISIT OUR ONLINE STORE AT

www.allelectronics.com
23
WALL TRANSFORMERS, ALARMS, FUSES, CABLE TIES, RELAYS, OPTO ELECTRONICS, KNOBS, VIDEO ACCESSORIES, SIRENS, SOLDER ACCESSORIES, MOTORS, DIODES, HEAT SINKS, CAPACITORS, CHOKES, TOOLS, FASTENERS, TERMINAL STRIPS, CRIMP CONNECTORS, L.E.D.S., DISPLAYS, FANS, BREADBOARDS, RESISTORS, SOLAR CELLS, BUZZERS, BATTERIES, MAGNETS, CAMERAS, DC-DC CONVERTERS, HEADPHONES, LAMPS, PANEL METERS, SWITCHES, SPEAKERS, PELTIER DEVICES, and much more....

Put a COMPLETE MACHINE SHOP on Your Bench Top!
Now 7 Models!
• 3 Tools in 1 – Lathe, Mill Drill • Versatile – Machine Metals, Plastic, Mo re • Precise – Built to tolerances up to 0.0005 inc h • CNC Compatible – Models ma nu factured to easily adapt CNC systems • EASY to Use – Full Instructions & Lifetime Tech Support

RoboFest Lawrence Technological University, Southfield, MI A competition and exhibition of autonomous LEGO robots designed to spur students’ interests in science, engineering, programming, and technology. http://robofest.net/ Istrobot Slovak University of Technology, Slovakia This competition is held by the Robot Group within the Department of Automation and Control at the university. Events include line following, mini sumo, standard IEEE Micromouse, and a free style event where you can show off anything your robot does. www.robotics.sk

And ONLY the Smithy is...
• GUARANTEED to Pay for Itself or Your Money Back!

27

Get Your FREE FACT KIT!

O R D E R TO L L F R E E

1-800-826-5432
Ask for our FREE 96 page catalog

Call Today 1-800-476-SER849 4 Ask for operator

Robotics Showcase

28-30 SAE Walking Machine
Challenge Montreal, Quebec, Canada This is the best place to see innovative and unusual walking robots every year. www.sae.org/STUDENTS/ walking.htm

M ay 2 0 0 5
10-11 RoboBusiness Conference
Hyatt Regency, Cambridge, MA The nation’s premier business development event for mobile robotics and intelligent systems, dedicated to the commercialization and application of robotic systems. www.roboevent.com SERVO 03.2005

19

Servos
) lts vo .8 ) (4 lts in zvo 2 :o ) 7. ue lts °( rq vo 60 To 0 c/ 6. se ) °( d: lts 60 ee vo c/ 8 Sp se ) 4. d: oz °( ee t( 60 c/ Sp gh ) se ei in d: W t( ee gh Sp ei ) H (in th id ) W (in th ng Le el od M r be um N n tio ip cr es D

SUPPLIER
Airtronics www.airtronics.net

94359Z

ERG-VX High Torque Aluminum Heatsink Servo Competition Digital Servo High Torque Pro Standard H/D With Metal Gear Heli/Air High Torque Metal Gear High Torque Steering Metal Gear High Torque High Torque Metal Gear High Torque Digital High Torque Digital X-Servo Digital High Torque KHR-1 Robot Servo Red Version PS-2174 FET PDS-2144 FET

1.54 0.79 1.47 2.19 0.13 0.10 N/A

160

94758Z Cirrus www.globalhobby.com/cirrus/cirrus.htm

1.54 0.79 1.47 2.12 0.07 0.06 N/A

92

CS-80MG S3305 S9206

1.60 1.49 0.79 2.01 N/A 0.25 N/A N/A 1.60 0.80 1.50 1.64 0.25 0.20 N/A 1.60 0.80 1.50 1.90 0.19 N/A N/A 99 132

Futaba Digital www.futaba-rc.com S9350 S9351 HS-645MG HS-945MG Hitec www.hitecrcd.com HS-5945MG HS-5995TG JR Servos www.jrpropo.co.jp/e_index.html DS8611 KRS-784ICS Kondo www.kondo-robot.com/ KRS-2346ICS PS-2174 FET KO PROPO www.kopropo.com/home.htm PDS-2144 FET

1.60 0.80 1.50 2.10 N/R 0.12 N/A N/R 1.60 0.80 1.40 2.10 N/A 0.15 N/A N/A 1.55 0.78 1.48 1.94 0.24 0.20 N/A 1.55 0.78 1.48 1.97 0.16 0.12 N/A 1.55 0.78 1.48 1.97 0.16 0.13 N/A 107 122 153

1.57 0.78 1.45 2.18 N/A 0.15 0.12 N/A 1.58 0.82 1.56 2.24 0.18 N/A N/A 220

1.61 0.82 1.37 1.58 N/A 0.17 N/A N/A 1.61 0.79 1.49 2.00 N/A 0.16 N/A N/A 1.61 0.79 1.50 1.92 N/A 0.13 N/A N/A 1.61 0.79 1.50 1.93 N/A 0.13 N/A N/A

20

SERVO 03.2005

Guest Hosted by Peter Abrahamson

So, you want to build a Robo-One biped robot, but don't know which servos to use. There are so many options and models to choose from. Do you use analog or digital? How much torque do you need? What about price? I have created this issue’s “Brain Matrix” comparing most of the major brands and standard size models of servos that might be useful in a Robo-One.
e yp tT pu ut O ) lts vo .2 ) (7 lts in vo z.0 :o (6 ue in rq zTo :o ue rq To

g lo na lA c i ita st ig la D /P al et :M or rs ot M ea G

al on iti dd A ns io pt O e ic Pr
Left to right: Airtronics 94359, Kondo KRS-2346ICS Red Version, Hitec HS-5995TG, and the Kondo KRS-784ICS in the feet of the KHR-1 robot.

200

N/A

Dual BB

Coreless

M

A

$104.99

N/A

115

N/A

Dual BB

Coreless

M

D

$99.99

N/A

130 125

N/A N/A

Dual BB Bushing Dual BB Dual BB Dual BB

N/A N/A Coreless Coreless Coreless

P/M M M M M M M M M P/M P M M M

A A A D D A A D D D D D A A

N/A $37.99 $89.99 $99.99 $109.99 $39.99 $73.99 $89.99 $114.99 $114.99 $65.00

N/A N/A N/A N/A N/A N/A N/A N/A Rear Bearing Hub N/A Rear Bearing Hub/ICS

N/A N/A 139 180 133 153 181 330 260 N/A N/A N/A N/A N/A 412 N/A

Dual BB Three Pole Dual BB Dual BB Dual BB Dual Bushing Dual BB Dual BB Dual BB Coreless Coreless Coreless Coreless Coreless Coreless Coreless Coreless

119.6 N/A 275 N/A

$175.00 Rear Bearing Hub/ICS $109.99 $109.99 N/A N/A

131.9 N/A 166.6 N/A

One of the first questions asked when someone is building a Robo-One is “Do I use analog or digital servos?”There are some amazing analog servos out there. In my days of building animatronics, puppets, and robots for the film and TV industry, we used the Airtronics 94358 and 94359 servos for many applications. The torque for the package size was amazing — 200 oz-in! The price for an analog servo was usually less than that of a digital one, but that seems to be changing. Now, with digital servos, a whole array of options open up for you.With the Hitec digital servos, you can buy a servo programmer (the Hitec HFP-10) that allows you to set limits, reversals, offsets, and speeds within the servo, rather than wasting valuable memory in the robot’s brain. The new digital servos have higher torque and speed ratings than most analog servos. Some servos are specifically designed for robots. Hitec has the HS-5995TG with 330 ozin of torque, titanium gears, and a spur on the bottom of the servo for mounting a bearing. Kondo — the manufacturer of the KHR-1 robot kit — has come out with a couple of robotspecific servos: the KRS-784ICS and KRS2346ICS Red Version. For around $65.00, the former is used in the KHR-1 kit and comes with plastic gears, 119 oz-in of torque, and a bearing spur. The Red Version has 275 oz-in of torque, metal gears, an option for a bearing spur, and mounting tabs on the rear of the servo; when used with the RCB-1 (Kondo’s robot brain), it can give position feedback. Kondo servos use ICS (Interactive Communication System) for feedback and control.

SERVO 03.2005

21

The Omni-Terrain Vehicle Tweaking the Land Sea 2 R/C

hen we first learned that the next tweak would involve an R/C boat, the natural choice for a modification was to make the vehicle amphibious — capable of traversing both land and sea, but we were surprised to find that our next project was the Land Sea 2 R/C, an already amphibious vehicle! We decided to take the all terrain idea to the next level and make the vehicle capable of flight, as well. Jet engines would be tricky to add to an R/C car, so we thought a helicopter-like rotor assembly would be the best thing to help the Omni-Terrain Vehicle take to the skies.

W

The Land Sea 2 R/C
The Land Sea 2 R/C is definitely an impressive unit. It sports three modes of operation — land, sea, and tank (another option for land travel). The land version is definitely zippy and it’s even capable of carrying two full soda cans (a strange ability, but cool nonetheless). The steering for the sea mode is difficult to get used to, but fun once you master it. The tank mode is an interesting option, but, as the instruction manual warns, it is difficult to get the wheels to make the 1/3 of the full rotation for optimum maneuverability.

Before and After: A grounded L and Sea 2 R/C is made to fly.

Other added bonuses include photosensitive headlights (with an option to have them turn on only when it’s dark) and a function that makes the vehicle turn on its propellers to run in circles when it is out of the range of the controller. The controller itself is also water-resistant. The vehicle is certainly multifunctional and it actually performs all of those functions well. Now, despite the warning on the instructions that read: “Modifications not authorized by the manufacturer may void user’s authority to operate this device,” we proceeded to make the Land Sea 2 R/C even more multifunctional.

Problem Analysis
Creating a vehicle that can move on land, in air, and on water is definitely a complex problem. At least for us, land and sea movement has been taken care of, but adding the ability to fly is still tricky. The main additions that we needed to concentrate on were giving the vehicle enough lift to fly, while keeping it afloat with the added weight of the rotor assembly. Luckily for us, physics comes to the rescue.

22

SERVO 03.2005

The Omni-Terrain Vehicle

Ultimate Pasta
Our primary concern is getting the vehicle off of the ground. We were awash in ideas for propeller systems, but Bernoulli’s Principle helped us wring out implausible ideas. Bernoulli’s Principle, for our purposes, explains the phenomenon of lift that allows airplanes to fly. Bernoulli’s equation elucidates this principle mathematically: ∆P=1/2 ρv top² - 1/2 ρv bottom² This equation helps you figure out ∆P — the change in pressure between the top of the wing and the bottom — by using the differences in the velocity of the airflow over those surfaces. The difference in the velocities above and below the wing results from the shape of the wing that deflects air molecules on the bottom, slowing them down and creating lift. Lift is easy enough to create, but creating enough of it is the problem. Something will lift off the ground if the force of lift is greater than the force of gravity acting upon whatever it is that you want to make fly. Force of gravity is easy to figure: Fg=mg m being mass and g acceleration due to gravity, 9.8 m/s². The mass of the Land Sea 2 R/C is 1.07 kg, so the force of gravity is 10 N. Allowing for some extra weight for the rotor assembly, we can estimate that the force of lift necessary for flight must be greater than 20 N. Lifting force can be determined by Bernoulli’s equation, which helps determine ∆P. The equation for pressure can be manipulated to determine force. P=F/A , F=PA Lifting force can be determined by multiplying the difference in pressure created by the shape of the wings by the area of the wings. Thus, we can see that two variables determine lifting force: the difference of airspeed over and under the wings and the area of the wings. The solution seems simple, at first: Slap on a fast motor with a giant rotor.

Several design considerations, however, need to be taken into account and the obvious one is weight. If the motor and rotor are too heavy, too much buoyancy would need to be added and things would get ridiculous. Another consideration lies in the characteristics of the motor. We want a fairly light motor to avoid buoyancy problems. Like we stated before, the key about Bernoulli’s Principle is that the differences between velocities of air on the top and bottom of the wing create lift, and that difference is created by the classic airfoil shape of the wing. Instead of giving the Land Sea 2 R/C jet engines and wings, we decided that a helicopter-like rotor would be the way to go. Rotors use the same principle, while lift is achieved by the bend in the rotor instead of an airfoil shape. More of a bend creates more of a difference in airspeed and, thus, more lift. What we have to be careful about is that more of a bend creates more air resistance, and we don’t want to create too much of a bend so that it creates too much resistance and overcomes the torque of the motor.

We’ll use the t F iny isher-Price motor found in Power Wheels products. B is buoyant force in Newtons, ρf is the density of the fluid (in this case, water), V is the volume of displaced water, and g is acceleration due to gravity. According to Archimedes’ Principle, buoyant force is created by the displacement of water. Buoyant force on a floating object is equal to its weight in air, so adding weight requires additional buoyancy. The rotor assembly wouldn’t displace any water, so the additional buoyant force would have to come from the vehicle riding lower in the water. This wouldn’t be a problem if the original vehicle floated high enough and gave us some room for extra weight, but after testing it in water, though, we found that it floated surprisingly low without any extra weight. The two solutions would be to lighten the boat or add buoyancy. The Land Sea 2 R/C is a very clean unit and hacking into something meant to float is a leaky proposition, so we decided extra buoyancy would be the way to go. TV bodgers on Junkyard Wars and F rotors, the bend causes or l ift instead of an airfoil shape used on wings.

Rotors, Archimedes, and Buoyancy — Oh My!
Buoyancy is the other side of this problem. To keep things simple, it would be best to create a rotor assembly light enough so that the vehicle would stay afloat without extra modifications. Calculating the buoyant force on the original, untweaked vehicle would give us a ballpark range of what kind of weight we could use for the rotor assembly. As long as the combined weight of the vehicle and rotor assembly doesn’t overcome the buoyant force possible for the original boat, the tweaked vehicle will stay afloat. The phenomenon of buoyant force is known as Archimedes’ Principle and can be calculated with the following equation: B=ρf Vg

SERVO 03.2005

23

Twin Tweaks ...
traverse land and sea. Land is no problem, but — to keep the boat afloat — we will add Styrofoam to increase buoyancy, compensating for the weight of the rotor assembly. Knowing the physics is one thing, though, and having the instrumentation to implement the physics accurately is another. We don’t have the means to make the ultra-precise measurements that F the blade, we chose a piece of or accurate implementation of the 0.095-inch-thick aluminum, 12 inches long. formulas calls for, but the simple knowledge of the principles will guide us to make tolerably educated Monster Garage usually use drums estimations of what we need to do to or barrels to increase buoyancy on make this ambitious project successful. floating projects, but — since an oil drum is a little oversized for our vehicle — we decided to use Styrofoam. had lying around the garage, however, was some J-B Stick Weld used for mending leaky pipes. Oh well, when hacking something, you use what you can. We could have used Bernoulli’s equation to figure out exactly how much surface area we needed from the rotor and the bend we needed in it, but using the means at our disposal, that would be a difficult task. Instead, we relied on educated estimations (the SWAG theory). Twenty-four hours later, after the epoxy had fully cured, we set out to wire in a switch. Our plan was to power the motor off of the six-volt battery pack that the R/C car used. To give us some control over the rotor without having to hack into the electronics of the waterproof R/C, we wired in our own switch. Our initial idea was to fasten the switch to the vehicle itself, but we realized that might entail reaching our hands under a spinning rotor to turn it off, so we thought a more remote switch would be prudent. Here, we came to one of the most frustrating parts of the tweak. The battery pack slid in sideways beneath the cockpit of the vehicle and it was a very tight fit. Luckily for us, the battery pack had four contact points and the Land Sea 2 R/C only used two. We used the other two for the motor connections. The problem was that the connections would work when the battery was outside of the vehicle and not when it was inside. We tried over and over, but nothing worked. We even considered soldering the wires to the contact pads, but the pads were dirty and we were out of acetone. A solution finally presented itself in the form of aluminum foil. We twisted little bulbs of aluminum foil onto the ends to increase the surface area through which electricity could travel. After this simple step, the circuit had no problems whatsoever. Once the switch circuit was completed, we wanted to test the rotor. In order to minimize danger, we only flipped the switch for a second, but — even then —we could see that the rotor would spin frighteningly fast. This test was both promising and unnerving, because we saw that testing it could be very dangerous.

The first assembly we did was that of the rotor. For the blade itself, we That’s a lot of physics, so let’s stop chose a piece of 0.095-inch-thick and review our objectives. Our primary aluminum, which was the thinnest concern is making the vehicle fly. We’ve piece of aluminum we had that was settled on a helicopter-style rotor blade long enough for a rotor. We cut a piece for lift, powered by a tiny but powerful 12 inches long and 1-3/4 inches wide, Fisher-Price motor (the kind they use in which we felt gave a fair amount of Power Wheels, but without the surface area without being too heavy. gearbox). The two variables that deterThe output shaft of the Fisher-Price mine lift are the area of the rotor and motor had a gear attached to it, so we the difference in air speed above and drilled out a slightly smaller hole and below the rotor. Ideally, we need a fast filed in some grooves for the teeth to rotor with a healthy bend in it and lots fasten to the rotor for a snug fit. After of surface area. managing to get the rotor to fit, we Our second consideration is moved on to bending it. Helicopter maintaining the ability of the vehicle to rotors do not have the classic wing shape of an airfoil; their rotors are simply flat, but bent diagonally. To T create l o ift, the high edge of the bend it nicely, we used scrap rotor needs to be the leading edge. aluminum channel to make a large lever and stuck it in a large vice. Once we had an acceptable bend, we could attach the rotor to the motor, but we had to be careful to fasten the motor with the right orientation. To create lift, the high edge of the rotor needs to be the leading edge. If we got it wrong, we’d have a Land Sea 2 R/C with a large fan hacked onto it. Once we checked the rotation of the motor, we attached the rotor accordingly, and to make sure we had a solid attachment, we wanted to use some epoxy. All we

Design Considerations Galore

Construction and First Tests

24

SERVO 03.2005

The Omni-Terrain Vehicle
Our next task was to actually make the rotor assembly and Land Sea 2 R/C into one piece. For the sake of balance, we wanted to attach the rotor assembly in the center of the vehicle. One problem was that the cockpit was in the middle of the vehicle. We decided that we really didn’t need the cockpit and removed it, but the one potential issue that came with the cockpit removal was that we were simultaneously removing the R/C’s antenna. We tested the range of the vehicle minus the antenna and found it to be a tolerable six feet. Cockpit removal also granted easy access to the battery pack. We fashioned a platform out of cardboard to support the motor and attach it to the vehicle, and everything was bound together by generous amounts of duct tape. We figured that enough duct tape would maintain the integrity of the vehicles’ waterproof reputation and the addition of duct tape made the project a true hack. Even though the manner of attachment may sound rudimentary, the rotor assembly was surprisingly stable. Now that the vehicle was assembled, we were ready for the first test. Keeping safety in mind, we brought a blanket out during the test in case the Omni-Terrain Vehicle went crazy. We really didn’t have a terribly good means of controlling the vehicle’s flight, except that we might use the propellers for the sea mode as stabilizers. From behind the safety of a trash can, we hit the switch. The rotor spun up to a frightening speed, causing the vehicle to shudder like a fish out of water. Much to our relief, the rotor seemed firmly attached to the motor and it didn’t appear to have the desire to fly off. The vehicle itself, however, did not fly. unduly difficult. Our other option would be to increase the surface area of the rotor. All we would have to do is add extensions onto the rotor. While that would be difficult with the assembled piece, it was still our best option. Two 0.06-inch-thick aluminum plates were perfect for the job, and we riveted them onto the rotor with little difficulty. Now, our Omni-Terrain Vehicle had rivets, On the first test run, the rotor spun just like a real airplane. This was up to a frightening speed! also an opportunity to test the seaworthiness of the vehicle, but to our dismay, the Omni-Terrain vehicle made was more like a hovercraft than seemed to have lost its sea legs. an airplane, but we were able to leave That, however, was an easy land and sea movement uncomproproblem to solve. All we had to do was mised. The hovering is actually quite displace more water to increase buoyant effective on low friction surfaces, so — force, and duct taping Styrofoam to the if the Omni-Terrain Vehicle ever came boat hull was an easy solution to this across a frozen lake — its new hovering problem. Soon, the boat was once again ability would likely give it more mobility able to float. After charging the battery, than its regular land mode. we were ready for our final test. Additionally, we gave the Land Sea 2 All the Omni-Terrain Vehicle needR/C a nasty weapon in case a combat ed to do for a “Done” stamp was to fly. robotics competition pops up. We hit the switch. The rotor spun up. In short, the functional shortcomThe vehicle shuddered and even began ings of this project are far from failure; to hover slowly across the surface of quite the contrary. We learned about the driveway ... but it still did not fly. the nature of flight through an interactive application of physics and resourceful ingenuity. In fact, the versatility of this drive The Omni-Terrain Vehicle was still a system may even serve as a conceptual success, despite the fact that it did not prototype for future robotic military give a satisfactory demonstration of flyreconnaissance vehicles (we’ll keep our ing ability. The idea of making a vehicle eyes open for DARPA contracts asking capable of land, sea, and air movement for Omni-Terrain Vehicles). After all, we is certainly a daunting task under any are the Woolley Brothers, not the circumstances — even more so under a Wright brothers. SV time limit. Now that we think about it, perhaps the more ideal situation T Omni-T he errain Vehicle was st ill would have been to make an a success, despite the fact that it airplane capable of land and sea didn’t fly. movement. Also, we may have overestimated the stamina of the Fisher-Price motor (Power Wheels aren’t meant to fly) and of the battery pack. The battery pack was actually a six-volt pack we happened to have from another R/C car and it was far past its prime. Oh well. Sometimes, the machines on Monster Garage don’t work as expected, either. What we turned out to have

Final Thoughts

Back to Physics
To better our chances of getting off the ground, we can look at the two variables we can easily manipulate. One is the difference in the airspeed above and below the rotor. To make that difference greater (and therefore the lift greater), we would have to increase the angle of the bend. With the rotor assembled, that would be

SERVO 03.2005

25

by Edward Driscoll, Jr.

T

he dream of a walking mechanical man is almost as old as civilization itself. As I wrote in the debut issue of SERVO, it’s certainly almost as old as the film industry: 1927’s Metropolis, 1956’s Forbidden Planet, 1977’s Star Wars, and numerous films since all had walking, human-shaped robots as stars. However, building a real walking robot has been more problematic — and controversial. American robot pioneer Dr. Joseph F. Engelberger once told me, “I don’t want to see a two-legged robot. I feel very strongly against legs,” because of the complex design challenges they present and because of the better weight ratios and stability of wheeled robots. Yet, walking robots have seemingly become an obsession in Japan, most famously with Honda’s recent Asimo robot. Closer to home, in the cold, brutal climate of Alaska, Carlos Owens — a 27-year-old iron worker and ex-Army heavy equipment mechanic — is building some unique heavy equipment of his own.

26

SERVO 03.2005

Take Control of an 18-Foot-Tall Walking Robot

The NMX041-A Reports for Duty
The Honda Asimo is only about four feet tall. But Owens is a man who — at six feet five inches — not only is big, but thinks big as well. He noticed that, “All these companies seem to be manufacturing these robots on a Not having a shop big enough, Carlos builds outside, in the elements. The operator encased in his machine. very similar scale.” So he decided to build a walking robot that’s over three times While it’s the first prototype he balancing it while it walks. Like nature their height “instead of a five-foot built in 2004, it’s actually based on an itself, four-legged robots are somewhat robot that looks like all the other fiveexperiment with an even larger robot: easier to build because they’re foot robots.” the 25-foot NMX03. “That one was more stable. It may be why industrial So he designed and is well on the originally going to be 25 feet tall — designer Syd Mead painted an way to completing an 18-foot-tall, which is far too large — and just presents a lot of issues. Every 8-1/2-foot-wide, 1-1/2-ton, twoAlaskan conditions make building difficult. foot that you go up, more and legged, two-armed robot that he’s more issues need to be taken dubbed the NMX041-A. It is designed into consideration because of the so that the operator will sit inside of it. “I actually came up with my balance.” own list of standards for mech-type Fortunately, Owens was able applications. The N and M stands for to reuse some of those parts in ‘neo-mech’ and X is type of chassis — the only slightly more modest it’s humanoid-thpe. As far as the num18-foot robot. bers, I started it in 2004, hence the ‘04,’ the ‘1’ is to designate it as the first prototype, and the ‘A’ represents ‘arena-type,’ as in a fighting type of Of course, one of the keys to robot.” building this type of machine is

Learning to Walk

Circle #68 on the Reader Service Card.

SERVO 03.2005

27

INSIDE THE IRON MAN
near the engine, where it will heat it up, will also help. It shouldn’t take too long for the system to get warm; it should have good fluid movement.”

The Arena Robot League
He calls the NMX041-A a fighting robot and he envisions being the commissioner The NMX041-A stands nearly 20 feet tall. of an arena league of robotic gladiators — sort of like cable without causing any instabilities TV’s Battle Bots or Robot Wars, but on while in mid-stride.” a much, much larger scale. He’s not afraid to admit that he “The whole idea behind it is that wants to keep its design a secret. people would be piloting these “I’ve already been asked several machines and doing battle with one times, but I don’t want to get into another. I’ve got a whole slew of rules the specifics of that unit, which and regulations that I’ve been working allows the whole system to work. on just for this particular sport that I’m Anyone can build a giant robot, but in the process of developing.” anyone who wants to make it walk — As with many inventors, when they’re on their own!” listening to Owens describe his robot For much of the year, Alaska is a and what he’d like to do with it, it’s cold and unforgiving environment to sometimes tough to find where reality build in, but Owens is undeterred. He ends and science fiction begins. While says the only concession against the he’s building quite an impressive cold he’s needed to make is to heat looking machine (which vaguely the hydraulics used to power the recalls the toy Transformer robots NMX041-A’s joints. “The way I of the 1980s, but on a mammoth position the hydraulic fluid reservoir scale), he’s certainly happy to pepper his speech with sci-fi catch phrases like “mecha,” Carlos Owens, on the shoulders of a giant. and his website has paragraphs that make his one-man operation sound like the Tyrell Corporation from Blade Runner. For example, Owens’ website is called www.neogentronyx.com Say what? Owens says it’s a breakdown of a few different words: “‘neo’ meaning new, ‘gen’ is short for ‘generation,’ and then ‘tronyx,’ of course, means electronics. I just spelled it a little differently; I didn’t want to do things the standard way. It’s something different — like my project!” Perhaps because his project is so visually exciting, Owens’

The only secrets are the stability controls.

elephant-like, four-legged walking machine that predates the Imperial walkers from 1980’s The Empire Strikes Back by about 20 years. In a two-legged machine, though, extra effort is required to balance it in mid-stride. Owens says he has designed “a separate unit which will be attached to the machine upon completion that allows it to shift its weight from one side to the other
A frame supports the robot while under construction.

28

SERVO 03.2005

Take Control of an 18-Foot-Tall Walking Robot
home page is getting much more attention than he originally anticipated. The popular C/Net website profiled him in December. “I thought that 7,500 hits over a two-year period was pretty good, but I got 40,000 in under just two days from that C/Net article!” He’s hoping it will lead to outside monetary contributions to his heretofore self-funded efforts. (So far, Owens has sunk about $15,000.00 into his project.) fight fires.” This is particularly true with forest fires, which involve dropping loads of flame retardant chemicals and water from aircraft. “It pretty much disperses as soon as it hits the air.” In contrast, Owens’ walking robots would walk right into a fire. He envisions these walking robots “as being heat shielded, liquid cooled, with the operator a safe distance away, receiving video feedback. There could be several other robots in the area, all of them coordinated from a central command area where all of the video from the robots could be observed.” In the meantime, Owens continues building and refining NMX041-A. “With this robot, I just decided that I wasn’t going to wait around for someone else to do this; I thought that I had the knowledge and the ability, so I should

Putting Out a Fire From Inside
Of course, walking robots have many other applications beyond bashing each other’s hydraulics into the ground inside a sports arena. One application that Owens is particularly keen on is fire fighting. Owens says that his robots would provide fire fighters, “with a much greater advantage over how we currently

One possible application is fire fighting.

just do it.” Who knows? With a bit of luck and lots of hard work, maybe he and NMX041-A will walk into history. SV

Circle #76 on the Reader Service Card.

SERVO 03.2005

29

Have you ever wanted to build a hex walker robot? Their interesting, insect-like gait and seemingly complex leg construction make them one of the more interesting projects in robotics. Hex walkers are actually more accessible for the hobbyist than they may seem at first. In this series of articles, I will show you, step-by-step, how to build a six-legged crawler using only three servos, and with six legs and three servos, we can experiment with different gaits and full directional control over the robot. Next month, I will discuss the electrical construction of the hex walker, and the following month our attention will turn to calibration, programming, and control issues.

30

SERVO 03.2005

Part 1
The Components
Let’s take a look at some of the components needed to build this small walker. The heart of the crawler is the super small, nine-gram Dragonfly servo (Figure 1). The small size of the servo lets us build an extremely small and lightweight robot. These FIGURE 2. The Perseus microcontroller. tiny servos are very reasonably priced at less than $9.00 each. To control the small servos, we will tion, you will need something to cut use the even smaller Perseus microconout all the wooden parts. I recommend a scroll saw. I did a complete write-up troller. I chose this microcontroller on various hobbyist level scroll saws in because it has a very small 1.25 x 0.75 the February 2005 issue of SERVO inch carrier board (Figure 2) that can Magazine. The cuts are not critical, so sport up to five servo connectors. Its there are only a couple places where through-hole design makes it very well real accuracy is needed when cutting suited to the beginner. The Perseus out the parts. A hand coping or fret chip, carrier, and RS232 driver board saw and knife could also be used, can all be purchased for less money but it will take you much longer to than most other microcontrollers alone. complete the project. The Perseus microcontroller is one of several Athena class microcontrollers that You will need a drill with 1/16-, were designed to make the jump into 3/32-, 1/8-, and 5/16-inch bits. I used a microcontrollers as easy and inexpensive drill press, but a hand drill should work as possible. The compiler software for just as well. A soldering iron (and solder) these microcontrollers is free and can be will also be needed to connect the two downloaded from the Kronos Robotics battery holders and to build the Perseus website at www.kronosrobotics.com carrier board we’ll see next month. I also The software has a difficulty setting that recommend a bit of heatshrink, too. can be adjusted from beginner to expert You will need a couple of hand and has a simulator so you can run tools, such as a small Philips screw driver through the included tutorial without and a pair of needle nose pliers. These purchasing a single item. will be used to tighten the small lock We will build the base and legs for nuts, as this can’t be done by hand. the crawler out of 1/8-inch Baltic birch In Part 3, we will start programplywood, similar to that shown in Figure ming the walker. For this, you will need 3. You can pick up a 12 x 24-inch piece an EZ232 driver (less than $10.00) and at your local craft store for less than a copy of the compiler software (free $5.00. That will be enough for four or from the Kronos Robotics website). A five robots this size. You will also need PC running Windows and nine-pin some 3/8- x 3/8-inch pine stock as well, serial cable will also be needed. which can also be found at a craft FIGURE 3. A 12 x 24-inch piece of Baltic birch store for less then $2.00. plywood works best for the base and the legs. Probably the most difficult parts to get will be the hardware. Most of these will be #2 machine screws and various washers and nuts. Kronos Robotics is offering a package that contains all the hardware, as well as the 3/8 inch stock.

FIGURE 1. The super small, nine-gram Dragonfly servo.

The Plans
I have included a full-size set of plans for all the cutout parts. You can download them from the SERVO website (www.servomagazine.com). There are index marks on the plans, so you will be okay as long as your reproduction is set to the proper size. When enlarged or reduced, the distance between Index A and Index B should be five inches. The distance between Index A and Index C should be seven inches.

Mechanical Construction
Now, we come to the fun part. Let’s start building the walker. Before we begin, let me say a few things about this design. I designed this crawler with three things in mind: • Repeatability — I wanted a walker that could be built consistently; it could
FIGURE 4. The final cuts.

The Tools
For the mechanical construcSERVO 03.2005

31

The Mini Servo WALKER
the two holes. For the Center Leg Support, bend the template in half where the top view and bottom view come together and place on the stock as shown in Figure 5. The most critical cut of all is the thickness of the notch, shown in Figure 6. The actual thickness of the notch should FIGURE 5. Wrap the Center Leg Support template FIGURE 6. The thickness of the around the stock as shown here. notch cuts are most critical. match the thickness of the plywood stock you are using. It can be built by 20 different people but still • Cost — I wanted a walker that could be a bit smaller, but not larger; therefore, behave the same. be built completely for under $70.00 — I recommend that you cut it a bit small. even less if you have some of the parts You can increase the width, if needed. • Construction Forgiveness — I wanted in your junk box. Make sure you place a small notch a walker that could still function even if in the center legs, as shown in Figure 7. errors in construction were made. The mini servo walker design is This notch will be used later to hold the very forgiving, as most of the cuts are end of a small rubberband. FIGURE 7. A small notch is needed not critical. In fact, variations in the at the end of the Center Legs pieces will give your walker a bit of Step 2: to hold a small rubberband. character. For instance, rounding the Attach the two center legs to the corners on the walker base will make Center Leg Support, as shown in Figure the walker a bit more bug-like. 8. Use two 3/4-inch #2 machine screws. Hole placement should be as close Install in the following order: #2 as possible to what is detailed here, but machine screw, #2 washer, Leg C, #2 as long as you are within 1/32 inches, washer, Center Leg Support, #2 washer, you should be fine. and #2 lock nut. Make sure you install the two 3/32-inch holes. Tighten so that Step 1: the legs are seated firmly against the Cut out all the parts in the plan. support, but still move freely. Note that some parts require more than one cutout. For example, you will Step 3: need four Leg A parts and four Leg B Install the two servos into the servo parts. You will need two Leg C parts. slots shown in Figure 9. The 1/16-inch The Rear and Center Leg Supports holes in the base will act as our nuts and are both cut from a 3/8- x 3/8- x 2-inch hold the machine screws nicely. Use 3/8piece of stock. They can inch #2 machine screws and #2 washers be cut from pine, basson each hole. You will have to push the FIGURE 9. Attach the servos, the Center Leg Assembly, and the Rear Leg Support and Legs. wood, or maple — all of screw firmly to get it started. Don’t overwhich are available at tighten or you will strip the wood. You your local craft store. can also attach a #2 hex nut, as well. Place the template for the Rear Leg Support Step 4: on the stock and mark Take the Center Leg assembly and
FIGURE 8. Attach the Center Legs to the Center Leg Support.

32

SERVO 03.2005

Part 1

FIGURE 10. The underside of the Center Leg Assembly.

FIGURE 11. One of two four-sided servo arms.

FIGURE 12. Drill four additional 3/32-inch holes into each leg.

attach it to the base, as shown in Figures 9 and 10. You will use two 3/4-inch #2 machine screws. Attach in the following order: #2 machine screw, #2 washer, base, #2 washer, and #2 hex nut. The 1/8-inch holes are oversized so that you can position the support as needed. Make sure the legs move freely and don’t rub against the base. Tighten the nuts. Step 5: Install the Rear Leg Support and Legs as shown in Figure 9. Use two one-inch #4 machine screws in the following order: #4 machine screw, #4 washer, Leg Part A, #4 washer, Rear Leg Support, base, #4 washer, and #4 lock nut. Tighten so that the legs are firm, but rotate freely. Step 6: Take two of the four-sided servo arms and drill a 1/16-inch
FIGURE 13 and 14. Use 1/4-inch machine screws and nuts to attach the servo arm to each leg.

hole as shown in Figure 11. The 1/16-inch hole is just a bit small for the #2 machine screws; this allows the plastic to act as a lock washer once the arm is attached to the leg. Step 7: Take the servo arm and center it on the 1/8-inch hole and mark the four holes you drilled in Step 6. If you insert the small screw used to attach the servo arm to the servo, it will help you center the arm. Please note that if the arm is not 100 percent centered, it won’t affect operation at all. You will need to do this with the two remaining legs. Step 8: Drill four 3/32-inch holes into each leg. Insert four 1/4-inch

FIGURE 15. One side of the Dragonfly servo arm.

Circle #82 on the Reader Service Card.

33

The Mini Servo WALKER
lower legs to all of the upper legs by inserting the notches into each other. Step 12: Now, attach the Rear Leg Drive, as shown in Figure 18. The leg drive is used to move the rear leg when the front leg FIGURE 17. Remove the left FIGURE 16. Wrap the FIGURE 18. Here is the complete mounting flange on the servo. servo motor in metal tape. walker awaiting its brain. moves. Use a 1/2-inch #2 machine screw in #2 machine screws and attach the comes in contact with the Center Leg each leg in the following order: #2 servo arm to the leg as shown in Support mounting screw. Place the arm machine screw, #2 washer, leg drive, #2 Figures 13 and 14. Use a #2 hex nut to on the servo so that it points straight up washer, leg, #2 washer, and #2 lock nut. help hold the screws in place. in the orientation shown in Figure 17. Tighten enough to remove the wiggle. Don’t worry about the current servo Now, attach the lower legs if you Step 9: position, as we will calibrate later. did not already do so in Step 11. Leg Take one of the two-sided Next, position the servo as shown so Parts A and B are held together by Dragonfly servo arms and snip off one that the arm is dead center of the two friction. If you cut the slots too wide, side, as shown. Make two snips at a center legs. Do a dry fit, then add a piece they may not hold together; you may slight angle so you don’t put too much of mounting foam tape and position it in need to apply a drop or two of hot stress on the arm when you cut it. place. You can pick up some double-stick glue to strengthen the joint. foam strips at any department or home This concludes the mechanical Step 10: store. Don’t use the removable type. I construction phase. Go ahead and When using micro servos, we somerecommend a name brand, as it’s much insert the small screws that came with times must make special provisions for firmer and holds the servo better. your Dragonfly servo into the servo mounting due to size or construction. Place a small rubberband across arms and tighten them. This will hold The Dragonfly servo is held together the top of the two center legs. The the legs in place until we are ready to with a small plastic band and a small rubberband will cause the leg not calibrate. You can also run the two label. This prevents us from mounting being pushed down to lift up. The best front servo connectors up through the the servo reliably using mounting foam place to pick up rubberbands is in the 5/16-inch hole. Take the center servo tape. To correct this, we simply remove hair care section of a store. (These connector and run it around the side, the clear plastic label (tape) and the small rubberbands are used to make then back up through the 5/16-inch plastic band. We then take a piece of small pony tails.) hole from the bottom. metal air conditioning tape and wrap the servo, as shown in Figure 16. Step 11: At this point, you have a complete We must also remove the left Attach the front legs you completed walker eagerly waiting for its power mounting flange from the servo as it in Step 8. Now, you may also attach the source and brain. Next month, I will show you how to install these. Here are some things to check while you are Sources anxiously waiting for the next issue of Qty Description Source and part number SERVO Magazine: 3 Dragonfly 9-gram servos http://stores.channeladvisor.com/rc
toys-hobbies/Items/400010? 1 12 x 24 sheet or 12 x 12 sheet of 1/8-inch Baltic birch plywood Can be purchased at most craft or hobby stores. It can also be purchased from Woodcraft at www.woodcraft.com in 12 x 12 sheets.

• Make sure all joints with lock nuts are not too tight. The piece should move freely, but not wiggle. • The upper and lower leg joint should be firm and should not wiggle. • The center servo should be securely attached to the base and should not move in any direction. If it does, the foam tape you are using is too thick. SV

1

Hardware package. Contains all Kronos Robotics at mounting screws, washers, and www.kronosrobotics.com lock nuts. Also includes two 3/8 x 3/8 x 2-inch pine blocks for leg supports. One piece of heatshrink tubing. Includes metal tape and mounting foam. Printed pattern sheet.

34

SERVO 03.2005

by J. Wolfgang Goerlich

The Eastern Canadian Robot Games (ECRG) are held each fall at the Ontario Science Centre in Toronto. Teams from all over North America come to compete, including Canadians from as far away as Alberta and British Columbia, Americans from Tennessee to Texas, and teams from Mexico. This year saw robots from England and Iran, too. Over 80 robots competed in events as diverse as BEAM, sumo, and fire fighting.

SERVO 03.2005

35

Fred and Ugly compete in the traditional BEAM Photovore competition. Next year, these robots will be returning for a new exhibition event.

Tom Gray’s Four Eyes faces down Copy Cat by Kyle Simmons. Four Eyes is a modified Sumovore with a rear IR sensor system. Copy Cat was a scratch-built mini with a transplanted Sumovore sensor board.

BEAM Events
Toronto has long been a hot spot for BEAM robotics, thanks in large part to the regular BuildFests at Bug ‘n’ Bots. In Solaroller, contestants race solar-powered vehicles. Turtle, a robot hailing from England, could complete the course in mere seconds and was easily the fastest of the day. There was a sneak peak at the rule books for next year’s Photovore event. ECRG is encouraging solar-powered micro-sumo and nano-sumo-size competitors, with no limit on the size of the solar cells. The format will be a day-long exhibition, where participants can enter up to four solarpowered robots and have them compete together in swarms or teams. Judging by these rules, ECRG 2005’s Photovore will be a lot of fun.

brought a full-sized sumo, chose to compete against the remote-controlled sumos, and in a true match of man against machine, Mark’s sumo won the day. Two of the robots in this class were brought in by teams from Iran. Aabed Naseri brought Sepanta, while the Islamic Azad Saveh University ran their IAUS sumo, which took third place. First place went to Phantom, Dave Hylands’ sumo, based on the Lynxmotion Viper, and Space Junk, a scratch-built bot by Lee Szuba, took second.

Master’s Mini-Sumo
The Master’s mini-sumo competition is open for magnetics, and the robots are under the same size and weight restrictions as the regular mini-sumo competition (10 cm2 and 500 grams, respectively). In past years, this has been a contest to beat Dave Hylands, as he regularly brings with him several top contenders to this match. Because of Grant McKee’s Ender’s Wraith, the Master’s was different this year. Ender’s Wraith arrived at ECRG fresh from winning at the Western Canadian Robot Games and at Robothon; it also took second place at ROBOlympics and PDXbot. Grant’s mini did it again, taking
This year’s Master’s mini sumo champion was Ender’s Wraith by Grant McKee.

Full-Sized Sumo
The number of bots keeps growing in the full-sized sumo competition. There were not enough robots to run the competition in the game’s first year, but this year, there were around 10 robots competing. Mark MacKenzie, who had
Phantom vies with Space Junk for first place in the Full-Sized Sumo class.

36

SERVO 03.2005

Harms Way II by Eliot Barker is the scratch-built mini that took on not only the competition, but the ring it was competing on.

Truffle Pig by Nicholas Barker features Solarbotics GM10 motors and a microcontroller, sensor, and drive subsystem based on the Solarbotics Sumovore. It took first place in line following.

first at this year’s games, while Dave Hylands’ Marauder took second place. One of the fun moments came when the judges pitted Ender’s Wraith up against the winners of the full-sized sumo competition. So, how did the 500 gram Master’s champion fare against the winners of the 3 kilogram class? Ender’s Wraith took them down.

of this was when Harm’s Way II lost the match and it promptly turned around and attacked the sumo ring. Harm’s Way II pushed the ring — along with the offending mini sumo — some distance before the judge stepped in.

Line Following
Line following is a classic robot competition, and there are always a handful of mini sumos that cross over to compete. Perhaps not surprisingly, this is a competition regularly dominated by Dave Hylands and Marauder. This year, Grant McKee took it up a notch by designing a particularly tough course. Truffle Pig, built by Nicholas Barker of Team “Wreck the Bed,” stole the show. Truffle Pig features a microcontroller, sensor, and drive subsystems based on the Solarbotics Sumovore. However, it was much, much lighter than a Sumovore and was using the faster GM10 motors. Not only did it take first place, but it also completed Grant McKee’s course with
Bug ‘n’ Bots and Solarbotics held walker workshops prior to the Games. The result of these workshops was that the new ScoutWalker III kits swarmed the walker event. Joe Garcia’s ScoutWalker IIIs took first, while Leah Mitchel’s took third place.

Open Mini-Sumo
Since the Solarbotics’ Sumovore arrived on the scene, it has dominated ECRG’s open mini sumo category. This year was much the same, with the majority of the minis being hacked Sumovores. The hacks ran the gamut from upgraded sensors to souped-up motors to pipe-cleaner antennas. In the end, team WoloBot took first place with their modified Sumovore. Of course, there were plenty of scratch-built minis, too. One of the more powerful ones was Harm’s Way II, built and piloted by Eliot Barker on the “Wreck the Bed” team. The drive train was comprised of two Solarbotics GM9s, modified with Qjet speed 200 motors from Gold Scallop. This gave it plenty of power. One fine example
Ant, the scratch-built walker by students at Malvern CI, took second place in the walker competition.

SERVO 03.2005

37

“Bruce Sheridan’s robot, Flameout, was constructed from LEGO pieces. It had less sensors than many of his other competitors, but used an innovative strategy of having a square base on the robot that backed up to a wall after each turn, which correctly oriented Flameout to run perfectly parallel to the walls. Even though his robot was almost blind compared to the other robots, he earned a fourth place finish.” — John Edwards

Grand Valley State University has a history of building fire-fighting robots, sych as Gromit. This year they brought out their new one – Flamebait.

only a single pick-up. Of course, it helped that Nicholas primed the audience by handing out Truffle Pig temporary tattoos. The calls of “Go piggy!” during the last run were very entertaining.

Alexander’s Formula. This meant that Ant had a natural advantage because of its shorter legs. Indeed, the competition for first place was close between Ant and Joe Garcia’s ScoutWalker III, with Ant only losing on the last run when it became tangled up in the carpeting.

Walker
The students at Malvern — the returning champions from 2003 — had a tough competition cut out for their Ant Walker. The Solarbotics ScoutWalker IIIs were out in droves at this year’s competition, and lucky for Malvern, ECRG changed the walker competition and adopted rules based on the PDXbot walker contest. The speed points are awarded using
“Chris Wardell’s robot Xtinguisher ran extremely smooth and precise to gain him a second place finish. While all other fire fighters were here in Toronto testing and tuning on Saturday, Chris was still programming back in Ohio. He arrived in Toronto at 3 A.M. Sunday morning. When he got ready to run a few test rounds Sunday morning, he discovered Xtinguisher would do nothing. As it turns out, a wire shaken loose in transport was discovered and corrected just in time for a few test runs and competition.” — John Edwards

Wellhead Blowout
The ECRG Wellhead Blowout is a competition along the lines of the Trinity College Fire Fighting contest. Robots search a maze for a candle and extinguish it, getting points for starting with a sound, for completing with the best speed, and for returning to base. This is always a good show of innovative approaches. That sums up this year’s Eastern Canadian Robot Games. To find more information on next year’s event and what you missed out on at this year’s competition, visit www.robotgames.ca SV
The Eastern Canadian Robot Games are held in the Science Centre’s Imperial Oil Room. The spectators bring a lot of energy to the events.

38

SERVO 03.2005

Pat Stakem

by

very robot builder knows that the visual aspect of your robot is half of its appeal. With that in mind, I decided to build a robot to recall the one that got many of us interested in robotics to begin with: Star Wars’ R2-D2. This project details the construction of a mobile robot in an R2-D2-like case, and to it I applied several lessons learned from previous robot construction projects. The platform has two independently driven wheels and two casters. The head of the robot — containing most of the sensor package — rotates. Two PC-class computers are onboard, operating on the onboard 12-volt batteries, and the robot is linked to a wireless network. The PCs provide a layered architecture, ease-of-use, and reasonable power draw, while the overall project combined aspects of digital and analog design and programming and involved about two years of on-and-off work. SERVO 03.2005 39

E

R2-D2: A PC-Powered Mobile Robot
Reading Temperature With logo
1. The game interface on the sound card is a simple A/D circuit. Normally used with a joystick, it expects to see a 100K ohm resistance and supplies voltage and a capacitor to form a timing circuit. 2. We hook up a 100K ohm thermistor to the game connector. 3. The Logo command is: SHOW INGAMEPORT 1 This displays “counts.” 4. We calibrate the sensor using ice water for a low limit and ambient temperature. 5. Using the derived cal curve, we can now display the temperature in °F. The curve is mostly linear over the expected range of temperature. SHOW 32 + .024 * INGAMEPORT 1

FIGURE 1. The complete unit.

Hardware Details
The robot platform consists of a wheel assembly and base which mounts on a shell. The shell and structure are an American Toy & Furniture toy box with a Star Wars theme licensed from Lucasfilm. It is an 18-inch-tall cylinder that is 16 inches in diameter with a hemispherical, molded plastic head. The drive is provided by dual Brevel +36 volt, permanent magnet gear motors (model 790-1953075) with seven-inch wheels. A 12 volt Brevel motor (model
FIGURE 2. The molded plastic head assembly. The Polaroid ultrasonic sensor is visible. The ball at the top of the head is for the video camera.

105-82/001) is used to rotate the head, and power is supplied by dual 12-volt, 7.2-amp-hour, gel-cell batteries by PowerPatrol (model SLA1075). The entire unit weighs 45 pounds — excluding the batteries — which add another 10 pounds. The robot is about three feet tall and 21 inches wide across the wheels. Two casters, mounted front and back, provide stability to the platform. The motors are mounted in a wooden frame that is attached to an 18-inch diameter plywood base. For embedded control, two PCclass machines are used — one in the head and one in the body — and the advantages of using the PC platform are the standardized interfaces it provides and the availability of a wide range of off-the-shelf hardware and software. The head computer consists of a 386sx-40 mini motherboard with four-by30-pin SIMM memory slots and an ISA bus for a serial/parallel board, VGA board, and floppy disk controller/hard
FIGURE 3. The head computer. The power converter is on the right. The bracket in foreground is for a hard disk.

disk controller card. It can use a standard 3.5 inch, 1.44 megabyte floppy drive and IDE-based hard drives and CD drives. In typical configuration, the board draws one amp at five volts, with four megabytes of memory. It operates from a single 12-volt input power supply. The head computer interfaces with the sensors to minimize the amount of wiring passing through the rotating head to body interface. Monitoring the battery voltages and, eventually, the current draw of the motors can best be done closer to those units by the body computer. The head computer to body computer data connection is via a LAN using an onboard hub. The body computer — a Pentium 200MMX — has both a PCI and an ISA bus, and it can use either the 72-pin or 168-pin SIMM memory. A dual serial and a parallel interface are provided on the motherboard, as is USB support. The circa 1997 AWARD BIOS supports monitoring of the CPU temperature. The board uses the I430TX chipset. In a typical configuration, a 64-megabyte module of 168-pin memory is employed
FIGURE 4. The head rotation motor is attached to the bottom of the head mounting plate.

40

SERVO 03.2005

R2-D2: A PC-Powered Mobile Robot
with a Cirrus 5446 SVGA PCI video board operating off of the parallel card, a sound/game card, a 3.5-inch, (printer) port. The eight-bit output of 1.44-megabyte floppy, a CD, and a the parallel port is split into two four-bit four-gigabyte hard drive. sections, each providing a signed threeThe board has been tested with bit (eight level) code. This is more than both USB and parallel interface web sufficient for the motor control. cams and supports a 16-bit protocard in A simple ladder network converts the EISA bus. Wired (Realtek 8139) and this to an analog voltage between zero wireless (802.11b) network connections and five volts. This is level shifted and are included. The body computer uses a amplified by a 741 op-amp to a ±12-volt standard chassis, shortened by 1-3/8 signal and is applied to the input of inches to fit within the body shell. This the motor driver. The D/A board is only affected the use of long EISA cards equipped with a disk drive power con— such as the protocard — which had to nector and is supplied by +5 and +12 be trimmed to length. volts from the computer. The -12 voltBoth computers may be attached age is derived via a Maxim 7662 chip to a keyboard, mouse, monitor, and a from the +12 volt line. The Maxim chip wired network connection when the requires only two electrolytic capacitors. robot is on the workbench. Also, both The motor driver board is mounted computers can boot without having a on a piece of plastic to the left side of keyboard attached. When connected to the body computer chassis, along with a network, the PC-Anywhere program is connections for power and motor wiring used to access the robot computers from and the fusing. The A/D board is mounted a PC. The CPU in the body computer was beside it and connected to power and over-clocked to 225 MHz, but was not the parallel port of the body computer. reliable at that frequency and was A manual control pendant is provided returned to its nominal clock value. to move the robot in a tethered mode. The power amplifier for the motor This handheld control box has three drive module is a unit that was develswitches and LEDs are used to indicate oped and has been in use for over 10 power. The left and right motors are years at Loyola College (where I teach) controlled independently with center off, momentary switches, while the third for an Introductory Physics Lab Program switch controls the head rotation. A in robotics. The board measures seven DPDT switch at the bottom rear of the by four inches and is dual channel. It uses an analog input and was originally robot selects either manual or computer designed for use with servo operated potentiometers. The Lessons Learned motor drive section uses 2N6286 and 2N6283 power 1. Use consistently color-coded wire. transistors, and to drive the 2. A main power switch would be nice, along with a big red emergency stop button. motor amp from the computer, we need a link between the 3. Include an onboard battery charger. digital and the analog world. 4. Rapid prototyping in both hardware and software is the key to success. Various D/A options were 5. Robotics is certainly getting easier. considered, such as the Maxim 505 and MAX7228 chips. A FIGURE 7. Drive motors in their frame. D/A card would require a custom device driver to the control language (Logo) and a simpler approach was adopted. The critical tie between the digital world of the computer and the analog world of the motors is provided by a cheap-and-dirty, dual, four-channel digital-to-analog

FIGURE 5. Side view of the computer. The power supply is modified to work from 12 volts. The battery is in the foreground.

control of the motors. In March 2002, I reached a milestone and completed a version of the robot where the head rotated and the drive motors turned. Computer control of the drive system wasn’t achieved until November of 2004.
FIGURE 6. The motor amp is mounted on the red plastic piece, along with fusing and power distribution. The prototype parallel port A/D card is on the right, connected to the computer’s parallel port. The battery has been removed for visibility.

SERVO 03.2005

41

R2-D2: A PC-Powered Mobile Robot
NASREM model — based on work at NIST and NASA — and the Flight Telerobotic Servicer Project. This next higher level is the supervisory level, which decides what to do. Above that level and implemented externally to the platform is the world model. Via the wireless Internet, the body CPU is online to four other machines, including a storage server with a DVD drive. This allows for the off platform allocation of computational and storage resources to robot tasks. The Logo system running on the MZ-104 presents an abstraction layer between the user and the underlying hardware at the servo level. The details of the servo level are hidden. The user does not operate at the “brain stem” level, but rather at the “cortex” level with goals and schema, not control and status bits.

FIGURE 9. Safe robotics.

FIGURE 8. Manual control box. This plugs into a connector at the rear of the robot, where there is a switch to select manual or computer control.

Sensors
Most of the sensors are built into the rotating head, as there is a bracket for a Garmin GPS-38 receiver with a serial interface. The head assembly has light sensors, a Polaroid ultrasonic range finder, dual audio sensors (dynamic microphones), and the web cam. The two microphone “ears” on either side of the head can be brought together into an analog multiplexer and an A/D. A similar set-up on an

earlier Hero robot compared sensor readings and implemented binaural hearing by centering the head on the sound source. Another useful feature is a computer “heartbeat” indication: a signal to indicate the computer is still working and not hung. This might be as simple as an LED that is flashed once per second under program control.

Architectural Control Models
The robot’s body computer acts as the servo level of control, interfacing with sensors and actuators. It also provides an intermediate level of control. Additional computational resources can provide higher levels of goal seeking control to the system via the wireless connection. This follows the general principles of the

Design Constraints
The computers in the robot need to operate from battery power, have minimum power draw, minimize their heat production so that fans are not required, and be tolerant of a vibration environment (as the robot has no suspension). A laptop computer might seem ideal for the application of the body computer, as they are designed to operate with battery power and are

Further Readings and References
Stakem, Patrick H. and Hynes, Shane “Sensors for Robots, the Integration of Sensed Data, and Knowledge-Based Navigation Systems,” International Personal Robotics Conference-1, Albuquerque, NM, April 1984. Everett, H. R., Sensors for Mobile Robots Theory and Applications, Natick, MA: A. K. Peters, Ltd., 1995 ISBN 1-56881-048-2. Dudek, Gregory and Jenkin, Michael, Computational Principles of Mobile Robotics, Cambridge University Press, ISBN 0521568765. Stakem, Patrick H. “Use of Zero-power RAM for Personal Robots,” Robot Experimenter Magazine, August 1985. Medeiros, Adelardo A.D., “A Survey of Control Architectures for Autonomous Mobile Robots,” Abstract 1988, J. Brazilian Computer Society, v.4 n. 3 Stakem, Pat, Lumia, Ron, and Smith, Dave, “A Computer and Communications Architecture for the Flight Telerobotic Servicer,” June 24, 1988, ICG-#20, Intelligent Controls Group, Robot Systems Division, National Bureau of Standards. Stakem, Patrick H. “The Brilliant Bulldozer: Parallel Processing Techniques for Onboard Computation in Unmanned Vehicles”, 15th Autonomous Unmanned Vehicle Systems Symposium, San Diego, CA, June 6-8, 1988. Papert, Seymour MindStorms, Children, Computers, and Powerful Ideas, 1980, ISBN 0465046746. MSW Logo — see www.softronix.com/ logo.html Martin, Fred and Silverman, Brian, “The Handy Logo Reference Manual,” January 12, 1996, MIT Media Lab. http:// cs.wellesley.edu/rds/handouts/Handy LogoReferenceManual.pdf Mini Book Robot White Paper, December 2002, Evolution Robotics, www.evolution .com AmigoBot User’s Guide, ActivMedia Robotics, v. 1, November 2002, www.amigobot.com Open Source Motor Controller Project — see www.robot-power.com/

42

SERVO 03.2005

R2-D2: A PC-Powered Mobile Robot
small and light. The main disadvantage is the cost, due to the built-in screen. Secondhand units with broken displays can sometimes be purchased inexpensively and used with an external monitor, when necessary. However, the laptop cannot take expansion cards without a special docking station accessory. Later, we will discuss new and emerging boards that are even better suited to this application than laptops.

Software
The operating environment is Windows-98SE (a 200-megabyte disk footprint) with the PC-Anywhere program, Delorme mapping, iSpeak, and various other utilities. There is custom wallpaper on the background with a picture of the robot itself. The Logo programming language is ideal for robot control, as it contains constructs for moving and turning. The problem has been the lack of decent I/O in implementations, but this is addressed in the MSWLogo distribution. This language was applied in a previous project to update a Hero, Jr. robot with an added single chip PC processor. This used Logo under the Linux operating system in a metaprogramming mode — the Logo program wrote programs for the embedded controller on the fly and downloaded them via a serial connection for execution.

FIGURE 10. Screen shot.

Future Directions
First, I want to expand the sensor suite. Bart Everett’s book (see the “Further Reading” sidebar) is the definitive guide to a robotic sensor platform. Many of these parts are now sitting in a box, waiting for available bench time. These include tilt sensors, an infrared motion detector, a smoke detector, bump switches along the base, and a digital compass chip. I also need to complete the onboard battery charger, which will charge both batteries from wall power. In spite of its appearance and because there are no manipulators, we might term this initial unit “R1-D1.” Interestingly, I have three of the cases, so construction of a second unit is

already underway. We might term this “R1-D2.” It will incorporate lessons learned from the first construction, as well as advances in technology. The second unit will utilize a radio control manual mode. This is already implemented on the motor driver card and only a single computer will be used. This necessitates “spinal cord” wire management through the rotating head interface, but the wiring will be minimized and head rotation will be arbitrarily limited. The computer will be a mini ITX form factor from VIA. These motherboards are 6.75 inches square and incorporate built-in video and LAN. A transition from Windows to Linux is envisioned, as Linux is the ideal operating environment for the robot computer system. With Linux, you can control the software components in the system build by including only those components you need. The real-time behavior of Linux is better and extensions allow true real-time performance. Many of the newer Linux distributions are getting “fat,” mostly due to the GUI. Slimmed down systems — such as VectorLinux — show promise, and support for devices such as USB connected cameras and wireless networking are

now standard. Berkeley Logo — which runs under Linux — is the basis for the MSWLogo used in this project. Several off-the-shelf manipulators (hand and arm assemblies) are now available for a reasonable cost. These enable a new series of capabilities. I envision a robotic debug assistant that can store and display schematics as pdf files, incorporate a digital voltmeter, digital logic analyzer, and oscilloscope and integrate these with speech. I already have a serial-to-CAN-bus interface cable and the software to allow a PC to read the onboard computer in the car. Perhaps the robot can be a car mechanic assistant, as well. SV

About the Author
Patrick H. Stakem is a senior systems engineer and teaches at Loyola College’s Graduate Computer Science Program. He was the Principle Investigator for NASA’s FlightLinux Project and supported the Flight Telerobotic Servicer Program, a robotic element of the Space Station. He has a BSEE degree from Carnegie-Mellon and MS in Physics and Computer Science from Johns Hopkins. He has been active in robotics for over 20 years.

SERVO 03.2005

43

New Products

New Products
CONTROLLERS & PROCESSORS µM-FPU V2 Floating Point Coprocessor
icromega Corporation is offering a new version of the µM-FPU Floating Point Coprocessor. The new version — µM-FPU V2 — now supports both I2C and SPI interfaces. The I2C interface supports bus transfers at speeds up to 400 kHz and the SPI interface supports speeds up to four MHz. A 32-byte instruction buffer has been added for improved throughput and easier interfacing. Several new instructions have been added, including new data transfer instructions, 32-bit integer logical operations, conditional execution, table look-ups, and Nth order polynomials. The µM-FPU interfaces to virtually any microcontroller using either an I2C or SPI interface, making it ideal for applications requiring floating point math, such as converting sensor readings, robotic control, data manipulation, and other embedded control applications. The µM-FPU provides support for 32-bit IEEE 754 compatible floating point operations and 32-bit integer operations. A PIC compatible mode is also available to support PIC format floating point numbers. An extensive list of functions are built in, including floating point math, long integer math, exponential functions, trigonometric functions, data conversion, and formatting functions. A builtin debug monitor is available to assist in developing and debugging code. A unique feature of the µM-FPU is the ability to define user functions. User functions are defined as a series of built-in operations and are stored in Flash memory on the µM-FPU chip. Since they are stored internally, the majority of communications overhead is eliminated. This results in dramatic speed improvements and greatly reduced code space requirements on the microcontroller. Software is provided to define user functions using standard math

M

expressions and to program the µM-FPU over a RS-232 connection. Documentation and software is provided to support a wide variety of very popular microprocessors. The µM-FPU is available in an eight-pin DIP or a 20-pin SSOP package at a price of $14.95, with volume discounts available. For further information, please contact:

Micromega Corporation

1664 St. Lawrence Ave. Kingston, ON K7L 4V1 Canada Tel: 613•547•5193 Website: www.micromegacorp.com

Circle #87 on the Reader Service Card.

Orangutan Robot Controller
ololu has introduced the Orangutan robot controller, a complete control solution for small robots. Orangutan includes an eight-character x two-line liquid crystal display, two bidirectional motor ports, a buzzer, three push-buttons, and up to 12 user I/O lines, yet the compact module measures only 2.00 x 1.85 inches and weighs less than one ounce. Because of the complete feature set, very few additional components (such as sensors or motors) need to be added to complete the electronic portion of a small robot. The small package allows for greater flexibility in incorporating the electronics into the mechanical design of a robot. Orangutan is based on the Atmel MEGA8 microcontroller, which features eight Kbytes of Flash program memory, 1,024 bytes of SRAM, and 512 bytes of EEPROM. Up to eight channels of 10-bit analog-to-digital conversion is also available. Because the user has direct access to the microcontroller, any development software for Atmel’s AVR microcontrollers — including Atmel’s free AVR Studio and the GCC C compiler — is compatible with Orangutan. An in-circuit programmer — such as Atmel’s affordable AVR ISP — is required for programming Orangutan. For applications requiring more program memory, the MEGA168 microcontroller with double the program space can be substituted for the MEGA8

P

44

SERVO 03.2005

microcontroller. The Orangutan input voltage is 5-10 volts, making it well-suited for use with small DC motors and five- to eight-cell NiCd or NiMH battery packs. The motor driver can supply up to a maximum of one A per motor channel, subject to power dissipation requirements. Total power consumption (with motors and buzzer off) is under 15 mA. The unit price for the fully assembled and tested Orangutan robot controller is $79.00, with free shipping in the US. For further information, please contact:

Pololu Corp.

6000 S. Eastern Ave. Ste. 12-D Las Vegas, NV 89119 Tel: 877•7•POLOLU or 702•262•6648 Fax: 702•262•6894 Email: www@pololu.com Website: www.pololu.com

Circle #99 on the Reader Service Card.

ROBOT KITS Robot Kit for Education and Hobby

cost, active balancing robot kit for hobby, research, and educational applications. The thrust behind BalBot is to not only provide a robotic platform for inventors, researchers, and students, but to do so in a way that evokes a new level of creativity, motivation, and excitement from the user. With its innovative technology and form factor, BalBot is designed to inspire and free users to build upon this platform to produce their own ingenious creations. Why build a “standard” robot when you can build one that’s more fun and maneuverable? BalBot is available in two different kits. The BalBot Basic™ and BalBot Advanced™. The BalBot Basic provides an active balancing platform — complete with real-time balancing control circuitry — and is ready for the user to add a microcontroller (if navigation is desired). The BalBot Advanced adds forward-looking sensors and a full-featured microcontroller board complete with LCD display, serial communications, expansion ports, programmer, open source C compiler, and sample code. Both kits come complete; only a screw driver and batteries are required. For further information, please contact:

Swope Designs, Inc.

Website: www.BalBots.com

Circle #45 on the Reader Service Card.

Show Us What You’ve Got!
Is your product innovative, less expensive, more functional, or just plain cool? If you have a new product that you would like us to run in our New Products section, please email a short description (300-500 words) and a photo of your product to:

S

wope Designs, Inc., announced BalBot™ — the first ever low

alexa@servomagazine.com

SERVO 03.2005

45

T E X A S A R T RO B OT S
H A N D M A D E I N T E L L I G E N C E

UNIQUE LIMITED EDITIONS INTELLIGENT & AUTONOMOUS HAND CRAFTED
WWW A RTBOTS COM

.

.

Electronic Parts & Supplies Since 1967
Meccanisms

• mechanical connections Kits • servo motor actuator under • position & load sensors $100 • internal microcontroller From rovers to humanoids www.garage-technologies.com

AI Motors

Building Blocks for Robotics

TM

Maximum Power
Control 4 Motors, 2 Servos, 3 Relays 6 Analog & 8 Digital Inputs. Adv. O/S & Development Environment. Plug-In Connectors, No Soldering

www.meccanisms.com

Minimum Fuss

For the finest in robots, parts, and services, go to www.servomagazine.com and click on Robo-Links to hotlink to these great companies.

46

SERVO 03.2005

Sapiens and Doggies and Raptors, Oh My!
WowWee, Ltd., rocked the house at the Consumer Electronics Show (CES) 2005 in Las Vegas, NV. The toy shop behind the Robosapien family of entertainment robots unveiled five spectacles of modern technical innovation, three of which we will take a closer look at.

by D avid G eer

SERVO 03.2005

47

Robosapien2 C omes t o L ife W ith D omestic a nd P rehistoric C ompanions
More ‘Sapien-like all the time, Robosapien2 can sit, stand, lie down, and get back up. Extra WowWee, Ltd., is a Hong Kong motions that help to facilitate these consumer electronics and leisure product behaviors include bending over and manufacturer launched by robotics twisting at the waist. physicist Mark Tilden. Robosapien2 can detect and Formerly with JPL, DARPA, and NASA, avoid obstacles, track movement, Mark has introduced the bigger, more and grasp objects that are given to powerful, and adaptive Robosapien2, as him. He does this with the aid of well as new Roboraptor and Robopet his infrared, radar vision eyes. He robots as of the 2005 CES, held in January. can also tell objects from human Mark shared his original Robosapien flesh via his built-in vision color creation with the world about two years system. These talents enable ago. The product has since been dubbed the most advanced human-like robot Robosapien2 to wave when he available — and he has many more robots recognizes someone or to respond in the works today. with a handshake. A full 14 inches tall, the first Robosapien2 can hear and talk Robosapien had 67 pre-programmed funcup a storm. His stereo sound detections; Robosapien2 will have a surprisingly tion system enables him to respond “My, w hat b ig h ands y ou h ave?!” higher number of functions, though not to the surrounding auditory envi“The b etter t o f etch y our b everage w ith, everything about this toy release — slated ronment. Laser tracking capabilities for September — is yet known. my f ine r oboticist f riend.” enable him to follow a path, which you can trace on the floor with a laser that comes in the remote control unit. Robosapien2 can guide his new WowWee robot companions — Robopet and Roboraptor — and interact with them. Robosapien2 is due out in September ... along with his The next iteration of Robosapien — Robosapien2 — is also friends. a toy, yet it’s bigger and more capable than its predecessor. More an example of total evolution than slight improvement, Robosapien2 stands 24 inches tall — a full 10-inch gain over his older brother. He can lift, throw, and drop with his much With a build and ears comparable to those of a Basenji, larger, four — not three — fingered hands. Yes, Robosapien2 Robopet is your high energy dog-tronic playtime friend. has three fingers and an opposable thumb! He has several lively, interactive sounds and animations in

Mark T ilden a nd W owWee

Robosapien2 and Friends — Playful? Practical?

Robopet

How m uch i s t hat f inely t uned, alien-e ared d oggy i n m y c amera l ens? e (Hint: L ess t han a d og f rom t he pound w ith a ll i ts s hots.)

The F uture o f R obosapien a nd F riends
All the intel we could squeeze out of the WowWee grapevine is that there are additional generations of the products in development now. Judging by current year-to-year progress, might we see a four-foot Robosapien3 in 2006? Might it have hundreds of programs and capabilities? Might it become fully autonomous? Will advanced versions of Robosapien cross over from toys to tools, doing chores and working side-by-side with human masters? Stay tuned as these and other questions are answered in future versions of WowWee robots. WowWee Alive Think WowWee only has Robosapiens? Not by a long shot — what else is WowWee up to? They have a new line called WowWee Alive. Think wall-mounted singing fish developed many times over or animal heads more lifelike than Disney animatronics and you’ve got the idea. These mentally engaging, emotionally stimulating, realistic creatures are intelligent, well-crafted interactors you can add to your environment. Full of complex capabilities and other surprises to make you wonder whether they’re alive, these critters are sure to challenge your love of Furby. These robot busts — which include a chimpanzee head, for example — can be programmed and controlled via R/C or function fully autonomously in their free roam mode. Like Disney animatronics, these robotic conversation pieces can interact with you and each other.

48

SERVO 03.2005

Robosapien2 C omes t o L ife W ith D omestic a nd P rehistoric C ompanions

If I d idn’t k now i t w as R oboraptor’s R C, I ’d s wear i t w as a model f or s ome f unky, n ew c atamaran. S ee t he t iger s tripes?
his repertoire. Fundamentals include the ability to crawl, walk, sit, stay, and even run and jump. Robopet can lie down, beg, bark, howl, and roll over. Additional tricks and training can be programmed in. Like a real dog, he responds to positive (and negative) feedback and reinforcement. Multiple sensors give Robopet object recognition and avoidance techniques. He can react to sound, making him ever on the alert and fit for guard duty. This bot also follows laser drawn paths.

A w ink, a s mile, a f lash o f t he c amera, a nd I ’m h aving this p hotographer f or l unch!
including walking, running, and stealthy, predatory stalking. Another member of the multi-sensing crowd, Roboraptor can see, hear, and feel environments and people. Touch sensors on both head and tail and sonic sensors help him to accomplish these feats. As you might expect of any dinosaur, Roboraptor exhibits three very different moods. (Can we say Bi-polarsaur?) He can take on the personality of a hungry hunter or be cautious or even playful. If you caress his face when he’s in playful mode, he’ll nuzzle up to you, but if you get near his jaws when he’s in hunter mode, he’ll become an aggressor. With his powerful jaws, Roboraptor can lift objects or bite down — snap, snap, snap!

Roboraptor
What’s bigger than a breadbox, smaller than Robosaurus, and happier than Julia Roberts after giving birth to twins? It’s Roboraptor! Just look at that beautiful smile! Remember, when you can’t brush, eat something that carries away plaque — like a car or your sibling’s femur bone. That’s what Roboraptor does to maintain his pearly whites. Yes, Roboraptor may look wired on caffeine, but he’s actually wired on ... wires, from head to tail. Look at those big, buggy eyes — what else could keep a dinobot that jazzed other than consistent jolts from electric volts? This R/C robotic dinosaur stretches 32 inches in length. All his talents appear to come in sets of three. For example, Roboraptor has three markedly different gaits for movement,

Thank You. Thank You Very Much.
Prior to the holiday season, the premiere Robosapien received 30-some honors from top industry observers and publications. Many awards were proffered as a result of child testing panels. The response has been the same worldwide. See “Resources” for information about these honors and awards. Imagine the response Robosapien2 and friends will generate during the holidays this year. SV

Robosapien H its V egas
CES 2005 was the spot where WowWee’s robotic arm lifted the veil to uncover Robosapien2, two other advanced robots, and other spell-binding technologies. Roboraptor and Robopet join the taller, more capable Robosapien2. WowWee is, in fact, so wowed by the response to its offerings to date that it is expanding its robotic platform and lines to include Robonetics entertainment robots — a whole other story in themselves.

Resources
1. Check out the Robosapien2 online at ... gee, what’s that link? Oh, yeah! www.robosapienonline.com where you’ll also find reference to the numerous awards and recognitions RoboSapien has garnered. 2. Get a gander at the new WowWee arrivals at www. wowwee.com 3. Have you Googled for “how to hack Robosapien” lately? Expect some serious Robosapien2, Robopet, and Roboraptor hacking this year!

SERVO 03.2005

49

by Steve Grau

Figure

1

A

robot’s ability to determine where it is spacially and landmark-based localization, accumulated error is less of where it needs to go remains one of the most important a concern, as the robot measures its position off of fixed aspects of sensing and programming. In Part I of this series, landmarks that don’t drift over time. However, the robot we built several user interface components, and this month, has to deal with difficulties in identifying landmarks and we will put those components to use as we add intelligence navigating through areas where it is unaware of landmarks. to the RidgeWarrior II robot we’ve been programming. Since Localization is a difficult problem. Choosing an effective we are focusing on robotics software, we have chosen to use an off-the-shelf robot kit — the IntelliBrain™-Bot from Figure 2. Navigation and Localization class diagram. RidgeSoft, shown in Figure 1. We are programming in Java™ using the RoboJDE™ software development environment, which is included with the IntelliBrain-Bot kit. Java source code for this series of articles is available at www.ridge soft.com\articles\ridgewarriorii\ridgewarriorii.htm Our next major goal is to develop components that give our robot the ability to track its position, a process called localization. One common method of localization is dead reckoning, where the robot uses measurements of speed, heading, and time to deduce its position. Landmark-based localization Figure 3. Hybrid Localizer class diagram. is another common method, and although many methods of localization exist, none is perfect. Dead reckoning is dependent on accurate speed, heading, and time measurements, and measurement errors will result in an error in the robot’s deduced position. The error will tend to increase over time, causing the robot’s deduced position to drift further and further from its real position as it travels about. With SERVO 03.2005

51

Creating Reusable Robotic Software Components
support a variety of localization methods. By designing a generic interface to any “localizer” component (Java class), we can allow various localization methods to be used interchangeably and also allow multiple methods to be combined into hybrid methods. The localization function can be implemented as a cohesive component that is loosely coupled to other software components that make up our robot’s control program.

The Localizer Interface
We will define a generic Java interface named “Localizer,” which allows different localization methods to be used interchangeably. Figure 2 shows a class diagram depicting navigation and localization classes. In order to navigate the robot from place to place, the Navigator relies on the Localizer to provide the robot’s current position and heading: its “Pose.” Figure 3 illustrates how multiple localizers could be used to form a hybrid localizer that tracks the robot’s position using a combination of localization methods. Our generic Localizer interface will need to declare a method to retrieve the current Pose (position and heading). We will also declare methods to set these values so the robot’s initial position can be set and so the position can be corrected from time to time. We will define this interface in Java as follows:
public interface Localizer { public Pose getPose(); public void setPose(Pose pose); public void setPosition(float x, float y); public void setHeading(float theta); }

Figure 4. Nubotics WheelWatcher WW-01 sensor. method will depend on the requirements for a particular robot, while combining several methods may be effective. For example, a robot might use dead reckoning to navigate to the vicinity of a landmark then switch to landmark-based navigation, just as a ship’s captain might use dead reckoning while out of sight of land and then switch to landmark-based navigation when land is in sight.

What to Do?
So, what method of localization should we use for our robot? Rather than attempting to pick an ideal localization method, we can instead choose to design our software to Figure 5. Analog wheel encoder.

Our Pose object will need member variables to keep track of the position in x and y coordinates — we won’t worry about elevation changes — and the direction the robot is heading, which we will call theta. Since the Pose class is very simple, we will make the member variables directly accessible to other classes by declaring them “public.” This will allow faster access to these variables than if they had to be read through get methods such as pose.getX() and pose.getY(), saving computing power for other tasks. We also want to prevent a Pose object from changing while it is being used for navigation calculations. Therefore, we will make it immutable by declaring its member variables “final.” Final member variables can’t be changed after an object has been constructed.
public class Pose { public final float x; public final float y; public final float theta; public Pose(float x, float y, float theta) { this.x = x; this.y = y; this.theta = theta; } }

The Localizer interface is not specific to one localization technology or another. This allows other software components

52

SERVO 03.2005

PART
to work interchangeably with a variety of localization methods. We’ve defined the Localizer interface such that it provides a cohesive function — tracking the robot’s position and loose coupling to other software components — promoting reusability and interchangeability of classes we develop to the Localizer interface.

2

Implementing a Localizer
We are now ready to put the Localizer interface to work. The IntelliBrain-Bot kit we are using includes two infrared photoreflector sensors that can be used to create encoders that sense Figure 6. Analog encoder data. rotation of the robot’s wheels. Our robot can use these sensors to measure its motion, allowing it to keep track previous article. All this function will do is power the servo, of its position using dead reckoning. For greater accuracy, we wait briefly to allow the wheel to reach full speed, then sample can use WheelWatcher™ WW-01 sensors from Nubotics, the detector output every five milliseconds for half a second, shown in Figure 4. Working with two different encoder storing the sampled data in an array. Once the data has been sensors will allow us to further experiment with building collected, the function will wait until the START button is reusable and interchangeable software components. pressed, then print the data to the debug output stream Therefore, we will go ahead and program our robot to work System.out. We can then copy the data from the RoboJDE with either type of wheel encoding sensor. “Run” window and paste it into a spread sheet program to graph the data. The following Java code implements this:

Analog Encoders
The IntelliBrain-Bot comes with wheels that have eight spokes, as shown in Figure 1. The spokes are separated by eight oblong holes in the wheels. We can detect wheel rotation by mounting the Fairchild QRB1134 sensors that come with the IntelliBrain-Bot such that the spokes and holes in the wheels pass in front of the sensors as the wheels turn. Each QRB1134 sensor consists of an infrared emitter and detector pair. When the sensor is close to a solid surface, the detector will sense infrared light from the emitter reflecting off of the surface. When there is no surface to provide a reflection, the detector will not sense the light output from the emitter. By mounting a sensor near each wheel in such a way that the holes and spokes in the wheel pass in front of the sensor (as described in the IntelliBrain-Bot Assembly Guide), our software will be able to use the signal from the detector to sense wheel rotation. Let’s first implement a small test function to sample one sensor’s detector signal. This will enable us to create a graph showing the behavior of the sensor’s output as the associated wheel rotates. We will create a class named TestEncoder and add it to the list of selectable functions we created in the

public void run() { mServo.setPosition(100); try { Thread.sleep(500); } catch (InterruptedException e) {} int[] samples = new int[100]; long nextTime = System.currentTimeMillis(); for(int i = 0; i < samples.length; ++i) { samples[i] = mEncoderInput.sample(); nextTime += 5; try { Thread.sleep(nextTime System.currentTimeMillis()); } catch (InterruptedException e) {} } mServo.setPosition(50); while (!mButton.isPressed()); for (int i = 0; i < samples.length; ++i) { System.out.println( Integer.toString(i * 5) + ‘\t’ + samples[i]); } }

The chart in Figure 6 shows the results from this test. The sampled value is low when a spoke is in front of the sensor and high when a hole is in front of the sensor. The rising and SERVO 03.2005

53

Creating Reusable Robotic Software Components
falling edges correspond to the edges of the spokes. The rising-edge-to-rising-edge time is roughly 150 milliseconds when the wheel is spinning at full speed. Since the wheel has eight spokes, we can calculate that it takes about 1.2 seconds (8 x 150) for the wheel to turn one revolution. The top speed of the wheel is approximately 50 revolutions per minute. Our software will need to sample more frequently than at least every 75 milliseconds to ensure it sees each spoke go by. If we sample at a high enough frequency to count the passing of both edges of each spoke, we can measure the wheel position to an accuracy of 1/16 of a revolution. if it sleeps too long, however, it will miss spoke edges. It will also be a good idea to enclose all of the code in the run method in a try-catch block to catch and report any errors that occur. We don’t expect there to be any errors, but if there is a problem with our code, it will be much easier to debug if it prints out a stack trace rather than just allowing the thread to terminate silently. The following code lays out this structure:
public void run() { try { // take initial sensor sample : while (true) { // sample the sensor and count // spoke edges : Thread.sleep(mPeriod); } } catch (Throwable t) { t.printStackTrace(); } }

Creating an AnalogShaftEncoder
With Java’s multi-threading capability, it will be easy to set up a thread to sample each wheel encoder sensor periodically. All we need to do is create a new class — AnalogShaftEncoder — which is a subclass of Java’s thread class. Each instance of the class will be a separate thread that monitors the rotation of a single wheel. Our RidgeWarriorII class will create two instances of this class: one for each wheel. The run method of the AnalogShaftEncoder will loop forever, checking if the edge of a spoke has passed by the sensor since the previous check. After each check, the thread will need to sleep to allow other threads to execute. The longer the thread sleeps, the less CPU time it will consume;

In order to count spoke edges, the run method will need to keep track of whether the sensor signal was high or low on the previous check, then adjust the spoke edge counter if the sensor switched to the opposite state. We can implement this easily by using a Boolean variable to keep track of whether the previous reading was high or low. The following code uses the “wasHigh” variable to do this:
int value = mInput.sample(); if (wasHigh) { if (value < mLowThreshold) { // update count : wasHigh = false; } } else { if (value > mHighThreshold) { // update count : wasHigh = true; } }

The low and high thresholds are the software equivalent of a Schmitt trigger in an electronic circuit. This threshold checking makes the state of the wasHigh variable sticky — that is, it adds hysteresis. Thus, the state will only change with large swings in the sampled value and our encoder will be less susceptible to noise causing false counting. Finally, our AnalogShaftEncoder will need to be told the direction power is being applied to the wheel and to know whether to increment or decrement the encoder count each time an edge is detected. To do this, we will create a DirectionListener interface:
public interface DirectionListener { public void updateDirection(boolean isForward); }

54

Circle #94 on the Reader Service Card.

PART
The code controlling the motor will then be able to tell the encoder which direction the motor is applying power. The encoder will set the state of a member variable — mIsForward — each time it receives an updateDirection call. The encoder will use the direction information when updating the edge count to determine if the count should be incremented (wheel is rotating forward) or decremented (wheel is rotating backward):
if (mIsForward) mCounts++; else mCounts--;

2

We will also need to implement the getCounts method to give other classes access to the encoder’s counter:
public int getCounts() { return mCounts; }

WheelWatcher Encoders
The analog shaft encoders we have just created acknowledge 16 counts for each revolution of the wheel. Assuming there are no other errors, the robot can measure its position to 1/16 of the wheel circumference, which is approximately 1/2 inch. This accuracy is fine for forward motion, but it only allows the robot to measure its heading to a precision of 13 degrees. With this level of precision, our dead reckoning localizer will not be highly accurate. The WheelWatcher WW-01 from Nubotics is a quadrature shaft encoder designed for hobby servos. These sensors mount nicely on the IntelliBrain-Bot and accrue 128 counts per wheel revolution. The quadrature technique they use also allows the sensor to sense the direction of the wheel. We will need to replace the wheels, however, because the adhesive code wheel can’t be attached to the stock IntelliBrain-Bot wheels. Using this sensor will improve the precision of heading measurements to within two degrees. Of course, this is assuming there are no other sources of error. Wheel slippage and other sources of error will reduce the accuracy. The IntelliBrain robotics controller has built-in support for quadrature shaft encoders, so we will not have to create any additional classes to use these sensors. Instead, we can simply use the IntelliBrain.getShaftEncoder method to get a quadrature encoder object and then initialize it with the two IntelliBrain digital input ports the WheelWatcher sensor uses, as follows:
leftEncoder = IntelliBrain.getShaftEncoder(1); ((IntelliBrainShaftEncoder)leftEncoder).initialize( IntelliBrain.getDigitalIO(1), IntelliBrain.getDigitalIO(2));

Figure 7. Circle traced by robot turning in place. we can create a class that will keep an estimate of the robot’s Pose. If the robot moves straight ahead, the distance it travels is simply the average number of encoder counts the two wheels turn times the distance the robot travels per encoder count. This can be calculated by the following equations:
distancePerCount = Pi * diameterWheel / countsPerRevolution; deltaDistance = (leftCounts + rightCounts) / 2 * distancePerCount;

If the robot rotates in place by turning its wheels in opposite directions, the wheels will trace a circle whose diameter is equal to the track width of the robot. The robot’s heading changes as the wheels make their way around this circle. The robot will rotate 2π radians (360 degrees) when the wheels have traversed the circumference of this circle. The number of encoder counts to rotate a full circle depends on the geometry of the robot and can be calculated by:
countsPerRotation = (trackWidth / wheelDiameter) * countsPerRevolution;

This is the number of counts for a single wheel. If we take the difference in counts between the two wheels and note that each rotation is 2π radians, we can rearrange this equation into the following two equations:
radiansPerCount = Pi * (wheelDiameter/trackWidth) / countsPerRevolution;

Tracking Using Dead Reckoning
With the ability to measure the rotation of each wheel,

SERVO 03.2005

55

Creating Reusable Robotic Software Components
work in a timed loop in its run method, as follows:
long nextTime = System.currentTimeMillis(); while(true) { // read encoders : // calculate change in pose : // update position and heading estimates : nextTime += mPeriod; Thread.sleep(nextTime System.currentTimeMillis()); }

Reading the encoders is simply a matter of calling each encoder’s getCounts method: Figure 8. Calculating discrete position changes.
deltaTheta = (rightCounts – leftCounts) * radiansPerCount; int leftCounts = mLeftEncoder.getCounts(); int rightCounts = mRightEncoder.getCounts();

where deltaTheta is the angle in radians the robot rotates. Given the left and right encoder counts, these equations enable our program to estimate the robot’s position — provided it moves straight ahead or rotates in place — but what if the robot moves along an arbitrary path? Our localizer class can estimate the robot’s position along an arbitrary path by treating the robot’s motion as many small, discrete movements. By summing all of the discrete movements the robot makes, the localizer can estimate the robot’s current position. As shown in Figure 8, the robot moves a small distance, ∆d (deltaDistance), while it travels forward in the direction Θ (theta). Assuming the direction the robot is heading doesn’t change significantly during each step, the change in the position along the x axis, ∆x (deltaX), and change in position along the y axis, ∆y (deltaY), can be calculated using the following trigonometric calculations:
float deltaX = deltaDistance * (float)Math.cos(mTheta); float deltaY = deltaDistance * (float)Math.sin(mTheta);

Conveniently, this code does not depend on the specific type of shaft encoder sensor the robot uses. The ShaftEncoder interface has enabled loose coupling between the encoder classes and our localizer class, facilitating interchangeability. Hence, the localizer can work with any encoder that supports the ShaftEncoder interface. Updating the position and heading estimates is just a matter of adding the ∆x, ∆y, and ∆Θ values into the previous position estimate. However, because there are multiple threads accessing the Pose data, we have to be careful to ensure that another thread doesn’t read the Pose data while the localizer thread is updating it. We can use Java’s built-in synchronization mechanism to coordinate access to the shared data by putting the update code in a synchronized code block and adding the “synchronized” modifier to all methods that allow other threads to access the Pose data. The following code will update the position:
synchronized(this) { mX += deltaX; mY += deltaY; mTheta += deltaTheta; // limit theta to -Pi <= theta < Pi if (mTheta > PI) mTheta -= TWO_PI; else if (mTheta <= -PI) mTheta += TWO_PI; }

The ∆x and ∆y values can then be added to the previous position estimate to obtain a new position estimate. As with several other classes we have created, the OdometricLocalizer class will extend the Thread class and do its main

RESOURCES
RidgeWarrior II Source code www.ridgesoft.com\articles\ridgewarriorii\ridgewarriorii.htm IntelliBrain-Bot Kit www.ridgesoft.com\intellibrainbot\intellibrainbot.htm WheelWatcher WW-01 Quadrature Encoders www.nubotics.com

Finally, we will need a getPose method to allow other threads to read the Pose data.
public synchronized Pose getPose() { return new Pose(mX, mY, mTheta); }

Testing
In order to test the AnalogShaftEncoder and Odometric-

56

SERVO 03.2005

PART
Localizer classes we’ve now constructed, we will need to construct left and right encoder object instances and construct a localizer object instance in the RidgeWarriorII main method, as well as implement a few test classes. The OdometricLocalizer class requires the wheel diameter and track width measurements of the robot to be provided in its construction. For the IntelliBrain-Bot, these are approximately 2.65 inches and 4.55 inches, respectively. We will need two new screens: one to view the encoder counter values and the other to view the Pose data from the localizer. We will also need a few test functions to move the robot in different ways so we can verify the encoders and localizer function correctly. Source code for five test classes — EncoderCountsScreen, PoseScreen, TimedForward, TimedRotate, and TimedSquare — is available online. The latter three classes power the servos for fixed periods of time to cause the robot to move in a specific pattern, as indicated by the name of each class. By running these tests and observing the data displayed on the LCD screen, we can validate the functionality of our encoder and localizer classes.

2

Java’s multi-threading and interface features to design these classes such that they are loosely coupled to other components that make up our robot’s control program. This facilitates reuse of these classes in other robot software projects. It also allows us to replace the classes with other classes that provide the same function but in a different way. We demonstrated this by allowing our analog shaft encoders to be used interchangeably with the WheelWatcher quadrature shaft encoders. In the future, we could make use of other localization techniques — for example, landmark recognition — by replacing the OdometricLocalizer with another class that uses a different localization method. The Localizer interface allows the localizer function to be a cohesive component with plug-and-play interchangeability. In our next article in this series, we will implement classes that use the output of our localizer to navigate the robot from place to place. SV

ABOUT THE AUTHOR
Steve Grau has been developing software for over 20 years. He is the founder of RidgeSoft, LLC, and the author of the RoboJDE, a Java-enabled robotics software development environment.

Conclusion
In this article, we’ve added two more reusable classes that support shaft encoding and localization. We have used

Circle #101 on the Reader Service Card.

SERVO 03.2005

57

andy Mind Cday’s For To ticist Robo

The SERVO Bookstore
Mobile Robotic Car Design
by Pushkin Kachroo / Patricia Mellodge
This thoughtful guide gives you complete, illustrated plans and instructions for building a 1:10 scale car robot that would cost thousands of dollars if bought off-the-shelf. But, beyond hours of entertainment and satisfaction spent creating and operating an impressive and fun project, Mobile Robotic Car Design provides serious insight into the science and art of robotics. Written by robotics experts, this book gives you a solid background in electrical and mechanical theory, and the design savvy to conceptualize, enlarge, and build robotics projects of your own. $29.95

ROBOT DNA SERIES Three Volume Pack

Build Your Own All-Terrain Robot
by Brad Graham / Kathy McGowan
Remotely operated robots are becoming increasingly popular because they allow the operators to explore areas that may not normally be easily accessible. The use of video-controlled technology has sparked a growing public interest not only in hobbyists, but also in the areas of research, space, archeology, deep sea exploration, and even the military. Inside Build Your Own All-Terrain Robot, the writers enable even total newcomers to robots to construct a rugged, video-controlled, talking, seeing, interacting explorer bot with a range of over a mile for under $200.00! $29.95

Everything you need to program your robot controller: • Microcontrollers in Robots • Software Development • The Microchip PICmicro Microcontroller • Microcontroller Connections • Designing the Robot System • Going Forward Everything you need to build your own robot drive train: • The Basics of Robot Locomotion • Motor Types: An Overview • Using DC Motors • Using RC Servo Motors • Using Stepper Motors • Motor Mounting • Motor Control • Electronics Interfacing • Wheels and Treads • Locomotion for Multipods All the data you need to build your own robot base: • Mechanical Construction • Electrical Construction • Operating Power • Robot Designs • Constructing a Two-Wheeled Rover Robot • Selecting the Right Materials • Glossary of Terms • Tables, Formulas, and Constants

Robot Programming
by Joe Jones / Daniel Roth
Using an intuitive method, Robot Programming deconstructs robot control into simple and distinct behaviors that are easy to program and debug for inexpensive microcontrollers with little memory. Once you’ve mastered programming your online bot, you can easily adapt your programs for use in physical robots. $29.95

Electronics Demystified
by Stan Gibilisco
Now anyone with an interest in electronics can master it by reading this book. In Electronics Demystified, best-selling science and math writer Stan Gibilisco provides an effective and painless way to understand ! NEW the electronics that power so much of modern life. With Electronics Demystified, you master the subject one simple step at a time — at your own speed. This unique self-teaching guide offers problems at the end of each chapter, a section to pinpoint weaknesses, and a 70question final exam to reinforce the entire book. If you want to build or refresh your understanding of electronics, here’s a fast and entertaining self-teaching course that’s completely current. $19.95

Robot Builder's Bonanza
by Gordon McComb
Robot Builder’s Bonanza is a major revision of the bestselling bible of amateur robot building — packed with the latest in servo motor technology, microcontrolled robots, remote control, LEGO Mindstorms Kits, and other commercial kits. It gives electronics hobbyists fully illustrated plans for 11 complete robots, as well as all-new coverage of Robotix-based robots, LEGO Technicbased robots, Functionoids with LEGO Mindstorms, and location and motorized systems with servo motors. $24.95

Subscribers: $21.95 each book Non-subscribers: $24.95 each book

Electronic Gadgets for the Evil Genius
by Robert Iannini
The do-it-yourself hobbyist market — particularly in the area of electronics — is hotter than ever. This book gives the “evil genius” loads of projects to delve into, from an ultrasonic microphone to a body heat detector, all the way to a Star Wars Light Saber. This book makes creating these devices fun, inexpensive, and easy. $24.95

Robot Building for Dummies
by Roger Arrick / Nancy Stevenson
Ready to enter the robot world? This book is your passport! It walks you through building your very own little metal assistant from a kit, dressing it up, giving it a brain, programming it to do things, even making it talk. Along the way, you’ll gather some tidbits about robot history, enthusiasts’ groups, and more. $21.99

We accept VISA, MC, AMEX, and DISCOVER Prices do not include shipping and may be subject to change.

58

SERVO 03.2005

To order call 1-800-783-4624 or go to our website at www.servomagazine.com
PIC Microcontroller Project Book
by John Iovine
The PIC microcontroller is enormously popular both in the US and abroad. The first edition of this book was a tremendous success because of that. However, in the four years that have passed since the book was first published, the electronics hobbyist market has become more sophisticated. Many users of the PIC are now comfortable paying the $250.00 price for the Professional version of the PIC Basic (the regular version sells for $100.00). This new edition is fully updated and revised to include detailed directions on using both versions of the microcontroller, with no-nonsense recommendations on which one serves better in different situations.$29.95

Build Your Own Humanoid Robots
by Karl Williams
Build Your Own Humanoid Robots provides step-by-step directions for six exciting projects — each costing less than $300.00. Together, they form the essential ingredients for making your own humanoid robot. $24.95

CNC Robotics
by Geoff Williams
Now, for the first time, you can get complete directions for building a CNC workshop bot for a total cost of around $1,500.00. CNC Robotics gives you step-by-step, illustrated directions for designing, constructing, and testing a fully functional CNC robot that saves you 80 percent of the price of an off-the-shelf bot and can be customized to suit your purposes exactly, because you designed it. $34.95

Robot Mechanisms and Mechanical Devices Illustrated
by Paul Sandin
Both hobbyists and professionals will treasure this unique and distinctive sourcebook — the most thorough — and thoroughly explained — compendium of robot mechanisms and devices ever assembled. Written and illustrated specifically for people fascinated with mobile robots, Robot Mechanisms and Mechanical Devices Illustrated offers a one-stop source of everything needed for the mechanical design of state-of-the-art mobile ‘bots. $39.95

JunkBots, Bugbots, and Bots on Wheels: Building Simple Robots With BEAM Technology
by Dave Hrynkiw / Mark W. Tilden
From the publishers of BattleBots: The Official Guide comes this do-ityourself guide to BEAM (Biology, Electronics, Aesthetics, Mechanics) robots. They're cheap, simple, and can be built by beginners in just a few hours, with help from this expert guide complete with full-color photos. Get ready for some dumpster-diving! $24.99

Robot Builder's Sourcebook
by Gordon McComb
Fascinated by the world of robotics, but don’t know how to tap into the incredible amount of information available on the subject? Clueless as to locating specific information on robotics? Want the names, addresses, phone numbers, and websites of companies that can supply the exact part, plan, kit, building material, programming language, operating system, computer system, or publication you’ve been searching for? Turn to the Robot Builder’s Sourcebook — a unique clearinghouse of information that will open 2,500+ new doors and spark almost as many new ideas. $24.95

Build Your Own Electronics Workshop
by Thomas Petruzzellis
The Electronics Workshop was written to assist the newcomer to the field of practical electronics through the creation of a personal electronics workbench. This is a place specially designed so that read! NEW ers can go there to work on an electronic project, such as testing components, troubleshooting a device, or building a new project. This book includes invaluable information, such as whether to buy or build test equipment, how to solder, how to make circuit boards, how to begin to troubleshoot, how to test components and systems, and how to build your own test equipment, complete with appendix and resources, etc. This is THE book for anyone entering the field or hobby of electronics. $29.95

LINUX Robotics: Programming Smarter Robots
by D. Jay Newman
Robotics is becoming an increasingly popular field for hobbyists and professionals alike. The cost of the mechanics and electronics required to build a robot are low enough that almost anyone can afford it. The hardware that used to require government funding or a large university grant is now available to the average person. At the same time, programming is becoming a common skill. This book combines the most sophisticated parts of robotics and programming to fill a real gap in available information. Most robotics books today use microcontrollers as the “brains” of the robots. This approach is fine for smaller, less expensive projects, but has serious limitations. When attempting to build a robot with sophisticated movements, navigation, vision, and picture-capturing abilities, it is better to use Linux as the controller. This book is available for sale February 15, 2005. $34.95

Robotics Demystified
by Edwin Wise
There's no easier, faster, or more practical way to learn the really tough subjects. McGraw-Hill's Demystified titles are the most efficient, intriguingly written brush-ups you can find. Organized as selfteaching guides, they come complete with key points, background information, questions for each chapter, and even final exams. You'll be able to learn more in less time, evaluate your strengths and weaknesses, and reinforce your knowledge and confidence. $19.95

Check out our online bookstore at www.servomagazine.com for a complete listing of all the books that are available.

SERVO 03.2005

59

by David Geer
geercom@alltel.net

These Walking Forest Machines can cut and fell trees about 20 inches thick.

Finland’s Plustech Oy Timberjack Walking Forester
What has six legs, weighs more than 10 tons, and walks through the forest with a grace near that of a gazelle? It’s not a dancing machine, but it is a Walking Forest Machine. Its computer intellect controls walker direction, speed, step height, walking gait, and ground clearance.
60
SERVO 03.2005

GEERHEAD

Mobility is placed in the hands, or hand, of the operator via a single, intuitive, user-friendly joystick.

They can lift trees of about 1.5 metric tons each, depending on the reach of the particular prototype’s boom.

Finnish Forest Forager
Finland is noted for its contribution to cell phone media with the household name of Nokia, but Finland isn’t only just “a phone call away.” It’s also “a walk in the park!” A division of John Deere (and a subsidiary of Timberjack, the world's leading designer, manufacturer, and distributor of forestry equipment), Plustech Oy makes the Timberjack Walking Forest Machine, an industrial strength, working robot that walks up mountains and through forests to cut, fell, and carry off monstrous trees in minutes. The same giants of the woodlands that once took two men with strong arms, heavy axe heads, and a lot of perspiration to tackle are now razed as easy as a florist clips a long-stemmed rose. These Walking Forest Machines can cut and fell trees about 20 inches thick. These are all signs that say many a future lumberjack will be a heavy equipment operator sitting in the sweet seat of a machine just like this one. Actually, non-walkers from Timberjack — the track and wheel

variety — have been doing the lumberjack’s work for years, so why have they decided to develop a walker all of a sudden instead of these other means of mobility? It seems that the wheeled and tank-like tracked vehicles tend to damage sensitive forest soils. Walkers are much less of a problem for the environment.

Six-Legged Tree Spiders
The Walking Forest Machines

come in weights of 11 and 15 metric tons, and they can lift trees of about 1.5 metric tons each, depending on the reach of the particular prototype’s boom. These Foresters are also agile, walking up 30-degree slopes without losing their balance, and since they run on diesel fuel, they can work a double shift — a full 16 hours — without refueling. Though the Walking Foresters do less harm to the soil than tracks or wheels, they do face some of the same developmental challenges as other

DOING THE TIMBERJACK STRUT!
Plustech (a division of John Deere) makes the Timberjack Walking Forest Machine, which traverses forests with ease via six legs and feet to harvest trees while protecting the ground from the damage wheeled and tracked vehicles would otherwise do. The machine acclimates itself to the terrain automatically by responding to input from sensors. The machine can redistribute its weight to balance itself over varying landscapes. It finds solid footing for each of its legs. Ground pressure can be adjusted because of its changeable shoes. Because of the walker’s advanced control system, the operator only needs to move a single joystick to select direction and speed. The automated computer system does all other thinking and responding where movement is concerned. SERVO 03.2005

61

GEERHEAD

The Walking Foresters can step over obstacles instead of attempting to drive through them.

The Walking Forester’s ability to turn in place makes it highly desirable for confined spaces.

types. Speed, cost, and reliability are all concerns of Plustech’s R&D.

“It’s Got Legs!”
The Walking Forester’s legs are more than just three pairs of oversized stocking stuffers. Each of its six agile, ambulatory appendages is about nine feet wide and 30 feet long. These are

all directed by one joystick, which also controls the Walking Forester’s ground clearance, frame tilt, and roll angles. The Forest Walker can step ahead, back, side-to-side, and diagonally. It can step over obstacles, turn in place, and adjust to the terrain by altering ground clearance and the height of each step with the assistance

of its operator.

Backbone and Brains
From the legs to the nerves, from the nerves to the brain ... the Forester’s nervous center is a computer system with a high IQ. Its computer intellect controls the Forester’s direction, speed, step height, walking gait, and ground

N

e

w

KHR-1 Robo-One Robot Kit
These awesome kits are the latest craze in Japan. Robot has 17 motors for fluid movements. Programed and Controlled via PC. Upgradable to Bluetooth wireless.

BROUGHT TO YOU BY WWW.SOZBOTS.COM

62

SERVO 03.2005

Circle #60 on the Reader Service Card.

GEERHEAD
HOW CAN THEY AFFORD TO INVEST SO MUCH IN DEVELOPMENT?
One of the most popular questions is how you sustain a project that requires so much spending on the development of an unconventional, experimental technology over such a long period? The wheeled versions of the Timberjack forest machines have been available since 1947. Products include a wide range of machines for harvesting, terrain transport, and log loading. clearance. The Walking Forester’s tree harvesting head is controlled by the Timberjack measuring and control system, while the loader and engine are controlled by yet another system called the Total Machine Control system. Mobility is placed in the hands, or hand, of the operator via a single, intuitive, user-friendly joystick. Because Timberjack machines are on the job in over 80 countries, the brand has a solid foundation from which to grow into the future. They have determined that this is the direction in which to move, and if they intend to stay in this business, they must make this kind of an investment. Timberjack has, in fact, invested in product development through two primary research and development centers in Canada and Finland. The Walking Forest Machine project is the fruit of Plustech, a Timberjack affiliate that specializes in long-term R&D. Plustech is only a portion of Timberjack’s massive European R&D Center in Tampere, Finland. The current overarching goal of the machine is to examine just how appropriate walking technology is for harvesting forests.

Forests of the Future
Advocates of forest soil preservation have demanded a solution to the ravaging of modern forestry for some time. In 1995, Plustech Oy responded

with the Walking Forest Machine. required a great deal of research Though still not in production, the and testing in new automation Walking Forester has been developed and tested in several of USING TREES FOR CHEW TOYS! the world’s forests to adapt it to a variety of working conditions and Like non-perambulating Timberjack environments. harvesters, the Walking Forest Machine The testing will continue prototype is outfitted with a Timberjack until Plustech is certain the 3000 measuring and control system and machine will hold up long-term in the demanding working harvester head. Via this system, an operator can set environments of the world’s forests. Plustech wants to parameters for timber harvesting based develop Walking Foresters for on the priorities of the forest owner. An every type of foresting condition operator can also monitor production and requirement. based on tree species and volume of The current Walking trees taken. Foresters prototypes have already

SERVO 03.2005

63

GEERHEAD
In time, we should expect to see them or their variants hard at work clearing forests and preserving forest floors through their walking technology.

Author, Author! Encore, Encore!
The Timberjack Walking Forest Machine has been honored with several awards, including the 1997 European IT Prize. In selecting the recipient of this award for design and innovation, 25 finalists were pulled from a pool of 319 entrants from 27 countries. In 1996, the Walker was highly commended in the eco-design category of the Better Environment Awards for Industry. This event recognizes those innovations that favorably impact the environment as compared to other technologies.

Adapt to the Environs
R&D has so far demonstrated that walking technology is highly suitable to steep slopes and soft ground types where other harvesting machines and methods prove to cause irreparable damage to the forest, specifically in the form of ground erosion. The machine can redistribute its weight to balance itself over varying landscapes. The Walking Foresters can step over obstacles technologies and mobile hydraulics. instead of attempting to drive through They also need to meet these them. It can optimize the distribution requirements while keeping down the of ground pressure in order to step ultimate price tag. lightly — so-to-speak — as well as minimize disturbance of soil and tree roots. RESOURCES The Walking Forester’s ability to The walking forest machine comes turn in place makes it highly desirable in three prototypes (one basic for confined spaces, and whatever platform and two forest harvesters). the legs are doing, the carrier can These are introduced on the Internet maintain an even keel so the Forester’s operator can maintain an at www.plustech.fi/Walking1.html Check out other Timberjack acceptable level of comfort. The Walking Foresters are foresters and equipment at www.timber extremely stable and precise for jack.com accurate crane movement and usage.
Though highly mobile, the Walker’s speed, cost, and reliability are concerns for Plustech’s R&D.

Has It Sprung a Leak?
During a press event and live demonstration in Finland, a radio commentator was caught off guard by one of the Walking Forester’s less reported behaviors. As is prone to happen when the Walker has just been cleaned, when it swung and tilted its body some remaining water spilled out of the frame. It looked as if the Walker had just taken, err, uh, sprung a leak! The commentator responded, ”A-a-a-and now some kind of liquid is coming out of the machine’s body!”

Let’s See One Up Close
Plustech provides live demonstrations of the Walking Forest Machines at local fairs in Finland. Though they’ve tossed around the idea of holding demonstrations in the US, no decision has been made as yet to follow through. Someday, I’m sure — especially once they come into commercial use — you can expect Plustech and/or John Deere to bring over these Walking Foresters to show them off. SV

From inside the cockpit, the operator can control ground clearance, frame tilt, and roll angles.

64

SERVO 03.2005

by Jeff Eckert
re you just an avid Internet surfer who came across something cool that we all need to see? Are you on an interesting R&D group and want to share what you’re developing? Then send me an email! To submit related press releases and news items, please visit www.jkeckert.com

Robytes
Hubble mission will follow two US military satellite missions that will utilize MDA-devised solutions to perform similar tasks involving a classified observation program and a satellite service mission. The $154 million may sound a bit pricey for a repair job, but maybe we can try to pay them in Canadian dollars. an existing nominee, stop by www. robothallof fame.org

A

ScanEagle Goes Wireless

— Jeff Eckert

Nominate a Robot

Robots to Fix Hubble for $154 Million

The ScanEagle UAV now facilitates secure wireless communications. Photo courtesy of Insitu Corp.

Artist’s depiction of Hubble Telescope and repair vehicle. Photo courtesy of MDA.

Since 1993, the Hubble Space Telescope (HST) has been periodically serviced by astronauts aboard a Space Shuttle, replacing aging hardware and installing more advanced scientific instruments. As fallout from the Columbia tragedy in 2003, the next service mission was cancelled last year, in part over concerns about astronaut safety. The obvious solution is a fully robotic service mission, and it was recently announced that British Columbia-based MacDonald, Dettwiler and Associates, Ltd. (MDA, www.mdrobotics.ca), has secured a $154 million contract from the National Aeronautics and Space Administration (NASA, www.nasa. gov) to provide exactly that. The

Honda’s ASIMO robot is a recent inductee into the Robot Hall of Fame. Photo courtesy of Honda Motor Co., Ltd.

In case you missed it, the Robot Hall of Fame, created by CarnegieMellon University in 2003 to honor both real and fictional robots that have affected our lives, inducted five new members last year. These are Honda's humanoid ASIMO, Shakey — the autonomous robot from SRI International, the animated character Astro Boy, Robby the Robot — a movie prop turned merchandising gold mine, and Star Wars' C-3PO. If you want to nominate your favorite automaton for 2005 or vote for

In case you aren't familiar with it, ScanEagle is a long endurance, autonomous unmanned aerial vehicle (UAV) developed by Boeing (www. boeing.com) and The Insitu Group (www.insitugroup.net) for military and homeland security applications. As of late 2004, it had logged more than 1,400 hours of service in Iraq. ScanEagle is four feet in length and has a 10-foot wingspan, and the current model can remain on duty for a shift of more than 15 hours (with a version that offers 30 hours of endurance in the works). As a standard payload, it carries an electro-optical or infrared camera and it can track both stationary and moving targets from greater than 16,000 feet. The latest news is that ScanEagle has been upgraded to perform high speed wireless communications relay functions. Enabled by Harris Corporation's National Security Agency approved Type 1 classified SecNet-11® Plus technology in the UAV's avionics bay, streaming video and voice-over IP communications

SERVO 03.2005

65

Robytes
were sent from a ground control station over a secure high bandwidth network to ScanEagle 18 miles away. The data was then instantaneously relayed to ground personnel six miles from the UAV. In practical terms, this means that it can be used by troops on the ground to receive situational data on the battlefield, securely and without delay. The company also produces the Seascan UAV, which is designed for aerial reconnaissance at sea for fish finding, search and rescue operations, coastal patrol, and other purposes. Photos, videos, and detailed specs are available at the Insitu website. which is an Italian civil engineering company. Weighing in at about 3,800 kg (10,000 lbs) and with a base of 2 x 2.5 meters (6.6 x 8.2 feet), it qualifies as one of the world's largest. Using remote technology originally developed by the European Space Agency (ESA, www.esa.int), Roboclimber recently was put to the test in a successful effort to reinforce a nearly vertical rock wall rising from the valley of Alta Val Torre in the Friuli-Venezia Giulia region of Italy. The nation is plagued by more than 400 landslides every year. Basically, the robot employs an onboard Web camera to allow it to be maneuvered into the proper position from a safe distance. It then engages a 28 kW drilling machine to drill a hole in the wall, up to 20 meters in depth and 76 mm in diameter, into which stabilizing rods are inserted. The drill can penetrate any rock-hard material, on any gradient. According to a project coordinator, “Assuming a typical landslide front of 5,000 square meters and requiring 5,000 meters of deep drilling, we estimate that the Roboclimber system can save 75,000 euros (about $100,000.00 as of this writing),” as opposed to performing the reinforcement process manually. “The most important factor is that, with Roboclimber, we can secure steep, rocky walls without risking human health and lives. We can do it faster, more efficiently, and yet much more safely.”

Aqua — an adaptation of the RHex robot — dons flippers and takes to the ocean. Photo courtesy of McGill University.

Big Bot Prevents Landslides

Roboclimber prevents landslides without endangering human life. Photo courtesy of D'Appolonia S.p.A.

Gravity is a pretty useful thing overall, but, as California readers can attest, it has an ugly habit of pulling heaps of earth from high places to lower places, much to the detriment of real estate values in both locations. However, landslides are becoming more and more preventable, thanks to Roboclimber — a large scale robot that was developed by ICOP,

RHex Learns to Swim
Backed by $60 million in funding from the Defense Advanced Research Projects Agency (DARPA, www. darpa.gov), the insect-like RHex robots have been around for several years, crawling around and multiplying within a number of universities.

The autonomous hexapod critter — patterned after the esteemed cockroach — was created as part of a study in computational neuromechanics that “applies mathematical techniques from dynamical systems theory to problems of animal locomotion and, in turn, seeks inspiration from biology in advancing the state of the art of robotic systems.” Translation: They want to figure out how roaches can walk without falling over. RHex is a pretty successful concept, and current versions can move at better than five body lengths per second (2.25 m/s), climb slopes exceeding 45 degrees, and climb stairs. Possibly the most fascinating incarnation so far was created at McGill University's Ambulatory Robotics Lab. A waterproof version was dropped into a reef environment and remotely controlled with the help of two on-board cameras. The “Aqua” RHex showed impressive maneuverability in the underwater environment. To view underwater videos and access some relevant links, seewww.cim.mcgill.ca/~arlweb/ robots.html General info is available at www.rhex.net SV

66

SERVO 03.2005

by G ordon M cComb
of robots be The smallestplastic.aJust cansheetbuilt by only using thin of aluminum or stick motors and other parts to it and you have a robot. You can even build simple robot bodies using only an electronic circuit board or solderless breadboard. As long as the batteries and motors aren’t too heavy, these construction techniques will provide many hours of robot playtime with little cost and construction time. Larger robots, however, need a stronger framework, as larger motors, batteries, wheels, and other parts add weight. To support this weight, your robot needs a reliable structure — the bones of the bot. Fortunately, building strong robot bodies isn’t difficult or expensive, and you can find much of what you need at the local hardware store. Mail order provides an even greater assortment of unique parts, such as extruded aluminum framing. In this column, I’ll discuss building robot structures using traditional framing techniques with simple steel and plastic brackets, metal stock, and aluminum extrusions. SERVO 03.2005

67

Robotics R esources Steel Brackets to Bolt Things Together
Brackets are used to hold two or more pieces together usually (but not always) at right angles. Hardware brackets are ideal for general robotics construction, as these brackets are available in a variety of sizes and styles. You can use the brackets to build the frame of a robot constructed with various stock. The most common brackets are made of 14- to 18-gauge steel (the lower the number, the thicker the metal). In order to resist corrosion and rust, the steel is zinc plated, giving the brackets their common “metallic” look. (Some brackets are plated with brass, and are intended for decorative uses. They’re more expensive and they have limited use in robotics). Common sizes and types of steel brackets are: • 1-1/2 x 3/8 inch flat-corner brackets — used when joining pieces cut at 45° miters to make a frame. • 1 x 3/8 or 1/2 inch corner-angle brackets — used when attaching the stock to base plates and when securing various components (like motors) to the robot. • The above also come in sizes up to about 2 x 2-3/4 inches. Keep in mind that angle brackets are made of fairly heavy steel and are, therefore, heavy. If you use a lot of them, they can add considerable weight to your robot. If you must keep weight down, consider substituting angle brackets with other mounting techniques, including gluing, brazing (for metal), or fastening screws directly into the frame or base material of your robot. Most brackets are pre-drilled to accept #6 to #10 size machine screws (you can use wood screws if you’re attaching the brackets to wood). For small robots, choose a smaller fastener size — it’ll save weight. A good allpurpose machine screw for most hobby robots is 6-32. The “6” means it’s a size #6 fastener, and “32” means there are 32 threads per inch. Choose the screw length to accommodate the material you are fastening together. Common lengths (in inches) are 1/2, 3/4, 1, and 1-1/2. Even more sources for brackets: • Mirror clips (hardware store) can be used as small brackets. Most mirror clips have only one hole and may not be in the familiar L-shape. You can always drill more holes and bend the clip to the shape you want. • Small metal L-brackets (computer supply) are used to construct electronics and computer systems. You’ll have better luck finding these online. • Extra metal and plastic parts from Erector Sets and similar construction toys make for inexpensive brackets. • Self-made brackets can be constructed from aluminum or brass metal, which is available at hobby stores and some hardware stores. Drill the holes, cut to length, and bend as needed.

Using Specialty Furniture Brackets
The better hardware stores stock a small assortment of replacement parts for shelves, cabinets, and furniture. Among these parts are several sizes and styles of brackets made of either metal or plastic. In my local hardware store, these parts are socked away in little yellow drawers. You buy them in single quantities and prices are a little high. Another source of handy brackets for robotics is the local cabinet-making shop. Though reselling parts isn’t their main business, you never know what you can get unless you ask. Look for heavy duty “KD” (knock-down) brackets, which are used to lash together two pieces of heavy wood. With the right fastener, they’ll even hold together heavy robots. Along the same lines are catalog retailers of KD furniture such as IKEA. Check for availability of spare parts. Depending on the retailer, spare parts are only available as replacements for specific products, so you must know what to order before you can order it. One way around this dilemma is to find a piece of furniture in the store that has the part you need. You can then ask if spare parts are available for it. Remember, metal brackets can add substantial weight to a robot. Plastic brackets add little weight, but — unless you’re careful — they don’t provide much holding power. Such is not the case with “gusseted” brackets. A gusseted bracket is made of plastic, such as high-density polyethylene (HDPE), which makes it very light. To add strength, the bracket uses molded-in gussets that reinforce the plastic at its critical stress points. The result is a bracket that is about as strong as a steel bracket, but at only a fraction of its weight. Alas, plastic gusset brackets are not easy to find. They are available from some furniture building outlets and select online resources, such as Budget Robotics. Sizes are fairly limited, but those sizes tend to be quite adequate for most jobs.

Metal Stock at the Corner Hardware Store
You can build a sturdy (nearly indestructible!) robot using the metal stock commonly available at most any hardware store. A very handy material is the “extrusion,” so called because the metal is produced by extruding the heated, molten material out of a shaped orifice. The metal cools in the shape of the orifice, which can be a round tube, a square tube, and various L, T, I, and U shapes. Metal extrusions can be used to construct the frame of a robot, for example, or to custommake brackets and other parts. Just about all metals are available in extruded shapes, but — for the purpose of robotics — the three most useful extruded metals are: • Aluminum, usually 6061 alloy, anodized with a brushed silver appearance. It won’t rust, but corrosion is possible if left outdoors. This material is reasonably easy to cut and drill and is affordable. It’s available at most hardware stores in various sizes and lengths. A typical aluminum extrusion is a one inch equal L-angle; this means

68

SERVO 03.2005

Robotics R esources
an L-angle shape is one inch on each side. The typical thickness of aluminum extrusions is 1/32 to 1/8 inch. Lengths are from short, one foot pieces to eight foot ones. • Mild steel, for general house and yard work. The steel is sold uncoated, can be welded, and will rust if not painted. This material is suitable for larger, heavy duty robots, such as those meant for combat. Typical thickness ranges from 1/8 to 1/4 inch. • Brass and copper extrusions are available at some hardware and hobby stores in limited sizes and varieties. Most extrusions are round and square lengths of tubing with thickness from 1/64 to no more than 1/16 inch. You’d use these when you need lightweight metal that can be soldered or brazed, such as constructing the legs of a small hexapod robot. Brass and copper won’t rust if left unpainted, but both can tarnish. Extruded aluminum and steel comes in even numbered lengths from two to eight feet per section; some stores will let you buy cut pieces. Aluminum is lighter and easier to work with, but steel is stronger. Use steel when you need the strength; otherwise, opt for aluminum. Extruded aluminum and steel are available in more than two dozen common styles, from thin bars to pipes to square posts. Although you can use any of it as you see fit, a couple of standard sizes may prove to be particularly beneficial in your robotbuilding endeavors. • 1 x 1 x 1/16 inch angle • 57/64 x 9/16 x 1/16 inch channel • 41/64 x 1/2 x 1/16 inch channel • Bar stock widths from one to three inches and thickness from 1/16 to 1/4 inch. Perhaps the most common application for metal extrusions is building sturdy robot frames. As noted above, common shapes are the U- and L-channel; the U-channel is my personal favorite. A handy size is approximately 1/2 x 1/2 x 5/8 inch — large enough to accommodate fasteners, L-brackets, and other hardware, but not so large that the metal unnecessarily adds to the weight of the robot. To construct a frame, the extrusion is cut to length, then joined either to itself or by way of brackets. Metal or plastic fasteners can be used, as needed. For a lightweight robot, use either nylon fasteners (if the frame is fairly small, say under eight inches) or 4-40 steel machine screws. You can also substitute aluminum pop rivets rather than screws, but this naturally makes the frame construction permanent. Weight can add up quickly when using brackets, so choose the smallest available that is consistent with the overall load bearing on the frame. Extra

Affordable Motion Control Products
Robot Building Blocks Motor Speed Control PID Motor Position Control
Solutions Cubed Phone 530-891-8045 www.solutions-cubed.com
Circle #73 on the Reader Service Card.

ions 3 Solut
SERVO 03.2005

69

Robotics R esources
galvanized mending plates, joist hangers, and other metal pieces to join lumber together. Most of these come in weird shapes, but flat plates are available in a number of widths and lengths. You can use the plates as they come or cut them to size. The material is galvanized steel and is hard to cut, so be sure to use a hacksaw with a fresh blade. The plates have numerous pre-drilled holes in them to facilitate hammering with nails, but you can drill new holes where you need them. Mending plates (sometimes referred to as Simpson ties — after the name of a major manufacturer) are available in four, six, and 12 inch lengths that are four or six inches wide; they are also available in two inch wide T shapes. You can usually find mending plates, angles, and other steel framing hardware in the nail and fastener section of home improvement stores. Ready-made steel angle brackets are convenient and cheap for the bulk of any robotics project. Sometimes, you need a size or shape that’s just not available at the corner hardware store. Other times, the typical steel bracket is too heavy and an aluminum version would be perfect — only they don’t have many brackets in aluminum. The solution: Cut your own brackets out of metal extrusions. Most brackets have one or more holes per “leg,” so start by drilling the holes you’ll need to mount the bracket. Remove any burrs or flash around the drill holes. Once drilling is complete, mark off the metal for cutting. An electric chop saw makes this job easy, but a hack saw and miter block can also be used. Be careful! By their nature, brackets are small and dangerous to cut on an electric saw without using some form of clamp to hold them down. Clamp the extrusion on both sides of the blade. A small C clamp or spring-loaded clamp should be sufficient. The idea is to use the clamp and not your bare fingers to hold the small bracket while it’s being cut from the main piece. Cut off the metal, not your fingers!

FIGURE 1. Ace Hardware stores dot the country and provide a horde of useful bits and pieces for robot construction.

large steel L brackets are not necessary for a robot under about 12 to 15 inches. Opt instead for the smaller 1 x 1 x 1/2 inch steel brackets or plastic brackets.

Mending Plates and Iron Angle Brackets
The typical wood-frame home uses

FIGURE 2. Home Depot’s Maintenance Warehouse is the mail order arm of the gigantic Home Depot.

70

SERVO 03.2005

Robotics R esources Even More Hardware Store Finds
Let’s take a virtual stroll down the aisles of a well-stocked hardware store. Here, you’ll find plenty of parts you can use for your robot creations. It’s impossible to list all of the goodies you’ll likely spot and even less practical to discuss every conceivable use, but here’s a sample list to get your creative juices flowing: • Rubber grommets protect wiring, but also act as springy material for whiskers, sensors, and linkages. • Cable clips for wire and small piping and tubing (e.g., aquarium tubing) are useful for wiring containment, as well as attaching parts (small motors, sensors, etc.). • In addition to electrical applications, use large wire terminals for crimping cables for grippers and leg mechanisms. • Springs have 1,001 uses, such as in touch sensors, bumpers, and even robot decoration. • Rubber and metal feet for small furniture and appliances make ideal walking pads for legged robots. • Use metal conduit and EMT fittings
FIGURE 3. Lowe’s home improvement stores offer a number of specialty parts in their hardware department.

found in the electrical section to make a very heavy duty frame for a larger bot. • Shower and patio door parts include rollers (nylon, ball bearing) for use as small casters and wheels. • Weather stripping and rubber door insulation are perfect for robot bumpers.

Sources
Ace Hardware www.acehardware.com This is an independently-owned chain of hardware stores. In my experience, a number of the Ace Hardware stores I frequent have a number of products not carried by the “Big Guys” (Lowe’s and Home Depot), such as

SERVO 03.2005

71

Robotics R esources
Lowe’s Companies, Inc. www.lowes.com Lowe’s is an alternative to Home Depot with a selection of fasteners and other hardware through retail stores and online sales. Check the web page for a store locator. Lowe’s has 600+ superstores in some 40 states. The site includes a “how-to library” on home repair and remodeling. I looked ... nothing about building robots. Still, some of the articles might be useful to learn about materials and tools and the best way to use them. Rockler Woodworking and Hardware www.rockler.com Rockler carries hand and power woodworking tools, hardware, and wood stock (including precut hardwood plywoods). Among important hardware items are medium-sized casters, dropfront supports (possible use in bumpers or joints in robots), and drawer slides. Small Parts, Inc. www.smallparts.com Small Parts stocks a variety of components, including a large inventory of fasteners. True Value Company Corporation www.truevaluecompany.com True Value Company is the corporate parent of a number of hardware stores, home improvement centers, and industrial supply outlets. • True Value — Major hardware store chain in the US: www.truevalue.com • Induserve Supply and Commercial Supplies — 210,000 items for small to large businesses: www.induserve. com and www.commercialsupplies. com SV

FIGURE 4. Use the store locator feature at the True Value website to find a store near you.

unusual fasteners and hardware. Don’t overlook the small stores in your area for unique components for your robots. Ace has store locations across America and in 70 other countries. Check the website for a store locator. American Science & Surplus www.sciplus.com Realizing that robot building is an important aspect of their business, AS&S dedicates a special section to robot parts. Find the Robot Parts link in the table of contents area of their website and you’ll find the latest offerings. When I last looked, they had ball transfers (great for robot support caster wheels), large heavy duty wheels, pneumatic cylinders, roller chain, and more. Aubuchon Hardware www.aubuchon.com Online and local Aubuchon stores dot the Northeast. The online catalog boasts over 70,000 items. Products include hand and power tools, fasteners, hardware, plumbing, and electrical. C & H Sales www.candhsales.com

C & H sells motors, gears, pneumatics, pumps, solenoids, relays, and lots of odds and ends. Their catalog regularly contain dozens of quality surplus DC (geared and non) and stepper motors. CornerHardware.com www.cornerhardware.com Now, you can go to the hardware store using only your computer. CornerHardware.com is like the neighborhood hardware store, except it’s open on Sunday. Their inventory includes plenty of brackets and other parts. Home Depot www.homedepot.com and Home Depot Maintenance Warehouse www.mwh.com Home Depot has a printed catalog for maintenance and repair supplies — a big one — with lots of pictures, illustrations, and specifications. It’s ideal for figuring out exactly what you need for your bot. Depending on where you live, same day or next day shipping may be available to you; otherwise, you’ll wait two or three days to get your stuff. Use the locator at the site to find a warehouse near you.

AUTHOR BIO
Gordon McComb is the author of several best sellers. In addition, he operates a small manufacturing company dedicated to low cost amateur robotics, www.budget robotics.com He can be reached at robots@robotoid.com

72

SERVO 12.2004

Send us a high-res picture of your robot with a few descriptive sentences and we'll make you famous. Well, mostly. menagerie@servomagazine.com

Bot Builders Gear Up for the Second ROBOlympics
by Dave Calkins In 2004, robot builders came from around the world to San Francisco, CA to meet the Americans in the first-ever Robot Olympics — ROBOlympics. From March 24-27, 2005, they’ll be returning to San Francisco State University to compete again, with more robots from more countries and more competitions. Will you be joining them? While robot competitions are held throughout the world, competitions tend to be singular in nature, such as Robot Soccer in Pittsburgh, PA or Fire Fighting in Los Angeles, CA. ROBOlympics is a unique event, offering robot builders a chance to meet their peers from across the world and with many different styles of robotics. Many builders outside of Japan have never seen RoboOne before, but will be quickly inspired by the Asian androids, much as they were when 11 contestants flew in from Tokyo last year. The goal is not to hold the biggest robot event ever. The goal is to get builders from all countries and all fields of robotics to meet each other. In last year’s competition, the Americans swept the combat robot categories, while the Japanese took home all the medals in the Robo-One events and the three-kilogram sumo classes. Robot Soccer — probably the most difficult of all robot competitions — is a major part of ROBOlympics. Last year, the top contenters — Korea and Japan — were upset by Slovenia (the Cinderella surprise team). This year, we’ve added Aibo soccer. If you can get four Aibos together, you can play, too! Of course, there is Robot Combat. Robots weighing as much as 240 pounds cut, burn, turn over, and destroy the other robots behind bullet-proof glass, while the audience screams in both delight and fear. Last year, the Americans swept the class; this year, with several experienced teams from Europe, South America, Australia, and Asia, we can’t take a sweep for granted.

Fire is always a big crowd pleaser.

A clean sweep by the Robo-Ones!

SERVO 03.2005

73

Combat robots too noisy for you? How about Robo-One boxing for a change?

Silver medal winner A-Do will make all the other Japanese androids jealous.

Ribbon Climbing — a new sport — involves solarpowered robots climbing a thin ribbon as fast as possible. This competition is to help build interest in “The Space Elevator” — a new concept that involves sending things into space by a floating ribbon with an elevator rather than via rockets. Don’t laugh! It’s a viable concept. Jack Buffington got a gold medal and a trip to Washington, DC to present his robot to politicians, who are now considering funding a space elevator platform, a concept only first proven to be feasible at ROBOlympics 2004! The Fire Fighting competition may sound exciting, but it also has an admirable goal: build a robot that will turn itself on and put out a fire quickly. There are also line following robots, maze solving robots, and a host of other categories. Even the most famous robot in the world came in 2004: R2-D2. He’ll be back in 2005 to entertain both the audience and the competitors, along with Stormtrooper guards. So, why let athletes have all the fun and get all the glory — join us at ROBOlympics! The 2005 International Unified ROBOlympics Competition includes all of these exciting events, in addition to the established competitions: Biped Race — This new event challenges competitors to build robots that can walk. Robot Triathlon — Robots compete in a three-stage race: legs, wheels, and water. The Line Slalom — Negotiate a 10-foot track without losing your way. Ribbon Climber — Climb a ribbon with autonomous power supplies. RoboMagellan — Remember the Grand Challenge? Smaller scaled bots navigate across campus.

Camp Peavy and his robot, Springy Thingee.

74

SERVO 03.2005

Balancer Race — Two-wheeled balancing robots match programming and balancing power. Best of Show — Those bots that don’t fit into other classes get their chance to shine here! BEAM — Hack a Robosapien or build a junkbot. Exo-skeleton — Both lifting and carrying. Sound familiar? Robo-One — The coolest androids ever. They box, stand on their heads, and open doors! Art Bots — A fusion of hard science and artistic beauty. Four classes will amaze you. Okay, all together now: “These aren’t the droids …” Even if you can’t bring a robot, come to witness the latest tech! See the website for full details: www. robolympics.net

STEER WINNING ROBOTS WITHOUT SERVOS!

P
He shakes, picks up cups, and can turn on a dime. Johnny5 is alive! The Hurosot soccer robots play autonomous soccer!

erform proportional speed, direction, and steering with only two Radio/Control channels for vehicles using two separate brush-type electric motors mounted right and left with our mixing RDFR dual speed control. Used in many successful competitive robots. Single joystick operation: up goes straight ahead, down is reverse. Pure right or left twirls vehicle as motors turn opposite directions. In between stick positions completely proportional. Plugs in like a servo to your Futaba, JR, Hitec, or similar radio. Compatible with gyro steering stabilization. Various volt and amp sizes available. The RDFR47E 55V 75A per motor unit pictured above. www.vantec.com

Order at (888) 929-5055
SERVO 03.2005

75

Zoë on the Atacama
How a Sliding Autonomous Rover Is Learning to Explore New Worlds by First Exploring Our Own
by Ryan Lee Price
ccupying much of northern Chile, the arid Atacama Desert is such a harsh environment, rainfall is measured not in inches per year but in millimeters per decade. Here in the oxidant-rich soils, microscopic organisms struggle for existence, gleaning what moisture they can from an occasional fog and adapting to convert high levels of UV radiation into usable sustenance. What sets this desert apart from any other in the world is that its characteristics are very similar to that of Mars, and that makes it the perfect location for the astrobiologists from Carnegie-Mellon University. Together with the support of several other universities in the US, the team of scientists, along with an autonomous robot named Zoë (in Greek, it means “life”), may better understand how life might survive on other planets by first exploring the limits of life here on Earth. More importantly, they'll learn how best to detect and analyze life.

O

76

SERVO 03.2005

© 2005 Carnegie-Mellon University

Scientists also plan to map the habitats of the area, including its morphology, geology, mineralogy, texture, and physical and elemental properties of the rocks and soil. With this information, they hope to document how life modifies to its environment, characterize the geo- and bio-signatures of microbial organisms, and create scientific procedures on how best to discover life. “Our goal is to make genuine discoveries about life and habitats in the Atacama and to create technologies and methods that can be applied to future NASA missions,” said David Wettergreen, an associate research professor at Carnegie-Mellon’s Robotics Institute. He is leading the robotics research team on the “Life in the Atacama” project. Robotic astrobiology is an important method used to study how life can exist in such extreme environments. Because it is inconvenient, inefficient, or most times impossible for people to directly study these various environments found in the Solar System and here on Earth, robots have been developed to collect the necessary measurements instead. Such a robot is Zoë, an aluminum-frame rover nearly nine feet long and weighing in at over 400 lbs., capable of operating completely autonomous or via remote.

Called sliding autonomy, Zoë can smoothly adust from one method of control to another. For example, it can decide for itself how, when, and where to perform a mission or function, but if it detects strange behaviors from its sensors or it decides the mission is impossible, it can send a help message and stop to await further instructions. Running on a bank of solar cells that generate nearly 600 watts and batteries that can store approximately 3,000 watt-hours, Zoë follows the sun on its daily 1.5-mile missions around the base camp in search of microorganisms. In order to identify even the slightest traces of life, Zoë is equipped with tools borrowed from other technologies or developed specifically for its mission.

Fluorescent Imager
Instead of taking microscopic-scale

images of rocks and making hours-long spectroscopic observations (as the Mars Exploration Rovers did) Zoë will test a novel lifedetection strategy: Samples of rock and soil will be sprayed with a series of fluorescent dyes that light up in the presence of life’s chemical building blocks. A camera equipped with special filters then would look for the glow associated with DNA, proteins, carbohydrates, or lipids. Some organisms fluoresce naturally while others can be made to do so with special chemical dyes. These dyes are carefully engineered to fluoresce once attached to specific organic molecules. The excitation and emission wavelengths of these dyes can be made to vary and thus be distinguishable from one another. Zoë will be using four different dyes to identify proteins, lipids, carbohydrates, and DNA. It will be programmed to do spot checks of target sites, as well as inchby-inch surveys of a stretch of desert. For this year, scientists will be standing behind Zoë, spritzing the fluorescent dyes onto rocks and soil for Zoë to check with its camera. Eventually, the spritzers will be built into the rover. Fluorescence occurs when a substance absorbs light of one wavelength and emits light of a longer wavelength. At an atomic level, this

Opposite Page: Life on the Atacama Desert is harsh and desolate for man and machine. Top: Because of the distance factor, Zoë had to be built at the camp. Right: At the top of its mast is the majority of the sensors and landscape cameras.

SERVO 03.2005

77

phenomenon occurs when an electron absorbs the energy from an incoming light photon and jumps to a higher energy state. Since this excited state is unstable, the electron will eventually return to its natural state, and in doing so, release energy as heat and light. The emitted light has a longer wavelength, lower frequency, and less energy because some of the energy is released as heat. The fluorescent imager provides Though obvious to us, detecting organisms visible and fluorescent images of such as this is still difficult for Zoë targets underneath the rover, in an in real-life conditions. approximately 8 x 6 cm area. The images are used to identify life by activated, a normal reference image is detecting naturally fluorescent organcaptured with the unfiltered camera. isms, primarily chlorophyll, but possibly However, using only a single color of others, such as carotenoids. LED and capturing from one of the The bottom of the electronics filtered cameras provides a fluorescent box is a Fresnel lens, on which are image. Changing the LED color and mounted red, green, and blue LEDs, filter allows detection of different fluowhich are all focused on a central area rescent signals, but the signal of greatest underneath the imager. A hole is cut interest is chlorophyll (the molecule in in the center of the lens, and three plants and bacteria that performs inexpensive off-the-shelf RGB webphotosynthesis), which returns a strong cams sensitive to light from 400,950 red fluorescent signal under blue nm are pointed down through the illumination and the 700/75 filter. hole. One camera is unfiltered; the other two have a 665 longpass and a 700/75 bandpass filter, respectively. The main rover processor can switch Since some organisms may not be the LEDs and control image capture living on the surface, Zoë will be from the three cameras. equipped with a simple plow-like device to When all three LED colors are flip over rocks and expose subsurface

soil. Stored in the underbelly, the plow will be lowered to the ground and held in place while the robot drives forward, thus digging a small trench. The fluorescence imager and spectrometer would then be used to examine the newly exposed surfaces.

Visible/Near Infrared Spectrometer
Zoë will be equipped with a visual/near-infrared spectrometer tuned to detect chlorophyll or the conversion of light energy into chemical energy that can be used by biological systems. A spectrometer works by analyzing the light reflected from a sample, and it was discovered that the reflected light contains a great deal of information about the atoms contained within a sample. Just like everyone has a unique fingerprint, each atom has particular wavelengths of light that it reflects, called its emission spectrum, and a complimentary set of wavelengths that it absorbs, called its absorption spectrum. By spreading the reflected light out into a spectrum — much like a prism creates a rainbow — the spectrometer can measure the intensities of light at different parts of

Plow

Above: The plow scrapes away the top soil before closer examination of possible subterranean life. Left: Back at Carnegie-Mellon, Zoë has its solar panels removed for maintenance.

78

SERVO 03.2005

the spectrum and thus detect what atoms are present. Zoë's spectrometer will only look at visible and near-infrared light, which constitutes only a small portion of the entire light spectrum. In increasing frequency and energy, the forms of light include radio waves, microwave, infrared, visible, ultraviolet, x-rays, and gamma rays.

larger than 50 cm. Their coloration varies widely, from rare bright yellow and orange specimens to more common greens and grays.

The Future of Zoë
Carnegie-Mellon's operations for Zoë will be based at Salar Grande, a salt flat near the city of Antofagasta, near the west coast. “It's quite barren,” Wettergreen said. “It's not like the Sahara Desert, where you have shifting Cameras not only capture real images, but they provide a host of environmental data. sands. There's really just soil and rock. It is sort of reddish in color, of view of 21.1 degrees, corresponding so I guess in some regards it may be to a footprint of about one square Mars-like. Actually, when the light is meter when pointed at the ground good, early in the morning and in the nearby. In selecting the camera design evening, it’s quite beautiful there — but before the first Atacama expedition, it is profoundly empty.” the main driver was the project’s tight Zoë is by no means the first CMU tight schedule, which forced the team robot to travel in the desert. Two other to borrow as much as possible from an robots — Hyperion and Nomad — have existing design, in this case the Pancam helped make a robot like Zoë possible. developed for the Mars Exploration Besides validating the concept of a sunRovers (MER). tracking robot, Hyperion served as a The most visible and accessible testbed for technologies that are used signs of life was in the coastal range on Zoë, while Nomad was originally area of the Atacama where lichens designed to search for meteorites in were present on the surface of rocks. Antarctica. The technologies used on Their presence or absence varied. In these projects raised the bar for some areas, they were found on nearly autonomous, long-distance traverses. every rock, but in others, they were Will Zoë ever see the horizons of a discompletely absent. Individual lichens tant planet? Probably not, but a distant are small, rarely covering an area cousin of Zoë most certainly will. SV

Location Sensors
On the low-tech side of Zoë, it is able to observe common weather occurrences and detect various levels of sunlight to support research on the habitat of any organisms found. It is able to measure temperature, pressure, humidity, wind, insolation and UVA/UVB light.

Panoramic Imager
The stereo panoramic imager cameras provide high-resolution images and allow three-dimensional reconstruction of the landscape to be used to plan local traverses and scientific operations by the rover. The cameras are mounted on a pan-tilt unit atop a 2.5-meter mast near the front of the robot, allowing them to view approximately 180 degrees in front of Zoë. Each camera returns a 1,280 x 960 color image, with a horizontal field

Above: The conditions aren’t ideal, but team members Daniel Villa and Stuart Heys make the best of it. Right: Zoë can traverse most any obstacle in the Atacama Desert autonomously, and if not, it’s programmed to find a way around what is blocking its path. SERVO 03.2005

79

So You Want to Build Robots?
by Dan Danknick
t’s always funny to see how people react to the unexpected. The other day, I was talking to a few of my coworkers about a robot project that was just entering the design stage. A principal scientist from a different department walked over and gestured to us, remarking, “So, these are the roboticists!” Everyone looked at each other in bewilderment, and with nervous laughs, we replied: “I’m just a physicist.” “I’m a special effects engineer.” “Me too!” But the unavoidable truth, as just revealed, was that 10 years of robot building — machining, welding, wiring, programming — had transformed all three of us into something different: roboticists — one of the hot job titles of the next two decades. I receive four or five emails every month from students who are wondering how they can become roboticists. But before I can answer that question, a more fundamental discussion of exactly what constitutes a robot must ensue. Everyone has a different idea, and scores of USENET flame wars have been devoted to this (apparently) perplexing question. In 1979, the Robot Institute of America wrote a definition that included a core requirement for a robot that most people miss, that of reprogrammability. If a machine is programmable, that program should be alterable in order to qualify it for robotic status. (Note, that this also opens up the possibility of self-reprogramming robots, a favorite topic of

I

world, by far the most common is the soft programmed variety. For this, you’ll need to learn some sort of computer language that corresponds to the CPU in the bot, your development tools, and your budget. Many people incorrectly think that faster computing makes for better robots. The truth is that cleverly thought-out abstractions and algorithms make for good robots. Don’t be fooled into a fealty for a particular language or CPU. Your goal should be to develop the skills to solve problems with the computing lump at hand. SciFi authors and Ph.D. candidates.) It’s probably safe to also say that robots have three main functional parts: a sensor, a processing unit, and an effector. The sensor reads some parameter of the world — sound, light, the presence of an obstacle, depth, or speed. The central processing unit uses those measured parameters in a formula (or algorithm) to create an output that then affects change in the world by moving, diving, making a sound, or blinking a light. Each of the three parts requires certain disciplines of study in order to develop a good working knowledge to, well, let you work with them. I’ll cover a few that are less obvious, yet important to the journey.

Material Science
I can’t stress the importance of learning about materials nearly enough. What makes a piece of steel hard? What makes it tough? When should you ditch steel and use aluminum or even wood? The best way to learn about materials is to work with them and develop an intuitive knowledge for selecting and designing with them. This weekend, go to your local home improvement store, get some raw materials, and build something. Then break it. You’ll learn a lot from the process.

Electronics
You can’t know too much about analog and digital circuit design and operation. It’s true that, today, there are more off-the-shelf parts available to wire up robots than ever before. Just

Software
Although there are mechanically (hard) programmed robots in the

80

SERVO 03.2005

Because the art of building a robot is so diversified, skills and knowledge of a wide range of fields is necessary, such as working with metal and plastics. because you can un-box and plug it in, however, is no reason against at least understanding the principles by which it works. If you go back through older issues of SERVO and read the questions that Mr. Roboto fields, you’ll see that many of his answers start by teaching the theory behind various electronic devices.

On the other side of the spectrum, knowledge of hardware, software, and electronics are all a hefty requirement. in your knowledge. One of the projects I am working on right now relies on human/robot interaction. By the time it is done, all of my machining and welding skill may be overshadowed by what I learned in a human factors class: This robot may work best if the operator is simply allowed to learn to work with it. In the early days of computers, there were no software engineers. There were chemists, physicists, and mathematicians who used this new computing invention as a tool to get their work done. The more programs they wrote, the more they discovered, and the more they helped the technology develop. One field of study spawned a new one. So don’t be surprised the day someone points toward you and says, “Hey, let’s ask the roboticist!” SV

don’t gloss over those features!

Failure Analysis
This is a powerful topic that many people don’t see the need for. Heck, who expects their robot to fail? How you analyze a failure and craft a solution is, in many ways, the summation of many of these disciplines. If a sensor system isn’t working, should you fix the mechanical mount, tune the electronics, or write a software filter for the data? It’s not unusual for the answer to encompass a bit of each, but you won’t know that unless you really understand the nature of the problem. If you’re a student about to embark on a future of robotics, the world is wide open to you. Take every class you can, find mentors who know more than you, and strive for diversity

Fastening
I know this looks a bit out of place, but it isn’t. Learning how to bolt, weld, or cast things into existence is a real core of robotics, especially if you expect those creations to have any sort of lifetime in the real world. It’s staggering to discover all of the ways we’ve come up with to attach material X to material Y. The pages of SERVO are rich with information on this, so

Advertiser Index
All Electronics Corp. ............................19 Lynxmotion, Inc. ...................................45 Robotics Group, Inc..............................57 Cleveland Institute of Electronics .......11 Net Media ...............................................2 Robotic Trends .....................................17 CrustCrawler .........................................13 NUBOTICS .............................................19 Smithy .....................................................19 Custom Computer Services, Inc. ..........9 Parallax, Inc. ...........................Back Cover Solutions Cubed....................................69 Hitec ......................................................29 PCB123/PCBexpress ...............................3 Sozbots..................................................62 Hobby Engineering ..............................16 PCB Fab Express ...................................54 Technological Arts ...............................71 Jameco ..................................................83 Pololu Robotics & Electronics .............27 Vantec ...................................................75 Lemon Studios .....................................33 ROBOlympics .......................................63 Zagros Robotics ...................................19 SERVO 03.2005

81

THE HEATH HERO ROBOTS
Yesterday’s Technology Points Us Toward Tomorrow
by Tom Carroll
of us who are old to Many Heathkit electronics enough kit remember the IEICO and kits may remember the day that Heathkit brought out the first robot — the Hero 1. was part of the newly-formed Southern California Robotics Society back in 1978 (later re-named the Robotics Society of Southern California) and were meeting in the Norwalk, CA city library when a member mentioned that he had heard about Heath mulling over a kit-built robot. A few years passed until 1981, when we had a representative from Heath give a presentation of the Hero 1 at our meeting. It was an instant hit with the members. The Hero (Heath Educational RObot) was in full production the next year. Based on the Motorola 6808 microprocessor, it was an ideal teaching tool for many aspects of electronics. It had a “massive” four K of RAM and eight K of ROM that contained the “robot monitor” — a good preparation for the PIC and similar microcontrollers with tiny memories that were to come years later. The robot also had a flimsy and strangely configured arm with a gripper that was surprisingly adept at many object-manipulating tasks. Hero also had an ultrasonic motion and range detector, sound and light sensors, a 17-key Hex keypad to enter programs, and an experimenter’s board all on its head, which could rotate almost 360°. A nice feature was its ability to speak to people who were programming or interacting with it. It could even download and store programs on its cassette tape drive. Unlike the more popular differential “tank drives” on most experimental robots today, Hero used two fixed wheels and a maneuverable front drive wheel. Weighing in at 39 pounds with its four six-volt gel cell batteries and standing 20 inches high, it also came with a charger and teach pendant. It could drive you nuts when it frequently broke down, but could also entertain and teach you for hours and hours. With the success of the original Hero 1, Heath came out with a stripped-down version called Hero, Jr. It had no arm and no moving upper torso and was more of a security device and alarm clock that roamed about the house. It had 32 K of ROM that stored a few songs, such as “Daisy”

(remember HAL in 2001?) and could play a few games, avoid obstacles, and seek out people with its sensors. The most sophisticated Hero was the Hero 2000, a 78-pound, 33-inch-high, well-designed machine with a 16-bit 8088 master microprocessor and 11 eight-bit peripheral processors, 64 K of Basic ROM, 24 K of RAM (expandable to 576 K) and an optional six-axis arm that had real capabilities. The Hero 2000 also had a remote RF-linked console that served as a program input device or a basic controller and an automatic docking/charging capability. The arm could be purchased separately as a training device, as could a very nice “Robotics and Industrial Electronics” course that came in two three-inch-thick notebooks. I still have this course material and refer to it. Considering that these robots were designed over a quarter of a century ago, their capabilities are still amazing to this day. Sadly, Heathkit Educational Systems and all of Heath was dissolved in the mid 90s and another Michigan company — Mobile Ed Productions — took over the rights and the few robots and parts left for their teaching. The fantastic educational challenge aside, people just did not want to build complex electronic equipment from kits when they could buy them assembled for much less. If any of you readers still have any of these robots, I suggest that you hang onto them. They were the first “crown jewels” of experimental robotics. SV

82 SERVO 03.2005

Jameco lowers my component costs... And instantly sweetens my profit margins!

C h e c k o u t t h a t J a m e c o S m i l e!
Additional profit made easy... Ever since I discovered the Jameco catalog we’ve been saving 10%, 15% and more. On lots of parts. And those savings are going straight to my bottom line. The nice thing is, Jameco actually guarantees me the lowest prices. If I were to find one of their parts priced lower in another print catalog, Jameco would beat that price by 10%, right down to their cost! How do they do it? Jameco is unique. They shop worldwide and get incredible deals. Sure, I still buy from the thick-catalog guys. But, believe me, I always check Jameco first. Because I’m not about to throw away that extra profit! Try them out. You’ll see what I mean...

Great Products. Awesome Prices. Yo u ’ l l b e S m i l i n g To o !

Circle #59 on the Reader Service Card.

To g e t y o u r o w n J a m e c o c a t a l o g : w w w. J a m e c o . c o m / n v c 1-800-831-4242

Circle #106 on the Reader Service Card.