servo magazine octorber2006

92

Upload: roohollah13

Post on 14-Apr-2015

98 views

Category:

Documents


11 download

DESCRIPTION

SERVO

TRANSCRIPT

Page 1: Servo Magazine Octorber2006

Vol. 4 N

o. 10

SERV

OM

AG

AZIN

ED

IYM

AR

S ROV

ER•

ENERG

Y MA

NA

GEM

ENT

•M

IT MICRO

BOTS

•TA

ND

Y TROW

ERO

ctob

er 2006

Cover.qxd 9/8/2006 3:04 PM Page 84

Page 2: Servo Magazine Octorber2006

There’s something for everyone…Robotic kits help you and your child to experience and learn about

perception and control using a variety of sensors and actuators. Challenge

yourself with Jameco’s selection of fun and interactive kits! You or your child can

assemble the kits and then enjoy endless hours of discovery.

Check out our unique selection of Robotic Kits at www.RobotStore.com!

• Robot Insects & Animals • Programmable Robots

• Solar Robots • Educational Kits

• Listening, Touching & Seeing Robots • Legged and Wheeled Platforms

• Hackable Robots • OctoBot Survivor Kit

At Jameco’s RobotStore you can get the world’s most complete robotic offering—

all in one place! You’ll find kits for all ages and experience levels along with gear

boxes, servos, and chassis for those who are ready to take on the extreme.

WWW.ROBOTSTORE.COM/SRBI-800-374-5764

WWW.ROBOTSTORE.COM/SRBI-800-374-5764

Enthusiasts,Start Dreaming...

Gift Givers,Take Note...

Engineers,We’ve GotIt All!

Enthusiasts,Start Dreaming...

Gift Givers,Take Note...

Engineers,We’ve GotIt All!

Robotic Kits and Components...The World’s MostComplete Offering!

CATALOG I62

I-800-374-5764WWW.ROBOTSTORE.COM

Call for your free catalog today!

Robotic Kits Components...The Perfect Summer Projects for Kids of all Ages!

Robotic Kits Components...The Perfect Summer Projects for Kids of all Ages!

robotic kits

chassis

servos

passives

optos

integrated circuits

semiconductors

muscle wires

connectors

motors

test equipment

software

books

CoverInside.qxd 9/7/2006 1:17 PM Page 2

Page 3: Servo Magazine Octorber2006

SERVO 10.2006 3

Full Page.qxd 9/7/2006 1:24 PM Page 3

Page 4: Servo Magazine Octorber2006

Columns Departments

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. PERIODICALS POSTAGE PAID AT CORONA, CA AND AT ADDITIONAL ENTRY MAILINGOFFICES. POSTMASTER: Send address changes to SERVO Magazine, P.O. Box 15277, North Hollywood, CA 91615 orStation A, P.O. Box 54,Windsor ON N9A 6J5; [email protected]

06 Mind/Iron

07 Bio-Feedback

21 New Products

24 Events Calendar

25 TidBOTS

26 Robotics Showcase

27 Menagerie

49 Robo-Links

82 SERVO Bookstore

90 Advertiser’s Index

08 Robytes by Jeff EckertStimulating Robot Tidbits

10 GeerHead by David GeerMIT is Making Space Balls

14 Ask Mr. Roboto by Pete MilesYour Problems Solved Here

18 Lessons From the Labby James Isom & Brian DavisNXT Robotics: First Build

74 Robotics Resourcesby Gordon McCombTaking Stock of Robotic Tanks

79 Rubberbands and Baling Wire by Jack BuffingtonBar Codes for Robots

84 Appetizer by Roger GilbertsonHotel Earth — Nine Billion Guestsand No Elevator

87 Then and Now by Tom CarrollRobots Who See

4 SERVO 10.2006

ENTER WITH CAUTION!28 The Combat Zone

TOC Oct06.qxd 9/8/2006 2:38 PM Page 4

Page 5: Servo Magazine Octorber2006

10.2006VOL. 4 NO. 10

SERVO 10.2006 5

40 Robot’s Little Helperby Ron HackettUsing the PICAXE in your builds.

45 Do-It-Yourself Mars Roverby Dan GravattMake it your “mission” to build yourown Rover from spare parts.

50 Energy Management for Autonomous Robotsby Bryan BergeronA review of energy management principles, with an emphasis on selecting and designing power supply electronics, how to implementreal-time power reconfiguration, and monitoring techniques.

56 FaceWalkerby Michael SimpsonPart 3: The Brain.

62 ROBOGames Prepby Dave CalkinsGet ready to rumble in the 2007 RoboGames event with the help of this tutorial series on how to build robots for the different competitions. This month: RoboMagellan.

67 An Interview with Tandy Trower by Phil DavisMicrosoft is getting into the robotics business with their new Robotics Studio product.

72 2006 RFL Nationals by Pete Smith and Charles GuanWrap-up of this year’s event.

Features & Projects RoboMagellan Robots come in all shapes

and sizesSee Page 62

TOC Oct06.qxd 9/7/2006 8:54 PM Page 5

Page 6: Servo Magazine Octorber2006

Published Monthly By T & L Publications, Inc.

430 Princeland CourtCorona, CA 92879-1300

(951) 371-8497FAX (951) 371-3052

Product Order Line 1-800-783-4624www.servomagazine.com

SubscriptionsInside US 1-877-525-2539

Outside US 1-818-487-4545P.O. Box 15277

North Hollywood, CA 91615

PUBLISHERLarry Lemieux

[email protected]

ASSOCIATE PUBLISHER/VP OF SALES/MARKETING

Robin [email protected]

CONTRIBUTING EDITORSJeff Eckert Tom CarrollPete Miles David GeerJack Buffington R. Steven RainwaterGordon McComb Michael SimpsonRon Hackett Kevin BerryDave Calkins Phil DavisBryan Bergeron Dan GravattRoger Gilbertson James IsomCharles Guan Pete SmithMichael Rogers Wendy MaxhamRuss Barrow Eric Scott

Michael Mauldin

CIRCULATION DIRECTORTracy Kerley

[email protected]

WEB CONTENT/STOREMichael Kaudze

[email protected]

PRODUCTION/GRAPHICSShannon Lemieux

ADMINISTRATIVE ASSISTANTDebbie Stauffacher

Copyright 2006 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 Magazineassumes no responsibility for the availability orcondition of advertised items or for the honestyof the advertiser.The publisher makes no claimsfor the legality of any item advertised in SERVO.This is the sole responsibility of the advertiser.Advertisers and their agencies agree toindemnify and protect the publisher from anyand all claims, action, or expense arising fromadvertising placed in SERVO. Please send alleditorial correspondence, UPS, overnight mail,and artwork to: 430 Princeland Court,Corona, CA 92879.

So, you wanna build a robot?If you’ve been a reader of SERVO

for the last year, you’ve probablyfollowed my series about robotcompetitions around the globe. FromVienna to Tokyo, and around the US. An incredible array of robotcompetitions are happening around theworld. In my travels, I’m very fortunateto have met literally thousands of robotbuilders. Men and women, children,adults, and retirees. They come fromevery walk of life: artists, engineers,doctors, lawyers, cabinetmakers,plumbers, students, programmers, andgenuine nut cases. They build all kindsof robots: combat, soccer, sumo,walking, crawling, rolling, autonomous,tele-operated, home-brew, kits, andCAD designed. As a whole, all thesevaried robot builders have only twothings in common:

1) They like building robots.2) They’re shameless procrastinators.

You, dear reader, are in alllikelihood one of them. (Now, now.Don’t lie about it. I can read yourmind through a thin strip of ESP wirein SERVO’s cover, which transmitsyour thoughts to me via a complexRFID & WiFi technology embedded inthe staples. Yes, there it is.) You’vebeen saying it for a while now. “I’llfinish that robot soon.” Tisk, tisk.

So, what do all the robot buildersI’ve met have in common that setsthem apart? A deadline! Yes, adeadline!

No, you can’t make your owndeadlines. (See, I can too read yourmind!)

So, here’s the SERVO challenge:

For the next nine issues, we’ll berunning a series of articles:“RoboGames Prep.” SERVO is one ofRoboGames 2007’s sponsors, and wewant you to build more robots inaddition to reading the magazine.

Yeah, I know — you do build. So,let’s finish some robots! How will thistime be different? Because, you willhave a deadline! June 15th, 2007 tobe exact. That’s when your robotsneed to be finished so you cancompete in the international event atSan Francisco, CA, with thousands ofother builders from around the world.

Can’t make the event? Yes, youcan! You’ve got nine months to planand save your pennies for a cheapticket. But that’s not the point. Even ifyou can’t make it, if you plan andfollow along with our series ofarticles, you will have finished a robot— or if you’re really enthusiastic, youwill have built nine robots!

Robots that you can be proud of.Robots that do stuff. Robots that cancompete in events around the world —not just at RoboGames in SanFrancisco. Events can be found fromSeattle to Denver to Hartford toLondon to Tokyo. Or you can start onein your hometown. Or just impress theneighborhood kids with yourcompleted robot(s).

This month kicks off with one ofthe hardest types of robots to build:RoboMagellan robots. Autonomous,GPS-guided robots that can navigateby themselves. Kind of like the DARPAGrand Challenge, only withoutneeding to use an actual car.

The next seven articles will coverrobot builds in order of complexity. Aswe get closer to our deadline, the

Mind / Iron

by Dave Calkins

Mind/Iron Continued

6 SERVO 10.2006

Mind-FeedOct06.qxd 9/8/2006 2:34 PM Page 6

Page 7: Servo Magazine Octorber2006

Dear SERVO:I'm a Ph.D. student in computer

engineering, and almost every issue ofSERVO has an article that's relevant tomy research. One day I thought,"Wouldn't it be great if I could storethese articles on my computer?" Thatwould make it easier to organize andread them. That's when I went to yourwebsite and discovered SERVO Online.Let me tell you, this thing is fantastic!Not only do you provide a fully

searchable database of your archives,but you also have high-resolution PDFsof every issue! I wish all magazineswould provide their subscribers aservice like yours. Yes, some offerdownloadable reprints of articles, butthey're usually poor-quality HTMLconversions. You provide PDFs of thereal thing! I just wanted you to knowit's greatly appreciated. Thank you!

Trevor HarmonUniversity of California, Irvine

robots will get easier. (Yes, that willhelp you procrastinate, I know ...) Theexcellent monthly coverage ofCombat Zone will get all you fightersready, so we’ll be covering many othertypes of competitions individually.Future articles will cover: Androids,which include soccer, Robo-one, and walkers (Nov), Tetsujin (Dec), Fire-Fighting (Jan), Balancer Race(Feb), Art Bots (Mar), Sumo (Apr),and Hockey Bots (May).

You can build any one of these

robots and make them competitive.The articles will not give you step-by-steps on making a robot, but they will give you enough pointers foryou to be able to make a good start ofit and then figure the rest out on yourown. No human athlete coasted to agold medal, and neither will you.

Use your mind. Bend the iron.Make a bot. Show it off.

You can do this. But the clock isticking. You have nine months left.

I’ll see you in San Francisco. SV

by J.

Shum

an

AX2550

AX2850

Get the DC Motor Controllersthat are at the heart of many of today’sworld’s most demanding Industrial,Military and Research Robots, and otherinnovative Motion Control applications.

- RS232, RC, or Analog input- Speed or Position Mode- Dual channel output up to 140A- Optical Encoder Inputs- Intelligent Current Limiting- Thermally Protected- Field Upgradable Firmware- Enclosed and Board-Level versions- and many more advanced features ...

Model Amps Features PriceAX1500 2x30A B $275AX3500 2x60A O-R-B $395AX2550 2x120A A $495AX2550HE 2x140A A $645AX2850 2x120A O-A $620AX2850HE 2x140A O-A $770A=Aluminum Extrusion, B=Board-Level, O=Optical Encoder In,R= RC outputs. Qty1 price. Contact us for OEM Qty prices

www.roboteq.com

8180 E.Del Plomo Dr. Scottsdale AZ USA 85258

(602) 617-3931 - [email protected]

IndustrialStrength

Motor Controlfor All

AX3500

AX1500

SERVO 10.2006 7

Mind-FeedOct06.qxd 9/8/2006 2:34 PM Page 7

Page 8: Servo Magazine Octorber2006

8 SERVO 10.2006

Automated Gliders PatrolMonterey Bay

Aquatic robots are not much of anovelty these days, but in August, some15 undersea gliders that choreographtheir own movements — believed to bethe first to do so — were launched intoMonterey Bay, CA. The gliders, usingmathematical algorithms devised byPrinceton’s Naomi Ehrich Leonard wereprogrammed to move in a series of rectangular patterns, but the algorithmsallowed the gliders to make independentdecisions on how to alter their coursewhile moving through a 20 km wide, 40km long, and 400 m deep area.

The specific purpose of sending

the school of fishbots out was to collect information about an upwellingof cold water that occurs every yearnear Point Año Nuevo, northwest ofMonterey Bay. However, the projectmay lead to the development of robotfleets that forecast ocean conditionsand help protect endangered marineanimals, track oil spills, and guide military operations at sea.

Two types of gliders — Slocum andspray gliders — were used to take theocean’s temperature, measure its salin-ity (salt content), estimate the currents,and track the upwelling. The Augustfield experiment is the centerpiece of athree-year program known as AdaptiveSampling and Prediction (ASAP), whichis funded by the Office of NavalResearch (www.onr.navy.mil).

In addition to gliders, the ASAPocean-observing network includesresearch ships, surveillance aircraft,propeller-driven vehicles, fixed buoysensors, and coastal radar mapping.For details, visit www.princeton.edu/~dcsl/asap/.

Robot With a Ball

Billed as representing a “new paradigm in mobile robotics” is the “Ballbot,” created by CarnegieMellon’s (www.cmu.edu) ProfessorRalph Hollis. The self-contained,

battery-powered omnidirectional unitbalances and moves on a single ballrather than legs or wheels, thus allowing it to maneuver in tight placeswhere other bots cannot tread.Although it resembles some sort ofstrange gyroscope, the machine actual-ly performs its balancing act using anonboard computer that reads informa-tion from internal sensors and activatesrollers that move the ball, making itessentially an inverse mouse-ball drive.

Ongoing research is aimed atproving that dynamically stable robots(as opposed to traditional statically stable ones) like Ballbot can outper-form their static counterparts. Because traditional mobile robots depend onthree or more wheels for support,their bases are generally too wide to move easily among people and furniture. They can also tip over if theymove too fast or operate on a slope. Intheory at least, the concept could leadto robots that more easily movearound and interact with people.

Looking for Au in PNG

Meanwhile, in the “nice work if

Naomi Ehrich Leonard — co-leaderof a field experiment of automatedundersea gliders — prepares a gliderfor launch into Monterey Bay, CA.

Photo by David Benet.

The Autonomous Benthic Explorer(ABE) — one of two unmanned

vehicles used to explore and maphydrothermal vent sites near PapuaNew Guinea. Photo by Woods Hole

Oceanographic Institution.

Creator Ralph Hollis (left) andresearcher George Kantor are paid

a visit by “Ballbot” in the CMUIntelligent Workplace. Photo courtesyof Carnegie Mellon Robotics Institute.

by Jeff EckertRobytes

Are you an avid Internet surferwho came across something

cool that we all need to see? Areyou on an interesting R&D groupand want to share what you’redeveloping? Then send me anemail! To submit related pressreleases and news items, pleasevisit www.jkeckert.com

— Jeff Eckert

Robytes.qxd 9/5/2006 7:40 PM Page 8

Page 9: Servo Magazine Octorber2006

you can get it category,” an interna-tional team of scientists recently tooka cruise to Papaua New Guinea to testout the idea of using unmanned vehicles (both remotely operated andautonomous) to search for copper,gold, and other valuable materials inunderwater hydrothermal vents. Thecruise is a joint expedition betweenWoods Hole Oceanographic Institution(WHOI, www.whoi.edu) andCanada’s Nautilus Minerals, Inc.(www.nautilusminerals.com), amining company that holds exploration leases in the Bismarck Seawithin the territorial waters of PapuaNew Guinea.

Nautilus is the first firm to commercially explore the ocean floorfor economically viable massive sulfidedeposits and is interested in under-standing the size and mineral contentof the sea floor’s massive sulfide systems. The 42-day trek was headquartered aboard the researchvessel Melville, operated by the Scripps Institution of Oceanography(sio.ucsd.edu).

Melville is a modest little dinghy279 ft. in length, with a bit over 4,000sq. ft. of main deck working area, plus2,600 sq. ft. of lab space, run by acrew of 23 and able to house up to 38researchers. She burns 3,600 gallonsof fuel a day, so we can hope that the voyage turned up a fair amount ofprecious metals.

Robo Parking Lots: Boon orBoondoggle?

An interesting concept in automa-tion is offered by Robotic ParkingSystems, Inc. (www.roboticparking.com), based in Clearwater, FL. Thecompany offers systems for as few as10 cars on up to more than 5,000, andthe installations can be above orbelow ground, inside or atop a build-ing, or even under a building. On the

positive side, the system eliminatesparking attendants (and associatedtips), saves space, and makes it unnecessary to find your own parkingslot; you just drive up into an entrancearea, get out of the car, and push a button. The parking system does the rest.

It also largely eliminates the riskof damage or theft, becausehumans remain outside the garage.On the other hand, because there isno alternative way to retrieve a car,there could be some obvious prob-lems in case of a system breakdown,power outage, or software glitch. Infact, a recent news report revealedthat one installation — the GardenStreet Garage in Hoboken, NJ —trapped hundreds of cars for severaldays.

Apparently, the city owns thegarage but not the software that runsit, and when the use contract expired,so did the control program. After ashort trip into the court system, thecity agreed to pay $5,500 per monthfor a three-year license. But it stillmight be safer to find a space on thestreet.

Lenses Feature AutonomousFocus

Inspired by the eye structure of a common fly, a University of

Wisconsin-Madison (www.wisc.edu)professor has developed a lens that iscapable of adapting focusing “fromminus infinity to plus infinity” withoutany external control. Using a hydrogel(a jelly-like polymer) instead of glass,the lens responds to physical, chemical, or biological stimuli tobulge or depress, thus changing itsfocal length.

The lenses are very small (hundreds of micrometers to aboutone millimeter), making them potentially useful for lab-on-a-chiptechnologies, medical diagnostics,detection of hazardous chemical orbiological substances, and otherfunctions. For example, whenemployed with appropriate electron-ics, one could attach one or a clusterof them to a catheter to provide apeek inside a patient, providing useful diagnostic data or conceivablydelivering feedback to a roboticprobe.

The technology is being patentedthrough the Wisconsin AlumniResearch Foundation, so commercialapplications may not be far off. SV

Robytes

SERVO 10.2006 9

Artist’s rendering of the smart liquidmicrolens. Image by Ryan Martinson,

Silverline Studio and courtesy ofUniversity of Wisconsin-Madison.

The RPS 1000 robotic parking systemcan accommodate from 200 to morethan 5,000 cars. Photo courtesy of

Robotic Parking Systems.

Robytes.qxd 9/5/2006 7:40 PM Page 9

Page 10: Servo Magazine Octorber2006

10 SERVO 10.2006

MIT has a new idea for robotic, otherworld exploration. By

unleashing hundreds or thousands oftiny, redundant, expendable roboticspheres onto and beneath the surfaceof planets, moons, and stars, MIThopes to accomplish in-depth analysisof extraterrestrial terrains.

MIT’s mobile space balls — dubbedMicrobots — will explore crevasses,caves, and perhaps even empty bedswhere bodies of water may once have flourished. These small, precise,redundant, and cost-effective units —research supported by NASA — wouldinsinuate themselves into every aspectof foreign landscapes.

Size and Motion HelpSensors Get a Notion

Microbots’ size and numbers

make for efficiency because they willbe able to collect data everywhere at the most minuscule levels. They will insure reliability because the destruc-tion of one bot would not affect the performance of hundreds or thousands of others that would easilyregroup. They would insure validitybecause the several bots would bedoing many data collections that willhave checks and balances againsteach other.

The approximately centimeter-sized microbots (in one example),could conceivably be launched from anorbiting space vehicle. The balls wouldinitiate typical ball-like movement ontheir own for mobility, including rolling,hopping, and bouncing around.

The mini-bot’s motor skills would be empowered by polymer actuators that would act like littlerobot muscles.

Rather than using gears, gearbox-

es, and grease, the microbots use elastic materials that flex in an orthog-onal manner to move the bots around.This elastic method of movement usesmany times fewer parts that are muchlighter and don’t rub together to createwear and tear.

However, this elastic “motor-vation” is slower than gears andmotors. To resolve this, the elastic actuators store energy over time andrelease it quickly to create their quickjumping motion.

Robot sensors will include imagers,spectrometers, sampling devices forsoil, and other materials samples andchemical detection sensors.

These sensors are used to assesssoil, topography, and the constitutionand anatomy of rocks. Microbots willwork in tandem as a network, distribut-ing information among themselves toanalyze the larger picture of what theyeach see individually.

Contact the author at [email protected] David Geer

Look Out, Mel Brooks, MITis Making Space Balls!

Microbots to Explore Mars and Other Space Bodies

Illustrations are by Gus Frederick.

Drawing of a conceivable,baseball-sized microbot. Actualmicrobots may be much smaller.

Closeup of ballbot — baseball-sizedprobe — drawing.

Artist’s rendering of a muchsmaller probe.

Geerhead.qxd 9/7/2006 8:16 AM Page 10

Page 11: Servo Magazine Octorber2006

GEERHEAD

Probe Communicationsand Construction

The probes will navigate both icyand hot surfaces, sending sampleddata to a lander or spacecraft via lowpower radio waves. The robots wouldalso communicate with each other overmakeshift wireless LANs. This willenable them to share informationdespite their being spread out in cavesand other areas. Their sheer numberswould make for valid and reliable datacollection.

Microbots will be made of trans-parent polycarbonate balls. The ballswill be equipped with actuators, fueltanks, cameras, sensors, and sniffers.

Microbots will hop, bounce, androll into position, in that order. Becauseof its precise weight, the ball will rollinto a standing position on its singlefoot after one roll.

Communications will be transmit-ted between and through the botsback to a lander, which will transfer thedata to the orbiter or back to Earth.Microbots will need to use communica-tions for navigation, to determine theirlocation relative to each other and tocommunicate information about theirsurrounding environment to get a bigger picture of the landscape. Eachbot comes equipped with a transceiverto accomplish this.

Surface missions can be accom-plished over an area of about 135square kilometers. Such missionsrequire no more than 1,000 bots. Forthese missions, the bots would com-municate over higher frequency radio.

In research, 31 GHz has been optimal.The bots would also use miniaturephase array antennas. The bots willalso be equipped with miniature dataprocessors, 4 GB of disk space.

Communications for the movement of the microbots may beaccomplished by decentralized systemsor virtual pheromones (discussed inanother GeerHead). Instead of havinga central unit of control, the robotswould share control over the team as ifmoving as a herd.

Scientists believe that the botscould collect and transmit several MBsof data daily. This requires onboarddata processing. Future computingcapabilities should arrive in time tomore than meet these needs.

They Need FuelBy using a special hydrogen/

oxygen micro fuel cell, the bots will beable to hop and take in data for abouta month on an average mission. Thefuel cell concept comes from Stanford

U. These fuel cells can generate a lot of energy for their size at lower powerrates. The energy is stored in the plastic foot mechanism of the bot.

The bots need to make about onehop per minute to accomplish their missions. So, the fuel cells can produceenough energy for the hopping mech-anism to store data just in time to hop.

The fuel cells are much smaller andmore efficient than conventional bat-teries. Using these cells, the bots cancomplete the 5,000 jumps necessaryfor their missions, after which the botsare obsolete and simply stop moving.

The fuel cells don’t power the jump-

The microbots will use sensors tocollect geochemical data for analysis.This includes basic chemical data, geophysical data, geothermal data, climate data, rock and mineral data,and organic data. Sensors will alsodetect methane, microbes, organicmolecules, sulfur compounds, andwater. Sensors will also measure temperature and pressure.

Sensors will have uses besidesdata collection. They will need to usethem to navigate; to determine their locations and movements. They will also use accelerometers andgyroscopes.

The bots will also use panoramicimagers — cameras that take apanoramic view — to identify sites ofinterest for further investigation. Amicrobot may be capable of carryingtwo imagers so as to provide stereoimages.

SENSORS

Artist’s rendering of a camouflagedbaseball-sized probe.

Drawing of a room full of camouflagedprobes with a sitting child.

Camouflaged probes in an armory.These drawings are quite interestingconsidering that I found no mention

of military uses for these probes.

SERVO 10.2006 11

Probes in a cave-based armory.

Geerhead.qxd 9/5/2006 7:44 PM Page 11

Page 12: Servo Magazine Octorber2006

12 SERVO 10.2006

ing mechanism alone. They also powersensors, communications, and micro-computers. But, all systems require thesame or less wattage and none wouldbe running at the same time.

It All Adds UpBy combining these features,

researchers can drive the bots into verydifficult terrain over long distances.Through studies, researchers haveshown that the bots can jump 1.5

meters high and move one meter horizontally, even under Martian gravity (Mars is one of their targetexplorations for these bots).

Microbots can dig into uphill anddownhill loose dirt so as to maintaintheir position. The bots low gravity cen-ter helps it maintain its standing posi-tion against most odds. Even if it rollsover it will end up on its foot — moretalented than a cat, don’t you think?

The microbots are expected tospread out to investigate up to 50

square miles as a team, allwithin 5,000 (number notdistance) expended hops.

ChallengesMicrobots may get

trapped where lava has bro-ken down, trapped betweenpieces of lava if they hop intothem. At the same time,researchers are not certainthat the breakdown piles willstill exist to such a degree thatthey will cause such problems.

The microbots may also face communications challenges in caves.Considering factors such as the use ofshort-range radio and the fact thatradio waves will be absorbed into therock of the caves, communications canbe muffled or hampered. So, the botswill have to communicate with eachother along a LAN made up ofMicrobots, leading out of the cave toget clear communications from thebots outside the cave to the land vehicle or the orbiter.

GEERHEAD

Side-by-side images of the probe with itsfoot extended and then retracted.

Probes with “headlights” maketheir way through a cave.

Illustration of potential probe deliverymethods including a probe lander.

Hopping probe in icyenvironment.

Probes on an icy landscape.

Probe sequencing through a hopping event.Mass spectrometers would

be used for chemical sensing;these sensors use magnetic or electric fields to do their sensing. Some may even use radiation to create an electric field. These spectrometers will need to disintegrate the sample using a laser or similar tool and then absorb the sample for study. Research is underway to develop advanced mass spectrometers for this purpose.

AND MORE SENSORS

Geerhead.qxd 9/5/2006 7:46 PM Page 12

Page 13: Servo Magazine Octorber2006

To accomplish this, the microbots can be programmedeach to stop at various degrees of entry into the cave. In this way, the microbots can relay data out of the cave using2.4 GHz radio waves.

ConclusionThe microbots are not only promising, but likely the

cheapest, most efficient, and accurate means of extraterres-trial data collection for the future. SV

Microbots page at MIThttp://robots.mit.edu/projects/microbots/index.html

Video of probeshttp://robots.mit.edu/projects/microbots/FSRL_

NIAC_2004_2.avi

Work behind Microbot probe’s foothttp://robots.mit.edu/projects/mechatronics/

index.html

NASA division sponsoring Microbotswww.niac.usra.edu

RESOURCES

SERVO 10.2006 13

GEERHEAD

Perform proportional speed, direction, and steering withonly two Radio/Control channels for vehicles using two

separate brush-type electric motors mounted right and leftwith our mixing RDFR dual speed control. Used in manysuccessful competitive robots. Single joystick operation: upgoes straight ahead, down is reverse. Pure right or left twirlsvehicle as motors turn opposite directions. In between stickpositions completely proportional. Plugs in like a servo toyour Futaba, JR, Hitec, or similar radio. Compatible with gyrosteering stabilization. Various volt and amp sizes available.The RDFR47E 55V 75A per motor unit pictured above.www.vantec.com

STEER WINNING ROBOTS

WITHOUT SERVOS!

Order at (888) 929-5055

Geerhead.qxd 9/5/2006 7:47 PM Page 13

Page 14: Servo Magazine Octorber2006

14 SERVO 10.2006

Q. Is there an easy way tochange the output from a sensor with electronics instead

of using a program? I have some ofthose Sharp range sensors hooked upto a BASIC Stamp. When the sensordetects an object, my program will turna red LED on. If I hook up an LEDstraight to the sensor, it will be onwhen there is no object in front of it,and will turn off when it sees anobject. I would like to have the LEDturn on when it sees an object withouthaving to use the BASIC Stamp.

— Jill Verge

A. For many years, I have won-dered why many sensors outputa high signal when they don’t

detect anything, and output a low signal when they do. From a failureanalysis and safety point-of-view, this isbackwards. You would want the sensorto output a high signal if it detectssomething, that way you will know forsure that it is has. If the output is lowwhen it detects something, you don’tknow if the sensor is actually detectingsomething, or if it is broken or defective.

I also have used software to lightan LED to provide a visual indication of

whether a sensor is detecting an objector not. If you have the available I/Opins on your microcontroller project,this is usually an easy thing to do.However, there are times when this hasto be done with hardware (electronics).What you are looking for is called a sig-nal inverter. There are many differentapproaches you can use to do this, butI’ll describe the two I use most in myprojects. Keep in mind that this is fordigital signals, not analog signals.

The first approach is to use a basic,general-purpose NPN transistor and acouple of resistors. Figure 1 shows a

simple schematic using atransistor to invert aninput voltage signal,along with a couple ofsketches showing howthe output signal isinverted from the inputsignal. For most applica-tions, this circuit willwork fine for inverting adigital signal from a sensor. But the outputvoltage will always beless than five volts (it willbe approximately (Vcc +VF)/2 where Vcc is thefive-volt supply voltageand VF is the LED’s forward voltage). If the downstream circuits(i.e., microcontroller) willinterpret the lower voltage as a logic 1, thenyou will be fine. Most

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 youwhere you are — and what more would you expect from a complex service droid?

byPete Miles

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

[email protected]

1K ohm

2N3904

+5V

R2

R1

LED

Q1

470 ohm

2N2222

SIGNAL IN

SIGNAL OUT

SIGNAL IN

SIGNAL OUT

+VD1

470 ohmR3

Figure 1. Simple transistor-based signal inverter.

MrRoboto.qxd 9/7/2006 8:07 PM Page 14

Page 15: Servo Magazine Octorber2006

LEDs have a forward voltage around twovolts, so the output signal will be around3.5 volts, and most digital circuits willinterpret this voltage level as a logic 1.

The second approach that worksquite well is to use hex inverters. Sincethe primary purpose of hex inverters isto invert digital signals, they are idealfor your application. There are manydifferent versions of hex inverters tochoose from, such as the 7404, 74C04,and 4069, or the Schmitt version of the hex inverters such as the 74C14 orthe 4584, just to name a few. In most cases, it really doesn’t matterwhich one of these you choose for this application; they will all work fine.

Figure 2 shows a simple schematicusing a hex inverter to invert a sensorsignal and displaying the result with anLED. As you can see, there are fewercomponents needed to use a hexinverter than using the transistorapproach described previously. With asingle hex inverter, you can invert sixdifferent sensor signals, which will takeup less space than using six transistorsand 12 resistors (not counting the current limiting resistor and LED pair).

In Figure 1, you should notice thatthe output signal voltage is constant, butalways less than the five-volt supply, butwhen you use the hex inverter, the output voltage is either five volts or zerovolts (see Figure 2). Also, there are cer-tain input voltages that the hex inverter

will interpret as a logic 0 or a logic 1. Thevoltage threshold is different when thevoltage is transitioning from a low to ahigh state (VLH), or from a high to a lowstate (VHL). This has the advantage thatan analog signal could be conditionedinto looking like a digital signal. A similareffect can be seen with the transistorapproach, but if the voltage gets too low,the output voltage will drop even further.

Both of these approaches willwork well at inverting the signals fromyour sensors, so when they detect anobject, they will output a high signaland light an LED, then turn off whenno object is present.

Q. Where is a good place to getraw aluminum materials at?

— Mel Forenster

A. Just about any industrial metalssupplier will have all the aluminum you would need. They

are not your local hardware or homeimprovement store, though some ofthem may carry aluminum that wouldmeet your needs. If you are looking fora local source, the Internet is usually notthe best place to find it. Instead, theInternet will tell you about metal suppli-ers from around the world. It is difficultto filter the search down to businessesthat are within driving distance.

The best place to look to find yourlocal metals supplier is your phone book.I would first look under Aluminum andsee if there are any companies that arelisted that way. Sometimes you will seesubcategories called Distributors orWholesalers. These are the places tocontact. If there are no businesses listedunder Aluminum, then look under Steel.Most companies that sell steel will sellaluminum or, at the very least, tell youwhere you can get it.

Here is a hint that will save youmoney when working with your localindustrial metal supplier. When you askthem if they have what you are lookingfor, ask them if they have any remnantsthat are large enough to fit your materialrequirements. Remnants are leftoverpieces of material from a previous job.They are usually odd sized. Though mostcompanies will sell you the material byweight, even if the remnants are larger insize than you need, the money savingswill come in what is called a cut charge.Cut charges can be very expensive —sometimes hundreds of dollars — depend-ing on the tools needed to cut the rawmaterial you need from a larger sheet.Buying the remnants saves you thischarge, and in many cases, it will save youmoney when getting the material.

Many times when you are buying a small piece of material, the cutcharge is greater than the raw materialcosts themselves. Keep in mind that

SERVO 10.2006 15

SIGNAL IN

SIGNAL OUT

+V

VLH

VLH

+5V

SIGNAL IN

SIGNAL OUT

D1

R1

LED

470 ohm

+5V

1 14

2 13

3

4

12

11

7

6

5 10

9

8

Figure 2. Simple hex inverter-based signal inverter.

MrRoboto.qxd 9/7/2006 8:08 PM Page 15

Page 16: Servo Magazine Octorber2006

remnants are leftover material, so theymay not be available and you will haveto pay for the full cut charge.

If you are willing to mail-order thematerial, then there are lots of placeson the Internet that will sell the materi-al to you. Two places I like to work withare McMaster Carr (www.mcmaster.com) and Metal Supermarkets(www.metalsupermarkets.com).Though the costs of the raw materialsat McMaster Carr are usually higherthan local suppliers, they are conven-ient and you can get all of the othermechanical hardware you need foryour project. McMaster Carr is theengineer’s one-stop shopping store.Metal Supermarkets always seem tohave what I need, when I need it. Withover 80 stores nationwide, it is prettyeasy to go and pick up the materialyourself to save on shipping charges.

Q. I have a line-following robotthat does a really good job atfollowing a line, but I would

like to make it go faster.Right now, the robot hasa tendency to spinaround to find the linewhen it drifts off of it, oroccasionally does a com-plete 360 when it comesto a right angle corner.My robot uses an IR LEDand a phototransistor forthe line sensor, and I haveit placed between thetwo wheels of my two-wheeled robot. Is there abetter place to put thesensor, or is there a good

strategy for figuring out which way toturn? Any help would be appreciated.

— Rob HolderNew York

A. Robots with a single line sensorcan be made to work quite well,as you have observed, but there

are some uncertainties that occur whenthe sensor loses track of the line. Figure3 is a simple illustration of a single sen-sor being used to tack a line. The red circle is the sensor, and the black line isthe line the sensor is trying to track. Thisillustration is more for people just get-ting started with line-following robots.The left side of the figure shows thesensor centered over the black line. Theoutput of the sensor is assumed to be alogic 1 (the actual output depends onthe type of sensor you are using). Thecenter image and the right image showwhat happens when the robot drifts offto the left or right side of the line. Whenthe sensor moves off the line, the output changes from a logic 1 state toa logic 0 state (i.e., On and Off the line).

When the robotdetects the logic 0 state,it knows it has veered offthe line. But as you cansee, the robot doesn’tknow if it is on the left orright hand side of theline, because all it knowsis that it is getting a logic0 output from the sen-sor. This isn’t necessarilya bad thing. If the logic inthe robot says to rotateclockwise if it loses trackof the line, it will find the

line quickly if it veered off to the left, orwill rotate 180 degrees if it veered offto the right. I suspect that your one-sensor robot has the tendency to alsogo the opposite direction from time totime when it loses track of the line.

As with any robot, the more sensorinformation you can get, the better it canrespond to its environment. There is a lotof debate in the line-following robot com-munity as to the best number of sensorsto use. Some say three, others say four,five, or seven individual sensors. Andthen there is even a bigger debate onwhat is the best placement for the sen-sors. The more sensors you have, the lesscritical the exact location of the sensors,but the best placement really depends onthe type of lines your robot is expected tofollow. Do the lines have gentle curves,right angles, change width or colors,change from solid to dashed lines, etc.?

The other question depends on put-ting them at the center of the robot or infront of the robot. That really dependson how fast your robot can read the sensors, process the information, andhow fast the robot can react. Center ofthe robot body is fine, so is the front ofthe robot. I have seen some photos ofsome Japanese line-following robots,and they have their sensor arrays severalinches in front of the front wheels.

To give you an idea of how wellmulti sensors work, let’s take a look ata simple three sensor approach, shownin Figure 4. The left side of the figureshows the sensors centered on the line.The outputs of the three sensors areshown in the truth table below theimage. You will notice that the two sidesensors are placed slightly forward ofthe center sensor. (You’ll see the advan-tage of this placement later.) With thisconfiguration, if the robot slowly driftsoff to the left or starts turning to theleft, the output from sensor C is trig-gered, which tells the robot that itneeds to move/turn back to the right.Sensor A would be triggered if therobot moved/turned/drifted off to theright. With this configuration, yourrobot will know exactly which side ofthe line it is on if it drifted off-course.

Figure 5 shows some different line-following situations that three sensorscan uniquely identify. The left and centerimages are right angle line cases. The

16 SERVO 10.2006

A

1

A

0

A

0

Figure 3. A one sensor, line-following robot, showinghow sensor output changes while finding a line.

C

0

A B

0 1 1

CBA

0 10

CBA

0 1

Figure 4. A three sensor, line-following robotshowing more position information.

MrRoboto.qxd 9/7/2006 8:08 PM Page 16

Page 17: Servo Magazine Octorber2006

side sensors will detect the direction ofthe right angle. The advantage of havingthe side sensors forward of the centersensor is so that the robot can start theturning algorithm earlier. The “T” inter-section and the “End of the Line” config-urations shown in the right two imagesdo become a bit confusing. Do you turnleft or turn right in these cases? It is up

to you how you want to handle this, butyour robot will know that it is at a Tintersection or has come to an end ofthe line. I personally like to use the RightHand Rule: When in doubt, turn right.

The sketches you see here inFigures 4 and 5 should give you an ideahow to figure out how many and howto orient them. Drawing up the various

types of line situations and placingyour sensor array over them will helpyou decide what works well for you. Itis best if you draw them to scalebecause the relative distance betweensensors may become limiting factors. Ifthe sensors are too far apart, the linecould fall between sensors, and therobot could get confused again. SV

B

0

A

0

C

0

A B

1 1

C

1

BA

0 1

C

1

A B

1 1

C

0110

A CB

Figure 5. A three sensor, line-following robot coming across multiple line configurations.

SERVO 10.2006 17

MrRoboto.qxd 9/7/2006 8:08 PM Page 17

Page 18: Servo Magazine Octorber2006

18 SERVO 10.2006

This month, we’re going to introduce our first NXT based

robot from LEGO robotics guru BrianDavis. I first saw this chassis lastAugust at NIWeek in Austin, TX where

we were officially announcing the NXTrobotics product line. There wererobots from various designers, but Ikept finding myself going back to thisone for its simple, yet functional

design. Brian was gracious enough to agree to let me make buildinginstructions for it and share it with thereaders of SERVO. So, I bring you ...Jenn Too.

// castling bonusesB8 castleRates[]=-40,-35,-30,0,5;

//center weighting array to make pieces prefer//the center of the board during the rating routineB8 center[]=0,0,1,2,3,3,2,1,0,0;

//directions: orthogonal, diagonal, and left/rightfrom orthogonal for knight movesB8 directions[]=-1,1,-10,10,-11,-9,11,9,10,-10,1,-1;

//direction pointers for each piece (only really forbishop rook and queenB8 dirFrom[]=0,0,0,4,0,0;B8 dirTo[]=0,0,0,8,4,8;

//Good moves from the current search are stored inthis array//so we can recognize them while searching and makesure they are tested first

with Brian Davisby James Isom

Abi-monthlycolumn for

kids!LESSONSFROM THELABORATORY

LESSONSFROM THELABORATORY

NXT Robotics:First Build

STEP 2:

Parts:

STEP 1: Parts:

STEP 4: Parts:

Parts:

STEP 3:

JENN TOO — CHASSIS INSTRUCTIONS

Page 19: Servo Magazine Octorber2006

SERVO 10.2006 19

STEP 7:Parts:

STEP 10:

Parts:

Parts:

STEP 6:STEP 5:

Parts:STEP 8:

Parts:STEP 11:

Parts:

STEP 9:

STEP 12:

Parts:

Parts:

Page 20: Servo Magazine Octorber2006

20 SERVO 10.2006

STEP 1:

Parts:

STEP 4:

Parts:

JENN TOO — CASTER WHEEL INSTRUCTIONS

Parts: STEP 3:STEP 2: Parts:

STEP 5: STEP 6:Parts: Parts:

JENN TOO — GRAND FINALE

That’s it! You’re allfinished. In the next issue, we will build andprogram Brian Davis’remote control for JennToo. Until then, happybuilding. SV

Page 21: Servo Magazine Octorber2006

Biped BRAT

Lynxmotion introduces the all new Biped BRAT — aBipedal Robotic Articulating Transport that costs less

than $200. A full kit including SSC-32 servo controller andVisual Sequencer software is available for less than $300.

The BRAT is a simple six-servo biped walker featuringthree degrees of freedom (DOF) per leg. Even though itonly has six servos, it can walk forward, backward, and turnin place with variable speed. It can even get up from lyingon its front or back. The BRAT can also do acrobatic-stylemoves. See the Lynxmotion website for a video gallery.

The robot is available with brushed or black anodizedaluminum servo brackets from Lynxmotion’s Servo ErectorSet. It is fully compatible with the SES so you can expandthe robot as your skill level and/or budget allows. Gettingthe robot moving with the Visual Sequencer is easybecause there are 10 sample routines included. The pow-erful database-driven program supports importing andexporting projects, so you can share your cool moves withother users. The program exports Basic Atom and BS2code for autonomous operation.

For further information, please contact:

CUTOUCH CT1720 Quick-StartTouch-Panel Controller

CUTOUCH CT1720 is an integration of a Touch panel,graphic LCD, and programmable embedded comput-

er. Based onComfile’s CUBLOCCB290 PLC-on-a-chip, CUTOUCHCT1720 providesfast processingspeed, 91 I/O ports,eight channels of10-bit A/D, 6 x 16-bit PWM outputs, and 80 KB of Flash program memory soyou can quickly develop HMI devices for industrialmachines, factory temperature controllers, packingmachines, robots, embedded control, and more.

Implementing a touch screen and controller can oftenadd up to a lot of time and expense, but CUTOUCHCT1720 allows you to program working touch-buttonswithin the first few minutes. If you are thinking aboutdeveloping a device that uses a touch screen, CUTOUCHCT1720 offers a very quick way to get to a finished solution.

CUTOUCH CT1720 is programmable in both Basicand Ladder Logic, allowing fast control, complex math,updateable touch-screen graphics, and fast data-communication protocols to be easily implemented.Ladder Logic offers real-time sequential processing andBasic supplies the number- crunching power. Both the real-time processing powers of a MODBUS PLC and the32-bit floating point math, graphic capabilities, and communication powers of Basic are now available in one product.

CUTOUCH CT1720 has 82 I/O ports, and can beexpanded with add-on boards to suit almost any situation(wireless, relay outputs, etc.). Using an optional XPORTInternet module, TCP or UDP packets can be monitoredthrough the Internet from anywhere, allowing users toupdate or provide customer service for products locatedanywhere in the world.

With CUTOUCH CT1720, Basic can be used to draw graphics and print characters to the LCD andreceive touch-screen input. Sensor signals enter throughI/O or A/D lines, allowing you to turn relays on/off, output analog values, or send RS232 communicationvery easily compared with traditional non-Basic controllers.

CUTOUCH CT1720 has 28KB for data memory, RTC,and one of the two RS232 serial ports can be used for download and debug. An internal battery provides safe data backup. MODBUS support (Slave, ASCII) is alsoprovided.

The CUTOUCH CT1720 Starter Kit is available now

CONSUMER ROBOTS

CONTROLLERS & PROCESSORS

Website: www.lynxmotion.comLynxmotion

NNEEWW PPRROODDUUCCTTSSNew Products

SERVO 10.2006 21

Oct06NewProd.qxd 9/7/2006 9:19 PM Page 21

Page 22: Servo Magazine Octorber2006

from $362 from stock.For further information, please contact:

Get Your Ball Bearings!

Boca Bearings announcestheir new expanded

range of Full Ceramic andCeramic Hybrid ball bearings.Ceramic bearings are madeof a highly manufacturedceramic, similar to the heatabsorbing, super resilienttiles on the Space Shuttle. Ceramic is the perfect material for any application seeking to achieve higher RPMs, reduceoverall weight, or for extremely harsh environments wherehigh temperatures and corrosive substances are present.

Ceramic silicon nitride balls, for example, exhibit muchgreater hardness than steel balls resulting in at least 10times greater ball life due to the ability to hold the surfacefinish longer. The ball has dramatically smoother surfaceproperties than the best steel balls, resulting in less frictionbetween the balls and bearing race surfaces. Thermalproperties are also dramatically improved over steel balls,resulting in less heat build-up at high speeds. Ceramic has35 percent less thermal expansion, 50 percent less thermalconductivity, are lighter weight, and are non-corrosive.

Similarly, the inner and outer races of anti-frictionbearings often become frosted, fluted, or can get a corrugated pattern imprinted on them. These are notmechanical scars but are due to electromagnetic forcesand can lead to bearing failure. They are usually found inmodern systems that routinely feature pulse-modulated,adjustable-speed motors and inverters with high switchingfrequencies and short rise times. The best solution substitutes ceramic hybrid bearings for the more tradition-al, chrome steel counterparts to eliminate scarring andalso to run cooler due to less micro-weld adhesion.

Suitable applications include cryopumps, medicaldevices, semiconductors, machine tools, turbine flow meters,food processing equipment, robotics, and optics. The BocaBearing Company stocks a full range of ceramic balls, ceramic hybrid bearings, and full ceramic bearings. With over2,500 different bearing sizes and well over two million bear-ings in stock, Boca Bearings offers a large stock of replace-ment bearings for all industrial and specialty applications.

For further information, please contact:

New Closed-Loop Dual MotorControl System

Embedded Electronics,LLC of Philomath, OR

has announced a new feature-rich Dual MotorController (“Dalf”). Theboard interfaces with standard motor drives expecting Signed Magnitude PWMcontrol signals and provides both open and closed loopcontrol of brushed PMDC motors.

Closed-loop features include robust PID andTrapezoidal Generator firmware to ensure smooth positionand velocity control. Closed-loop feedback is via standardquadrature incremental encoders. Support for PID MotorTuning to optimize system response is provided via datacapture using the Step Response command. Open-loopcontrol is supported by two R/C (standard 1.5 ms centeredpulse) modes on three channels along with two analogvoltage control (Pot) modes (two channels). Adjustableslew rate controls provide smooth velocity transitions forboth open- and closed-loop operations.

Three separate serial command/monitor interfaces(Terminal Emulator, binary Application ProgrammingInterface (API), and I2C) support off-board communicationand control of all open- and closed-loop features. The serial interfaces are functional in all operating modes,including the R/C and POT modes. A Windows GUI usingthe API is under development.

Motor and electronic protection is provided in hardware and firmware with support for current limitingusing off-board, Hall-type, current sensors.

The board utilizes the PIC18F6722 microcontrollerrunning at 40 MHz and supports additional code develop-ment using standard Microchip tools and the six-pin mod-ular ICD programming connector. The firmware features —implemented with a mix of C language and PIC Assembler— are interrupt driven for efficiency. A parameter block innon-volatile memory provides storage for motor parame-ters, operating mode, and other power-up settings.

The C language source including the main loop andservices requested by the interrupt handlers is provided. Alibrary of functions, callable from C, provides easy accessto all on-board devices from user written code. There isample headroom for custom or extended applicationswith lots of unused memory (FLASH, RAM, and EEPROM)and processor cycles. Extensive I/O connections are provided including 32 GPIOs from I/O expanders, as wellas digital, analog, and interrupt capable pins all routed to connectors for off-board use. A serial boot-loader is supported for in-application code upgrades without needfor an ICD programmer.

Extensive documentation is available for download

New Products

22 SERVO 10.2006

Tel: 800•332•3256Email: [email protected]

Website: www.bocabearings.comBoca

Bearings

MOTOR CONTROLLERS

MECHANICS

1•888•7SAELIG Fax: 585•385•1768Email: [email protected]

Website: www.saelig.com

SaeligCompany, Inc.

Oct06NewProd.qxd 9/7/2006 9:20 PM Page 22

Page 23: Servo Magazine Octorber2006

including an Owner’s Manual, a Getting Started Manual,and specifications for the serial command interfaces fromthe Embedded Controller website.

Available now, units may be purchased from theRobot Power website (www.robotpower.com). Price is$250 each in single quantities. Volume and reseller discounts available.

For further information, please contact:

Take Education Off-Road

Rogue Robotics introduces the new Rogue ATR ERS™(ATR — All Terrain Robot, ERS — Educational Robotics

System) robot kit. This system is the first of its kind forhigh school classrooms and hobbyists, providing robotics,electronics, and object-oriented programming in one system, while offering unparalleled all-terrain mobility.

Rogue ATR ERS features an eight-inch base with rubber tracks, Rogue’s universal sensor mount system,dual DC gear motors, extra level capability for expansion,

and a 1.1 amp dual H-bridge module, extra level capabili-ty for expansion, a 7.2V NiCad battery, and an OOBoard™educational development board as its brain. The RogueATR ERS is made from the same laser cut, powder coatedaluminum as the popular Rogue Blue robot base.

The Rogue ATR ERS is bundled with a curriculum textfull of experiments, a parts kit, and a plastic storage boxto house the fully assembled robot neatly in a classroomor under your workbench.

The feature-packed OOBoard, embedding theOOPIC® object-oriented processor, which can be programmed in C, Java™, or Basic syntaxes, powers theRogue ATR ERS. The kit includes a CD-ROM that containsthe programming editor for the OOBoard, as well as samples and curriculum materials.

The Rogue ATR ERS is “the SUV of EducationalRobots,” says Brett Hagman, Vice-President of RogueRobotics. “No longer are small obstacles, uneven floors, orcables barriers for your robotics experiments.”

The Rogue ATR ERS robot kit sells for US$324.95 andthe OOBoard sells for US$119.

For further information, please contact:

SERVO 10.2006 23

New Products

Tel: 541•929•9553Email: [email protected]: www.embeddedelectronics.net

EmbeddedElectronics LLC

ROBOT KITS

103 Sarah Ashbridge Ave.Toronto, ONT M4L 3Y1

CANADA416•707•3745 Fax: 416•238•7054

Email: [email protected]: www.roguerobotics.com

RogueRobotics

So tionslu3

DC MOTOR CONTROLLER6VDC-36VDC MOTORS25A PEAK 9A CONTINUOUSANALOG CONTROLBUTTON CONTROLR/C PULSE CONTROLSERIAL CONTROL

SOLUTIONS CUBED PHONE 530-891-8045 WWW.MOTION-MIND.COM

MOTION CONTROLIN THE PALM OF YOUR HAND

MOTION

MINDMINDMOTION CONTROLIN THE PALM OF YOUR HAND

SOLUTIONS CUBED PHONE 530-891-8045 WWW.MOTION-MIND.COM

POSITION CONTROLVELOCITY CONTROL

LIMIT SWITCHESENCODER INTERFACE

RS232 OR TTL COMMUNICATIONASCII OR BINARY PROTOCOL

3.6” x 2.4” $75/UNIT3.6” x 2.4” $75/UNIT

Oct06NewProd.qxd 9/7/2006 9:20 PM Page 23

Page 24: Servo Magazine Octorber2006

Know of any robot competitions I've missed? Is yourlocal school or robot group planning a contest? Send anemail to [email protected] and tell me about it. Be sure toinclude the date and location of your contest. If you have awebsite with contest info, send along the URL as well, so wecan tell everyone else about it

For last-minute updates and changes, you can alwaysfind the most recent version of the Robot Competition FAQat Robots.net: http://robots.net/rcfaq.html

— R. Steven Rainwater

OOOccc tttooobbbeeerrr

14 Robot-LigaKaiserlauter, GermanyIncludes mini sumo, line search, labyrinth, masterlabyrinth, robot volley, and robot ball.www.robotliga.de

17-20 Russian Olympiad of RobotsMoscow, RussiaA wide range of events for autonomous andremote-controlled robots including fire-fighting,line-following, cross-country racing, RoboCup soccer, vacuum cleaning, and combat.http://intronics.bogorodsk.ru

20 Elevator:2010 Climber CompetitionLas Cruces, NMAutonomous climber robot must ascend a 60 meterscale model of a space elevator using power from a10 kW Xenon search light at the base.www.elevator2010.org/site/competition.html

27-29 Critter CrunchFour Points Sheraton Hotel, Denver, COHeld in conjunction with MileHiCon. See robotcombat by the folks who invented robot combatcompetitions.www.milehicon.org

NNNooovvveeemmmbbbeeerrr

18 DPRG RoboRamaThe Science Place, Dallas, TXEvents include Quick-Trip, line-following, wall-following, T-Time, and Can-Can.

www.dprg.org/competitions

18-19 Eastern Canadian Robot GamesOntario Science Centre, Ontario, CanadaMultiple events including fire-fighting robots,sumo, BEAM photovore, BEAM solaroller, a walkertriathalon, and art robots.www.robotgames.ca

24-25 Hawaii Underwater Robot ChallengeSeafloor Mapping Lab, University of Hawaii,Manoa, HIROVs built by university and high-school studentscompete in this event, which is part of the MATE(Marine Advanced Technology Education) series ofcontests.www.mpcfaculty.net/jill_zande/HURC_contest.htm

24-26 All Japan MicroMouse ContestNagai City, Yamagata, JapanIncludes Micromouse, Micromouse Expert level,and Micro Clipper events.www.robomedia.org/directory/jp/game/mm_japan.html

DDDeeeccceeemmmbbbeeerrr

1-2 Texas BEST CompetitionMoody Coliseum, SMU, Dallas, TXStudents and corporate sponsors build robots fromstandardized kits and compete in a challenge thatchanges each year.www.texasbest.org

2 LVBots ChallengeAdvanced Technologies Academy High School,Las Vegas, NVLine-following, line maze solving, and mini sumo;all for autonomous robots.www.lvbots.org

8-9 South’s BEST CompetitionBeard-Eaves Memorial Coliseum, AuburnUniversity, Auburn, ALRegional BEST teams from multiple states competein this regional championship.www.southsbest.org

24 SERVO 10.2006

Send updates, new listings, corrections, complaints, and suggestions to: [email protected] or FAX 972-404-0269

Events.qxd 9/8/2006 2:29 PM Page 24

Page 25: Servo Magazine Octorber2006

Extreme Robot Speed Control!

OSMC - Monster Power H-bridge6

6

6

6

6

14V - 50V and3.15“ x 4.5” x 1.5”Control with Stamp or other Micro3 wire interfaceR/C interface available

160A 400Aover peak!

www.robotpower.comPhone: 253-843-2504 [email protected]

$199

Scorpion HX

6 Only 22g

6

6

6

6

6

6

Dual (6A pk) H-bridgesfwd-only channel

5V - 18V1.6“ x 1.6” x 0.5”Four R/C inputsMixing, Flipped Bot Input

2.5A

12APlus

$79.99

Scorpion Mini

6

6

6

6

6

6

2.5A (6A pk) H-bridge5V - 18V1.25“ x 0.5” x 0.25”Control like a servoOptional screw term.Only 5.5g

$119.99

Scorpion XL

6 Only 28g

6

6

6

6

6

Dual H-bridge5V - 24V2.7“ x 1.6” x 0.5”Three R/C inputs - serial optionMixing, Flipped Bot Input

13A 45A Peak!

6

6

6

6

6

6

6

6

6

6

14V - 50VDual H-bridges 150Adjustable current limitingAdjustable speed slew rateTemperature limitingThree R/C inputs - serial optionMany mixing optionsFlipped Bot InputRugged extruded Aluminum case4.25" x 3.23" x 1.1” - Only 365g

80A A+ Peak!

$29.99

$399

Also from Robot Power

Kits, parts, schematicsPlanetary gearmotors

All Robot Power electronicproducts are proudly

Introducing DalfAdvanced dual motordrive with closed-loopcontrol functions

Embedded Electronics, LLC along with our exclusive reseller Robot Power areproud to introduce a feature rich, customizable Dual Motor Controller:Designed to work out of the box or to host your application specific code; Dalfmakes it simple to create a complete turn-key “brain” for your application withfull-closed-loop motion control. Just take a look at these features!

Dalf.

Only $250

MADE IN

THE USA

Motion Control Functions

Closed-Loop Features6

6

6

6

6

6

6

6

6

6

6

6

Closed-loop control of two motorsFull PID position loopTrapezoidal path generatorAdjustable slew rate for smooth transitionsNon-volatile storage of PID parametersStep-Response PID motor tuning supportQuadrature encoder support for each motor

Drives all sign-magnitude brushed DC motordrives such as the OSMC

Terminal mode for interactive tuning anddebuggingWindows GUI under development

Two R/C command modes (3 inputchannels)Two open-loop pot control modesInteractive terminal control of motorsAdjustable slew rate

6

Open-Loop Features

I/O Connections

6

6

6

6

6

6

6

6

Two RS-232 serial ports36 GPIOI2C master and slave ports (2 ports)Two motor drive outputsTwo quadrature encoder inputsTwo Hall-effect current sensors inputsSix 10-bit A/DTwo channels of cooling fan control

6 Standard ICD connector

Application Support

6

6

6

6

6

6

6

6

6

60k+ FLASH availableSerial bootloader, no programmer neededSerial command/monitor in both terminal

and high-speed binary API modeI2C slave command interfaceFirmware implented in C andASMC source for main loop and utility routines

provided freeLinkable device driver function library

provided for building custom applicationsExtensive documentation with Owner’s

Manual and Getting Started Manualprovided on CDCustom code development services

available (contact EE)

6 PIC18F6722 CPU running at 40MHz

For more information visitwww.embeddedelectronics.net

Dalf

SERVO 10.2006 25

TidBOTs

The SERVO MagazineOnline Store

Not sure where to find your favorite roboticsbooks? Like what you see in the pages of theSERVO Store in the magazine? Then check out

the SERVO Online Store. It’s packed with all yourfavorite books, kits, and SERVO merchandise.

Visit www.servomagazine.com TODAY!

A MMonster CCatalog

Are you looking for a bellows? How about some welding equipment? Or, an air cylinder, roller chain

sprockets, woven wire cloth, and piston plunger? Theseitems and over 435,000 others can be found “inside” theMcMaster-Carr website online catalog (www.mcmaster.com). Forget about those conventional papercatalogs that waste your bookshelf space! The McMaster-Carr digital catalog is quick, easy, and powerful. Granted,it does look daunting in its opening screen, but there is asearch feature if you need to use it. For me, half the fun is drilling down through the product lists looking for aneeded product. Naturally, my final order is littered with a lot of other “stuff” that was found through pureserendipity. Ya gotta love that serendipity!

Roomba HHumor

Icame across a podcast from “The Onion” website(www.theonion.com/content/node/51389) that

might give you stuffy robot experimenters a chuckle.Apparently a Roomba has been secretly collecting evidence for use against its human captor. I only wish thatthe recorded Roomba “interview” had featured the robotic floor vacuum system’s warning “chime” rather thanthe sucking noise from a conventional vac. SV

Get ready for a real treat — the McMaster-Carr online catalog is a great source for all

sorts of stuff. Although it is a bit wordy.

Page 25.qxd 9/8/2006 2:27 PM Page 25

Page 26: Servo Magazine Octorber2006

Ask for our FREE 96 page catalog

VISIT OUR ONLINE STORE ATwww.allelectronics.comWALL TRANSFORMERS, ALARMS,FUSES, CABLE TIES, RELAYS, OPTOELECTRONICS, KNOBS, VIDEOACCESSORIES, SIRENS, SOLDERACCESSORIES, MOTORS, DIODES,HEAT SINKS, CAPACITORS, CHOKES,TOOLS, FASTENERS, TERMINALSTRIPS, CRIMP CONNECTORS,L.E.D.S., DISPLAYS, FANS, BREAD-BOARDS, RESISTORS, SOLAR CELLS,BUZZERS, BATTERIES, MAGNETS,CAMERAS, DC-DC CONVERTERS,HEADPHONES, LAMPS, PANELMETERS, SWITCHES, SPEAKERS,PELTIER DEVICES, and much more....

ORDER TOLL FREE1 - 8 0 0 - 8 2 6 - 5 4 3 2

THOUSANDS OF ELECTRONICP A R T S A N D S U P P L I E S

Robotics ShowcaseRobotics Showcase

26 SERVO 10.2006

Showcase-MenagerieOct06.qxd 9/7/2006 8:13 PM Page 26

Page 27: Servo Magazine Octorber2006

Builder’s Name: Francisco C. OliverRiveraSignificant Robot Building Milestone:Select the motor power for the differentarm positions. Inverse kinematics.Robot’s Name: None yet.Robot’s Reach: 800 mm (31.7”)Robot’s Weight: 20 Kg (44 lb.)Significant Robot Living Milestone:Successful test with only nine months fordesign and building. I get an “A” in myEngineering Deg.

Additional info:

Reach 600 mm (23.7”)Payload 0.5 Kg (2.7 lb.)Degrees of freedom 6Speed 0 to 0.2 m/s (0 to 0.008”/s)Accuracy ±3 mm (0.12”)Motors Six stepper motors (200 steps per turn)Brain SAB80C537Stepper motor controller L297Dual full-bridge driver L298

My email [email protected]

SERVO 10.2006 27

Showcase-MenagerieOct06.qxd 9/7/2006 8:15 PM Page 27

Page 28: Servo Magazine Octorber2006

Featured This MonthParticipation28 Battery Safety 101

by Michael Rogers

29 Pit Repairs by Wendy Maxham

Feature31 Sharpening the Sword —

Evolution of a Combat Robotby Russ Barrow

Events34 Results — July 11-August 1438 Upcoming — Oct. and Nov.

Technical Knowledge35 Gyro Usage in Combat

Robotics by Eric Scott

Product Review37 NPC T-64 Gearmotor

by Michael “Fuzzy” Mauldin

Lithium manganese, nickel-cadmium, nickel metal

hydride, sealed lead acid; like foodto a human body, batteries are theenergy source that combat robotsare powered by. Batteries typicallydischarge stored energy to powera load, such as a motor. However,in certain situations — such as adead short where the battery isessentially discharged instanta-neously — a battery can ignite andrelease toxic gases. Needless tosay, there’s no need to trembleevery time you see a batterybecause of its explosive poten-tial. In this article, I will coverthe finer points of proper battery safety in order to keepyou safe and your batteriesperforming optimally.

The three main safetytopics for batteries concern:wiring, charging, and storing. Although theutmost care should alwaysbe taken when dealing

with all types of batteries, Ican’t stress how important it

is to use extra caution when usingparticularly energy-dense cells —such as lithium polymer batteries— which are notoriously fragileand can be highly explosive.

First, wiring up your robot in asafe and organized manner willnot only help prevent shorts, but itwill also make general robot main-tenance easier; this includes usingproper gauge wire for your appli-cation and using two distinct wirecolors to clearly distinguish yourpositive and negative connections.In addition, make sure that allyour connections are covered witheither shrink wrap or electricaltape. After you have completedyour wiring, double and triple

28 SERVO 10.2006

PARTICIPATI NBattery Safety 101

by Michael Rogers

When charged incorrectly, LiPolybatteries can produce a spectacular

(and dangerous) display.

CombatZone.qxd 9/5/2006 7:49 PM Page 28

Page 29: Servo Magazine Octorber2006

SERVO 10.2006 29

check all your connections to checkfor any possible short circuits.

Once you’re finished wiring andhave carefully checked everythingover a few times, you’re ready tocharge your batteries. It’s best foryour battery’s life span to tricklecharge your batteries over a longperiod of time at a lower amperage.As a rule-of-thumb, you can chargeyour batteries at the amperage thatyour batteries are rated to discharge.For example, you can charge a 2,000mAh (2 Ah) pack at 2.0 amperes. Iwould highly recommend that you

use a fireproof LiPoly charging bagwhich can contain a full-on LiPolypack meltdown and protect your surroundings from nasty fires.

You might think of batterycharging as something where you“set it and forget it,” however, it’svery important that you always keepa close eye on your batteries andmake sure you know when theypeak. Believe it or not, you can over-charge your battery packs which canlead to a release of hydrogen gas.

Once you’ve (hopefully) had asuccessful foray into the competition

process and are perhaps ready tostore your batteries, make sure toplace them in a cool, dry location.Sealed lead acid batteries should befully charged when stored, wherenickel and lithium based cells shouldbe stored with a 40%-50% charge.

Ultimately, this article is only ashort blurb on battery safety thatshould provide sufficient informationto allow proper basic battery use,however, battery distributors such aswww.robotpower.com can provideyou with more in-depth informationon battery safety. SV

Pit repair begins in the designprocess. Whether you design

your robot on the computer or by laying out the parts in a tape outline,think about which parts will need tobe accessed. Batteries are a primeexample: If you plan to remove yourbatteries between fights (best bet ifyou use Nicad or NiHM, not as neces-sary for SLAs), then make sure theyaren’t buried inside the bot. Even ifyou plan to charge your batterieswithout removing them from thebot, remember that batteries don’tlike to be charged while hot. You canuse a fan to cool the batteries, but ifthey are buried deep inside your bot,the fan might not provide enoughcooling to allow a full recharge.

Hardware is an important designdecision too. Minimizing the typesand sizes of bolts and screws in yourbot will also minimize the number of

tools and replacement parts youneed in the pits.

Once you leave the arena, go toyour pit table and get started withyour maintenance or repairs. All competitions guarantee a minimumtime period between fights, usually30-45 minutes. In the early rounds ofa competition, you could have all dayto make repairs, but you should stillget started immediately. When youopen up your robot after a fight, youmight find other maintenance issuesyou need to take care of: loose nuts,broken speed controller fans, andloose wiring.

If you know you have a lot ofrepairs to make, have someonecheck the fight schedule to see whenyour next match is supposed to be. Ifyou are unsure if you can make allthe necessary repairs in this timeframe, talk to the fight scheduler to

see if your fight can be postponed.Understand that event timing mightnot allow for a postponement. Inthat case, you have two options: forfeit you next fight or dig in andmake what repairs you can.

After you’ve made the decisionto make the repairs, prioritize whatneeds to be done.

#1 Batteries — Get them charging— or better yet, have a backup set

Pit Repairs by Wendy Maxham

Some teams have custom charger setups toreduce workbench clutter and setup time at

events. Photo courtesy of Killerbotics.

A safe charging setup for LiPoly batteries,using a glass container on a plastic table.

Photo courtesy of Team Hammer Bros.

These packs show the damage caused by excessive discharge current.

Photo courtesy of Team Mad Cow.

PHOTO 1. Devil’s Plungeras it’s supposed to work.

CombatZone.qxd 9/5/2006 7:49 PM Page 29

Page 30: Servo Magazine Octorber2006

30 SERVO 10.2006

already charged. Don’t forget thetransmitter and receiver batteries (ifyou don’t have a battery eliminationcircuit or BEC). We almost lost a fightonce when the transmitter startedbeeping a low battery warning.

#2 Drive Train — Mobility is essen-tial. Do what it takes to make yourbot mobile again. Start with thebasics of getting the wheels turning(replacing motors, ESCs, brokenchains/belt, blown out bearings).Then you can determine if you wantto move on to #3 before repairingthings like slightly bent axles. Youwould replace a bent axle if you alsohave to replace a blown bearing orbroken sprocket, but consider leavinga bent axle if it still turns okay andyou still need to make other criticalrepairs. If you had to rewire the drive

train during repairs, get the frequen-cy clip (if possible) in order to test thedrive before your next fight.

#3 Weapon — It’s usually best togo into a match with your weaponworking, but one thing to consider:Will your repairs likely hold up in battle? If not, you might think aboutremoving the weapon before a fight or go into the fight without itworking. When you start a fight withyour weapon working then it stopsworking, the judges’ view this asdamage to the bot caused by thefight. Since most competitions awardmore points for damage, putting amarginal weapon in the arena cancost you points in a fight.

#4 Cosmetics — Check the sched-ule again to see when your next fight is (if the scheduler isn’t alreadystanding over your shoulder callingyou into line). If you still have time,you can take your bot to the designated grinding area and grind/sand down sharp spots, straightenbent armor, sharpen wedges, etc.

If you need help with repairs, askaround the pits. Many builders(sometimes even your next oppo-nent) are more than happy to helpget a bot ready to fight. That beingsaid, it’s also okay to refuse help.

A Tale From the Pits

At RoboGames 2006, we decid-ed to fight our MW Devil’s Plungeras a Heavyweight since the newflamethrower wedge put DP atabout 140 pounds. DP’s first twofights were against nasty spinning

robots, so we used a spinnerdefense wedge. In the first fight, thespinner defense wedge held up wellagainst horizontal bar spinner LastRites. Round two pitted DP againstfull-body spinner Megabyte.Megabyte kicked Devil’s Plunger allaround the arena for two minutes,ripping off the spinner defensewedge, as well as all eight wheels,including one that was still attachedto the corner of DP (see Photo 2).From the flashes of flame and smokepouring out of DP, we knew therewere some internal issues to dealwith, too.

When we got back to the pits,DP looked pretty hopeless (see Photo 3). The front right corner wasmissing (which included a wheelmount and one side of the wedgemount), one motor was seized up,two speed controllers were fried, several sprockets broken, bearingsblown out, remaining axles bent ordamaged, radio box shattered, andantenna wire cut. We figured DP was out of the competition and permanently retired!

After we got back from fightingour other robot Sewer Snake, wereassessed Devil’s Plunger andthought maybe it could come backfor one more fight with theflamethrower wedge. We checkedwith the fight scheduler Marc and hesaid DP’s next fight would have totake place that evening. Worst casescenario — we had about three hoursto get DP running again.

First task was to get all of thebroken parts out of the robot andmake sure we had replacements. Istarted stripping DP down whileMatt assembled the part necessary

PHOTO 2. Megabyte dismantles Devil’s Plunger.

PHOTO 3. The winner and the pile of parts. Photocourtesy of Michael Mauldin, Team Toad.

PHOTO 4. Repaired and ready to roll.Photo courtesy of Felipe Scofano,

Team Riobotz.

PHOTO 5. Devil’s Plunger vs. Full Smash.

CombatZone.qxd 9/5/2006 7:51 PM Page 30

Page 31: Servo Magazine Octorber2006

SERVO 10.2006 31

SHARPENING THE SW RDEvolution of a Combat Robot

by Russ Barrow

The sharpest sword is the swordsharpened most often. Combat

robotics is an excellent venue fordemonstrating building design andexecution. The sheer competitiveenvironment and consequence ofcompeting enforces determined dedication.

I have been building and competing with combat robots foralmost five years. I have built manyrobots and tried various designs.Some worked, some died (some-times in spectacular fashion). Theones that worked provided the positive reinforcement to continueevolving the design. The following isthe build evolution of one of my firstcombat robots in the Ant or one-pound combat class. The Robotis fittingly called Dark Pounder.

For the work I have done withDark Pounder, not only was the

design successful, the design wasable to be improved to overcome myoften poor execution. In 2005, DarkPounder was able to achieve thehighest honor or a #1 ranking in theAnt class of Robotic combat. The botwas also elected to the RobotCombat Hall of Fame with anHonorable Mention.

Dark PounderVersion 1

Dark Pounder began life inJanuary of 2003. The design is classified as a vertical spinner withthe weapon disk or blade spinningupwards, facing the opponent.Pounder was a very different lookingbot; I refer to it as a very fortunatemistake. The step side of the wedgewas meant for attack, but in its firstmatch, I could not get a bite on the

competitor. So for the next fewfights of the event, I reversed thedirection of the weapon and drove it backwards with the low wedgegetting under the other bots and flipping them.

Version 1 was made of thin galvanized sheet metal (found in anyhardware store) and giant block of1/2” aluminum for a weapon and a chain drive. It was made mostly of copier machine parts. The copier

for the rebuild. Working quickly butmethodically over the next fewhours, we replaced the motor, speedcontrollers, bearings, sprockets axles,and chains. Since we replaced twospeed controllers, we had to test thedrive to make sure the motors werewired correctly. Amazingly enough,DP fired up and the wheels actuallyturned the right direction!

With the drive train back inworking order, we turned our atten-tion to the weapon. Usually DP’swedge mounts between the twofront shoulders. With one shouldergone, Matt had to get creative. Heused an old Sewer Snake weaponshaft that had large washers andnuts on the end to capture thewedge on the remaining shoulder.Then using nylon truck tie-downs,Matt strapped the free-floating sideof the shaft to the bot. This helpedkeep the wedge from pulling away

from the bot while maneuveringaround the arena.

About 3-1/2 hours after westarted repairs, DP was ready to fight(see Photo 4). Cosmetically, therewasn’t much we could do for Devil’sPlunger. Bright red duct tape coveredthe hole in the right front where one wheel used to be. One thing wehadn’t considered during the repairsbecame evident as Matt wentthrough the start-up sequencebefore the fight.

Matt stuck the Allen wrenchthrough the receiver switch hole, forgetting the receiver switch wasn’tin the same place since Megabytedestroyed the receiver box. Matt hadto work his way through the ducttape to find the receiver switch. Notonly did DP make it back into thearena that night, he won the fightagainst Full Smash (see Photo 5)!

One member of the Brazilian

team RioBotz said she felt like cryingwhen Devil’s Plunger was dismantledby Megabyte. I, on the other hand,was much closer to tears as we leftthe arena after the Full Smash fightto a standing ovation from the audience and builders. It’s difficult tobeat the feeling of putting a pile ofpieces back together into a workingmachine against the odds. Part ofthe challenge in robot combat is getting a bot to an event, the otherpart is keeping it going at the event.That’s what this sport is all about —build, fight, repair, repeat. SV

Cherry BoxWatch out for sharp spots on

your robot that may not have beenthere before the fight. Even thoughyou’re familiar with your bot and itsnormal sharp points, new sharpspots are created during combat.

Dark Pounder 1 featuredan aluminum blade and

sheet metal armor.

CombatZone.qxd 9/5/2006 7:51 PM Page 31

Page 32: Servo Magazine Octorber2006

32 SERVO 10.2006

donated bearings, shafts, gears, andchains. I used two RC servo controllerboards to control the two 16 mmdrive gear motors. I ran six NiCd cellsto a Speed 280BB RC airplane motor.

The bot was a winner right outof the gate, compiling an 11-0record, but the competition was closing in. This bot was rebuilt aftertwo competitions because it wasvery slow and non-invertible. It wasparted out in June 2003 — after amere six months of life.

Dark PounderVersion 2

The aluminum block on version1 was limited to about 6,000 RPMdue to poor aerodynamics, so ablade would make more sense. Inaddition, a thinner spinning weaponwould concentrate the weapon energy and add a cutting effect. Ichose a 5” length of 1/8” stainlesssteel. The blade appeared to spin abit faster, but the stainless steel wassubstantially heavier than the aluminum block. Since the blade wasso heavy, I used a super thin stainlessspring steel I found at a local surplusstore for armor. Who needs strongarmor when you have an aggressiveweapon ...

Well, another competitor arrivedwith rare Earth ring magnets on allfour wheels. His robot attached itselfto the metal arena floor with over 16pounds of effective weight. He cameat me and I kept hitting him but giv-ing up ground the whole time. Heeventually pinned me up against thewall and began crushing the bot.Dark Pounder still managed to go 4-2 in this July 2003 event, but my

eyes had been opened to ring mag-nets for drive wheels. Perhaps a newdesign using magnets was in order.

Dark PounderVersion 3

Other competitors had usedmagnets on the steel arena floor, butunknown to me was how powerfulmagnets had gotten. The magneticforce-to-weight ratio was dramatical-ly better than common speaker magnets. So, how do you defeatanother robot that is basically gluedto the floor? Well, a very slopedwedge would work nicely.

To make a gradually slopingwedge would require some changes,the biggest one being the size of theblade. I hated giving up blade length,since it would seem a bigger bladewould deliver more energy. However,I can spin a smaller blade faster, andeven with less mass, deliver a moreenergetic hit (Energy = 1/2Mass xVelocity2). I targeted to spin theblade at about 12,000 RPM. Theshell was made from one piece ofaluminum, vise formed, to offset theadditional weight of the magnetwheels. I used paper CAD to workout the angles.

This design lasted for almost ayear, and included improvements tothe weapon drive and batteries. Thechain weapon drive was simply tooslow, so I used a small rubber O-ringand some small belt pulleys from thecopier machine. I was able to get a4.5:1 gearing, which improved thespeed of the blade and also reducedthe weapon motor current. The riseof lithium polymer batteries providedan opportunity to provide a higher

voltage and lower weight than theNiCad batteries, while maintainingthe same capacity.

Dark Pounder was virtually invul-nerable on steel, and one of manyreasons arenas moved to non-ferrousfloors (such as wood, stainless steel,and aluminum). This version ofPounder went 20-3 from October2003 to September 2004. Two losseson a non-wood arena floor eventual-ly revealed that the aluminum framewas not strong enough for the vastly improved competition. Maybetitanium would work better ...

Dark PounderVersion 4

Some lessons are more difficultto learn; this was the case forPounder version 4. Pounder 3 was asuccessful bot, but after a year ofminor improvements, a rules change had impacted the design.Unfortunately, I did not fix the prob-lem but tried to solve the effect.Without magnets, other wedgesmanaged to get under it. A strongerframe just made the bot more surviv-able, but did not solve the problemthat I had to get under my opponentto deliver the weapon. Version 4 wasnearly identical to version 3, but theAL skin was replaced with titanium.

In competition, the shell certain-ly could take some punishment, butdelivering the weapon became moredifficult. Version 4 failed becauseother powerful spinners need onlyone hit on the front wedge to throwme across the arena, as happened atthe Nationals 2004 competition fromtwo formidable vertical spinners.

Version 4 went 2-2 in this one

Dark Pounder 2 in actionduring a SWARC event.

Dark Pounder 3 featuredmagnetic wheels and

aluminum armor.

Version 4 upgraded to titanium armor.

CombatZone.qxd 9/5/2006 7:52 PM Page 32

Page 33: Servo Magazine Octorber2006

competition. The writing was on thewall — I must find a way to deliverthe weapon without depending onthe wedge. This version did teach methe toughness of Ti, and how towork with it. Some heat andpatience can make a very solid shell.

Dark PounderVersion 5

Version 4 had proven that a newshape was required, but the rugged-ness of titanium and impressiveresults people were getting with carbon fiber required more materialsinvestigation. Because titanium wasboth stronger and lighter than steel,I ditched the stainless steel blade andwent with a larger 5” Ti blade.

To better deliver this weapon, Ineeded to push out the blade fromthe robot, so the previous shelldesign would not be possible. Thisbot would require a frame.Polycarbonate offered a perfect solution. This material can also beeasily machined or cut into any shapeI needed. Next, I used three carbonfiber RC airplane tubes to connectthe polycarbonate and also act as themounting shafts for the drive andweapon motors. Cover it in TI, and itwould be a very tough bot.

Now, how could I guarantee toget under wedge-based robots? Thekey would be focusing the pressure(or force). A point produces morepressure per area than a line by concentrating the force. So, by usingsome titanium plates cut to a point, Icould get under the flat line of acommon wedge.

This worked very well. Version 5managed a very respectable record

of 16-4, and was around for almost ayear. In the end, the lack of a wedgesurface on the sides of the bot madeit susceptible to horizontal spinnerhits and wedges.

Dark PounderVersion 6

Version 6 was another dramaticchange from the previous design.Instead of trying to fix the few prob-lems that existed with a very success-ful design, I decided to start almostfrom scratch again. This bot wouldhave a wedge surface for all surfaces,so a strong defense was in place. Ihad also decided to try to implementan asymmetric blade design.

The one problem with spinning abar or disk at a very high rate ofspeed is that you will have difficultiesdelivering the energy from the bladesimply due to the inability to get agood bite on the opponent. The biteis determined by how much contactthe blade or disk can make, which isa direct result of the differentialspeed of the two bots, and the distance the blade or disk teeth travel in that time. So, at high RPM,a symmetric blade or disk only hashalf the time of the blade or diskrotation to put the opponent into the weapon. With an asymmetricweapon like the one on Version 6,you can get an entire blade rotationand therefore double the time to putthe opponent into the weapon.

Construction of Version 6 wasnearly identical to Version 5.Unfortunately, I tried placing thewedge in front of the weapon similarto the earlier Pounders. Once again,the design won or lost based on if the

wedge could get under the opponent.Version 6 managed to go 6-4,

existing for only five months. For thefirst time, I did not immediately startbuilding another version. Pounderwould need a complete rethink, andit took almost five months before anidea would surface. What would overthree years of development produce?

Dark PounderVersion 7

For five months, I worked onother bots, tried a few new ideas ina few different directions. At first, Ithought I would rebuild Version 5with a wedge surface on the sides.A new design was in order thatrequired the bot to be more compact. A lower center of gravitywould make the bot more stable byreducing the gyroscopic force inher-ent in a fast vertical spinning object.

A smaller blade would need tobe designed. I liked the asymmetricblade idea, but I needed to move themoment of inertia (center of the spinning mass) further out than theearlier design blades. I liked the hookshape blade since it would tend tobite with a grabbing type of force. Iwould also want to sharpen the bladesurfaces to an edge to improve aero-dynamics and the cutting potential ofthe blade. I made the blade from apiece of 1/8” chromoly steel that Icut, balanced, and heat treated.

On another bot called DarkMicro 44, I had a rounded wedgethat proved to be very strong, as wellas capable of deflecting energy. Soafter mocking up the idea usingpaper, I cut a 10” semi-circle of .03”titanium and then spent about an

SERVO 10.2006 33

Dark Pounder 5 wasa major change of

concept and fabricationtechniques.

Iteration number 6 used anovel asymmetric bladedesign.

The latest Dark Pounder — number 7 —waits for trial by combat.

CombatZone.qxd 9/5/2006 7:52 PM Page 33

Page 34: Servo Magazine Octorber2006

34 SERVO 10.2006

WBX-3 washosted by

War-Bots Xtremeand was held July 22nd in Saskatoon,Saskatchewan. Fifty-six bots wereregistered in all classes fromAntweights to Heavyweights. Resultsare as follows:

• Ants — 1st: “Glitch 2,” pusher,Chaos Robotics; 2nd: “Buggy 2,”wedge, X-Bots; 3rd: “Hoser’dReloaded,” spinner, FingerTech.

• 1 KG — 1st: “Roadbug,” wedge,Chaos Robotics; 2nd: “Hell’s Angle,”wedge, Tru Pride; 3rd: “Bot and PaidFor,” wedge, Humbot.

• Beetles — 1st: “Flippenstein,” pneu-matic flipper, FingerTech; 2nd:“Creepy Crawler,” wedge, X-Bots;3rd: “Limblifter,” lifter, GuavaMoment.

• Mantis — 1st: “G.I.R.,” drum,Chaos Robotics; 2nd: “Blenderhead,”full body spinner, Inner Logic; 3rd:“Banshee,” ICE spinner, ChaosRobotics.

• Hobbyweight — 1st: “Bubba,”pneumatic lifter, X-Bots; 2nd:“Dexahedron,” drum, GuavaMoment;3rd: “Ranch Tooth,” hammer,Rumble Robotics.

• Featherweights — 1st: “NearlyNormal,” wedge, LNW; 2nd: “Mean Machine,” spinner, X-Bots;3rd: “Slapped Together Wedge,”

wedge, Geek.

• Lightweights — 1st: “Agent 7,”wedge, X-Bots; 2nd: “Fly Speck II,”wedge, Maggot; 3rd: “MDC,” spinner, Inner Logic.

• Middleweights — 1st: “Botfly,”pneumatic flipper, Maggot; 2nd:“Speed Bump XL,” pneumatic lifter,X-Bots; 3rd: “Maddgoth MK2,” spike,Crash.

• Heavyweights — 1st: “LNW,” spinner, LNW; 2nd: “Amata,” drum,X-Bots; 3rd: “The Defyer,” pneumaticflipper, Syberon.

Saturday NightFights was hosted

by Team Think Tankand was held July22nd in Pasadena, CA.Twenty-three bots were registered in the Fairy, Ant, and Beetleweightclasses. Results are as follows:

• Fairyweight — 1st: “Crisp,”flamethrower wedge, OffbeatRobotics; 2nd: “Ugly Duckling,” lifter,Slayer.

• Antweights — 1st: “Baby Blaster,”spinner, Ghetto Logic Robotics; 2nd:“Rick James,” spinner, Fatcats; 3rd:“Ducbot,” lifter, Slayer.

• Beetleweight — 1st “UnknownAvenger,” flipper, Ice; 2nd:“Roboslayer,” wedge, Slayer; 3rd:

“Bite Me,” box, Slayer.

Bring YourOwn Bots

III was hostedby Team Cerberus and was heldAugust 12th in Chuluota, FL. About15 bots were registered in the UKAnt, Ant, and Beetleweight classes.This was an informal “front yard”event and included some great foodand fellowship. Results are as follows:

• UK Ants — 1st: “Electric Eye,” lifter,Cerberus; 2nd: “P150,” spinner,Overvolted Robots.

• Antweights — 1st: “Serphiroth,”spinner, Cerberus; 2nd: “UltimateUltimatum,” spinner, OvervoltedRobots.

• Beetleweight — 1st: “HungryHungry Hippo,” Lab Rat Revolt; 2nd:“Plagiarist,” spinner, BotWorks.

Robot Fighting League 2006Nationals were held August 12

in Minnea-polis, MN.Presented bythe Midwest

Robotics League, this is the top eventin the RFL’s fighting season. A moredetailed article separate from theCombat Zone is included in this issue.Results are as follows:

• Antweights — 1st: “UnderWhere?!,”spinner, Hazardous Robotics; 2nd:

EVENTSRESULTS — July 11 - August 14

hour bending it to the desired shape.The frame would continue to be

made of 1/4” polycarbonate, but Iwould use a titanium base-plate reinforced with a carbon fiber rod forrigidity. This would protect the bottop to bottom, and act as a mount-ing point for the drive motors.

To make this bot destructive, Idesigned the weapon blade to spinat 22,000 RPM. The Speed 280BB RCairplane motor I have been runningspins at 66,000 RPM off of four Li-Poly batteries, and is geared down3:1 to the weapon. The motor andbatteries do get warm from extend-

ed running, but I hope most matcheswill end quickly. Will this new designwork? Check with your local robot-ic combat clubs/events and find out.

Amazing what can be done withonly a pound of weight and a little imagination (not to mention a considerable amount of time). SV

CombatZone.qxd 9/5/2006 7:53 PM Page 34

Page 35: Servo Magazine Octorber2006

In combat robotics, we rely onmany industries to produce

motors, power transmissions, andstructural frameworks for our robots.For control of the robot, we general-ly rely upon the radio-controlledhobby industry. Understanding theapplication that the device was originally designed for can help us tobetter understand how best toexploit it for our own purposes. Thefocus of this article will be the modern radio control helicopter gyroscope, and how it can be used toimprove our combat robots.

What Gyros Do

To start out with, let’s take alook at what the gyro is used for inthe modern day model helicopter. Astandard single main rotor helicopterhas a big problem: The torque effectgenerated by the mainrotor wants to spin the helicopter around themain shaft. In order tocounter this, the tail rotoris employed to produce an opposing thrust. Theamount of thrust is variedon the tail rotor to eitherintentionally rotate thehelicopter around the

main shaft, or to correct for changesin rotor torque and to keep the tailstationary.

This is where the gyro comesinto play. Everything from small windgusts, to changing blade pitch, tospecific aerobatic maneuvers requiresvery small, precise corrections in tailrotor thrust. Managing the othercontrols of the helicopter is difficultenough, so we rely on a gyroscopeto help us keep the tail where wewant it, and yet allow it to movewhen we want that, as well.

In a model helicopter, the gyro isused on the rudder channel, so as tosense changes in the rotation of thehelicopter about the main axis andcorrect them. In a robot, we woulduse the gyro to sense changes fromthe commanded position on theturning axis, and correct for them.What would we need to correct for

in a standard tank drive style robot,you ask? The answers are many:Changing arena conditions thataffect traction on one side of therobot; binding drive train due to poorconstruction or damage; or unequal-ly matched motors.

An omni-directional robot pres-ents its own set of directional chal-lenges. There are many things thatcan cause the robot not to follow thecommanded direction. A good drivercan somewhat correct for these, butwhy devote the brain cycles?

Rate and HeadingHold Gyros

Modern day gyros come in twoflavors, only one of which we willreally be interested in. These areknown as “Rate” gyro and “HeadingHold.” Rate gyros are the simpler

Gyro Usage in Combat RoboticsTECHNICAL KN WLEDGE

by Eric Scott

SERVO 10.2006 35

“Pop Quiz,” spinner, Test Bot; 3rd:“Anti,” spinner, 564 Robotics.

• Beetleweights — 1st: “Itsa?,” spinner, Bad Bot; 2nd: “NuclearKitten,” spinner, Test Bot.

• Hobbyweights — 1st: “Cheapshot3.0,” wedge, Rolling Thunder; 2nd:“Surgical Strike,” spinner, RollingThunder.

• Featherweights — 1st: “Xhilarating

ImpaX,” wedge, Rolling Thunder2nd: “Killabyte,” full body spinner,Robotic Death Company.

• Lightweights — 1st “Son ofWhacky Compass,” spinner, Hawg;2nd: “Goosfraba,” flaming wedge,Killerbotics; 3rd: “Death By Monkeys,”wedge, Death By Monkeys.

• Middleweights — 1st: “Ice Cube,”plow, Toad; 2nd: “Lunatic,” spinner, Booyah; 3rd: “Lionheart,”

wedge, Toad.

• Heavyweights — 1st:“Shrederator,” full body spinner,Logicom; 2nd: “Eugene,” spinner,Moon; 3rd: “Ty,” plow, Bobbing ForFrench Fries.

• Superheavyweights — 1st:“Psychotic Reaction,” spinner, kontrolled kaos; 2nd: “Star Hawk,”spinner, Moon; 3rd: “The Wall,”Moon. SV

The gyro is wired between the receiver and the onboardmixer and modifies the steering input to the mixer.

CombatZone.qxd 9/5/2006 7:54 PM Page 35

Page 36: Servo Magazine Octorber2006

36 SERVO 10.2006

type. Imagine that you were toreceive a one second pulse of windfrom the side. The rate gyro wouldthen apply one second of correctionto bring the tail back around. Thismethod is not all that precise, as itdoes not really take into account sub-tle drifts or variances in force applied.It is still better than nothing.

Heading Hold gyros memorizethe last commanded angular position,and continue to apply correctiveaction until it gets back there.Futaba® refers to its Heading Holdtechnology as “AVCS,” both mean oneand the same thing. Heading Hold isthe type we will be interested in.

Applications forRobotics

So, what do you look for in agyro for robot use? We’ve previouslysaid that the gyro should be of theHeading Hold or AVCS type. A Ratetype will only partially help us to

correct unwanted motion, and is notworth considering in this application.Remote gain is a must in my opinion,not only for ease of adjustment, butit is essential for safety.

A robot with a gyro will try tocorrect itself back to its commandedposition. Any force attempting tochange the robot’s direction will be“corrected” for, regardless of its origin. If a human were to pick upthe robot and attempt to twist it, thegyro would send signals to correctthis, causing wheels to spin, and apossibly dangerous situation couldarise. With remote gain, one canremotely disable the gyro, makingthe robot safe to approach.

A very good all-around gyro forrobot use is the Futaba® 401. It is anAVCS or Heading Hold type unit,with remote gain. It has proven fairlyrugged for use in both combatrobots and helicopter crashes and isrelatively small and lightweight. Allsetup examples will be based on thisgyro, although the principles involvedwill apply to any Heading Hold gyro. As always, please consult themanufacturer’s instructions for useand installation.

In order to use the gyro in arobot, it must be allowed to correctchanges in the yaw of the robot. Forthose of you used to mixing the twospeed controllers in a tank stylerobot onto one stick in the radio, youwill have to make a few changes. Weneed to do the mixing onboard the robot, so that the gyro has access

to the “pure” turnchannel.

There are severalonboard tank style mix-ers available. Connectthe gyro so that it isplugged between themixer and the turnchannel of the radio.The gyro can bemounted anywhere inthe robot provided thatit is in the same plane

as the motion that you wish to correct.

Do not place the gyro on its side.Placing it upside down is fine, as itstill remains in the same plane. Usethe mounting method the manufac-turer recommends to secure thegyro, generally a piece of specialdouble-sided tape. This tape reducestransmission of vibration from thebot to the gyro.

Testing

Now that you have the gyroinstalled in the bot, it’s time to dosome testing. Above all things — BECAREFUL. You are introducingsomething into the control systemwhich has the ability to make therobot do things you have not commanded if not set up properly.Before you do anything else, set upthe remote gain function of thegyro, and assign it to a switch onthe radio. Set it up such that youhave zero gain in one position effec-tively turning off the gyro, and asmall amount of heading hold gainin the other position. You should beable to check that the gyro is inheading hold mode by applyingpower only to the radio system, notthe drive system. Take note that aHeading Hold gyro will take a coupleof seconds to initialize during whichthe gyro must remain still. Do notmove the robot during this time.

Limit Setting

Many gyros have a “limit” set-ting — a source of much confusion— as it is not a function we wouldoften use. Its purpose is to limit thetravel of a servo attached to thegyro. In the case of a helicopter, itwould be used to prevent the servobinding at the ends of the linkage.Were you to want to do so, youcould use this function to limit theamount of power commanded tothe motors on the spin function ofthe robot. This setting should probably be left at 100. If younotice that you are not getting full

The Futaba 401 features adjustments for delayand rate limiting. Photo courtesy of TowerHobbies.

Although the end products are completelydifferent, the same gyro will benefit bothfighters and flyers.

CombatZone.qxd 9/5/2006 7:54 PM Page 36

Page 37: Servo Magazine Octorber2006

The simplest way to get yourrobot moving is with a

gearmotor. That’s an electric motorcombined with a reduction gear in a single package. For a large robot(120-340 pounds), our favorite is theNPC T-64 (formerly known as the64038).

The output shaft is short and fatwith four 5/16-24 bolt holes. NPCsells an aluminum hub that matesthis shaft to their line of foam-filledrubber tires. The tires come in 10”,12”, and 14” diameters. The gearboxmounts easily with four 5/16-24 boltholes and two 5/16 through holes inthe plate.

There are two major optionsfor this motor: an optional 14-1gear set increases output RPM by43%. We prefer the stock 20-1

reduction, with lower gearing, forbetter acceleration and reducedcurrent draw.

We do use the second option: aheavy-duty gearbox plate made frombillet aluminum instead of the stockcast part. On a superheavyweightrobot, the impact forces from combat can crack the mountingholes on the stock plate.

Six of these motors poweredIceBerg — our superheavyweightBattleBots quarterfinalist — and twopowered IceCube — a middleweightthat took second place atRoboGames this year.

Although rated at 24 volts DC,we run the motors at 36 volts usingtwo 3.6 Ah Nicad battery packs and one Vantec RDFR36e speed controller for each pair of motors.

With 20-1 reduction and 10” tires,the top speed is 19 mph. We’ve beenable to outpush opponents for threeminutes without once having anoverheated motor or speed controllerfailure.

Bottom line: The T-64 is strong,fast, battle-tested, and easy to use.Get yours from NPC at www.npcrobotics.com. SV

PRODUCT REVIEW — The NPC T-64 Gearmotor by Michael “Fuzzy” Mauldin, Team Toad

power during a spin, perhaps byobserving the speed controls, youmight increase this limit. In general,this control is of limited use to therobot builder.

The first rather critical step in setting up is to set the direction ofthe gyro. This is different from thedirection that the stick causes therobot to move. This is set with a smallswitch on the gyro. Due to the vari-ety of mounting options, it is impos-sible for me to tell you what thisswitch should be set at. If it is setincorrectly, when you spin the robot,the gyro will apply correction, but inthe reverse direction. This willincrease the rate of the spin, whichwill apply more reversed correctioncreating a feedback loop. This is whyyou MUST set the remote gain func-tion up first, so that you can stop therobot in the event of a “death spin.”

The direction is set correctlywhen the robot does not spin in thisfashion. Perform all tests of this sortwith the robot physically isolatedfrom you by a curb or other barrierbetween you. A robot in this spin is

very dangerous, and your reactiontime to shut down the gyro gainmay not be sufficient to preventinjury.

Gyro-Gain

Next, you will set the gain of thegyro. With a remote gain gyro, thiswill be adjusted in the radio itself.Futaba makes it easy if you use theirgyro with their radio, as the radio hasan easy setup screen to set the gain.If you are using different brands, consult your documentation (whenall else fails, read the manual). Youshould generally raise the gain as faras you can until the robot shakesslightly or “hunts” for its position.When you get to that point, back offthe gain slightly. You want the gainto be set as high as you can withoutshaking.

The Futaba 401 has an adjust-ment for “delay.” This function isbasically a dampening of the feed-back loop. The delay refers to a delayin applying correction of the gyro inorder to compensate for a heavy

mass (such as a robot) that needs tobe moved. When driving around,spin the robot and stop sharply. Ifyou get a little wag when stopping,adjust the delay upwards a little untilthis wag goes away.

To adjust the rate at which therobot spins in place, adjust the limits,sometimes referred to as ATV orchannel travel on the turn channel onyour radio. Please note that variousmechanical factors will also affectthis rate. If your motors are unequalin strength, the gyro will only allowthe stronger motor to go as fast asthe weaker one.

Wrap-Up

While robot design and construction play a huge role in theoutcome of combat robotics matches, a good driver can do verywell with a poor robot. While itcan’t correct for lack of driving practice, it can help to make therobot go where you tell it. If you’vegot a robot that’s a little tricky tohandle, give gyros a try. SV

SERVO 10.2006 37

CombatZone.qxd 9/5/2006 7:55 PM Page 37

Page 38: Servo Magazine Octorber2006

House Of Robotic Destruction — This event will takeplace in Fall of 2006 on October 14 in Cleveland, OH.

It is presented by the Ohio Robotics Club.The Ohio Robotics Club will be holding its third

House Of Robotic Destruction event at the Olmstead

Falls Community Center, justoutside of Cleveland; 150 gramFlea, 1 lb Ant, and 3 lbBeetleweight double-elimina-tion tournaments will be run.

Cost is $10per bot.The ORCinsect arena is 4’ x 8’ in size, halfwaythrough a match two 14” x 14” pits open. Further information canbe found at www.ohiorobotclub.com.

Halloween Robot Terror — Thisevent will take place on October

28 in Gilroy, CA. It is presented byCalifornia Insect Bots.

Venue is Hobby World — whichis located at 6901 Monterey Rd.,Gilroy, CA 95020. Bot GauntletBaron Dave says “This is open toFleas, Ants, and Beetles. The onlyrule I have for the bot costume contest is you must use the bot you brought to fight with. You willNOT be fighting with your bot costume on your bot. Builders andteam mates are more than welcometo wear a costume to this event, but please remember to make itsafe for anyone that’s working onthe bots. Weigh-in starts at 10:00AM and fighting starts aroundNoon. The entry fee will be $20 perbot with prizes for 1st, 2nd, and 3rd place in each weight class. Forfight rules, go to www.sacbots.com/eventrules.html. SV

EVENTSUPCOMING — October and November

38 SERVO 10.2006

CombatZone.qxd 9/5/2006 7:59 PM Page 38

Page 39: Servo Magazine Octorber2006

Founding Sponsor: Premier Media Sponsor Premier Association Sponsor Producedby:

The International Technical Design andDevelopment Event for Mobile Roboticsand Intelligent Systems Industry

December 12-13, 2006Santa Clara Convention CenterSanta Clara, California

Tracks include: Design, Development and Standards Tools and Platforms Enabling Technology

www.robodevelopment.com

Full Page.qxd 9/7/2006 1:52 PM Page 39

Page 40: Servo Magazine Octorber2006

Well, believe it or not, such a chipalready exists — it’s the PICAXE-08Mprocessor. Produced by RevolutionEducation — a British company dedicat-ed to promoting robotics in primaryand secondary education — thePICAXE-08M is actually an eight-pin PICchip with a built-in Basic interpreter.The 08M is one of a line of Basic-programmable processors that range insize from eight pins to 40 pins, andinclude a surprisingly sophisticatedrange of Basic commands.

For complete documentation onthe hardware and software specifica-tions of the PICAXE processors, visitthe PICAXE website at www.picaxe.co.uk and download all threesections of the PICAXE Manual; theycontain a wealth of information to getyou started. A Summary of PICAXEBasic commands is also available on mywebsite at www.RonHackett.net.

PICAXE Basic is very similar tomany other implementations of Basic,including Parallax’s BASIC Stamp ver-

sion, so it is a fairly simple language inwhich to program. Refer to Section 2of the PICAXE Manual for a completedescription of the Basic commands andprogramming environment. Many ofthe 08M’s built-in commands are particularly useful in the field of robotics, especially the following:

• infrain2 — Receives and decodes aninfrared signal from another PICAXEchip, or an ordinary TV remote control.

• infraout — Transmits an infrared signal to another PICAXE chip (or to aTV, stereo, etc.).

• pwmout — Produces a continuousPWM output in the background for DCmotor control (or IR object detection,as we will see later), freeing your program to carry out other tasks simultaneously.

• readadc10 — Performs a 10-bit analog to digital conversion.

• serin – Receives five-volt level serialinput at various speeds.

• serout — Transmits five-volt level serial output at various speeds.

• sertxd — Provides serial output to theProgramming Editor’s “debug” screen,which is very helpful when debuggingyour code.

• servo — Produces a continuous output in the background to drive aradio-control style servo motor, freeingyour program to carry out other taskssimultaneously.

• setint — Enables interrupts on specif-ic input conditions.

A brief summary of the features ofselected PICAXE processors is present-ed in Figure 1. As you can see, the 08Mcan store a program of approximately80 lines of Basic code, which is more than enough for just about anyrobot I/O function. The IntegratedDevelopment Environment (IDE) is available free from the PICAXE website.It has a fairly full-featured graphic userinterface and runs on Windows 95, 98,ME, NT, 2000, and XP. Unfortunately, aMacintosh version of the software isnot available, but the new Intel-basedMacs can run Windows XP, so it shouldbe possible for Mac users to join in onthe fun anyway!

ROBOT’sLittle Helper

Wouldn’t it be great if there were a simple eight-pin microprocessor that could be programmed in Basic to perform various I/O functions and thereby relieve your

robot’s already over-burdened CPU? Even better, imagine being able to buy such a chipfor less than four dollars! That way you could easily add one, two, or more of these “little helpers” to your bot and implement sophisticated sensory functions that wouldotherwise overwhelm a single, Basic-programmed CPU.

by Ron Hackett

PICAXE-08M PICAXE-18X PICAXE-28X PICAXE-40XPins 8 18 28 40

I/O Pins 5 14 21 32Input Pins 1 - 4 5 0 - 12 8 - 20

Output Pins 4 - 1 9 17 - 9 17 - 9ADC Pins (10-bit) 3 3 4 - 0 7 - 3

PWM Pins 1 1 2 2Program Memory 80 BASIC lines 600 BASIC lines 600 BASIC lines 600 BASIC lines

Storage variables 48 bytes 96 bytes 112 bytes 112 bytesData Memory 256 - Program 256 bytes 128 bytes 128 bytes

40 SERVO 10.2006

FIGURE 1. Features Summary of SelectedPICAXE Processors.

Hackett.qxd 9/5/2006 8:00 PM Page 40

Page 41: Servo Magazine Octorber2006
Page 42: Servo Magazine Octorber2006

use the software, but it’s very intuitiveand includes ample documentation.

For our simple “Hello World”example, we are going to program the08M to alternately blink two LEDs onI/O pins 0 and 1 (external pins 7 and6). Since all PICAXE chips are actuallyPIC chips, their output pins are capableof sourcing or sinking a maximum of

25 mA, so LEDs can bedirectly driven as long asan appropriate current-limiting resistor is includedin the output circuit.Actually, if you look closelyat the photograph inFigure 5, you won’t seethe current-limiting resis-tors because they are builtinto the LEDs I am using,which makes breadboard-

ing a little simpler. If you are interestedin these LEDs, see the Sources sidebar.

The actual “Hello World” Basic program (presented in Figure 6) is verysimple and can be quickly typed into theProgramming Editor software directly. Asyou can see, it’s very similar to standardBasic. In case you have been wondering,you can power the circuit of Figure 4

using a regulated fivevolt supply, but it willalso function perfect-ly well with a supplyconsisting of threeAA alkaline batteries.

Just out ofcuriosity, I havebeen running mybat te r y -powered“Hello World” setupfor more than 500hours and it’s stillgoing strong, so anextra 08M or two certainly won’t

overly tax your bot’s batteries. Ofcourse, if other components in your circuit require a regulated five-volt supply, you don’t have the choice.

Infrared Obstacle DetectionCircuit and Program

Now that we have a basic under-standing of how to set up and programa simple PICAXE-08M circuit, let’s trysomething that will be more helpful to a robot. One of the PICAXE Basic commands mentioned earlier is“pwmout,” which produces a continu-ous PWM output in the background.Therefore, your program can initiatethe PWM output and go on to attendto other tasks without the hassle ofhaving to repetitively produce eachindividual pulse — a tremendous codesimplification, to say the least.

Of course, the pwmout commandis ideally suited for DC motor control. APICAXE-08M and an H-bridge chip,such as the L293D, are essentially allyou need for full PWM control of oneDC motor. If you want to control twoDC motors (and what robot builderwouldn’t), you will need two 08Ms orone of its bigger siblings (the 28X orthe 40X), both of which have two independent PWM outputs and morethan enough computing power to alsobe your bot’s CPU.

I have built a couple of robots thatuse a PICAXE-28X as the CPU and an08M as an I/O “helper.” The two PWMoutputs on the 28X provide full propor-tional control for two DC motors, andthe 08M assists by providing left and

42 SERVO 10.2006

ROBOT’s LITTLE HELPER

Picaxe

08M

1

2

3

4 5

6

7

8+5 V GndD1

D2R5

R4

330

33022K

220

R2

R3

6

7

8

9

1

2

3

4

5 10K

R1

serout

serinRS-232DB-9

FIGURE 4. “Hello World” Circuit.

FIGURE 5. “Hello World”Breadboard.

FIGURE 6. “Hello World” Basic Program.

;===== HelloWorld.bas ============================================

; This program runs on a PICAXE-08M processor at 4 MHz.; It alternately blinks LEDs on outputs 0 & 1 (pins 7 & 6).

;===== Constant Definitions ======================================

symbol LED0 = 0 ; LED on output 0 (pin 7)symbol LED1 = 1 ; LED on output 1 (pin 6)

;===== Main Program ==============================================

main: high LED0 ; LED0 onlow LED1 ; LED1 offwait 1 ; wait 1 second

low LED0 ; LED0 offhigh LED1 ; LED1 onwait 1 ; wait 1 second

goto main ; do it again, forever

Hackett.qxd 9/5/2006 8:03 PM Page 42

Page 43: Servo Magazine Octorber2006

right non-contact IR obstacle detection.As a demonstration of the I/O

capabilities of the PICAXE-08M, let’s takea look at one possible IR obstacle detec-tion circuit, presented in Figure 7 andphotographed in Figure 8. As you cansee in the photograph, heat-shrink tub-ing protects the IR LEDs from extraneouslight. There are several simple IR receivermodules on the market that operate at38 kHz, and the 08M’s on-board PWMcircuitry can easily be used to generatethe 38 kHz pulses necessary to drive anIR LED (see the Sources sidebar).

As mentioned earlier, the 08M’soutput pins are capable of directly driving an IR LED. In fact, one outputpin can drive two IR LEDs connected inseries as shown in Figure 7. The two IRLEDs I used (again, see the Sourcessidebar) each drop 1.2 volts, whichleaves 2.6 volts across the 135 Ωresistor (actually two 270 Ω resistors inparallel). As a result, the current isapproximately 19 mA which is wellwithin the output pin’s specifications.You may want to breadboard just thispart of the circuit first, and determinethe current for your specific compo-nents before connecting the IR LEDs tothe 08M’s output pin, just to be safe.

The 08M’s two outputs could bedirectly connected to two input pins onyour main processor. However, as asafety precaution, you should include a1K resistor in each connection, just incase one of the CPU’s inputs acciden-tally gets reprogrammed as an output,which could result in a direct short inthe line and a possible dead I/O pin.The LEDs can even be left in the circuitif you would like visual feedback on the

circuit’s functioning. In this way, your bot’s CPU can be relieved of theprocessing overhead required to carryout this function, and it only takes twoof its I/O pins to do so.

Figure 9 presents the Basic pro-gram for the obstacle detection circuit,which takes up less than 15% of theprogram space in the 08M. Essentially,the program consists of a simple loopthat outputs a burst of PWM pulses,turns off the pulses, checks for left andright echoes, and displays the resultson the two LEDs. As you know, interpreted Basic is a relatively slow language, so the program uses two different techniques in order to be fastenough to detect the echo.

First, the setfreq command at thebeginning of the program shifts the08M’s internal oscillator from 4 MHz to8 MHz, because Basic just isn’t fastenough to catch the echo at 4 MHz.Some care must be exercised whenusing the setfreq command. It’s easy to lose communications with the programming software unless you alsochange its setting to reflectthe new oscillator speed; besure to read the PICAXEmanual on this issue.

Secondly, the PICAXESpecial Function Variable“pins” allow direct access tothe I/O port register of thechip, which is a very power-ful and useful feature of thePICAXE system — you canrefer to the documentationfor a complete explanation.

Through experimentation, I found thisapproach to be much faster than thealternative of testing the IRinL andIRinR symbols (defined at the beginningof the program) with if-then or branchcommands. Notice that four of the fiveconstant definitions are not used anywhere in the program. They couldhave been removed entirely, but youmay want to do a little experimentingyourself, so I left them in the program.

The Panasonic IR detectors in thecircuit are active low devices. The comments in the program explain how

SERVO 10.2006 43

Picaxe

08M

1

2

3

4 5

6

7

8+5 V GndD1

D2

D3 D4

(IR) (IR)

R6

R5

R4

135

330

33022K

220

R2

R3

IRinR

+5V+5V

IRinL

6

7

8

9

1

2

3

4

5

R1

10K

serout

serin

DB-9RS-232

FIGURE 7. Two-way IRObstacle Detection Circuit.

FIGURE 8. Two-way IR ObstacleDetection Breadboard.

The following items are available fromthe author:www.RonHackett.net• PICAXE-08M• Five-volt resistorized LED• IR LED• Panasonic PNA4602M IR Detector

PICAXE-08Ms can also be purchaseddirectly from Revolution Education:www.picaxe.co.uk

SOURCES

Hackett.qxd 9/5/2006 8:04 PM Page 43

Page 44: Servo Magazine Octorber2006

the inputs are converted to active highfor output. The detectors also specify4.75 volts as the minimum operating

voltage. In spite of that, the circuitoperates reliably with the 4.5 volt(nominal) battery pack, and provides a

range of about 12 inches. I’msure this would deteriorate rapidly as the batteries discharge.Of course, a regulated five-volt supply provides improvedfunctioning of the circuit.

Conclusion

I hope this article has peakedyour interest in the PICAXE-08Mas a “little helper” for your robots.We have barely scratched the surface of the capabilities of thisamazing little chip. I didn’t evenmention that the “M” in PICAXE-08M stands for “music” — the08M has built-in commands forproducing complete tunes withsurprisingly little programming.So, if you would like your bot to“whistle” while he or she works,the 08M is just the chip for you!

The PICAXE-08M can be veryhelpful as an interface chipbetween your robot’s CPU and any sensor or output that requiresanything but the simplest of inter-faces. To give just one of manypossible examples, consider the

SRF005 Ultrasonic Range Finder. It is verypopular with roboticists, but it requires afair amount of attention from your bot’sCPU (i.e., frequent trigger pulses followed by relatively long periods of “listening” for an echo). An 08M couldeasily handle this task and inform yourbot of impending danger, while greatlysimplifying your CPU’s main program.

The PICAXE-08M packs a tremen-dous amount of computing power in avery small package and at a surprising-ly affordable price. If you are willing togive up PWM motor control and settlefor the “full-speed ahead” variety, I’msure you could build a fully-functionalautonomous bot using one PICAXE-08M as its only processing power. Infact, I have already started working onjust such a bot! SV

ROBOT’s LITTLE HELPER

44 SERVO 10.2006

;===== IR_detect.bas ==============================================================

; This program runs on a PICAXE-08M processor at 8 MHz.; It emits 38 kHz IR PWM bursts & checks for echoes after each burst.

;===== Constant Definitions =======================================================

symbol LED_L = 0 ; Left visible LED on output 0 (pin 7)symbol LED_R = 1 ; Right visible LED on output 1 (pin 6)symbol IRout = 2 ; Both IR LEDs on PWM output 2 (pin 5)symbol IRinL = input3 ; Left IR detector on input 3 (pin 4)symbol IRinR = input4 ; Right IR detector on input 4 (pin 3)

;===== Variable Definitions =======================================================

symbol echo = b0 ; used to store & manipulate echo values

;===== Main Program ===============================================================

setfreq m8 ; set internal resonator to 8 MHz

dirs = %00000111 ; configure I/O pins 2, 1 & 0 as outputs

main: pause 200 ; pause for 100 mS; (duration is halved @ 8 MHz)

pwmout IRout, 50, 106 ; PWM burst @ 38 kHz, 50% Duty Cyclepause 20 ; burst duration = 10 mS

; (duration is halved @ 8 MHz)pwmout IRout, 0, 106 ; PWM off

echo = pins ; move IR inputs to bits 4 & 3 of echoecho = echo / 8 ; and shift them right to bits 1 & 0

; IR detectors are active-low inputs,pins = NOT echo ; so invert echo for active high

; and move it to outputs 1 & 0

goto main ; do it again, forever

FIGURE 9. Two-Way IR ObstacleDetection Basic Program.

You can reach Ron via email [email protected] or visit hiswebsite at www.RonHackett.net.

ABOUT THE AUTHOR

Hackett.qxd 9/5/2006 8:04 PM Page 44

Page 45: Servo Magazine Octorber2006

Isaw a sign a couple of years agothat said “Electronics Garage Sale”and nearly caused an accident

slamming on the brakes in my truck. Itwas worth the stop, because they wereselling a late 1970’s vintage radio con-trolled dunebuggy powered by a smallglow-fuel engine for $20. The enginewas shot but the electronics were okay,and my plan was to remove the servosand receiver and junk the rest of it.

Once I got home, I scavenged theelectronics and discarded the engine,fuel tank, and muffler. All that was leftwas the chassis, suspension, and drive-train — all beat up and covered with glowfuel residue. It was a mess, but it was toogood to just throw away, so I set it asideand moved on to other projects. Severalprojects later, after accumulating somenice stepper motors and other bits, Idecided it was worth the (substantial)effort to clean up the parts and use themas a robotics platform. Although it’s veryunlikely you will be able to exactly dupli-cate my “Mars Rover,” the electronics

and code described here should be compatible with pretty much any four-wheeled chassis you would care to use.

Design by PartsThe designs of my projects are

generally dictated by the parts I have,and this one is no exception. I have ahard time buying parts when I alreadyhave lots and lots of them around. Sothe only reason I used a bipolar stepperdrive motor was that I had a good onewith ball bearings and a shaftdiameter which fit the drivesprocket from the dunebuggy.The BASIC Stamp 2 controller Iused is a bit underpowered forthis application, but it was avail-able. I’m pretty happy with theresults even though I had only avague idea what it would looklike when I started building.

The mechanical design of theRover is pretty straightforward and notall that different from the originaldunebuggy. The suspension and steering mechanisms are pretty muchunchanged. I had to replace all of theoriginal frame with aluminum C chan-nel stock, and I converted the chassisfrom four-wheel drive to rear-wheeldrive by shortening the drive chain. Imounted the stepper drive motor andsteering servo on the new frame, andthe result is shown in Figure 1.

Do-IIt-YYourself

MARSROVERMARS

ROVER by DDan GGravatt

Give yourself a “mission” to build your own Roverwith parts you already have at home.

SERVO 10.2006 45

Figure 1. Mechanicalcomponents of the Rover.

Gravatt.qxd 9/5/2006 7:20 PM Page 45

Page 46: Servo Magazine Octorber2006

46 SERVO 10.2006

Sensor SelectionOnce the mechanical platform was

finished, I started thinking about whatsensors to use so that the Rover couldnavigate itself autonomously. I didn’thave one of those nifty ultrasonicrange finder sensors, so I settled for alow-tech infrared obstacle detectorusing a 38 kHz infrared receiver mod-ule from an old VCR. The simplicity ofthis sensor is compensated by the waythe BS2 code divides the “landscape”in front of the Rover into five horizontal sectors, as well as one “look-down” sector to prevent it from drivingoff a cliff.

The IR sensor board (see Figure 2)is mounted on a servomotor on thefront of the Rover for a good field-of-view, and pans back and forth over anarc of 135 degrees or so while theRover is in motion. The infrared LEDused for the horizontal sector scanningis mounted in a metal tube to betterdirect the scanning beam and minimizeany stray light hitting the detector.

A second LED for the“look-down” function ismounted separately andangled down and awayfrom the detector. A control input from the BS2(see Figure 3) selects one ofthe two LEDs at different

times during each sweep. I found thatthe 100 µF capacitor on the output ofmy IR sensor was necessary to give a stable, glitch-free output to the BS2.

Since even the best obstacle sensors can miss things, I wanted aback-up ability to sense if the drivemotor stalls due to hitting something. Iglued a bar magnet to the end of thedrive sprocket and positioned a Hall-effect sensor (scavenged from an old3.5” floppy drive) near it to monitor theNorth-South field transitions as thesprocket turns (see Figure 4). The sen-sor is simple, but the code processingits output is not (more on this later).

NavigationThe Rover knows what’s ahead of

it; now it needs to navigate itself. A ser-vomotor steers the front wheels, andthe rear wheels are driven by the bipo-lar stepper motor. Along with panningthe sensor servomotor and collectingdata from the IR sensors and the Hall-effect sensor, this is too many tasks for

the humble BS2 to handle. Controllingthe bipolar stepper motor is the mosttime-consuming of these tasks, so Iadded an EDE1204 bipolar steppercontroller to the design to lighten theBS2’s workload. The EDE1204 is aMicrochip PIC16C54B which the folksat E-Lab have programmed to control abipolar stepper motor with a fairamount of flexibility and a minimum ofoutside help.

The control outputs from theEDE1204 are fed to an L298N dual H-bridge which drives the stepper motorcoils (see Figure 5). Schottky diodes onthe motor outputs protect the L298Nfrom voltage spikes when the coils are de-energized. The two one-ohmresistors sense and limit the currentsupplied by the L298N, but I wasunable to find a formula on thedatasheet to calculate exactly what thecurrent limit is for a given resistor value.

On the other hand, I don’t knowthe specifications on the bipolar stepper motor I’m using either, as itwas scavenged from an inkjet printer. Itmoves the Rover around just fine with a 12-volt supply, such as a smalllead-acid gel cell.

Several of the control inputs to theEDE1204 are wired high or low to setits basic operating parameters. I haveconfigured it to generate the motorcontrol pulses by itself in full-step(rather than half-step) mode. It is alsoset to keep the motor coils energizedeven when stopped, so the Roverwon’t roll down a slope. The remainingfunctions required for the Rover’s operation (motor start/stop, direction,and speed) are under the BS2’s control.

The BS2, of course, is where every-thing comes together (see Figure 6).

Do-IIt-YYourself MMars RRover

Figure 2. Closeup of theIR sensor board.

Figure 3. IR sensorboard schematic.

Figure 4. A closeup view of stallsensor and magnet.

Gravatt.qxd 9/5/2006 7:21 PM Page 46

Page 47: Servo Magazine Octorber2006

Nothing too fancy in this part of the circuit, and only half of its I/O pins areused for this application. Less than halfof its two kilobytes of memory is usedfor the code.

ElectronicsConstruction

Construction of the electronics forthe Rover is pretty straightforward. Isuggest building and testing the step-per motor control board first, becausea Rover that can’t move isn’t muchgood. Check the wiring to your steppermotor to ensure that the directioninput for the EDE1204 corresponds tothe direction the Rover actually moves.Then, build the IR sensor board andadjust the oscillator frequency with thevariable resistor until it matches the IRsensor you use. Check that the IR sensor provides a stable output whenan obstacle is present or absent, anddon’t forget to check the “look-down”LED too.

The BS2 code expects a logic lowoutput from the sensor when an obsta-cle is present, so if your IR sensor’s output is inverted, you will need tomodify the code or re-invert the sensoroutput. Finally, connect everything tothe BS2 and load the code.

Load the CodeAnd how about that code, any-

way? That’s where the behavior of the

Rover is created, and the codedescribed below (which is available onthe SERVO website at www.servomagazine.com) is only one way to usethe hardware I’ve described above. Ifyou’ve got more processing poweronboard and/or better programmingskills than I, very complex behavior canbe created using just a few sensors.Note that my code uses the PBASIC 2.5version of Parallax’s tokenizer to imple-ment true IF-THEN-ELSE branching.

Most of the time the BS2 spends in

the Rover code is in the subroutinescalled MOVING and SWEEPBACK. Aftera brief power-on pause to connect the battery to the Rover, the MOVINGsubroutine is the first code to run. Itdoes several interleaved tasks:

• Checks the direction of the last sensor servo sweep (the first sweep isalways left to right).

• Pans the sensor servo from full left tofull right.

SERVO 10.2006 47

Do-IIt-YYourself MMars RRover

Figure 5. Motor controlboard schematic.

Figure 6. BASIC Stamp 2interface schematic.

Gravatt.qxd 9/5/2006 7:21 PM Page 47

Page 48: Servo Magazine Octorber2006

• Collects data from the IR sensor atfive points (full left, left-center, center,right-center, full right) during thesweep.

• Checks for the presence of a drop-off(such as a table edge) directly in frontof the Rover.

• Detects magnetic field transitionsfrom the stall sensor and increments acounter (STALLCOUNT).

• Refreshes the steering servo to main-tain its position.

• At the end of the subroutine, incre-ments a counter bit (SERVTURN) sothat the next sensor servo sweep willbe from right to left.

The SWEEPBACK subroutine doesthe same tasks as the MOVING subrou-tine while sweeping the sensor servo

from full right to full left.The MAIN subroutine is where the

Rover’s behavior is determined. Here,the data collected from the latest IRsensor sweep and the stall sensor isused to select the appropriate directionof travel. Data which potentially repre-sent the greatest hazards to the Rover(drop-off or obstacle directly ahead, ormotor stall) are evaluated first, and the Rover will back up if any of theseconditions exist.

Motor stall is detected by countingthe magnetic North and South (0 and1) states from the stall sensor duringan IR sensor sweep, storing that count,and comparing it to the count from thesubsequent IR sensor sweep. If the twototals are the same, stall is detectedand the Rover backs up to clear theobstacle. These totals are almost neverthe same during normal drivingbecause the rotation of the drivesprocket is not synchronized with thestall sensor count interval, so the probability of a false stall signal is low.On the downside, it takes up to twofull sensor sweep periods for the Roverto detect a stall.

In the event that the Rover getsitself stuck in a place where it cannot move forward due to anobject directly ahead (detected bythe IR sensor), and cannot backup due to an object behind(detected by the stall sensor), theRover will stop moving. This con-dition is the first one checked inthe MAIN subroutine because itcombines the two hazard condi-tions described above. Evaluatingeither hazard separately beforeevaluating them together mightoverlook the Rover’s true situa-tion and cause it to continuebacking up into an obstacle. TheIMSTUCK subroutine stops theRover and could also includesome code to provide an indica-tion that the Rover needs help.

To avoid what DouglasAdams (author of the Hitchhiker’sGuide to the Galaxy books)would call a Herring SandwichLoop, the Rover does not back upin a straight line. Instead, theBACKUP subroutine will turn the

steering servo all the way to one sideand turn while backing up. If morethan one interval of backing up isrequired to clear an obstacle, theBACKUP subroutine will alternate thedirection of the turns using a counterbit (BACKTURN). This will allow the IRsensor to sweep the terrain to the leftand right of an obstacle and (hopeful-ly) find a clear path forward.

If the MAIN subroutine determinesthat there are no immediate hazards tothe Rover, it next evaluates the IR sensor data for obstacles to the left orright of the direction of travel.Obstacles close to the direction of trav-el result in a sharp turn away from theobstacle, while those detected fartherfrom the direction of travel results in agentle turn away from the obstacle.

By not overreacting to obstacles tothe sides, the Rover can maneuver bet-ter in tight quarters and maintain asmoother direction of travel while making it less likely that an obstaclewill eventually be met “head-on.” If theRover detects obstacles to the far leftand far right (such as in a hallway), butnothing ahead, or if no obstacles aredetected by the IR sensor, the Roverwill continue in a straight line.

The remaining subroutines are executed between sensor sweeps toconfigure the steering servo and theEDE1204 to move the Rover in the direction selected by the MAIN sub-routine during the next sensor sweep.The steering servo is set first, then theappropriate speed and direction ofrotation for the stepper drive motor,and the code jumps back to the MOVING subroutine.

Mission To ... ?Once you have your Rover opera-

tional, give it a mission. Place a cameraon it for reconnaissance, or a roboticarm to collect items the Rover encoun-ters. Add additional navigation sensors,like an electronic compass, an ultrason-ic rangefinder, or a second IR sensor tosearch for obstacles behind the Rover.Give it the ability to collect data on tem-perature, radiation, light intensity, orother characteristics of its environment.

Happy Roving! SV

48 SERVO 10.2006

Do-IIt-YYourself MMars RRover

Steerable four-wheeled chassis Bipolar stepper motor Two standard servomotors Small 12-volt lead-acid gel cell BASIC Stamp 2 EDE1204 bipolar stepper motor controller

(or use an EDE1200 for unipolar stepper motors)

4 MHz ceramic resonator with capacitors L298N dual H-bridge driver LM2940CT five volt regulator LM555 timer 38 kHz IR receiver module (2) infrared LEDs Hall-effect sensor and bar magnet (8) Schottky diodes, GI822 or equivalent 2N3904 transistor 2N3906 transistor (3) 100 µF capacitors 0.01 µF capacitor (2) 1 ohm resistors (2) 1K ohm resistors 10K ohm resistor 150 ohm resistor 2.2K ohm potentiometer

Parts List

Dan Gravatt is a licensed geologistin the state of Kansas. He can bereached at [email protected]

About the Author

Gravatt.qxd 9/5/2006 7:21 PM Page 48

Page 49: Servo Magazine Octorber2006

Electronic Parts & Supplies Since 1967

For the finest in robots, parts, andservices, go to www.servomagazine.comand click on Robo-Links to hotlink to

these great companies.

SERVO 10.2006 49

www.micromegacorp.com

NewuM-FPU V332-bit IEEE 754, I2C and SPI interface10 to 70 times faster than V2

See website for full details

Floating Point Coprocessor

RobolinksOct06.qxd 9/8/2006 4:10 PM Page 49

Page 50: Servo Magazine Octorber2006

50 SERVO 10.2006

Fortunately, there are new battery chemistries on the horizonthat use nanotechnology to achievethree times the energy density ofconventional lithium ion batteries[1]. Regardless of the chemistry, theenergy is finite, and proper energymanagement techniques and technology can extend autonomoustime by a factor of two or more.

This article reviews energy man-agement principles for autonomousrobotics, with an emphasis onselecting and designing power sup-ply electronics, how to implementreal-time power reconfiguration,and monitoring techniques.

EnergyManagement

Continuing with the biologicalanalogy, energy managementencompasses not only acquiringenergy, but regulating its expendi-ture. A robot that’s continually moving and using its myriad sensorsto explore the environment will run down sooner than a robot thatalters its behavior to reflect the cur-rent energy stores. Sleeping whennecessary, limiting maximum speed,switching off unnecessary sensorsand systems when appropriate,and, for a walking robot, switchingto a more efficient gate, can resultin significant energy savings.

Power SystemsPower systems — batteries and

onboard regulators — are often anafterthought, a distant second orthird behind the drive system andthe microcontroller — and often forgood reason. A typical carpet

roamer will do nicely with a fewAA NiCds connected to an inex-pensive linear regulator, such asthe ubiquitous 7805, a few capaci-tors, and perhaps a zener diode forinsurance. This is an appropriateconfiguration for a simple carpetrover based on a microcontrollerand a few proximity sensors.

However, when you start work-ing with one of the new 3.3V multi-core processors, one or two 9Vwireless pinhole cameras, a 5V 104-format PC card, and a 5V servo con-troller, all on single 14.4V battery,then power suddenly becomes veryimportant. High current demands,voltage spikes, the need for multiplevoltages — some switched on or offduring robot operation — are usual-ly beyond the capabilities of a 60cent linear regulator. Furthermore,when you’re working with a $1,200embedded PC board, $2,800 laserrange finder, and another $1,000 inwireless hardware and sensors, thelast thing you want is to have your components fry because thecircuitry wasn’t protected againstshorts when the robot flipped.

The optimal mix of batterychemistry and regulator electronicsdepends on the robot design andapplication. Given this caveat, myideal robot power system wouldhave the following characteristics:

• Fused for short circuit protection• Input polarity reversal protection• Output voltage surge protection• Automatic shutdown of motion

control functions with loss ofremote control signal

• Provide input and output isolation• Highly efficient• Affordable• Lightweight• Self-monitoring• Stabile and accurate output• Support switched power sub-

systems

Energy Management for

AUTONOMOUS ROBOTS

In robotics — as in biologicalsystems — energy is a finite, precious resource. Even

with a lightweight platform, an efficient drive mechanism, andlow-power components, mostrobots exhaust their electro-chemical batteries in minutes to hours. While there are exceptional implementationsthat rely on solar power or fuel cells for extended operation, most robots are trulyautonomous for the relativelybrief period of time betweenbattery charges.

by Bryan Bergeron

Multi-regulator in use setting up a wireless system on a modified E-Maxx platform.

[1] A123 Systems. www.a123systems.com.

REFERENCE

Bergeron.qxd 9/5/2006 8:06 PM Page 50

Page 51: Servo Magazine Octorber2006

• Linear ramp-up for servo systems• LED indicators of operation• Simple• Low standby or quiescent power

dissipation

Some of these characteristics aremutually exclusive. Even so, let’s reviewsome popular regulator technologies,keeping the characteristics of an idealsystem in mind.

Linear RegulatorsLinear regulators, which act like

variable resistors to drop a voltagedown to a lower fixed or variable value,are simple, inexpensive, and light-weight. The linear regulator circuitshown in Figure 1 is appropriate forapplications with current requirementsof 5V at 500 mA or less. The LF50CPThas a very low voltage drop and, moreimportantly, it supports switched powersubsystems through the INHIBIT lead.Driving the INHIBIT lead high by con-necting an appropriate source throughJack JIN, turns off any subsystems connected to JOUT. The jumper, JP, isused to keep the regulator switched on.I’ve used this configuration with goodresults on a 12-cell NiMH battery pack.

The major downside of this andother linear regulators is efficiency.However, when used to occasionallyswitch on circuitry, efficiency may notbe a major factor.

Switching RegulatorsSwitching regulators — also called

DC-DC converters — are inherently moreefficient than linear regulators, but arealso more complex, require more com-ponents, and are often more expensive.They also tend to be more expensivethan simple linear regulators. However,ready-to-use modules, such as thoseshown in Figure 2, are the quickest

route to stable, high-efficiency power.Switching regulators are more

finicky than their linear counterparts,especially when it comes to input voltage. For example, the ETA OC1-3.3shown in Figure 2 provides 3.3V at 1.5A.While the unit is only about 30 x 20 mm,it’s dwarfed by the Bourns SX5A-12 thatis capable of supplying any voltage inthe range of 0.75 to 5.5V at a full 5A.

Why the size discrepancy? The majordifference between the two switchingregulators is the range of input voltagesthey support. The OC1 can work with anyvoltage from about 10V to 32V — whichis perfect for the 12-cell NiMH packs that run 15V to 16V when fully charged.The SX5A, in comparison, expects 10V to 14V. The module shuts down with anything outside of that range.

The efficiency of the OC1-3.3and 5V OC1-05 is in the low 90s,which is significantly better than anything a linear regulator could provide. In addition, the OC1 seriesof switching regulators support aremote cutoff for subsystem shut-down. For continuous operation, theremote cutoff (RC) lead is kept highwith a pull-up resistor, as in Figure 3.

The basic configuration of theSX5A is similar to that of the OC1.However, the output voltage of theSX5A can be set by either applyinga voltage to the TRIM lead ofthe device orinstalling a resis-

tor to ground. The value of the resistoris defined by the following equation:

Rtrim = [10.5/(Vout-0.7525) – 1] K ohms

The SX5A, which can be disabledremotely, lends itself to programming,either one time or during robot opera-tion, when combined with a program-mable potentiometer, such as theCAT5113. For example, I use the circuitin Figure 4 to supply voltage to a robotarm. Slowly ramping up the voltage atstartup avoids the sudden jerking thatoften occurs when servos are first ener-gized. The CAT5113 is easily controlled

SERVO 10.2006 51

FIGURE 1. Linear regulator with supportfor subsystem cutoff through the use ofthe INHIBIT lead.

FIGURE 2. Switching regulators. The ETAOC1-3.3 (lower left) provides [email protected],while the smaller Bourns SX5A-12s (right)each provide 0.75-5.5V@5A.

FIGURE 3. The ETAOC1-3.3 configuredfor continuous operation.

Bergeron.qxd 9/5/2006 8:08 PM Page 51

Page 52: Servo Magazine Octorber2006

by a Stamp or other microcontroller,and the output pins — High, Low, and Wiper — correspond to the sameterminals on a physical potentiometer.

Switched PowerPower to subsystems can be

switched, regardless of whether the reg-ulator supports remote operation. Figure5 illustrates the use of a solid-state relayto switch a 9V supply. I use the circuit toswitch between two 9V pinhole camerason a crawler — one facing front and the

other attached to the head of an arm.Using the switch enables me to use onereceiver and switch between the twocameras, without the need to handleaudio or video signals. The LC110P iscapable of switching a continuous current of 120 mA, and 350 mA peak.

SafetySafety should be a major concern

when experimenting with a new robotdesign or even when working on an olddesign in a new environment. Lithiumcells ignite and burn when shorted foronly a few seconds, and a $1,200

processor board can beruined if a stray wire lands on the wrong padfollowing a crash. Safetyinvolves good design prac-tices, as well as providingtechnological solutions toinevitable accidents.

Current LimitingA fundamental safety

precaution is to limit thecurrent that can flowfrom the batteries to thecircuitry. A fast-actingfuse — such as the ATCBlade Fuse or a PolyswitchResettable Fuse — canprotect batteries and circuits from disaster.

The advantagesof a resettable fuse,such as the RaychemPolyswitch shown inFigure 6 (and previous-ly used in the schemat-ic shown in Figure 1),are size and weightsavings, and freedomfrom having to replacefuses. In addition,instead of designing aboard so that the fusecan be easily accessedand changed, a thinPolyswitch can betucked away out of

sight. The price for this convenience isthe added resistance of the switch.Whereas an ATC Blade Fuse might have aresistance of a few thousandth’s of anohm, the Polyswitch shown in Figure 6has a normal resistance of between0.035 and 0.085 ohms.

Polyswitches are rated by maximum voltage, maximum current,hold current, trip current, and trip time.The Polyswitch in the figure (Mouser650-SMD250) is rated at 15V, 40Amaximum current. It will handle 2.5Aindefinitely (hold current) and trip at5A. The trip time is 25 seconds at 8A.

Current MonitoringA basic principle in selecting a fuse

or resettable fuse is to anticipate thehighest normal current and to trip thefuse at anything higher. For example, Iuse several of the H-bridges fromParallax for motor controllers. Thebridges ship with a 25A ATC Blade fuse,but I replaced the fuses with 15A ver-sions after determining that the maxi-mum stall current on my robot was justover 12A. A clamp-on meter, such asthe Fluke-337 or Extech 355, is perfectfor monitoring high currents withoutbreaking circuit continuity or introduc-ing lead resistance into the circuit.

It’s often useful to determine currentdrawn from a power supply during nor-mal operation, especially during the earlydesign stages. A simple way to monitor

current draw in real time is to use a cur-rent monitor, which takes the voltagedeveloped across a current shunt resis-tor and translates it into a proportionaloutput current. This current is then

52 SERVO 10.2006

Energy Management for

FIGURE 4. The SX5A switching regulator, when combinedwith a CAT5113 programmablepotentiometer, becomes aprogrammable power supply.

FIGURE 5. Solid-state relay used to switcha 9V supply.

FIGURE 6. Diminutive PolyswitchResettable Fuse (left) and the ATC Blade Fuse (right) areinexpensive insurance againsta catastrophic meltdown.

Bergeron.qxd 9/5/2006 8:11 PM Page 52

Page 53: Servo Magazine Octorber2006

translated into an output voltage across aprecision resistor and ground, as shownin Figure 7. Current through the 0.01resistor creates a voltage that is sensedby the monitor and a voltage appearsacross the 10K resistor and ground.Assuming a 0.01 ohm shunt, the relevantequations for the circuit are:

Vsense = Vin – Vload

Vout = 0.01 x Vsense x Rout

That is, Vsense is the voltage dropacross the 0.01 ohm resistor. At 1A,the voltage drop is 0.01V, and Vout is0.01 x 0.01 x 10K or 1V. A current of 5A will result in 5V across the 10Kresistor, which can be fed to the analoginput port of a microcontroller for logging or sounding an alarm.

Temperature MonitoringOverheating of battery packs and

regulator boards is a common problemin robotics work. Although most of theswitching and linear regulators havesome form of thermal auto-shutoff, ithelps to know that the temperature isrising well before power is shut off. Theleast expensive approach to tempera-ture monitoring is to install a thermistordirectly on the regulator board, and toperiodically poll the resistance with amicrocontroller.

The primary advantage of using athermistor — a temperature sensitiveresistor — is sensitivity. Thermistors aremore sensitive than thermocouples andmost other temperature measuringcomponents. Moreover, thermistorsare small, lightweight, and inexpensive.They’re also highly non-linear.Fortunately, a simple work-around is touse an ordinary resistor in parallel withthe thermistor. Sensitivity suffers some-what, but linearity is improved.

Most manufacturers provide tablesof resistor values for linearization, but asimple heuristic is to use approximatelyequal values at the desired temperature.For example, the thermistor in Figure 8has a resistance of 10K at room temper-ature. When paired with an ordinary10K resistor, the pair will provide a relatively linear response ± several tensof degrees around room temperature.It’s important to note that for this appli-cation, the absolute temperature isn’t

important. What mattersis that the temperate hasrisen above a predeter-mined level, such as 60°C. You can use a heat gun and thermalprobe to determine the resistance of thethermistor/resistor combination at thetemperature limit and program yourmicrocontroller accordingly.

A commercial solution to real-timemonitoring of temperature, current,and voltage is available from Eagle Tree Systems, in the form of theirMicropower E-Logger. The 17 gram sys-tem sells for about $100 when config-ured with sensors and cables for RPM,voltage, current, and temperature. Themost impressive part of the package isa Windows-based application that canbe used to graphically display the data.

Connectors and CablesAn often overlooked aspect of ener-

gy management is the cables and con-nectors used to carry current from thebattery to circuit boards and betweencircuits. As a rule of thumb, use 14gauge wire up to about 30A, 10 gaugeup to 45A, and eight gauge up to 75A.Of course, eight gauge copper wire isheavier and more difficult to handlethan 14 gauge wire, but at 50A or 60A,the electrical difference is significant.

Some of the best connectors avail-

able for robotics applications are theW.S. Deans Ultra-Plug, available fromTower Hobbies, and the AndersonPowerPole connectors, available fromPowerWerx. The Ultra-Plug is light-weight and goof-proof, but thePowerPole is available in sizes designedfrom for 15A-350A, and is compatiblewith several splitters and adapters.Consider purchasing a few meters of silver solder, which contains about 2%silver, for very high current applications.

Putting it TogetherThe multi-regulator circuit shown in

Figures 9-11 is offered to readers whoneed a robotic power supply with multi-ple, isolated output voltages andswitched subsystem capabilities. It isdesigned to support two batteries, a 14V-16V NiMH pack, such as the common 12-cell RC configuration used on the E-Maxxtrucks, and a separate 12V source. Thepopulated board measures 80 x 95 mm,

SERVO 10.2006 53

AUTONOMOUS ROBOTS

FIGURE 8. Temperature monitoring with a thermistorin parallel with a resistor.

FIGURE 7. A low-resistance shunt resistorand a ZXCT1009 current monitor for real-time current monitoring.

FIGURE 9. Top (left) and bottom (right) ofthe populated multi-regulator board.

Bergeron.qxd 9/5/2006 8:11 PM Page 53

Page 54: Servo Magazine Octorber2006

Energy Management for

54 SERVO 10.2006

Bergeron.qxd 9/5/2006 8:12 PM Page 54

Page 55: Servo Magazine Octorber2006

weighs 65 grams, and makes extensiveuse of surface-mount components.

The section of the supply shown inFigure 10 uses switching OC1 modules toprovide [email protected] and [email protected]. Linearregulators and a solid-state relay are usedto provide two [email protected] outputs, [email protected] outputs, one [email protected] output,and two switched [email protected] outputs. The current available from the three 9V terminals is 0.5A total. The regulators inthis part of the multi-regulator board areintended to work off of the same batteryused by the drive mechanism.

The section of the supply shown inFigure 11 provides 5V@5A and 0.75-5.5V@5A outputs. It uses the SX-5A andassumes a 10V-14V source. Both sidesfeature current monitoring and LEDs onall outputs. The ExpressPC schematic andboard design are available on the SERVOwebsite (www.servomagazine.com)for readers who want to modify theboard to their specific needs.

Does the multi-regulator fulfill the listof requirements established above forthe perfect power source? Not quite. I’mstill waiting for an inexpensive, light-weight, high-current module that workson any input voltage. Whether you opt tobuild the multi-regulator or use some ofthe technologies discussed here to design

your own robot supply, you’ll appreciateusing one energy management systemfor all your robot designs. With power

management issues resolved, you canfocus on the more challenging aspects ofrobot development. SV

FIGURE 10 (left). Schematic of themixed linear and switching regulator circuitry in the multi-regulator board.This section of the board is designed torun off of a 14V-16V, 12-cell NiMH packor equivalent.

AUTONOMOUS ROBOTS

FIGURE 11. This sectionof the multi-regulatorboard is designed torun off of a 10-cell NiMH(10V-14V) pack.

SERVO 10.2006 55

Mouser Electronicswww.mouser.com

PowerWerxHigh-current connectors, splitters,

and cableswww.powerwerx.com

Tower HobbiesConnectors, cables, and silver solder

www.towerhobbies.com

Robotics Group, Inc.RGi PowerCommander programmable

power supplywww.roboticsgroup.com

Eagle Tree SystemsMicropower E-Logger

www.eagletreesystems.com/MicroPower/micro.htm

RESOURCES

Bergeron.qxd 9/5/2006 8:12 PM Page 55

Page 56: Servo Magazine Octorber2006

In Parts 1 and 2, we built the base and the controllerfor the FaceWalker robot. Now it’s time to add thebrain. If you remember back in Part 1 of the series, I

told you that the face on the robot was one of the keycomponents of the project. Without it, you have justanother walker, albeit a cool one. We will be using aPocket PC for the brain.

Let’s look at a few requirements:

• 300 MHz or faster processor, 500 MHz recommended• Windows Mobile 2003 or 2005• .Net Compact Framework 1.- SP3 or 2.0

• RS232 port• 240 x 320 or better graphics• ZeusPro Development Software

I understand that not everyone who wants to build theFaceWalker wants to use a Pocket PC. The good news is thatthe software that we create with the ZeusPro package willrun on a normal PC as well as a Pocket PC. ZeusPro is a veryeasy and inexpensive way to do Windows development onthe desktop and Pocket PC. It is perfect for robotics as it wasdeveloped for interfacing to the outside world. You can do allyour development, testing, and debugging on the desktopand then simply create a desktop or Pocket PC executable.

For those Pocket PC purists, there is even a full-blownPocket PC development environment that allows you to do all

the development, debugging, and testing on the Pocket PC.The software portion of our brain is crucial, but we have afew finishing touches we need to make to our base first.

Finishing Up the PlatformIf you have not done so already, you need to cut

out your upper platform. This platform needs to beat least 7” in diameter, but canassume any shape you wish to

add a different effect to theFaceWalker. I am going toassume you are usingclear Lexan for your platform, but just aboutany smooth material willwork. Most home centerssell 1/8” Lexan sheets

and an 8” x 10” sheet willcost you under $5.

The Lexan sheet willcome with a protective plastic

Part 3 — The Brain

b y M i c h a e l S i m p s o n

56 SERVO 10.2006

FaceWalkerFaceWalker

Simpson3.qxd 9/5/2006 7:27 PM Page 56

Page 57: Servo Magazine Octorber2006

covering. Leave this in place while youcut out the platform. The coveringmakes a nice surface on which to drawyour pattern and provides lubricationwhile you cut the sheet. If you havesome scrap Lexan or plastic materialwithout this covering, you will need toadd some masking tape. As you cut theplastic, the covering shreds and providesa lubricant that keeps your scroll saw orband saw from melting the plastic. Thiswill yield you a much better edge.

Once the platform shape hasbeen cut out, you will need to markout and drill the holes as outlinedback in Part 1 of this series. We alsoneed to create the holes for the twoLEDs in our PS2 controller interface.This is done by inserting six #4machine screws into the standoffs asshown in Figure 1.

You then place the platform ontop of these screws, matching up theholes as shown in Figure 2. At thispoint, you can place a small mark onthe Lexan over each LED. For standardsize LEDs, a 7/32” drill bit is perfectbut a 1/4” will do if you don’t havethat size. After this is done, you canpaint the underside of the platform.Use a paint that was designed for

Lexan. You can get this from yourlocal hobby shop as it is what hobbyists use to paint RC car bodies.

In Part 2, you added a connectorto a PS2 extension cable. It is time toonce again connect that connector tothe DiosPro. We need to take a smalltie wrap and attach the cable to thestandoff shown in Figure 3.

This provides some strain relief tothe connector that we made back inPart 2. Place a small 1” piece of double-stick foam tape on the bottomof the PS2 connector and attach it tothe platform as shown in Figure 4.

To attach the Pocket PC to theplatform, we need a universal PDAmount like the one shown in Figure 5.

These have a flexible ball jointbehind the head, and the neck can bepositioned at any angle. They use asuction cup to hold the mount inplace. I have had one of these in mycar for years. The connection is quitestrong and will last a long time as longas the surface is smooth and clean.

You can find one of thesemounts for under $25 by searchingfor “Universal PDA Mount” onAmazon. You can also find them insome auto supply stores.

You are not restricted to thismount alone. The main head can beremoved and mounted any number ofways. In truth, I mounted the head ona shorter cell phone mount on myfirst FaceWalker. I do recommend,however, that you use the cup for awhile until you get your FaceWalkertricked out the way you want. Thisallows you to remove and repositionthe mount as needed.

The actual PDA mount position isa matter of preference, but I placedmine as far back as it would go sothat the Pocket PC would be some-what centered as shown in Figure 6.

Pocket PC SerialInterface Cable

You are going to need a cable thatconnects your Pocket PC to theFaceWalker. Each and every Pocket PC isdifferent and you will have to researchyour particular model in order to purchase the correct one. Most PocketPC cables like the one shown in Figure 7

SERVO 10.2006 57

Figure 22 Figure 33Figure 11

Figure 55

Figure 66

Figure 44

Simpson3.qxd 9/5/2006 7:28 PM Page 57

Page 58: Servo Magazine Octorber2006

were designed to connect the PDA tothe PC. This sets the Pocket PC as a DCE device and will not work when connected to the SSC-32. So, for mostpurchased cables you will need a gen-der changer and nine-pin null modem.

I attempted to use Bluetooth anda Bluetooth RS232 adapter and hadlittle success. While Bluetooth hassome good throughput speeds, Ifound that it has too much latencywhen used in an application such asthis. Now, I’m not saying it can’t bedone. The other problem thatBluetooth has with operations like thisis that if the Pocket PC gets turned off,you have to manually go back andreset all the connections, making it apain to set up each time you changethe batteries in the FaceWalker.

I also tried IRDA and Zigbee andneither panned out. With all the badpress that RS232 serial I/O gets, itprovides a very reliable and rock solid

interface in applica-tions like this. If youdecide to go with acable like this, wrapthe excess cablearound the neck ofthe mount and routethe cable through theinside of the basealong the side of theSSC-32.

Make Your OwnPocket PC Cable

Another option is to build a cable.If you have an IPAQ Pocket PC, thenyou are in luck. The Kronos Roboticswebsite has a step-by-step projectshowing you how to build the cableshown in Figure 8. The advantage to acustom-made cable is that it can bedesigned to the exact length and youwon’t need any gender changers ornull modems. You can find the instruc-tions on how to make one of thesecables at www.kronosrobotics.com/Zeus/IPAQcon.shtml

Some FinishingTouches

Take a look at Figure 9. I addedsome split loom tubing to the serialcable and the PS2 connector cable.Walkers are notorious for destroying

servo cables, so I haveadded thin plastic wrap toall of mine. You can alsouse thin split loom tubingfor this, as well.

You may have alsonoticed in Figure 9 that I amusing the shorter cell phone

mount. You will still need the standardsized PDA head as the cell phone headis too small to hold a Pocket PC.

First TestBefore I get into the details of the

software, let’s test the completedFaceWalker from the PC. TheFaceWalker desktop software requiresyou to have .Net installed on yourcomputer. It will not run without it.

• Install the FaceWalkerDT_Setup soft-ware on your desktop computer.

• Place the FaceWalker on some sort ofstand so that the legs are free toarticulate.

• Connect a nine-pin serial cable between the FaceWallker SSC-32board and the PC.

• Connect a wired or wireless controller to the FaceWalker PS2 connector.

• Power up the logic using the logic power switch.

At this point, the two LEDsshould blink, then go green.

• Start the FaceWalker_DT application.

The red LED should start to flash.If it does not, you may need to changethe com port as shown in Figure 10.The FaceWalker will wink continuously(nervous twitch) if it does not have aconnection to the PS2 controller.

• Power up the servos using the servopower switch.

Move the right joystick forwardslightly until the legs start to move.Once they do, let the joystick moveback to the center position. The legsshould stop moving. The more youmove the joystick, the further the legstride. Try all joystick directions.

Final Pocket PCHookup

Now it’s time to connect yourPocket PC to the FaceWalker.

• Install the FaceWalkerPPC_Setup soft-ware. You will need to have yourPocket PC attached to the PC when

58 SERVO 10.2006

Figure 77 Figure 88

Figure 99

Figure 110

Simpson3.qxd 9/5/2006 7:28 PM Page 58

Page 59: Servo Magazine Octorber2006

you run this install.• Once installed, disconnect the Pocket

PC from your desktop and place it inthe PDA mount on the FaceWalker.

• Connect the serial cable and any needed adapters to the Pocket PCand SSC-32 board.

• Connect a wired or wireless controllerto the FaceWalker PS2 connector.

• Power-up the logic using the logic power switch.

At this point, the two LEDsshould blink, then go green.

• Start the FaceWalker_PPC applica-tion on your Pocket PC.

The red LED should start to flash.If it does not, you may need to changethe com port as shown in Figure 10.

• Power up the servos using the servopower switch.

Again, move the right joystick forward slightly until the legs start tomove. Once they do, let the joystickmove back to the center position. Thelegs should stop moving. The moreyou move the joystick, the further theleg stride. Try all joystick directions.

That’s it!!!!! Construction is com-plete. Let’s take a look at the software.

The SoftwareThe FaceWalker brain software is

broken down into four sections, whichare: FaceWalker.txt, WalkerIKLib.txt,WalkerAnimationLib.txt, and WalkerActionLib.txt.

Let’s take a look at each sectionin detail.

FaceWalker.txtThis is the entry point into the

program. It contains the main loopand makes calls to various routinesthat allow the FaceWalker to operate.

When started, the program initial-izes various segments of the programand starts the com port. Once done, itenters a loop where all the processingin the program is taken care of.

• The first task in the loop is to check

the menu to see if we need tochange the com port.

• Next, we make a call to the animationroutines to handle any face changesthat were triggered.

• The program then calls the PS2 rou-tines that pulse the DTR lead that sig-nals the DiosPro chip to send us areading taken from the PS2 controller.A set of six global variables calledDualShock1-DualShock6 are populat-ed with the current PS2 readings.

• After the buttons are checked and handled, a call to the IK routines aremade to process the leg movements.

• The button settings are saved and we start all over and do it again.

WalkerIKLib.txtThis is the heart of the FaceWalker

walking commands. IK stands forInverse Kinetics. Here is whatthey do. Instead of using a statemachine like many walker pro-grams do, the position of eachleg target is calculated based onthe command you have given it.In other words, if you are tellingthe FaceWalker to spin, a mathe-matical calculation is made tocalculate the new position of theleg from its current position.

What this all means is thatyou can give the FaceWalker thecommands to move forward,sideways, and spin all at thesame time and it will respond. Italso means that from just aboutany position we can go toanother position without havingto return to a home position.This is not true of most state-based walker programs.

A big thank you goes toLaurent Gay for originallyimplementing the IK mathe-matics behind these walkerroutines. I simply ported thecode to the Zeus language andencapsulated it into theProcIK() subroutine.

WalkerAnimationLib.txtThis is an animation

engine that handles all thesounds and face animationsbased on tiny lists that are controlled by a state machine.

High level commands like PlayHello,PlayHey, PlayGetback, PlayMean, andPlayCommandAttack are called to loada series of arrays called Eyecommands,Mouthcommands, and Soundcommands.

These are then played back andchoreographed based on the timesloaded in their corresponding timearrays. The doface() subroutine isused at the gateway into this engineand is called on a regular basis fromthe main program loop.

WalkerActionLib.txtThe IK routines are used solely for

making the FaceWalker walk. If wewant to place the FaceWalker in adefensive stance, we need to make acall to the action library. The actionlibrary is where any action outside

SERVO 10.2006 59

Kronos Robotics — www.kronosrobotics.com• FaceWalkerDT install software• FaceWalkerPPC install software• FaceWalker source

• All the source code, as well as projectupdates, can be downloaded from the KronosRobotics website at www.kronosrobotics.com/Projects/FaceWalker.shtml

KRMicros — www.krmicros.com• ZeusPro: www.krmicros.com/Development/ZeusPro/ZeusPro.htm

Miscellaneous• Double-stick Foam Tape. One 1” piece should

do it. Any home center will carry this. A popular brand is 3M.

• Tie Wraps. You may need a couple of these toanchor some of the cables. You can pickthese up at most home centers also.

• An 8” x 10” sheet of 1/8” Lexan. You can pick up cut sheets at the same home centers.

• Universal PDA Mount. Perform a search on Amazon.com for ‘Universal PDA Mount.’

• Pocket PC serial cable. You will have to check with your particular Pocket PC manufacturer.

• Nine-pin Null Modem. You will need this if youpurchase a serial cable designed to connectyour Pocket PC to a desktop PC. Checkwww.jameco.com for this.

• Nine-pin Female-to-Female Gender Changer. You will need this if you purchase a serialcable designed to connect your Pocket PC toa desktop PC. Check www.jameco.com forthis, as well.

• Split Loom Tubing. This is needed only if you want to hide or protect some of the cables.Most home centers carry this in the electricalsection.

Parts LList

Simpson3.qxd 9/5/2006 7:29 PM Page 59

Page 60: Servo Magazine Octorber2006

normal walking movement is done.This is done in a couple of ways.

One way is that we simply call aComOutput command to place theservos in predetermined positionswith various delays between the calls.The ACT_ATTACK command is anexample of this type of action.

The other way is to use a set oflow-level action segments. I haveadded commands like HipV, HipV, and Knee, as well as higher level commands like LegUp, LegDown, andLegFWD. By calling these commands,you can perform movements in loops.The Shy command is an example ofthis. You could use these commands toplace FaceWalkers belly on the ground,then use the legs to create a wave.

The action library is also wherewe trigger face animations and soundto be played by the animation library.

FaceWalker OperationSince we are using a PS2

controller, there are quite a few com-mands you can give the FaceWalker:

Right Analog Stick• Left and right cause the FaceWalker

to strafe left or right.• Up and down cause the FaceWalker

to move forward and backward.

The amount of movement is deter-mined by how far you push the stick.

Left Analog Stick• Left and right cause the FaceWalker

to rotate.• Up and Down set the height of the

FaceWalker.

Select Button• Locks the current height in place.

Hitting it again releases it.

Digital KeyPad• Left and right set the number of

steps needed to make a leg move-ment. The lower the number, thefaster the legs will get to their posi-tions. For Pocket PCs, this is set to4, and for desktop machines this isset to 8 at program startup.

• Up and down set the amount of leg

lift, the FaceWalker uses. By adjust-ing this value and slowing downthe FaceWalker’s speed, you couldmake him tip toe.

Triangle Button• Slows down the overall servo speed.

X Button• Speeds up the overall servo speed.

Square Button• Face says “Hey.”

Circle Button• Face says “Hello.”

R1 Button• Attack Mode.

R2 Button• Shy Mode.

L1 Button• Cycle through commands. Face-

Walker face will say the command.

L2 Button• Do the command.

Many of these commands were created for the Robot Fest. Feelfree to modify them for your ownneeds.

Final ThoughtsThe FaceWalker has performed

flawlessly. It has proven to becomethe attention-getter it was designedto be. I have even taken it to non-robotic events and it has never failedat stealing the show.

Going FurtherThe action and animation

libraries were designed with expan-sion in mind. Take a look at the codeand start playing around.

The DiosPro microcontroller’spower has barely been tapped. Itwould be very easy to add some sensors to this interface such as aSonar. Once done, you could start toadd automation to your FaceWalker.It is absolutely feasible to make theFaceWalker totally automated. SV

60 SERVO 10.2006

Great range of I/O-24 peripherals, too...

Visit our website www.orteches.comOrtech Education Systems

1119 - 9th Ave. S. • Moorhead, MN 56560218.287.1379

www.orteches.com www.orteches.com www.orteches.com www.orteches.com www.orteches.com www.orteches.com

www.orteches.com www.orteches.com www.orteches.com www.orteches.com www.orteches.com www.orteches.comww

w.o

rtec

hes.

com

w

ww

.ort

eche

s.co

m

ww

w.o

rtec

hes.

com

w

ww

.ort

eche

s.co

m

ww

w.o

rtec

hes.

com

w

ww

.ort

eche

s.co

m

ww

w.orteches.com

w

ww

.orteches.com

ww

w.orteches.com

w

ww

.orteches.com

ww

w.orteches.com

w

ww

.orteches.com

Elexol 3rd Generation Low Cost USB Data I/O Module

Need to get data into or out of a USB port? Here’s what you need...• 24 independently programmable Input/Output pins grouped into 3 ports.

• Single module high-speed digital Input/Output solution.

• Up to 128 modules can be connected to a single PC with capabilities of further expansion.

• Easy to connect by 0.1" pitch headers to suit standard IDC connectors.

• Integrated Type-B USB connector.

• On-board unique serial number in EEPROM and custom programmable FLASH microcontroller.

• Both USB enumeration information and microcontroller can be re-programmed to suit customer needs.

• Module powered by the USB from the PC.

CONNECTOR/LED BOARDProvides screw terminal

connections plus optional either pull up or pull down resistors and

LED port status indication.

OPTO INPUT BOARDProvides 8 Opto isolated

inputs for each of the I/O-24 pins with LED indications.

RELAY OUPUT BOARDProvides 8 isolated relay

contact outputs suitable for a variety of loads.

SWITCH/PUSHBUTTON BOARD

Provides 8 switch/push buttons with LED indicators showing the

status of the I/O pin.

Simpson3.qxd 9/5/2006 7:29 PM Page 60

Page 61: Servo Magazine Octorber2006

Full Page.qxd 9/7/2006 2:00 PM Page 61

Page 62: Servo Magazine Octorber2006

I’m sure that you’ve heard of theDARPA Grand Challenge. Build a full-sized vehicle that can

autonomously drive from outside of Los Angeles, CA to outside of Las Vegas, NV. Of course, even the most trimmed down GrandChallenge robots cost hundreds ofthousands of dollars and the buildersspent tens of thousands of hoursmaking them.

But what if we could build mini Grand Challenge robots? Robotsthat were still autonomous and could go from one given GPS point

to another, but could be built by the average robot hobbyist? That’swhat RoboMagellan is. A robot about the size of an R/C truck thathas been reconfigured toautonomously drive around — operat-ing outdoors rather than inside. Butit’s not just a matter of putting aBASIC Stamp on an R/C and collecting your trophy.

Ted Larson — two-timeROBOlympics medal winner with hisRoboMagellan bot ‘Odyssey’ — pointsout that there are three key domains tomaster for building a successful

RoboMagellan robot:

1) Mechanical design.2) Electronics and sensor fusion.3) Software — by far the biggest factor.

“My personal observation hasbeen that most teams spend most oftheir time working on a good mechan-ical platform that drives around well,and the least amount of time on software. Our first year in Seattle, wedid exactly this, and of course, likeeveryone else, we ran into something,and didn’t make it to the final cone.Since then, we have been working onsoftware and sensor upgrades, andfinally have something that works well,two years later.”

Many articles have graced thepages of SERVO Magazine coveringthis very problem. Odyssey has a main power distribution, motor control board, a sensor board, a GPSnavigation board, a main CPU boardfor high-level decision making, and a camera board for talking to aCMUcam for cone finding. All the individual boards are tied togetherusing an I2C bus.

“Rusty” — Camp Peavy’sRoboMagellan bot — is similarly controlled by five different BS2 Stampcomputers. It is a network on wheels.One is the “Master Stamp” whichcoordinates the information from thefour others. One Stamp is dedicatedto getting GPS information; one is dedicated to getting compass

62 SERVO 10.2006

ROBOGAMESPREP:RoboMagellan

by Dave Calkins

Build something now — Don’t tryto solve the whole problem all atonce. I have seen some really elaborate designs that never madeit off the drawing board. Better to have a robot that doesn’t doeverything correctly than to haveno robot at all. Start simple, andwork your way into a more complexsolution.

Get started building early —Don’t wait until two weeks beforethe competition.

Don’t spend all your time onmechanical design — Good software

is more than half the problem. Focuson software.

Testing, testing, and more testing —Get yourself some road cones at alocal safety supply store. If you can’t make it work in your own backyard, then you certainly won’tbe able to make it work the day ofthe competition.

Join the Seattle Robotics Society(SRC) Yahoo! Group or the HomeBrew Robotics Club (HBRC) listserve. You will get great advicethere from others who have working robots.

TAKE OUR ADVICE ...Ted Larson offers some great advice for robot builders who want to

compete at next year’s ROBOGames:

Calkins.qxd 9/7/2006 8:18 PM Page 62

Page 63: Servo Magazine Octorber2006

SERVO 10.2006 63

PHOTO 1. You’re almost there! Arobot slowly makes it way to a bonuscone.

PHOTO 2. They may not be Stanley,but RoboMagellan robots can do agreat job of finding their way alongcourses as well as their bigger cousinsat DARPA can.

PHOTO 3. Getting a robot to a conecan be harder than you think.

PHOTO 4. Rusty — a bare-bonesRoboMagellan bot — was built by CampPeavy.

PHOTO 5. Marvin was a student-builtrobot that competed in 2005.

PHOTO 6. Ted Larson and Bob Allen’srobot “Odyssey” is custom-built fromthe ground up. It won the gold medalat ROBOGames 2006, and the silver theyear before.

PHOTO 7. If just come as an onlooker,why not catch some sun while watching the robots?

Photo 1

Photo 2

Photo 5 Photo 6

Photo 7

Photo 3 Photo 4

“That’s whatRoboMagellan is. A robot

about the size of anR/C truck that has

been reconfigured toautonomously drive around

— operating outdoorsrather than inside.”

[ ]Calkins.qxd 9/7/2006 8:18 PM Page 63

Page 64: Servo Magazine Octorber2006

information; one is dedicated to theultrasonic array; and finally, one isdedicated to the CMU color camera.Each gathers its information in paralleland relays it to the Master Stampwhich then uses that information inits decision making. Two robots completing the same task, yet withvery different designs.

All of Odyssey’s electronics do nothelp much without good sensory gear.Odyssey has five sonar units and navigates using a Garmin 18LVC GPS,combined with a self-designed six-degree-of-freedom inertial unit, and atwo-axis magneto-inductive compass.It also has US Digital optical encodersmounted to the motors that get fed

into the puzzle for dead-reckoningwhen necessary.

Ted and business partner BobAllen custom-built a navigation boardthat takes all this data in, and smashesit out into simple vector-pursuit pathplanning algorithms. Once they have apath to drive, they feed the appropriatemotor commands to a closed-loop control system on the motor controlboard, and then it’s rubber to theground to get there.

When Odyssey gets near where itthinks the cone should be, it startslooking at the camera for orangeblobs. The CMUcam does this nicely.A recently acquired AVR-cam fromJRobot will probably work even

better. Once the bot finds the cone, ithones in to touch it using large, bug-like feelers sticking out in front ofthe robot. The feelers work wellenough to know what’s there, and to touch the cone without knocking it over.

NavigationConsiderations

RoboMagellan is far more challenging than you might think. Firstand foremost, it’s never a straight linefrom start to finish. So your softwarehas to take into account how to goaround an obstacle and get back ontrack to arrive at the destination (bethat a bonus cone or the end point.)The terrain may be tricky to traverse — robots can easily get stuck or high-centered.

The course cannot be completedusing GPS alone, which can be spottyfrom one point to the next. Sobuilders have to plan on how theirrobot will respond when it’s not getting a signal. Finding a cone fromas close as a meter away is a more difficult problem than it initiallyappears to be, especially if you’reusing a CMUcam with its limited resolution. Bonus waypoints can bequite difficult to reach — they could betucked away in a tight space, or as difficult as climbing a ramp or notfalling off an embankment.

GPS reception on the course willbe intermittent, so you need a backupnavigation plan to get you throughthe dead spots. Haversine (GreatCircle) math is difficult to do on aneight-bit MCU — if you build aRoboMagellan bot, plan on using arobust chip to do your math. Somecompetitors use hand-held GPS unitsthat have the capability to do built-inrouting. It saves you from having todo the GPS math on your CPU, plus it’s easy to remove from therobot to collect waypoint data beforeyou start a run.

It helps to have additional sensorsthat can be used to increase the accuracy of your GPS data. InRoboMagellan, GPS repeatability is

64 SERVO 10.2006

ROBOGAMES Prep

The robot must autonomously navigate to a “destination” point,and touch an orange road cone, inthe shortest time possible.

Several bonus waypoints (moreorange cones) exist on the coursewhich, if touched, give your finaltime a fractional multiplier, thusimproving your time. Difficulty ofeach bonus waypoint determinesthe size of the fraction.

Just about any type of obstacle(rocks, buildings, holes, etc.) canexist between the starting point and the destination. The destination will most likely not bevisible from the starting line, nor will a direct path lead you to thedestination.

GPS coordinates of the start, finish, and bonus cones are handedout 30 minutes prior to the event,and contestants are allowed to walkthe course and collect their ownGPS data, if desired. You cannotpick up the robot and carry itaround the course to collect GPS data, so your GPS unit needs to be detachable for takingmeasurements.

The robot must fit in a 4 x 4 x 4 ft.square box, and cannot weigh morethan 50 lbs.

Course is laid out in a 300 sq. ft.area outdoors.

Competition goes on rain or shine,so robot must be weatherproof.However, the robot will not berequired to traverse a water obstacle to complete the course.

Each robot is scored on the bestof three tries to complete thecourse.

Each robot is given 15 minutes torun the course on each of the threetries.

Robot with the fastest, bonus-adjusted time to complete thecourse wins.

Each robot must be equippedwith either a wireless safety shutoff device, or a wired (tethered)dead-man switch.

No other “remote” control beyond the safety stop measure isallowed.

ROBOMAGELLAN RULES

Calkins.qxd 9/7/2006 8:19 PM Page 64

Page 65: Servo Magazine Octorber2006

SERVO 10.2006 65

more important than GPS accuracy.You should also use a compass and an inertial measurement unit to try to overcome GPS dead zones, and deliver more accurate GPSrepeatability. While you might lose aGPS signal, you won’t lose magneticnorth — so you can follow your bearing until you get a reliable GPSsignal again.

Finding the cone is not an easytask — don’t underestimate how difficult it will be. Just because youcan get the robot close, doesn’t meanyou will find it or even sense that it isthere. As with all color matching pro-grams, the lighting will change theapparent chrominance of the object —so be prepared for orange cones to look like another color. Lighting conditions are completely unpredictable, and determined byweather and shading conditions ofsurrounding obstacles.

Robot Platforms

One of the benefits of readingSERVO is that you’re already ahead ofthe game! If you’ve been readingChris Cooper’s recent series “Mobilityto the Maxx,” you’re already on routeto build a great RoboMagellan bot.Everything Chris has described so far is a great start for your own

RoboMagellan robot. It’s got almosteverything you need except a GPSreceiver.

Of course, the Maxx is just onepossible solution. You could use anynumber of robot platforms, including alegged walker. (I’d love to see a quickmoving hexapod compete atRoboMagellan — there’s no reasonlegged bots can’t upstage the wheeledrobots.)

RoboMagellan robots won’t becheap, however. Although Camp’s“Rusty” was put together for just a few hundred, you could easily spend $1,000+ on a robot — but by using your ingenuity, I know that many builders could make a successful RoboMagellan bot forunder $500.

RoboMagellan is a difficult, butrewarding event. Getting itright, however, takes a lot oftime. Start now if you’regoing to compete. Find afew parks nearby your homeand constantly practice withnew coordinates and obstacles, changing parksfrequently to get a feel forhow your robot operatesunder different terrain, aswell as better understandingjust how difficult it can be toget accurate GPS data.

While building a successfulRoboMagellan bot may seem like aninsurmountable task, you’ve got ninemonths before ROBOGames 2007 tobuild a robot — so start now! Set dead-lines! — Say, for example, by December,be able to make the robot move frompoint A to point B autonomously. ByFebruary, it should be able to dostraight-line movement from two GPSpoints. The next month, add the cone-finding and touching abilities. Then,add a third cone as a bonus. Or, picktwo GPS spots with an obstacle in theway, so the robot must go around itand find its own path again.

Building robots is never easy. Thisis a very hard challenge, but I’m suremany of you are up to it. If you startnow, you just might be able to takeTed’s place in next year’s event! SV

Name of Event: RoboMagellan Number of Robots per Event: One Length of Event: 30 minutes Robot Weight Range: 50 lbs/22.68 Kg Robot Dimensions: 4' x 4' x 4'/121.92 cm3

Arena Specifications: N/A Robot Control Specifications: Autonomous

Go to www.robogames.net/rules/magellan.shtml for further information on this event.

FOR YOUR INFO

PHOTO 8. Follow that human!PHOTO 9. A crowd follows the first robot to

compete at this year’s ROBOGames.

Photo 8

Photo 9

Calkins.qxd 9/8/2006 2:39 PM Page 65

Page 66: Servo Magazine Octorber2006

Payment EnclosedU.S. dollars drawn on a U.S. bank only

Bill Me (U.S. Orders Only!)

Visa/MC/Amex/DiscoverCard

__________________________________Card # Exp. Date

__________________________________Name on card

The monthly

magazine

for the next

generation

of robotics

experimenters

Gift To: 1 Year 2 Year 3 Year

Print Name ________________________________________

Address ____________________________________________

City_________________________________________________

State ___________ Zip ________________________________

Phone ______________________________________________

Email________________________________________________

Gift To: 1 Year 2 Year 3 Year

Print Name ________________________________________

Address ____________________________________________

City_________________________________________________

State ___________ Zip ________________________________

Phone ______________________________________________

Email________________________________________________

FFoorr ffaasstteerr sseerrvviiccee,, ssuubbssccrriibbee bbyy pphhoonnee oorr oonnlliinnee887777--552255--22553399 ((ttoollll ffrreeee))881188--448877--44554455 ((oouuttssiiddee UUSS))wwwwww..sseerrvvoommaaggaazziinnee..ccoomm

When ordering, use promotioncode Y6DXMS

U.S. Prices: 1 Yr $24.952 Yr $45.953 Yr $65.95

To order, photocopy this pageand mail to:

SERVO MagazinePo Box 15277

North Hollywood, CA 91615

Gift From:Print Name ________________________________________________________________________

Address ____________________________________________________________________________

City_________________________________________________________________________________

State ___________ Zip _______________________________________________________________

Phone ______________________________________________________________________________

Email________________________________________________________________________________

Gift Subscription

SERVO Xmas AD 06.qxd 9/7/2006 9:28 PM Page 66

Page 67: Servo Magazine Octorber2006

SERVO: Tandy, tell us a littleabout yourself, what you’ve beendoing at Microsoft, and what you arecurrently involved with.

TT: That could be a very longstory, having been at Microsoft for over24 years now. I have had a long careerthat included helping to start up anumber of Microsoft initiatives in a variety of areas. For example, I wasoriginally a product manager for ourBasic programming products. Laterthat evolved into managing our full lineof programming languages. Fromthere, I transferred over to manage thefirst two releases of MicrosoftWindows. Along the way I also man-aged the first version of MicrosoftFlight Simulation and even hardwareproducts like the Microsoft SoftCard (aZ-80 plug-in card for Apple II comput-ers that enabled them to run CP/M)and even was an interim manager forwhat became our Office applicationsuite for the Apple Macintosh. Having a keen interest in human-computerinteraction I also founded the firstusability labs, built prototypes ofadvanced user interfaces (including aninteresting little technology calledMicrosoft Agent), and helped start theeHome division responsible for creatingWindows Media Center.

I am currently the general manag-er of the Microsoft Robotics Group — anew product incubation developing anapplication development toolkit for therobotics community.

SERVO: Microsoft announced inJune their entry into robotics softwaredevelopment with the MicrosoftRobotics Studio product which you’vebeen working on. Can you tell me a little about Microsoft’s thoughtprocesses with respect to entering thisspecific industry?

TT: This was a direct response tothe robotics community. About threeyears ago, I was serving as part of thestrategic staff of our Chief SoftwareArchitect (a.k.a., Bill Gates). I foundpioneers and leaders from the roboticscommunity looking to engage withMicrosoft, indicating that they felt thatsomething significant was happeningaround robotics and looking forMicrosoft to participate. And this samemessage came from the diverse partsof that community, including thoseusing robots for educational purposes,universities doing robotics research, the hobbyist community, industrialautomation companies, and theemerging consumer robotics sector.This led to a dialogue I started with Bill

Gates, who asked me to go out andunderstand what was happening herein more depth.

So, after further time meetingwith a variety of people throughout thecommunity, I summarized my researchinto a proposal which also looked atwhat assets Microsoft might apply. Billreviewed this and then asked me toreview it with Craig Mundie, one ofMicrosoft’s three chief technology officers, charged with investigatingadvanced technology strategies, andRick Rashid, senior vice president ofMicrosoft Research. There was a unanimous consensus that now wouldbe a good time to respond to the community and subsequently approvedmy proposal that we begin by creatinga software development kit for thatcommunity that could help provide agood platform and catalyst to thisemerging industry.

SERVO: So tell us, what isMicrosoft Robotics Studio and what’sincluded?

TT: Simply put, MicrosoftRobotics Studio is an application devel-opment toolkit for creating softwarefor robots. It includes three areas ofsoftware: 1) a concurrent, scalable, distributed runtime that provides a

SERVO 10.2006 67

An Interview WithTandy TrowerTandy Trower

Manager of the Microsoft Robotics Group

by Phil Davis on behalf of SERVO Magazine

Microsoft is getting into the robotics business and a couple of monthsago, I had the terrific opportunity to interview Tandy Trower who is the

manager of the Microsoft Robotics Group. Following is a recap of our conversation together talking about the new Microsoft Robotics Studio.

Davis-Interview.qxd 9/7/2006 9:18 PM Page 67

Page 68: Servo Magazine Octorber2006

consistent programming model acrossa wide range of robot hardware (fromsimple educational robots to industrialrobots); 2) a set of development toolsto make it easier to develop applica-tions; these include a high-resolution3D, physics-enabled simulation tooland a visual programming language;and 3) a set of sample services andcode and tutorials (in a variety of differ-ent programming languages) that gofrom the basics of how to read a sensor to control a motor to how tosupport autonomous navigation.

SERVO: At what level is thisproduct targeted at? By that I mean,are you targeting industry, universitystudents, high school students, or theweekend hobbyist?

TT: The good news is that it isreally targeted at all segments of thecommunity. Like the early PC industry,robotics is a technology where thecommunity has synergistic overlapsand that no single part of the commu-nity is sufficient to focus on.

SERVO: Do you really believethat the student and/or hobbyist canpick this tool up and become proficientafter a short time?

TT: Yes definitely. We demon-strate this by including demos that illustrate how to apply this to robots assimple as LEGO Mindstorms or ParallaxBoe-Bots. And to help this, we also provide sample source code and over20 tutorials to help get them started. A number of universities are alreadylooking to create curriculum programsaround what we have.

The truly great thing is that theprogramming model is simple enoughfor novices, but powerful enough toapply to professional developers,meaning not only that it can be usedby developers at a variety of skill levels,but also allow a growth path: Thesame fundamentals you learn for programming an educational robot canbe applied to industrial robots.

SERVO: Okay. Tell me a little bitabout the underlying architecture of

the Microsoft Robotics Studio.

TT: I was very fortunate to findthat Craig Mundie had been incubatingsome advanced technologies toaddress the fact that the programmingmodel for the future is changing fromthe idea of monolithic applications toorchestration of many loosely coupleddistributed processes. These technolo-gies were the Concurrency andCoordination Runtime (CCR) andDistributed Software Services (DSS).While actually designed for advancedprogramming to address things likemulti-core, multi-processor, and distrib-uted processing models, I found theseto be an excellent match to the needsof the robotics community.

SERVO: Would you mind goingthrough each of those in turn: theRuntime, the Services Architecture, andthe Concurrency and CoordinationRuntime and tell us what it means tothe average roboticist? That is, tell us inlayman terms.

TT: The Runtime components aresome of the most important featuresof what we are delivering. With anyrobot application scenario, you typical-ly have to deal with the fact that youhave many things happening at thesame time. Traditionally, there havebeen two basic approaches to how youprogram that. The first is that you writea loop, which gathers your sensorinputs, does some processing interpret-ing the input, and then makes theappropriate output adjustments.

The problem with this approach istwo-fold. First, while you are doing certain processing, you may be missingother valuable input coming in. Inother words, while your code is com-manding the wheels to move ahead,your sensors could be telling you thatyou are about to hit a wall, but sinceyou are busy calculating your trajectoryand adjusting the speed to the motors,you might not get this input in time.

The second problem is that thistype of programming design is verybrittle. One bug in your code and theentire robot application may crash. Youalso can’t change the program while it

is running. So the typical solution is towrite threaded code, where you handle different processes on differentthreads. However, this proves to be a very complex and challenging programming task because of the timing dependencies and is usually onlysuccessfully done by very advanceddevelopers.

What CCR does is provide you witha lightweight library of functions thattakes care of this complexity for you,making things as simple as writing con-ventional single threaded programs. Itdetermines when multiple threads areneeded and manages them for you.

In addition, the underlying servicesoriented runtime (DSS) providesdynamic modularity. This means eachprocess or service is isolated from the others, enabling processes to be stopped and restarted, or evenreplaced, while the rest of the systemcontinues. In other words, if a sensorsystem malfunctions and you can shutit down or restart it, you don’t have toreboot the entire robot. In this sense,the architecture better accommodatesfailure and promotes more robust operation.

Further, because the exposingstate is a natural part of building a serv-ice, it is easy to inspect or change thestate of a service simply by pointing aweb browser at the service, then haveit give you an XML representation of itsstate, as well as modify the state whilethe service is running. This approach issimilar to what Sebastian Thrun ofStanford indicates was key to his success in his team’s winning the lastDarpa Grand Challenge — the ability toinspect and tweak things while therobot is running.

I could say a lot more, but Iencourage your readers to check outour website at www.microsoft.com/robotics and read over the overviewdocuments on the runtime or, betteryet, check out our video on theChannel 9 website (which you can getto from our website).

SERVO: What kinds of robotshave you hooked this up to already andwhat kinds of things do you have themdoing?

68 SERVO 10.2006

An Interview With Tandy Trower

Davis-Interview.qxd 9/7/2006 9:18 PM Page 68

Page 69: Servo Magazine Octorber2006

TT: We currently have our services architecture working withLEGO Mindstorms (RCX and NXT),Fischertechnik, Parallax, RoboticsConnection Traxster, Lynxmotion Lynx-6 Robotic Arm, MobileRobots PioneerP3DX, Coroware Surveyor, Kuka LBR3Robotics Arm, and many more.

However, even if you don’t have arobot, you can use our simulation toolto try out some of these robots. Can’tafford a Pioneer P3 with a Sick LaserRange Finder or a Kuka robotic arm?No problem, there are models includedto run in our simulation tool.

What you can do with them is limited only by the hardware, your programming ability, and your imagina-tion, but note that we provide tutorialsand samples in Visual Basic, C#,Javascript, and Python. And we haveanother programming option underdevelopment that if you can connect acouple of blocks together, you shouldbe able to program a robot.

SERVO: I see that the LEGO NXTsystem is one of the ones you have tested. Can I actually go out and buy aLEGO System today, hook it up to theMicrosoft Robotics Studio, and startmaking things happen?

TT: Absolutely. Robotics Tutorial 1shows you (in C#, VB, or Python) howto read a simple NXT contact sensor.Robotics Tutorial 2 builds on that andteaches you how to use the sensor toturn a motor on and off. Things canprogress from there.

SERVO: Are there other systemsI can buy today which will work withyour system?

TT: Because we document (andprovide tutorials) on how to write a service, there should be no robot on themarket that you couldn’t use our plat-form with. Of course, it is easier if some-one writes the basic hardware interfaceservices for you. And, in addition tothose we provide, other companies arecreating services for their hardware.

SERVO: From experience withtinkering around with my own robotic

projects, I have some specific questionsI would love you to address. The first isin regards to sensor fusion. This isalways difficult to do unless you are awiz with Kalman algorithms.

TT: The services framework (DSS)I described earlier makes it much easier to do sensor fusion since you can easily write code that delivers messages between your sensor services and allows you to controlwhen you process those inputs. For example, you can do “joins” on messages so your code only processesthe input when all inputs are provided.

SERVO: What about PID loops?We always need to know how far outbots have traveled, or have the need tomaintain constant speed when goingup hills, etc.

TT: Again, the nature of the archi-tecture makes it easier to programthings like PIDs. However, we are alsolooking into what basic services likeKalman filters or PIDs we can providethat you could use, as well. For example, in the August version of ourpreview, we provide services that makeit easy to integrate in GPS data, text-to-speech, and video capture. We hope toadd to these basic services, but moreimportantly, because our architectureaffords reusability of services, we hope and anticipate that the roboticscommunity will find our platform a wayto share interesting algorithms andsolutions for common functions.

SERVO: How about odometryand world maps?

TT: Odometry is something youneed some hardware support for.However, what’s cool about our services architecture is that you createsimple services that capture the data,feeding them to higher level servicesthat do the odometry processing.Again, this means that you can designapplications that are more portablebetween robots.

With regards to mapping, wedon’t currently provide any mappingservices or formats. However, the

distributed nature of the architecturemeans that it is easy to share mapsbetween robots or between computersconnected to robots.

SERVO: Finally, from a specificpoint-of-view, it would be really great ifwe could get real-time telemetry fromour bot as it wandered around. Whatabout that?

TT: I covered this a bit earlier. Theservices infrastructure we providemeans that if your robot has a connec-tion to the network, you only need aweb browser (doesn’t even have to beMicrosoft Internet Explorer) to check itsstate (telemetry). What’s more is thatyou aren’t limited to just a monitoringstate, you can push back changes tothe state. Also, I haven’t mentionedthat the services model isn’t limited tothe typical HTTP Get/Set model. Wealso provide for a publish/subscribemodel which means that services canproactively communicate changes totheir state to other services that wouldbe interested instead of having to pollrepeatedly.

SERVO: I understand theMicrosoft Robotics Studio comes witha simulator and an integrated ‘physics’model. Would you discuss this?

TT: Yes, this is another importantfeature of what we deliver. We believesimulation is important for so many reasons. It provides access totechnologies one might not alwayshave directly. For example, how manypeople can afford a Sick Laser RangeFinder or a Kuka LBR3 robotics arm?But having access to these in our simulation tool means everyone canexperience what this is like to programand use these. Of course, simulationcan also be used to streamline thedevelopment process since you can re-run your code against the simulationrobot and discover whether your codecauses the robot to crash into the wall,without destroying your hardware. Italso means though you could designrobots that don’t yet exist and try themout, even write code for them, beforeyou build the physical hardware.

SERVO 10.2006 69

An Interview With Tandy Trower

Davis-Interview.qxd 9/7/2006 9:18 PM Page 69

Page 70: Servo Magazine Octorber2006

SERVO: How well does the simu-lator work? I mean, can I develop myrobot application using the simulatorand have it transfer over accurately tothe real-world environment?

TT: For the most part, the answeris yes, since we have integrated in theAgeia PhysX physics engine which pro-vides emulation of many aspects ofhow objects interact in the real world.Ageia has been a leader in providingthis kind of realism in some of the mostadvanced computer games on the market. They even have a hardwareplug-in card which effectively gives youa physics co-processor for your PC.

However, there are obvious limitations. The real world is full ofnoise (inherent unpredictabilities). Thephysics simulation being a calculatedreality doesn’t necessarily deliver thesame kind of variations, so you mighthave to add that (which you could as aservice) to get more realism. In addition, there are a number of effectsin the real world that may be difficultto model. Further, modeling things tobehave as they do in the real world cansometimes take time.

So, simulation may not be a per-fect substitute for real-world testing,but it is a good tool to have. Also, thedistributed nature of this service meansit is easy to allow others to interact withyou in the simulation. So I can imagineall types of interesting collaborative andcompetitive scenarios between robotsusing our simulation tool.

SERVO: Tandy, what else wouldyou like to add which you think SERVO

readers would be interestedin knowing?

TT: I would like to mention the openness of whatwe are doing. We haveworked to make our platformeasy for others to contributeto by documenting the services interfaces and includ-ing tutorials and samplesources. By doing this, wehope to provide to the community something anyonecan contribute to and

overall expand the accessibility of robot technology to a larger audience.

SERVO: Where do you see all of this heading, both from a Microsoft point-of-view and for robotics in general?

TT: I personally believe that robot-ics is the next major evolution of PCtechnology. It is incredible how therobotics industry follows the sametrends that the PC industry did. In thelate 1970s at the birth of the PC indus-try, there were initially no hardware orsoftware standards, development washard, and people asked why you wouldown a PC. The same is true for whererobotics is today. Similarly, the sameenergy, anticipation, and interestacross a diverse community that waspresent in the early PC industry can befound in the robotics community.

Consider, too, the similar rate ofprogress. When I was a kid, when Ibuilt robots, I had to pretend they were robots, but my kids grew up tinkering with LEGO Mindstorms andAibos. Just eight years ago, whenLEGO introduced Mindstorms, it wasbased on an eight-bit processor and IRcommunication. Their new NXT is 32-bit technology with BlueTooth.

Today, our PCs respond to us most-ly through the keyboard and themouse, yet more and more they areequipped with other sensors such asmicrophones and cameras, primarilymotivated to support person-to-personcommunication, but it is easy to seethat as these sensors become pervasiveand technology to use them becomes

more advanced, that your PC will usethem to sense the environment andinteract with you in a richer way.

Further, I believe that distribution ofprocessing is key for robotics technologyto succeed. Already our digital lifestylesare increasingly dependent on interac-tion between technologies, whether it isdownloading music from websites orreading our email on our cell phones.Robots must participate in this digitalecosystem, as well, and therefore mustbe connected. And being connectedallows for richer scenarios.

And that is the one question youdidn’t ask me, which is what do I thinkare the key scenarios for robots. Maybeit is good you didn’t because I don’thave a good answer for that yet. It is ashard to predict as it was for PCs in the‘70s, and for them, recipe manage-ment didn’t turn out to be the drivingapplication.

However, I will offer that I thinkremote presence scenarios — wherethe robot enables you to be some-where else — may be one of the mostimportant scenarios that I expect tosee robots offer. You can already seethis in use with the military, but alsowith doctors making their patientrounds remotely piloting a robot.

We may still be 5-10 years offbefore robotics hits the tipping point,but it seems as inevitable as was the anticipation that PCs would be pervasive. Remember, we are 30 yearsinto the PC evolution, so another 5-10years is not that far off, and the signsthat it is coming already surround us inour cars, appliances, and other formsof smart technology.

SERVO: If someone wanted toget started using the MicrosoftRobotics Studio, how would they goabout it?

TT: Best way to get started is todownload it from our website atwww.microsoft.com/robotics. Asmentioned, we include a number oftutorials and sample code to help getyou started. Thanks for the time toshare what we are doing with yourreaders. We welcome them to try it outand let us know what they think. SV

An Interview With Tandy Trower

70 SERVO 10.2006

Davis-Interview.qxd 9/7/2006 9:19 PM Page 70

Page 71: Servo Magazine Octorber2006

Full Page.qxd 9/7/2006 1:56 PM Page 71

Page 72: Servo Magazine Octorber2006

72 SERVO 10.2006

The Orange Terror alert andensuing chaos at thenation’s airports caused

problems for some entrants. TeamTi Joe and their lightweight “Joe2.0” arrived late and Team Wazioand the number two ranked (seewww.botrank.com) 12-lb Bot“Wedgio” missed the contestentirely. Team Logicom had otherair travel problems when BrianNave’s laptop was stolen out of his checked luggage while en-route (luckily, the criminals didnot know the value of the botparts that were not taken!).

The late choice of venue andmid-west location may also havereduced the bot numbers in someclasses, but there were strongfields in the 12 lb, lightweight,and especially in the 30 lbFeatherweight class where threeout of four of the top ranked botswere among the entries. TeamMoon and Team Rolling Thunder— both from North Carolina —made an especially strong effortbringing a total of eight bots tothe event including two superheavyweights!

The 12 lb up to SuperHeavyweight fights were held inthe large 40 ft x 40 ft arena withits massive steel bumpers and 1”thick spaced polycarbonate walls.The 3 lb beetles and 1 lb ant battles were in the small arenathat Team Killerbotics hadbrought on a trailer fromWisconsin. The big arena issuperb with a reasonably smoothsteel floor and competitor-

operated heavy hammers in eachcorner which were used in thelightweight and above fights. Theonly possible criticism would bethat the lighting used caused a lotof glare for the competitors andwas not really bright enough forgood photography. The smallarena was perhaps a bit tight forthe beetles, but worked wellenough with its excellent lightingand visibility.

The venue opened up onFriday early to allow safety testingand gave some teams a chance toreassemble and test their botsafter shipment. Robert Woodheadof Team Mad Overlord tried out a“persistence of vision” blade onhis 30 lb “Totally Offensive” entry(Photo 1) which uses two arraysof red and blue LEDS to displaywriting and simple graphics. Thesystem is not yet tough enough touse in combat, but he’s workingon it.

The main competition gotstarted by 11:30 AM on Saturday.The weight classes with only afew entrants used a round-robinsystem where each bot had tofight every other entry until therewas a clear winner. Those classeswith enough bots, i.e., the 12 lb,30 lb, and Lightweights ran theusual modified double eliminationbrackets (each bot has to losetwice to be eliminated, except forin the final fight where it is sudden death). It was a veryrelaxed event where everybodywas given plenty of time forrepairs and recharging, and only

2006 RFL Nationals2006 RFL NationalsThis year’s Robot Fighting League’s(www.botleague.net) National Championshipswere held on August 11th in Minneapolis, MN.

by Pete Smith and Charles GuanPhotos by Sam Kronick, Michael Maudlin, and Pete Smith.

PHOTO 1

PHOTO 2

PHOTO 3

PHOTO 4

Smith-Guan.qxd 9/7/2006 9:22 PM Page 72

Page 73: Servo Magazine Octorber2006

terminally damaged botshad to forfeit fights.

It quickly becameapparent that it is veryeasy to over-harden (byaccident or design) theS7 tool steel many usefor weapon blades orteeth. A beautiful solid S7 ring on TeamMoon’s heavyweight“Eugene” shatteredcompletely in anencounter with Team Logicomsever powerful “Shrederator”(see Photos 2 and 3). TotallyOffensive and Relic also suffered from breaking teeth infights with Xhilarating impaX2.0 and Killabyte.

The Super Heavyweightsclass was won by TeamKontrolled Kaos with“Psychotic Reaction” who fended off the frenzied attacksof Team Moon’s “Starhawk” (Photo 4)who had to settle for second. BrianNave’s “Shrederator” dominated theHeavyweights with “Eugene” takingthe runner-up prize.

Team Toad’s “Ice Cube” took firstplace with newcomer “Lunatic” (Photo5) coming in second in theMiddleweights.

The 60 lb Lightweights field waswon by Team Hawg’s Blade spinner“Son of Whacky Compass” narrowlybeating Team Killerbotics flame throw-ing “Goosfraba.”

The 30s were probably the toughest fought weight class. Excellentnewcomer “Relic,” two-time Nationalswinner “Totally Offensive,” and atougher than ever “Killabyte” madethis a very tough group. Epic battles showered brilliant white titaniumsparks in all directions (Photo 6) untilonly “Killabyte” and “Xhilarating impaX2.0” (driven by 12-year-old AndrewSmith of Team Rolling Thunder); (Photo7) were left fighting it out. A badlydamaged “Xhilarating impaX” grabbedthe victory as one last big hit broke hisopponent’s radio receiver.

The highlights of the 12 lb classwere attempts at self-immolation byflame throwing “Kitt” and a father-sonfinals battle where Pete Smith of Team

Rolling Thunder driving “CheepShot3.0” (Photo 8) narrowly beat bar spinner “Surgical Strike” driven by hisson, Andrew.

In the beetles, “Itsa?” beat out“Nuclear Kitten” for first place and inthe Ants, “UnderWhere?!” took firstwith “Pop Quiz” second.

Many thanks to everyone at theMidwest Robotics League (www.mid

westroboticsleague.org), Mechwars(www.tcmechwars.com), and manyothers for putting on an excellentevent! SV

SERVO 10.2006 73

PHOTO 5

PHOTO 6

PHOTO 7PHOTO 8

Smith-Guan.qxd 9/7/2006 9:23 PM Page 73

Page 74: Servo Magazine Octorber2006

74 SERVO 10.2006

Since World War I, the tank hasbecome the symbol of military bat-

tles. The hulking mass of iron plowingover the Earth, the shrieking sound ofmetal crushing against the ground, theblasts of fire from its cannon, all com-bine a sense of awe and respect. Littlewonder that the tank design is popularamong robot builders. The same princi-ples that make a military tank superiorfor uneven terrain apply to robots, or infact, any other type of treaded vehicle.

A number of robots in science fiction films run on tracks. There’sNumber Five from the movie ShortCircuit, Robot B-9 from Lost in Space,and many others. Unlike their walkingcousins, these robots actually look fea-sible. Their wide tracks provide a solidfooting over the ground.

In this installment of RoboticsResources, we’ll look at robots that usetank treads for locomotion. We’ll coversome design basics, then discuss whereto find suitable treads for your next‘bot creation.

Getting TrackedVehicles to Moveand Steer

All tanks share a similar design.Two long, chain-like tracks — also calledtreads — are mounted parallel to eachside of the vehicle. A separate motorpowers the tracks in either direction viaa sprocket; the toothed design of thesprocket ensures that the drive mecha-nism doesn’t just spin if the track gets

jammed. Though there are somehybrid vehicles that use treads in addition to wheels, in the typical tank,locomotion is provided solely by thetwo tracks. The tracks are kept parallelto the vehicle by the use of idler rollersplaced along the sides.

To move forward, both tracksmove in the same direction. To reverse,the tracks move in the opposite direc-tion. To turn, one track moves forward,while the other moves backward. Thisis a form of differential steering —steering is accomplished by the difference in the motion of the tracksrelative to one another.

Because a tank track exposes aconsiderable amount of its surfaceonto the ground at any one time, in aturn the tracks must actually slip, orskid, over the earth. For this reason,tanks are often said to have skidsteering. The part of the track furthestfrom the mid-point of the tank skidsthe most. For the typical military tank,tractor, or construction vehicle thatuses tracks, this poses no serious problem. These vehicles are primarilydesigned to operate over dirt, and thetreads are hard metal. Both track andsurface have a relatively low compli-ance, which can be described as theresiliency, or “give,” of the materials.

Turn now to the typical smallrobotic tank. These also use tracksmounted parallel to the body of thevehicle. These also turn by operatingthe tracks in opposite directions.Because of size, cost, and weight con-cerns, the track material on most robot

tanks is rubber. Rubber has a highercompliance than metal, and if therobot is operated over a surface that isalso fairly compliant, turning may bedifficult for the little tank. The contactof two compliant materials limits theability to skid in turns. For this reason,it’s not uncommon to limit the opera-tion of a robot tank to certain surfaceconditions only. Dirt, concrete, evenlow-nap carpet are generally preferredover thick carpet, for example.

Another potential issue of using arubber tread is static friction, or so-called stiction. (There may be otherfrictional components involved, butwe’ll bypass them for this simplified discussion.) With stiction, a rubbertread may have difficulty skidding overa highly polished material, such as aglass tabletop or some hardwoodfloors.

There are numerous techniques toreduce the steering problems inherentin all treaded vehicles. One is to use aless compliant tread material. Not allrubber compounds are equally elastic.A good rubber tread for a tank designexhibits only limited elasticity (stretch).The surface of the rubber is smooth,and may have molded-in “cleats” thatreduce the surface area of rubbertouching the ground at any one time.With less surface area, there is less rubber to skid.

Another approach is to use a treadmade of something other than rubber.Hard plastic is a valid alternative tometal, and plastic treads are found in anumber of hobby robot products. The

Taking Stockof Robotic Tanks

Tune in each month for a heads-up onwhere to get all of your “roboticsresources” for the best prices!

RoboResources.qxd 9/5/2006 7:32 PM Page 74

Page 75: Servo Magazine Octorber2006

VEX Robotics Tank Tread Kit, at about$30, is an excellent example of a effec-tive tread system made out of plastic.The kit — which is designed for the VEXline of robots but can be adapted toother applications — consists of a seriesof links that you put together. Thetrack is powered by a sprocket connect-ed to a motor; idler rollers keep thetread aligned onto the robot base.

Another example of hard plastictracks come from an outfit calledJohnny Robot (named, no doubt, afterthe robot character of Short Circuit,which as noted earlier runs around ontwo tracks). The tracks are also available from a number of resellers,including Budget Robotics (my smallfirm), Pololu, and Robotics Connection.These tracks are composed of ABSplastic links, connected by stainlesssteel. You connect the links together tomake a track any size you want. Plasticsprockets and idlers are also availableto make a complete tracked system.

If there is a disadvantage to hardplastic tracks it’s that the plastic mayslip over hard surfaces — the exactopposite of rubber treads. Dependingon the design of the track, you may beable to overcome this by applying smallpieces of rubber material over the tracksegments. This provides enough compliancy to improve locomotion andsteering. Lynxmotion recently addedtheir own design of track that useshard plastic, but also incorporates arubber pad for added traction oversmooth surfaces.

Rubber and plastic (or metal, forthat matter) tracks also differ in theirresistance to detracking — also calledderailing, or throwing a track.Detracking occurs mostly when negoti-ating a turn. This is when the frictionalforces acting against the track are attheir highest. As the vehicle attemptsto turn, heavy sideways pressure isexerted at the front and back of thetrack. If the pressure is great enough,the track may come off its drive sprock-et or guide rollers.

Detracking is the most problematicwith highly elastic rubber treads. Themore elastic the track material, themore readily it will stretch during a

turn. The problem is magni-fied if the tank is loadeddown with weight. Theheavier the vehicle, themore likely you’ll have athrown track. To limit thisproblem, do the following:

• Reduce the weight onthe vehicle.

• Make slower turns.

• Try to find a rubber treadthat doesn’t stretch asmuch. The lower the elasticity, the less likely thetread will pop off.

• As necessary, tighten the track byadjusting the distance between thedrive sprocket on one end, and theidler roller on the opposite end. Thislimits the track from stretching toomuch more. Avoid over-tightening,which can deform the tread and place excessive stress on the drive components.

• Decrease the surface area of thetread on the ground. You may do thisby changing the elevation of the idlerstoward the front and back.

• Experiment with the width betweenthe tracks. Longer, narrower trackwidths resist turning more than short-er, fatter widths.

• Add “keepers” to the idlers thatdon’t touch the ground. The keepersare like oversized rims that keep thetrack in place.

By their nature, plastic tracks don’tstretch, so assuming they are placedsnugly onto the sprocket and idlers,detracking is rare.

Finding Sourcesfor Tracks

With the rising popularity of tankdesigns for robotics, more and moreonline retailers are offering track solu-tions. See the Sources section for a

more complete list. You can choosefrom among ready-made tank-stylebases that come complete with tracks,or you can purchase just the tracks.

Note that each type of track has adifferent method of engaging with itsdrive sprocket (see Figure 1), so if possible, always purchase a track withits corresponding sprockets and idlers.Otherwise, you will be left having tofashion something yourself, or settlingfor a system that doesn’t work as wellas it should.

One of the best sources for inexpensive rubber tracks is toy tanks.These are sold in different scales, fromabout 1:64 (miniature) to upwards of1:10 or even 1:6. (The scale is the ratioof the size of the model to its original.A scale of 1:24, for example, meansthe model is 1/24 the size of the origi-nal. Most toy tanks are in the range of1:24 to 1:32 scale, and these sizes areideal for small amateur robots.)

Look for a toy where the track isnot too elastic, and where at a mini-mum, the drive sprocket and idlerrollers can be removed and placed onyour own custom base. Some toy tanksoffer easier hacking, where you cansimply remove the turret and top of thevehicle, and replace the electronicswith your own microcontroller and H-bridge. You do not need to build a body for your robot. The Sources section lists a few notable finds.

Perhaps the most often used track

FIGURE 1. A close-up of a drive sprocket andcorresponding cogs on a tank tread. The sprocket

positively engages into the cogs to prevent the drivefrom simply spinning if the track gets stuck.

SERVO 10.2006 75

RoboResources.qxd 9/5/2006 7:33 PM Page 75

Page 76: Servo Magazine Octorber2006

76 SERVO 10.2006

is made by Tamiya, and sold by itself asitem number 70100, Tamiya Track andWheel Set. A number of onlinesources, such as Tower Hobbies(www.towerhobbies.com) andHobbylinc (www.hobbylinc.com),offer this track. The track is also includ-ed in a few other Tamiya products, asthe Tamiya Tracked Vehicle Chassis Kitand the Tamiya Remote ControlBulldozer Kit. These come with one ortwo motors, respectively.

The Tamiya track is rubber, andcomes in segments of various lengths.You put the segments together to builda track. The segments connect using alittle nub on the edges of the track.Despite how it sounds — or even looks— the tracks are actually quite robust,and seldom break apart unless forced.In a pinch, you can glue the piecestogether with a flexible adhesive, suchas silicone caulk. Make sure the adhe-sive doesn’t seep into the part of thetrack that engages with the sprocket,and that the seam is smooth. Sprocketand idler rollers are included, and youpick out the parts you need.

The same Tamiya track is used inrobot bases sold by Rogue Robotics,

Parallax, Budget Robotics, and severalothers. These bases are custom designsthat make use of the Tamiya track,drive sprocket, and idlers. The Parallaxoffering is a retrofit for their Boe-Botrobot chassis. It turns the Boe-Bot,which ordinarily comes with wheels,into a tracked vehicle.

If you’re looking to construct alarge robot, say about two feet long ormore, you’ll want to look for a 1:12 to1:6 scale tank. These are occasionallyavailable at the larger discount retail-ers, such as Wal-Mart. The fall andChristmas seasons are ideal times tofind these. The toys are physically large,and stores may not stock them yearround because of space considerations.

A relatively new source of tanks inthis size range are intended for BB andpaintball play, and you can find them atonline retailers specializing in air gunsfor these sports. Prices vary from about$50 to over $200, depending on thesize, brand, and quality of the tank. Allthe tanks are remotely controlled. Notethat quality varies greatly in this genre,with users sometimes reporting “DOA”products when they receive themthrough the mail. Make sure to buy

yours from a reputable dealer whooffers free shipping for the return ofdefective merchandise. As these arequite large and heavy, shipping can getexpensive.

For smaller and more precisiontracks, plastic scale models are anothersource worth looking into. However, beaware of possible sticker shock!Though there are some under $100models with plastic or rubber treadsyou can reuse for your robot, the better quality treads are found on kitscosting upwards of $500, $1,000, even$2,000. Tamiya, as an example, is amanufacturer that offers plastic tankkits at all these price points.

Automotive and machine timingbelts are another source of tracks.Don’t forget the matching sprocketsfor these belts. The typical timing belthas a cog on one side only. This cogengages with the drive sprocket. Sometiming belts are double-sided, and havecogs both inside and outside. These areoften used in serpentine arrangementswhere the front and the back of thebelt engage with various mechanicalparts. Double-sided timing belts arepreferred for use as tank tracks,because they have a cog on the insidefor engaging with the drive sprocket,and a cog on the outside that act ascleats for enhanced locomotion.

You can find timing belts at automotive shops, junk yards, andindustrial supply outlets. They come invarious lengths and thicknesses. Mostare fiberglass-reinforced rubber, whichmeans they are flexible, but they donot stretch.

Finally, if you have your heart seton metal treads, check out the tracksfor snowmobiles. Most tracks are soldfor a specific make and model of snowmobile (use an online search for‘snowmobile tracks’), but you will findthey are available in all types of lengthsand widths. Expect to pay good moneyfor a set of snowmobile tracks.

SourcesGoogle.com or Yahoo.comsearch: “airsoft tank”

Use this generic search to locate

Toys are a good source of tank treads and parts. This hackable tankat Budget Robotics is easily modified to a robot base.

RoboResources.qxd 9/5/2006 7:33 PM Page 76

Page 77: Servo Magazine Octorber2006

any of several dozen online resellers ofremote control tanks for the air-powered BB and paintball sports. eBayis another option. Make note that a1:16 scale tank is approximately twofeet long. Features such as soundeffects, smoking effects, and so forthare less critical than the overall qualityof the tank. Be sure to look for andread user comments.

Acronamewww.acroname.com

Reseller of the Johnny Robot tracksand sprockets. The tracks are sold insets of 20 segments and 20 links.Depending on the length of the trackyou want, you’ll probably need twosets to build a tracked vehicle. They sellsome alternative colors (at least yellow,when I checked) if you’re not wantingthe basic black.

Budget Roboticswww.budgetrobotics.com

Budget Robotics (my company)offers a number of tank-style roboticsand track solutions, including ready-made robot bases. Sells Tamiya trackkits, as well as kits with more robustcustom rubber treads. Budget Roboticsresells the Johnny Robot hard plastictracks in a “Track Drive” kit, whichallow development of a customizedtank robot. Also offers some hackabletoy tanks.

Johnny Robotwww.johnnyrobot.com

Makers of a unique hard plastictrack system. The tracks are individualsegments, connected together with a stainless steel pin. Tracks of anylength are build by putting therequired number of segments together. The company sells directly inquantity, and offers the productthrough distributors listed on theirWeb page.

Lynxmotionwww.lynxmotion.com

Manufactures and sells a uniqueadjustable-length track system. Thelinks are made of 2” wide hard plastic,and are capped off with rubber pads.

The company also sells a robot kitbased on the tracks.

Parallaxwww.parallax.com

Look for their Boe-Bot Tank TreadKit, which turns your Boe-Bot robotinto a tank. The treads, sprockets, andidlers are from the Tamiya Track andWheel kit.

Pololuwww.pololu.com

Reseller of the Johnny Robot tracksand sprockets. They sell the track segments individually, or as a set of 40.Sprockets are available for Futaba-compatible servos, as well as small DCmotors sold by Solarbotics.com andothers.

RC Armorywww.rcarmory.com

RC Armory is a manufacturer andseller of large (1:8 scale) battle tankswith metal tracks. They offer theirwares in kit form and various options.Rather than purchase a full tank andtear out what you need, you can getjust the parts — such as the drive

system — and save money. Prices forthe drive unit, without electronics, startat about $500.

Robotics Connectionwww.roboticsconnection.com

Offers a treaded vehicle based onthe Johnny Robot track segments.

Rogue Roboticswww.roguerobotics.com

Robot base built from the TamiyaTrack and Wheel set.

Superdroid Robotswww.superdroidrobots.com

Reseller of the Johnny Robottracks, as well as sells other Tamiyatrack-based kits.

Tamiyawww.tamiyausa.com

Manufacturer of plastic kits, aswell as a line of educational productsthat include the Tamiya Track andWheel kit, used in many third-partyrobots. The company offers someonline sales, but at full price. You’llprobably want to find a local reseller, orpurchase online through a Tamiya

SERVO 10.2006 77

RC Armory sells realistic 1:8 scale remote control tanks. You can startwith a basic motorized platform, and add options.

RoboResources.qxd 9/5/2006 7:33 PM Page 77

Page 78: Servo Magazine Octorber2006

dealer, such as Tower Hobbies (www.towerhobbies.com or Hobbylinc(www.hobbylinc.com).

VexLabswww.vexlabs.com

Manufacturer and seller of theVEX line of robot kits. These kits wereexclusively sold through RadioShack,but that company has discontinuedcarrying the products. The companysells a track kit that may be used withother VEX parts, or retrofitted for useon custom designs. SV

The VEX line of educational robotics lives on at Vex Labs. They offer a separatetrack kit that is useful for both VEX and custom robot designs.

78 SERVO 10.2006

Gordon McComb is the author of the best-selling Robot Builder’sBonanza and Electronics for Dummies.In addition to writing books, he operates a small manufacturing company dedicated to low-cost amateur robotics — www.budgetrobotics.com. He can be reached [email protected].

ABOUT THE AUTHOR

RoboResources.qxd 9/5/2006 7:34 PM Page 78

Page 79: Servo Magazine Octorber2006

Barcodes are typically put onto products and are something that

we usually only associate with the checkout counter. They couldn’t possibly be useful for robotics, right?

Recognizing objects in its environ-ment is not an easy task for robotsthese days. You can make that taskmuch easier by sticking a bar codeonto things that you want your robotto be able to recognize. You couldhave your robot fetch items for yousimply by having it look for the properbar code. You wouldn’t even need toput the object in a specific place. Itcould navigate around until it saw thebarcode for that object. Think aboutit. Wouldn’t it make navigation somuch easier if you could slap barcodes on the baseboards of yourhome and have a small database ofwhat direction and how far to drive toget from bar code to bar code? Aslong as you kept the paths clearbetween the bar codes, your robotcould get from place to place fairlyeasily.

It’s All Black-White-Black-White

For the examples in this column, Iused a special type of bar code thatsimplifies the process of reading them.Figure 1 shows three examples of thistype of bar code. As you look at thebar codes, you’ll see that they alwaysstart with four bars that are black-white-black-white. These four barsallow the program to get a good ideaabout how wide each bar is as it is seeing it. After that, there are six bits

that are the actual data in the barcode. Finally, there is one parity bit.

You might be wondering whythere are only six bits of information inthe bar code. The reason is that itallows the bar code to be read at a variety of different distances. The TaosTSL3301 image sensor that was usedto read the bar code could read a fulleight bits, but the bar code wouldneed to fill more of the image sensor’sfield-of-view. (If you are new to SERVOMagazine, this column covered how toread data from the Taos TSL3301 linearimage sensor in the August ‘06 issue.)With the wide field-of-view lens thatwas used for this column, bar codesthat used 1/4” stripes could be readfrom approximately four to 18 inchesaway. With eight bits of data, the neardetection distance would have to befarther out.

Reading Bar CodesLet’s look a little more closely at

how bar codes can be read. This is a bittrickier than it might initially appear.

You might think that you could just aimyour camera at the bar code and findthe median value between the blackand white stripes and simply counteverything brighter than that value as awhite stripe and everything darker as ablack stripe. Unfortunately, that is notalways possible.

Figure 2 shows a brightness graphof what a bar code could look like tothe image sensor. Usually bar codeswill look better than what is shown inFigure 2, but when programming, it isbest to expect the worst-case situationand then make your program able todeal with it.

You might be able to tell by looking at the grayscale image at thebottom of Figure 2 that the barcodethat is being viewed has a value of 52.Unfortunately, if you were to try toread it with the median value betweenthe brightest and darkest seen values

by Jack Buffingtonby Jack Buffington

Bar Codes for Robots?How to Read a Bar Code

Figure 1. Three bar codes and what theyrepresent. Black bars represent 1s.

Figure 2. A bar code as viewedby the image sensor.

SERVO 10.2006 79

Rubberbands.qxd 9/5/2006 7:36 PM Page 79

Page 80: Servo Magazine Octorber2006

80 SERVO 10.2006

Rubberbands and Baling Wire

as shown with a red line, you wouldn’tbe able to read it.

In a Different LightBecause the lighting of a bar code

can’t be anticipated, a different way toread them is needed. A strategy thatworks a lot better is to find the peaksand troughs in the brightness valuesthat the image sensor sees. You can dothis by tracking the highest and lowestvalues as you scan through the array.

Bar codes alternate between whiteand black so you can make your program take advantage of the barcode’s structure. When you start scanning, you will look for a minimumvalue at each pixel. If that pixel has avalue lower than the previous minimumvalue, then you will make the minimumbe the value of the current pixel andthen you will flag that pixel as the min-imum. If the value of a pixel reaches acertain amount above the minimum,then you will assume that the bright-ness is now becoming brighter.

In the code for this column, if thevalue was 20 above the minimum, it isassumed that the values are going up.Follow the maximum values, and oncethe values have dropped below a certain point, you will know that youhave found your maximum.

At this point, you have a minimumand maximum. Find the median valuebetween these two. Start back at theminimum value and compare each

pixel to the median value. When thevalue passes the median value, you willhave found the edge of a bar in thebarcode. Repeat this process until youhave scanned through all of the pixelsof your image sensor.

Finding the Right BarsOkay, so you think you’ve found all

of the potential edges of the bar code.You actually don’t know for sure thatthey are edges. They could be yourdog, the pizza delivery man, or yester-day’s socks. You’ll now need to figureout what is a bar code and what isn’t.To do this, we’ll scan through the arraylooking for three bars that start with ablack one and are within two pixels ofeach other in width. These are likely tobe the beginning of a bar code.

Assuming that you orient your barcodes as shown in Figure 1 and youare using floating point math, you’llnow find the distance between the topof the first black bar and the bottomof the second black bar and thendivide by three. If you are running thison a microcontroller that would chokeon floating point math, simply find the same distance, multiply by a powerof two — such as 16 — and then divideby three. This will give you four bits of decimal precision if you multipliedby 16.

The result of either the floatingpoint or integer calculations will giveyou a fairly accurate measure of thebar widths. You can now use this information to figure out if there isenough room in the image sensor tocomplete the bar code. If there isn’t,you should keep looking for other blackbars that could be a bar code.

Bar Values and WidthsOnce you have found a suitable

candidate to be the beginning of a barcode, you will now need to figure outwhat the bar values are. Initially, youmight think that since you know thewidth of the bars you could just multiply by the bar width for every possible bar and get your result. Thiswould work if you were using an imagesensor that had more pixels and you

could afford to disregard bars thatwere smaller than a certain number ofpixels wide.

Since this sensor only has 104 pixels, you will have to test in a different way. What you will do insteadis to scan through your list of edges.For each edge that you test, you willcalculate the distance between thatedge and the previous one. If you areusing floating point math, you can simply divide this distance by the barwidth that you calculated. Add .5 tothe result and truncate the decimal portion by converting it into an integer.This will round the value to the nearestwhole number and the result will bethe number of bar widths that thisstripe is wide.

If you are using integer math, youwould instead find the distancebetween this and the previous edgeand multiply that value by the samepower of two as you multiplied the barwidth by. Now divide that by your calculated bar width. Add eight, whichis equivalent to .5 if you previously multiplied by 16. Now divide by yourpower of two to get things back intowhole numbers. This will be how manybar widths the current stripe is wide.

Now that you know how to findthe widths of the stripes, you simplyneed to reconstruct the number byplacing 1s or 0s in a variable, depend-ing on how many bar widths eachstripe is. Do this for eight bar widths.You will need to do eight since younever counted the second white stripeand you will need to detect the paritybit, as well.

With the bars completely detected,you should take note of what the parity bit is and then divide your resultregister by two to remove the paritybit. The result register now containswhat your program thinks is the valueof the bar code.

You have one last line of defenseagainst false detections and that is theparity bit. Count up the number of 1sin the result and if they are an evennumber, the parity bit should be a zero.If there is an odd number of 1s in yourresult, then the parity bit should be a 1,as well. If the parity bit and what youexpect match, then you can be reason-

Figure 3. Graph showing the peaks,midpoints, and edges.

Rubberbands.qxd 9/5/2006 7:36 PM Page 80

Page 81: Servo Magazine Octorber2006

ably certain that your bar code is valid.To be fully sure though, it wouldn’thurt to move your robot a bit and seeif you get the same result again.

Using the BarsWell ... you now know how to read

bar codes. Let’s look at what you cando with them. One unusual — yet interesting — application is if you weretrying to detect the position of a rotating shaft or linear actuator to ahigh level of precision. As long as itmoved slowly enough, your high precision would be meaningful. Whatyou would need to do is print barcodes onto the moving part that arespaced so that at least one completebar code will show up in the field-of-view of the image sensor at any givenposition. You can identify the bar codeto get a rough idea of where the objectis, but you can really narrow it down bytaking into consideration the pixel thatsees the edge of the first black bar.

If you really want to be precise,you could take into account the graylevel of the first non-white pixel of thebar code. Your position calculationwould be something like bar code num-ber * number of pixels in the sensor +number of pixels seen before the barcode * number of gray levels + graylevel of first non-white pixel.

You could speed up the calculationa lot for position sensing by changing afew things. Since you can completelycontrol the environment of the sensor,you could have only one black bar andone white bar at the beginning of thebar code since the bar width wouldalready be known. You could ditch theparity bit, as well, since the sensorwould be mounted at a fixed distancefrom the moving object. You could setup the lighting perfectly, so you couldavoid finding peaks and detect youredges by just doing value comparisons.Reading a bar code under ideal conditions like this could turn out to bea fairly fast calculation.

Raising the BarsAs was mentioned at the begin-

ning of this column, you could place

bar codes on the floorboards of yourhouse or apartment. This would allowyour robot to navigate from bar codeto bar code. That is pretty cool but consider this: If you put a very narrowfield-of-view lens onto your image sensor, you could see bar codes fromlonger distances. With a map of X andY coordinates for each bar code, yourrobot could sweep its image sensoraround and figure out where multiplebar codes are and triangulate to figureout where it was in two dimensions.

It would only need to see two barcodes, but could arrive at a more accurate position using three. Usingthis sort of position detection, it wouldn’t be restricted in where it couldgo in any way. Of course, findingwhere those bar codes are could be atedious process. Never fear, here is ananswer for that, too.

Find some retroreflective tape anddraw or print your bar code onto it. Ifyou put an ultra bright LED right nextto your image sensor’s lens, then thebar codes will stick out like a sorethumb. Keep in mind that this may notwork at nearer distances due to theblack areas becoming too bright.

If you are looking for the brightestretroreflective material on the markettoday, take a look at 3M’s Diamondgrade retroreflective materials. This

material has a slight “Achilles heel” inthat it stops being retroreflective whenyou are at too much of an angle to it.For only a slightly less retroreflectivematerial, take a look at Scotchlite8850, also by 3M. This is an exceeding-ly bright retroreflective material, aswell, but can reflect light better whenit is held at an angle to the lightsource.

Those two materials can be somewhat difficult to come by in smaller quantities, so a third finaloption is to go to your local automotivestore and buy some retroreflective tapethat is typically used to add reflectorsto trailers and other equipment. Thiswill only be about two-thirds as brightas the other two, but will likely workfor you just as well.

Closing the BarHopefully, you have learned a

thing or two about the image processing needed to detect bar codesfrom this column. The lowly bar codecan be quite useful in certain situations. Who knows ... with someclever placement of your bar codes,you might be able to command yourrobot to go get you a drink from thefridge. Your bot could actually dosomething useful for a change. SV

SERVO 10.2006 81

Rubberbands and Baling Wire

HobbyEngineeringHobbyEngineeringHobbyEngineeringHobbyEngineeringThe technology builder's source for kits, components, supplies, tools, books and education.

Robot Kits For All Skill Levels

Motors, Frame Componentsand Scratch Builder Supplies.

ICs, Transistors, Project Kits

BEAM Kits and Components

Books andEducational K

Most orders ship the day received! World-wide shipping. Convenient payment options.

Order by Internet, phone, fax or mail.

www.HobbyEngineering.com

1-866-ROBOT-501-866-762-68501-650-552-9925

1-650-259-9590 (fax)[email protected]

180 El Camino RealMillbrae, CA 94030

Visit our store near SFO!

Rubberbands.qxd 9/5/2006 7:37 PM Page 81

Page 82: Servo Magazine Octorber2006

We accept VISA, MC, AMEX, and DISCOVERPrices do not include shipping and

may be subject to change.

The SERVO StoreMind Candy

For Today’sRoboticist

Robot Programmingby Joe Jones / Daniel Roth

This ingeniousbook/website part-nership teaches theskills you need toprogram a robot —and gives you a virtualrobot waiting onlineto perform your com-mands and test yourprogramming expert-ise. You don’t need toknow robotics or programming to get started!Using an intuitive method, Robot Programmingdeconstructs robot control into simple anddistinct behaviors that are easy to programand debug with inexpensive microcontrollerswith little memory. Once you’ve mastered programming your online bot, you can easilyadapt your programs for use in physicalrobots. $29.95

CNC Roboticsby Geoff Williams

CNC Robotics givesyou step-by-step,illustrated directionsfor designing, con-structing, and testinga fully functional CNCrobot that saves you80 percent of theprice of an off-the-shelf bot — and thatcan be customized to suit your purposesexactly, because you designed it. Written byan accomplished workshop bot designer/builder, this book gives you all the information you’ll need on CNC robotics!$34.95

Electronic Circuits forthe Evil Geniusby Dave Cutcher

Cutcher's 57 lessonsbuild on each otherand add up to proj-ects that are fun andpractical. The readergains valuable experi-ence in circuit con-struction and designand in learning totest, modify, andobserve results.Bonus website www.books.mcgraw-hill.com/authors/cutcher provides animations,answers to worksheet problems, links toother resources, WAV files to be used as fre-quency generators, and freeware to applyyour PC as an oscilloscope. $24.95

The Official RobosapienHacker's Guideby Dave Prochnow

The Robosapien robotwas one of the mostpopular hobbyist giftsof the 2004 holidayseason, selling approxi-mately 1.5 million unitsat major retail outlets.The brief manualaccompanying therobot covered onlybasic movements and maneuvers — therobot's real power and potential remainundiscovered by most owners — until now!This timely book covers all the possibledesign additions, programming possibilities,and "hacks" not found anyplace else. $24.95

Amphibionicsby Karl Williams

This work providesthe hobbyist withdetailed mechanical,electronic, and PICmicrocontrollerknowledge neededto build and programa snake, frog, turtle,and alligator robots.It focuses on theconstruction of eachrobot in detail, and then explores the worldof slithering, jumping, swimming, and walk-ing robots, and the artificial intelligenceneeded to make these movements happenwith these platforms. Packed with insightand a wealth of informative illustrations.$19.95

Robot Builder's BonanzaThird Edition

by Gordon McComb / Myke PredkoEverybody's favoriteamateur robotics bookis bolder and betterthan ever — and nowfeatures the field's"grand master" MykePredko as the newauthor! Author duoMcComb and Predkobring their expertise tothis fully-illustrated robotics "bible" toenhance the already incomparable contenton how to build — and have a universe offun — with robots. Projects vary in complexi-ty so everyone from novices to advancedhobbyists will find something of interest.Among the many new editions, this bookfeatures 30 completely new projects! $27.95

SERVO CD-RomAre you ready forsome good news?Along with the first14 issues of SERVOMagazine, all issuesfrom the 2005 calendar year arenow available, aswell. These CDsinclude all ofVolume 1, issues 11-12, Volume 2, issues 1-12,and Volume 3, issues 1-12, for a total of 26issues all together. These CD-ROMs are PCand Mac compatible. They require AdobeAcrobat Reader version 6 or above. AdobeAcrobat Reader version 7 is included on thediscs. $24.95 – Buy 2 or more at $19.95each!

82 SERVO 10.2006

Robot Companionsby E. Oliver Severin

Inside RobotCompanions, you’llfind all the details,plans, and informa-tion you need tomake a robot partnerpart of your daily life,at a price you canafford. Author E.Oliver Severin, origi-nator of some of thetechnologies that make robots friendly, useful, and educational, shows you how tofind or build your own robot helpmate —either from commercial kits or an assemblyof separate, off-the-shelf parts. $24.95

50 Model Rocket Projectsfor the Evil Geniusby Gavin D. J. Harper

Yes, as a matter of fact,it IS rocket science!And because this bookis written for the popu-lar Evil Genius format,it means you can learnabout this fascinatingand growing hobbywhile having run creating 50 great projects. You will find adetailed list of materials, sources for parts,schematics, and lots of clear, well-illustratedinstructions. $24.95

BookstoreOct06.qxd 9/8/2006 2:36 PM Page 82

Page 83: Servo Magazine Octorber2006

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

To order call 1-800-783-4624 or go to ourwebsite at www.servomagazine.com

Linux Roboticsby D. Jay Newman

If you want your robotto have more brainsthan microcontrollerscan deliver — if youwant a truly intelligent,high-capability robot —everything you needis right here. LinuxRobotics gives youstep-by-step directionsfor "Zeppo," a super-smart, single-board-powered robot that can be built by anyhobbyist. You also get complete instructionsfor incorporating Linux single boards intoyour own unique robotic designs. No pro-gramming experience is required. This bookincludes access to all the downloadableprograms you need, plus complete trainingin doing original programming. $34.95

SERVO 10.2006 83

SERVO Magazine T-ShirtsGet your very own limited-edition SERVO Magazine T-shirt. Shirts come

in sizes S, M, L, and XL, and are available in either black or white. All shirts are 100% pre shrunk cotton.

$20 each$20 each15% of15% off if youf if you

buy two obuy two orr

momore.re.

From HomoSapien to RoboSapien Before R2D2 there was R1D1

Robot Builder's Sourcebookby Gordon McComb

Fascinated by theworld of robotics,but don’t know howto tap into the incred-ible amount of infor-mation available onthe subject? Cluelessas to locating specificinformation on robot-ics? Want the names,addresses, phonenumbers, and websites of companies thatcan supply the exact part, plan, kit, buildingmaterial, programming language, operatingsystem, computer system, or publicationyou’ve been searching for? Turn to RobotBuilder’s Sourcebook — a unique clearing-house of information for that will open2,500+ new doors and spark almost as manynew ideas. $24.95

Mind CandyFor Today’sRoboticist

Nuts & Volts CD-RomHere’s some goodnews for Nuts &Volts readers!Along with all 12issues of Nuts &Volts from the2004 calendaryear, the 2005issues are nowavailable, as well.These CDs include all of Volumes 25 and 26,issues 1-12, for a total of 24 issues (12 oneach CD). These CD-ROMs are PC and Maccompatible. They require Adobe AcrobatReader version 6 or above. Adobe AcrobatReader version 7 is included on the discs.$24.95 – Buy 2 or more at $19.95 each!

123 Robotics Experimentsfor the Evil Genius

by Myke PredkoIf you enjoy tinkering inyour workshop andhave a fascination forrobotics, you’ll havehours of fun workingthrough the 123 experi-ments found in thisinnovative projectbook. More than justan enjoyable way tospend time, theseexciting experiments also provide a solidgrounding in robotics, electronics, and pro-gramming. Each experiment builds on theskills acquired in those before it so you devel-op a hands-on, nuts-and-bolts understandingof robotics — from the ground up. $25.00

Teach Yourself Electricity andElectronics — Fourth Edition

by Stan GibiliscoLearn the hows andwhys behind basic elec-tricity, electronics, andcommunications with-out formal training. Thebest combination self-teaching guide, homereference, and class-room text on electricityand electronics hasbeen updated to deliver the latest advances.Great for preparing for amateur and com-mercial licensing exams, this guide has beenprized by thousands of students and profes-sionals for its uniquely thorough coverageranging from DC and AC concepts to semi-conductors and integrated circuits. $34.95

PIC Microcontroller Project Bookby John Iovine

The PIC microcontroller isenormously popular bothin the US and abroad. Thefirst edition of this bookwas a tremendous successbecause of that. However,in the four years that havepassed since the bookwas first published, theelectronics hobbyist market has becomemore sophisticated. Many users of the PIC are now comfortable shelling out the $250 for the price of the Professional version of thePIC Basic (the regular version sells for $100).This new edition is fully updated and revisedto include detailed directions on using both versions of the microcontroller, with no-nonsense recommendations on which is better served in different situations. $29.95

JunkBots, Bugbots, andBots on Wheels

by Dave Hrynkiw / Mark W. TildenFrom the publishersof BattleBots: TheOfficial Guide comesthis do-it-yourselfguide to BEAM(Biology, Electronics,Aesthetics,Mechanics) robots.They're cheap, sim-ple, and can be builtby beginners in just afew hours, with help from this expert guidecomplete with full-color photos. Get readyfor some dumpster-diving! $24.99

BookstoreOct06.qxd 9/8/2006 2:37 PM Page 83

Page 84: Servo Magazine Octorber2006

For me, space exploration and robots have always gonetogether hand-in-gripper. From the 1960’s Surveyor

robots, whose Moon landings demonstrated that futuremanned missions were not doomed to sink into dusty oblivion, to today’s Spirit and Opportunity rovers exploringthe plains and hills of Mars — the Lewis and Clarke of the RedPlanet — our robots lead the way.

But don’t think that we humans plan on staying behind,watching the action from armchairs. Without a doubt, every-where our robots travel, humans will eventually follow.

As the 38th anniversary of Neil and Buzz standing on thesurface of our grey neighbor approaches, more and moreearthlings impatiently await their chances to fly to space.Some seek just to visit briefly, to float in zero gravity for a fewminutes or days. Others have loftier desires: to establishcolonies and start new societies amid the stars.And ratherthan just waiting and dreaming, many are doing whathumans do best — picking up tools and building solutions.

Rockets and BeyondCurrently, we people of Earth send forth but a few

dozen government-funded rockets each year. And, even in a good year, you can count on one hand the launches boosting people into orbit.

But as you read this, restless entrepreneurs drill holes,bend metal, and laminate exotic fibers, making components

that will become the next generation of space vehicles. They work, driven bya desire to open the gates for scores — and eventuallyhundreds — of humans to travel where only a few havegone before.

The list of efforts inspires:SpaceShipTwo, descendent of the X Prize winningSpaceShipOne from BurtRutan of Scaled Composites

and Paul Allen of Microsoft, now joined by Richard Bransonof Virgin everything; Falcon 1 and Falcon 5 from SpaceX, created by PayPal co-founder Elon Musk; Blue Origin fromJeff Bezos, founder and CEO of Amazon.com, and others.

Just far out dreaming, you say? Look up! Almost daily,crossing the sky above your home, you can glimpse theGenesis I module on its five (or more) year voyage. This prototype blazes the way for a series of inflatable space habitats that Robert Bigelow, billionaire Budget Suites hoteldeveloper, intends to serve as floating space hotels — naturaldestinations for future space tourists. You can see it in thesky! The new Space Age is upon us!

The Path of GrowthGovernment funded rockets got us started, and

privately funded rockets promise to expand our opportunities(should the 900 pound NASA gorilla succeed at climbing off the table, allowing for a more level playing field for commercial space efforts). Some day, rockets will yield to an even more amazing technology capable of transportingthousands, then millions of people to and from space. Enter space elevators.

One day, a ribbon 100,000 kilometers long, as thin asplastic wrap, and many times stronger than steel will stretchfrom Earth to outer space. Robotic elevator cars as large ashouses will climb the ribbon, taking humans and everythingneeded for life into Earth’s orbit and beyond.

For the history and technologies for building a space elevator see “Space Elevator — Building a Highway to the Stars” in the November ‘05 issue of SERVO. In short, the1991 discovery of carbon nanotubes — long, strong filaments of pure carbon — transformed the space elevatorconcept from a wild science-fiction idea into a tantalizingengineering possibility.

Right now, teams of engineers and experimenters labor fervently to solve the key challenges to a functionalspace elevator system. Slowly and steadily, humanity’s largestand most spectacular engineering project departs from thestation. Care to watch?

Hotel EarthNine Billion Guests and No Elevator?

by Roger G. Gilbertson

For more informationabout the October 2006

X Prize Cup, visit:www.xprizecup.com/

For more information onthe NASA Space Elevator

Centennial Challenge competitions, visit

www.elevator2010.org

LINKS

84 SERVO 10.2006

Appetizer.qxd 9/8/2006 2:43 PM Page 84

Page 85: Servo Magazine Octorber2006

Destination: SpaceportNew Mexico

On October 20 and 21, 2006, the X PRIZE Foundationand the Spaceward Foundation will present the secondSpace Elevator Games — a NASA Centennial Challenge —as part of the huge 2006 X PRIZE Cup events held at theLas Cruces International Airport, in Las Cruces, NM.

Against a backdrop of rocket-powered planes, roaringengine tests, and high-energy space enthusiasm, morethan 20 teams have signed up to compete for $400,000in NASA prize money. Their beam-powered climbingrobots will strive to take home the cash by driving them-selves hundreds of feet up into the sky on a narrow ribbonsuspended from a crane. In a second event, researcherswill face off in a high-tech “tractor pull” to determine whohas the strongest ribbon material yet devised.

You’re invited to drive down, fly in, or log on and witness the demonstrations and head-to-head competitions. Who knows, one of these ingenious, out-of-this-world designs may ultimately change the course ofhuman history. “And you were there ...”

Some Thoughts on “Why?”

“Earth is the cradle of humanity, but we cannot liveforever in a cradle.” — Konstantin E. Tsiolkovsky, Russianastronautics pioneer, 1911

“The growth of the world population accelerated after1900, with 2.5 billion in 1950 ... 6.1 billion in the year2000, [and] by 2050 the world is expected to have 8.9 billion people, an increase of nearly half over the 2000 population.” — United Nations Report, “The World at SixBillion,” 1999

“In order to save the human race, we must develop thetechnologies that will allow us to live and work on otherplaces in the Solar System ... SINGLE PLANET SPECIES DONOT LAST and we have no idea how much time we have.”— John Young, former Gemini, Apollo, and Space Shuttleastronaut, 2002

“[T]he prospect of radical life extension is only a couple of decades away ... The apparent dangers are thata dramatic reduction in the death rate will create over-population and thereby strain energy and other resourceswhile exacerbating environmental degradation.” — RayKurzweil, “Ray Kurzweil’s Dangerous Idea” from Edge.org

Futurist Buckminster Fuller challenges us with a boldvision: “To make the world work for 100% of humanity in the shortest possible time through spontaneous cooper-ation without ecological offense or the disadvantage of anyone.”

How do we prepare for tomorrow? How can we buildand operate a management system for Spaceship Earththat meets the needs of all the guests and not just thoseborn in the penthouse?

Tomorrow Arrives on TimeChristopher Columbus did not wait to solve Spain’s

domestic strife before sailing beyond the horizon. SirWalter Raleigh did not wait to fix England’s social andeconomic challenges before planting settlements in theNew World. And we have no reason to wait to “solve” ourpresent day problems before venturing beyond our present horizons.

Just as the Transcontinental Railway traversed theNorth American continent in 1869, and in doing soreduced the cost, duration, and danger of voyaging fromcoast to coast, so too can space elevators bridge the gapfrom the Earth’s surface to the universe beyond.

By venturing out — first via robots and then with human explorers — by exploring, by settling new worlds and creating new societies, humanity gains unmeasurablebenefits that are shared by all.

As individuals and as a species, our time on Earth is limited. By accepting these bold adventures, we do indeed risk failure, but by staying home, we guarantee it.

The universe calls, and we prepare our answer: Ad astra! SV

In 1995, Roger G. Gilbertson launched RobotStore.com, theInternet’s first commercial robotics site. In 2002, he initiatedthe Space Elevator Ribbon Climbing Robot Competition forthe San Francisco Robot Games, featuring climbers up to 1kilogram. After selling RobotStore.com to Jameco Electronicsin 2005, he worked on the documentary “Who Killed theElectric Car?” from Sony Classics Pictures with directed byChris Paine, his long time friend and business partner.Gilbertson is currently producing a documentary about thethe Space Elevator. He lives in Marin County, CA, wherehumans still do more work than robots.

AUTHOR BIO

The University of British Columbia entry makes its wayskyward during NASA’s first Centennial Challenge

competition held in October 2005. Photo by R. Gilbertson.

SERVO 10.2006 85

Appetizer.qxd 9/8/2006 2:43 PM Page 85

Page 86: Servo Magazine Octorber2006

86 SERVO 10.2006

Page 86.qxd 9/7/2006 9:23 PM Page 86

Page 87: Servo Magazine Octorber2006

My last article about robots who lis-ten got a few people who I know

interested in speech recognition, as thetechnology is pretty much available toall of us. When it comes to robots whosee, for the longest time we thought ofTV and video technology and went nofurther. Our robots have used CdS cellsand phototransistors for years, either tosense ambient light or light generatedby the robot and reflected from objects.IR and other types of LEDs have beenused as proximity sensors, and for lineand edge detection when coupled withsome sort of light sensor. But is thisvision? What about robots who trulysee? Do we need to refer to IssacAsimov’s robots from his series of shortstories — I Robot? Do robot eyes reallyglow a deep red like in his stories andmany sci-fi movies? Why would eyeseven radiate light rather than receive it?

The Human EyeHuman eyes are an amazing set of

organs. Even without the intimate con-nection to the brain, the eyes accom-plish a lot on their own. Add thatcapacity to the amazing storehouse ofimages that we’ve collected and storedin our brain throughout our lives andwe can do a lot with our sight.

Vision is the one sense throughwhich we accomplish the most difficulttasks, and the lack of sight is our greatest disability. With just a verbaldescription given to us, we can locatethe most complex objects. Someonecan tell us, “I need this special wrenchthat’s over in that drawer. It’s about 10

inches long, is bent 45 degrees in themiddle, and has a ball joint on the end.”

Without ever having heard of sucha strange tool, much less seen one, wecan quickly go over to the drawer andrecognize it buried beneath manyother similar wrenches, using ourhuman vision and a keen cognitive ability. We may pick out the “balljoint,” or “45-degree bend” to clue usto it. No machine vision computer cando such a thing ... yet. So, bypassingsuch complex object recognition, mostof us concentrate on having our robotsvisualize objects, obstacles, and bound-aries to guide them.

Machine VisionIn researching this article, it was

quite interesting to see just how farrobot vision has progressed — from TVsystems and bulky computers costinghundreds of thousands of dollars, tothe several ounce systems of todaycosting less than a hundred dollars.There’s really two ways to go withrobot vision (or machine vision as it issometimes referred to in the industrialrobot business).

Robots can use video means to“see” objects and transfer thoseimages via electronic means to a TVscreen that is viewed by a human. Thehuman then makes sense of what is onthe screen and reacts accordingly.Teleoperator systems use this type oftechnology as required by the personon the other end of the control link.This type of robot vision has been usedsuccessfully in many “robot” applica-

tions, but is no more “true vision” thana person looking at a photo album andviewing images received by a cameraat some previous time.

This, however, was the only waythat experimental robots of fourdecades ago could be controlled byvisual means. These days, CCD andCMOS image sensor video cameras arequite cheap and are quite useful in teleoperated robot projects. Supercircuits.com has a camera for less than$12, plus many other useful types.Security Cameras Direct at www.scdlink.com is another vendor I haveused for various types of cameras.

The other method was to have therobot sense the scene of interest andprocess that visual information onboard in a way that was useful to therobot for object and obstacle identifica-tion, navigation, or other purposes.The “process that information” part ofthis description was the key. This processing required a computer andinputs from the sensor that the computer could understand.

Back in the 1960s, this was notpossible with the computer technologyavailable to any home experimenters.TV cameras used vidicon tubes andcomputers weighed hundreds ofpounds, if not room-sized. Machinevision systems used in conjunction withindustrial robots for parts identificationor part orientation determination start-ed to become available in the early70’s. Edge detection algorithms wereused to isolate a particular image forprocessing by the computer. Two early,visual scene-processing robots — Hans

Then NOWan

d

ROBOTS WHO SEEb y T o m C a r r o l l

SERVO 10.2006 87

Then&Now.qxd 9/7/2006 8:58 PM Page 87

Page 88: Servo Magazine Octorber2006

88 SERVO 10.2006

Moravec’s Stanford Cart from the 1967era was just being thought of and SRI’sShakey had yet to make the scene.

ShakeyRefer to Figure 1. I wrote a bit

about Shakey in the April ’04 issue ofSERVO without mentioning very muchabout the sensor systems. When several articles about SRI’s amazingrobot made headlines in the New YorkTimes, Life Magazine, and NationalGeographic in 1968 through 1970,computer science and AI really caughton with the public. Life Magazinereferred to Shakey as the “first electronic person.”

A problem-solving computer pro-gram called STRIPS controlled Shakey.The robot sensed the scene in front ofit and sent the images back via a radiolink to a computer that processed andanalyzed the data using edge process-ing and then planned a course forShakey to follow. Figure 2 shows thevideo yoke with several vidicon TV cam-eras mounted in it. After a course wasplotted, Shakey moved at the incredi-ble speed of two meters in an hour.The plotting required a synthesis of theprocessed scene data along with alaser range finder (helium neon) and aseries of bumper sensors at its base.

In 1966, Shakey was fitted with a

SDS-940 computer with 64K of 24-bitword memory — a lot for those days.Fortran and Lisp were the programs ofchoice. In 1969, the robot was upgrad-ed with links to PDP-10 and PDP-15 minicomputers with 192K 36-bit words ofmemory. The first program that wasused with the new computer wasSTRIPS that was later replaced with LISP.

Shakey had a video system withvisual scene interpretation and obstacleavoidance capabilities. It also had aplanning system that both createdplans and then monitored their real-world execution with a multi-level,tiered control architecture.

Shakey now resides in a glass casein the Computer History Museum inMountain View, CA. He was alsoinducted into the Robot Hall of Fame atCarnegie Mellon along with a fewfamous real and movie robots. Shakeywill be ever known as the first mobilerobot that could think independentlyand interact with its surroundings withvision. We can only imagine that he isstill looking through the glass case atall the museum’s visitors and marvelingat the vision technology that is avail-able today.

These were the ‘60s when only afew lucky university grad students gotthe chance to work with intelligentrobots with vision capabilities.Affordable computers were just a dreamfor would-be robot experimenters. Fourdecades later and we are blessed withpowerful microprocessors and microcon-

trollers that can literally “run circles”around the old PDP mini-computers atless than one percent of their cost.

The Sony Aibo robot series has avision system that can track a coloredball and allow the Aibo to interact withit by nudging it or kicking it across afloor. The Aibo also has a facial recogni-tion feature that allows it to recognizeits owner or other persons. This facialrecognition type of system is a bit toocomplex for the average experimenter tointegrate into their home-built machines,so object, obstacle, and perimeterrecognition capabilities are the mostdesired features of a vision system.

Carnegie MellonUniversity and theCMUcam

I’ve talked a bit about some of theolder vision systems and TV links, and abit about some of the newer technolo-gies, but let’s look at a few of the systems that robot builders may beinterested in. There are many robotvision system cameras available to theexperimenter these days, but I’m goingto discuss only two of the more popular systems. Though alumni ofHarvard and Stanford Universitiesmight dispute this, the center of basicrobotics research seems to have beenat Carnegie Mellon University for sever-al decades. I was fortunate enough tobe able to visit the robotics researchfacilities of all three of the aboveschools in the ‘80s while researchingmy space-borne robot design work forNASA. All of the schools, and otherleading universities, excelled in specificareas of robotics, but CMU seemed totop the list in most categories, but thatis strictly this author’s opinion.

I was impressed with Raj Reddy, professor of Computer Science at CMU,who spent quite a bit of time with mediscussing some early vision systems hewas applying to his AI mobileautonomous robots. Another professor,William “Red” Whittaker, impressed mewith his motto that “all robots shouldhave practical applications.” The ex-Marine who formed CMU’s FieldRobotics Center was quite distinguishedin stature and was the driving force

Figure 1. Shakey.

Figure 2. Shakey’s cameras.

Then&Now.qxd 9/7/2006 8:59 PM Page 88

Page 89: Servo Magazine Octorber2006

behind several amazingrobots that used sophis-ticated vision systems,the latest being the2005 DARPA GrandChallenge’s autonomousrobot vehicle namedH1ghlander (Figure 3).

H1ghlander lostthe race by only fourminutes due to a Lidarand engine malfunction after leadingmost of the way — not the fault of thebasic design. The H1 in the name refersto the huge red Hummer H1(Whittaker had two in the race) that heused as the base vehicle and outfittedit with numerous vision systems andlaser range finders, all tied to a GPSnavigation system.

These two men typify the cuttingedge technology that has emergedfrom CMU. It is no surprise that theCMUcam first developed at CMU hasbeen the most popular of the visionsystems available to the experimenter.We now have affordable vision systemsthat actually have the power withinthemselves to make decisions on theperceived images and act upon thatinformation. Previous systems capturedan image and sent the data to anotherprocessor to analyze the images anddecide on the best action to perform.

The CMUcam was designed in2001 by Anthony Rowe at CarnegieMellon. The CMUcam is a low-cost,low-power vision system using theOmnivision OV6620 color CMOS imaging sensor and is designed formobile robots. The CMUcam can domany types of on-board, real-timevision processing, thus saving precioustime and memory space on a hostmicrocontroller. The CMUcam uses aserial port and can be directly interfaced to other microcontrollerssuch as the PIC series and 68HC11-12s.

The CMUcam is a relatively low-powered device operating at six volts @200 mA of current draw, or a shadeover one watt. At 17 frames per second, the CMUcam can “track theposition and size of a colorful or brightobject, measure the RGB or YUV(color) statistics of an image region,and automatically acquire and track thefirst object it sees. It can also physically

track using a directly-connected servo,dump a complete image over the serialport, and dump a bitmap showing theshape of the tracked object.”

Using a servo and the CMUcam, itis easy to make a robot sensor suitethat pans back and forth to track anobject or a wheeled robot that chasesa ball around, much like the far moreexpensive Aibo. The CMUcam comes ina kit form or assembled at less than$100 to about $140. Figure 4 showsthe back side of this amazing camera.

There is a new version of the CMUCamera — the CMUcam2 — that incorpo-rates an on-board frame buffer thatallows much more flexibility in imagemanipulation, sub-sampling, higherframe rates, and contains an SX52microcontroller. This version comes com-pletely assembled from Acroname andother suppliers for $179 or less. The fol-lowing are some of the improvements ofthe CMUcam2 over the earlier version:

• Track user-defined color blobs at up to50 frames per second.

• Track motion using frame differencingat 26 frames per second.

• Find the center of any tracking data.• Gather mean color and variance data.• Gather a 28-bit histogram of each color

channel.• Process horizontally edge filtered

images.• Transfer a real-time binary bitmap of

the tracked pixels in an image.• The camera has arbitrary image

windowing.• The camera has image down sampling.• The camera’s image properties can be

adjusted.• The user can dump a raw image (single

or multiple channels).• Up to 176 x 255 resolution is available.

Information on the CMUcam series

(including the CMUcam 3) is availableat www.seattlerobotics.com (NOTSeattle Robotics Society), Devantech,Acroname, and other suppliers.

The AVRcam Basedon the AtmelMicrocontroller

Another popular camera for arobot vision system is the AVRcam (seeFigure 5) developed by John Orlando ofthe Chicago robot group — Chibots. Itis also a small, low-cost, real-timeimage-processing engine capable oftracking colorful objects. It is based onthe AVR mega8 processor from Atmel,a company that seems to be destroyingitself from within these days. Despitethe squabbles within the company, theAtmel series of microcontrollers havelong been a favorite among robotdesigners and the various microcon-trollers should be available for quite awhile. As with the CMUcam2, theAVRcam also uses the OmnivisionOV6620 imaging sensor.

The AVRcam can track eight different objects of eight different user-defined colors at 27 frames/second and can provide real-timetracked object statistics (color, bound-ing box, center of object, and more)through a serial port. It has an imageresolution of up to 88 x 144 at 27frames/second. It has a much lowerpower consumption of 5V @ 53 mA orabout a quarter watt, quite a bit lowerthan the CMUcam.

John feels that his camera has anedge, as it does not rely on proprietarysoftware and hardware (as does theCMUcam) and can track more objectsat a higher frame rate. “One greatexample of this,” he says, “is the international Robocup robot soccer

SERVO 10.2006 89

Figure 3. H1ghlander. Figure 5. Front of AVRcam.Figure 4. Back of CMUcam.

Then&Now.qxd 9/7/2006 8:59 PM Page 89

Page 90: Servo Magazine Octorber2006

competition held each year.”You can purchase an AVRcam

from the JRobot.net online store,though it does require a bit of solder-ing or wire wrapping. The basic kit withsoftware is $99.95.

The LEGO CamAnother experimenter’s camera

for robot use is the new LEGO Cam.Logitech and LEGO Co. worked togeth-er to embed Logitech’s QuickCam PC

video-camera technology intoLEGO Mindstorm’s VisionCommand product line. The newLEGO Cam with USB connection,construction elements, andadvanced vision-recognition soft-ware sells for $99.

Designed to interface withthe Mindstorm RoboticsInvention System, using theLEGO Cam, experimenters canbuild and program robots thatreact to their surrounding environment, such as seeking

and following a moving colored ball.The LEGO Cam features a 6’ USB cableand has up to 30 frames per second ata respectable resolution of 352 x 288pixels for high resolution color imaging.Though it looks a bit cheap with itsbright plastic case, it does haveadjustable focus and a built-in micro-phone. Figure 6 shows a Rubik’s Cubesolving “robot” using the LEGO Cam.

I’ve discussed three full-frame cameras available to the experimenterfor robot use, yet, there is another great

method that was described by SERVOauthor, Jack Buffington in the August’06 issue. It uses a 102 pixel linear array— the Taos TSL3301. It must be physical-ly panned around a room to produce ausable image — a method that has beensuccessfully used by many planetaryexplorer robot craft for years. It uses aPIC16F873 processor and the softwareis available on the SERVO website.

For those robots who live withyou, it was neat enough to just providethem with a brain like the scarecrow inthe Wizard of Oz. Now you can givethem eyes. Go to the Internet and/orGoogle, and look up “robot vision” andyou’ll get millions of links. As with all ofmy articles, I do not and cannot go intodetail on all the many types of technol-ogy available to the experimenter.

This is the last of my “Robots Who...” series on those special robots thatwe feel most comfortable with. It is myhope that you will become interestedenough to go to the many sources avail-able and make up your own mind whatis best for your robot project. SV

All Electronics Corp. .............................26, 49BEST Robotics Competition ........................71BOB’s/invents.net ........................................49Budget Robotics ..........................................73CrustCrawler ...................................................3Dimension Engineering ...............................38DynoMotion .................................................49Electronics123 ..............................................26Futurlec .........................................................49Hitec ..............................................................13Hobby Engineering ......................................81HobbyLab .....................................................26Homebrewed Robots .................................49

Industrial Ventures .......................................38Jameco Robot Store ................................2, 49Lorax Works ............................................26, 49Lynxmotion, Inc. ...........................................61Maxbotix .......................................................49Maximum Robotics ................................17, 49MeerKat Systems, Inc. .................................49Micromega Corporation .............................49Net Media .....................................................91NU-BOTICS ....................................................26Ortech Education Systems .........................60Parallax, Inc. ...................................Back CoverPlantraco .................................................27, 49

Pololu Robotics & Electronics .....................78RCATS ............................................................27Ridgesoft .......................................................49RoboteQ .........................................................7RoboDevelopment Conference .................39Robot Power ................................................25Robot Shop ............................................49, 86SchmartBoard ...............................................86Smithy.............................................................26Solarbotics.....................................................44Solutions Cubed ...........................................23Technological Arts .......................................49Vantec ...........................................................13

Advertiser Index

Figure 6. LEGO Cam solves Rubik’s Cube.

90 SERVO 10.2006

COMPLETE OUR ONLINE READER SURVEY FOR A CHANCE TO

WIN A Hitec Robotics ROBONOVA-1 KIT

Your input will help us make SERVO Magazine a better robotics publication. At the end of the survey, you can

enter our drawing for a Hitec Robonova kit.

Go to www.servomagazine.com now and complete our Reader Survey for your chance to win!

$1,000VALUE!

Then&Now.qxd 9/7/2006 10:04 PM Page 90

Page 91: Servo Magazine Octorber2006

There’s something for everyone…Robotic kits help you and your child to experience and learn about

perception and control using a variety of sensors and actuators. Challenge

yourself with Jameco’s selection of fun and interactive kits! You or your child can

assemble the kits and then enjoy endless hours of discovery.

Check out our unique selection of Robotic Kits at www.RobotStore.com!

• Robot Insects & Animals • Programmable Robots

• Solar Robots • Educational Kits

• Listening, Touching & Seeing Robots • Legged and Wheeled Platforms

• Hackable Robots • OctoBot Survivor Kit

At Jameco’s RobotStore you can get the world’s most complete robotic offering—

all in one place! You’ll find kits for all ages and experience levels along with gear

boxes, servos, and chassis for those who are ready to take on the extreme.

WWW.ROBOTSTORE.COM/SRBI-800-374-5764

WWW.ROBOTSTORE.COM/SRBI-800-374-5764

Enthusiasts,Start Dreaming...

Gift Givers,Take Note...

Engineers,We’ve GotIt All!

Enthusiasts,Start Dreaming...

Gift Givers,Take Note...

Engineers,We’ve GotIt All!

Robotic Kits and Components...The World’s MostComplete Offering!

CATALOG I62

I-800-374-5764WWW.ROBOTSTORE.COM

Call for your free catalog today!

Robotic Kits Components...The Perfect Summer Projects for Kids of all Ages!

Robotic Kits Components...The Perfect Summer Projects for Kids of all Ages!

robotic kits

chassis

servos

passives

optos

integrated circuits

semiconductors

muscle wires

connectors

motors

test equipment

software

books

CoverInside.qxd 9/7/2006 1:17 PM Page 2

Page 92: Servo Magazine Octorber2006

Vol. 4 N

o. 10

SERV

OM

AG

AZIN

ED

IYM

AR

S ROV

ER•

ENERG

Y MA

NA

GEM

ENT

•M

IT MICRO

BOTS

•TA

ND

Y TROW

ERO

ctob

er 2006

0 474470 58285

10>U.S. $5.50 CANADA $7.00

Cover.qxd 9/8/2006 3:04 PM Page 84