Download as pdf or txt
Download as pdf or txt
You are on page 1of 84

0 5>

$7.00

4
CANADA

74470 58285
$5.50
U.S.

0
Vol. 5 No. 5 SERVO MAGAZINE GRIPPER • SPIDER CRABS • ULTRASONIC MICROSENSORS • THE ULTIMATE REMOTE CONTROL May 2007
Page 84
12:07 AM
4/6/2007
Cover.qxd
CoverInside.qxd 4/5/2007 9:08 AM Page 2

Perfect projects for kids of all ages!

robotic kits
Robotic Kits Components...
chassis
...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
servos selection of fun and interactive kits! You or your child can assemble the kits and
then enjoy endless hours of discovery.

passives 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
optos

. Hackable Robots . OctoBot Survivor Kit


integrated circuits
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
semiconductors boxes, servos and chassis, for those who are ready to take on the extreme.

muscle wires Robotic Kits


and Components...
The World’s
Complete OfMost
fering!
Enthusiasts,
Start Dream
ing...
Gift Givers
,
connectors Take Note..

Engineers,
.

We’ve Got
It All!

motors

I-800-374-576
4
WWW.ROBO
TSTORE.CO M
CATALOG I62

test equipment
WWW.ROBOTSTORE.COM/SRD
I-800-374-5764 Call for your free catalog today!

software

books
Full Page.qxd 4/5/2007 9:15 AM Page 3

SERVO 05.2007 3
TOC May07.qxd 4/5/2007 4:08 PM Page 4

Features & Projects Columns


36 Haptics, Telepresence, 08 Robytes by Jeff Eckert
Stimulating Robot Tidbits
and TeleRobotics 10 GeerHead by David Geer
by Bryan Bergeron Lurking in the Shadows:
An introduction to the features and Leeds Works With Robot Spider Crab
design challenges associated with
haptics by way of a telerobotic
14 Ask Mr. Roboto by Pete Miles
Your Problems Solved Here
gripper.
19 Different Bits NEW
!
41 Cool Robots
by Heather Dewey-Hagbord
The True Beginner’s Guide to the
by Ralph Lorenz Spartan3E Starter Kit
Dull, dirty, and dangerous missions are
68 Twin Tweaks
perfect for these “square” robots. by Bryce and Evan Woolley
Rummaging in the Robot Reliquary
44 Seeing With OpenCV 72 Robotics Resources
by Robin Hewitt by Gordon McComb
Part 5: Implementing Eigenface. Fabulous Robots With Pre-Fab Parts

51 Build the Ultimate 76 Appetizer by Chris D. Odom


Environmental Sensing in a
Remote Control Robotics Curriculum
by Michael Simpson 79 Then and Now by Tom Carroll
Create a custom control system that Robot Navigation
can be connected directly to your
robot via a wireless Zigbee module.

58 Ultra-Sonic Microsensor
Comparison Project ENTER WITH CAUTION!
by Kyle Haston 28 The Combat Zone
This ECE undergraduate shares the
results of his class project.

64 ROBOGames Prep SERVO Magazine (ISSN 1546-0592/CDN Pub Agree


by David Calkins #40702530) is published monthly for $24.95 per year by T & L
This month: Sumo Robots. Publications, Inc., 430 Princeland Court, Corona, CA 92879.
PERIODICALS POSTAGE PAID AT CORONA, CA AND AT
ADDITIONAL ENTRY MAILING OFFICES. POSTMASTER: Send
address changes to SERVO Magazine, P.O. Box 15277,
North Hollywood, CA 91615 or Station A, P.O. Box 54,
Windsor ON N9A 6J5; cpcreturns@servomagazine.com

4 SERVO 05.2007
TOC May07.qxd 4/5/2007 4:08 PM Page 5

05.2007 VOL. 5 NO. 5

SUMO — PAGE 64
Departments
06 Mind/Iron

07 Bio-Feedback

24 Events Calendar

26 New Products

27 Robotics Showcase

43 Robo-Links

62 SERVO Bookstore

82 Advertiser’s Index
ULTIMATE CONTROLLER — PAGE 51
SERVO 05.2007 5
Mind-FeedMay07.qxd 4/5/2007 9:53 PM Page 6

Published Monthly By
T & L Publications, Inc.
430 Princeland Court
Corona, CA 92879-1300
(951) 371-8497
FAX (951) 371-3052
Product Order Line 1-800-783-4624
www.servomagazine.com
Mind / Iron Subscriptions
Inside US 1-877-525-2539
by Camp Peavy ΠOutside US 1-818-487-4545
P.O. Box 15277
North Hollywood, CA 91615
Do you need an android? Maybe automated conveyance system PUBLISHER
not today, but someday you might. designed to look and act like a Larry Lemieux
Do you need a car? A cell phone? person. Not necessarily intelligent, but publisher@servomagazine.com
Internet access? Of course you do, infinitely trainable and therefore
but until recently the latter were useful. Besides, “intelligence” — like ASSOCIATE PUBLISHER/
VP OF SALES/MARKETING
luxuries or not even available. In the beauty — is in the eye of the beholder. Robin Lemieux
1900’s, you did not even need an With the current pace of display@servomagazine.com
automobile; horse-and-buggy was the technology propelled by the Internet,
standard. Then all of a sudden, you it is inevitable humanoid robots will CONTRIBUTING EDITORS
needed a car. If you were to describe become commonplace in factories, Jeff Eckert Tom Carroll
Gordon McComb David Geer
to someone in the 1950’s some of the warehouses, offices, and nursing Pete Miles R. Steven Rainwater
products of today, they’d think you homes (at least the one in which I Kyle Haston Bryan Bergeron
were crazy ... except they would plan on staying). They will do for David Calkins Kevin Berry
wonder what happened to the flying physical objects and services what Michael Simpson Robin Hewitt
cars and robots. Functional universal computers and the Internet have done Ralph Lorenz Steven Kirk Nelson
Camp Peavy Jeffrey Scholz
robots and, in particular, androids for information and communications; Chris Odom Brian Benson
have been desirable throughout there will be huge productivity gains. Evan Woolley Bryce Woolley
history; real robots like this will be the In time, the robotics industry will Chad New Heather Dewey-Hagborg
culmination of the computer dwarf the computer industry as
revolution and, believe it or not, we service jobs are eliminated and
CIRCULATION DIRECTOR
might even have flying cars. robot operators and technicians Tracy Kerley
Why do we need robots? We proliferate in the same way subscribe@servomagazine.com
need robots to bring us stuff, to put bookkeepers and used-car salesmen
stuff back, to carry stuff, and to do became programmers and computer WEB CONTENT/STORE
the things that we do not want to do technicians. Along the way, there will Michael Kaudze
sales@servomagazine.com
like laundry, dishes, trash and garbage be hundreds of must-have toys,
disposal, hedges, farming, security, gadgets, thing-a-ma-bobs, and PRODUCTION/GRAPHICS
and even baby-sitting. Sure, we appliances but you can bet the Shannon Lemieux
have washers, dryers, and trash culmination of all of these activities
compactors and they are robots to a will be a human-form slave-machine. ADMINISTRATIVE ASSISTANT
Debbie Stauffacher
degree, but I’m talking about After the initial growth phase, you will
eliminating the human factor; even have to choose between the Copyright 2007 by
providing the physical interface upscale Apple® analog or the T & L Publications, Inc.
between the dryer to the closet and standard “PC” version; it’s a vicious All Rights Reserved
from the dirty clothes hamper to the cycle. All advertising is subject to publisher’s approval.
washer/dryer. For dishes, the process You will be hard-pressed to resist We are not responsible for mistakes, misprints,
would be from the cupboard to the the temptation to buy one of these or typographical errors. SERVO Magazine
table; from the table to the handy humanoid devices; to be assumes no responsibility for the availability or
dishwasher; and from the dishwasher waited on hand and foot by a tireless condition of advertised items or for the honesty
of the advertiser.The publisher makes no claims
back to the cupboard. Not only will and cheerful servant-machine. The for the legality of any item advertised in SERVO.
this robot be good for bossing humanoid robot will become the This is the sole responsibility of the advertiser.
around, but with voice recognition, ultimate how-did-I-get-along-without- Advertisers and their agencies agree to
synthesis, and access to the web it’ll this device; the ultimate remote indemnify and protect the publisher from any
be a great companion with instant control. Can you imagine actually and all claims, action, or expense arising from
advertising placed in SERVO. Please send all
answers to any question; an having to get up to change channels? editorial correspondence, UPS, overnight mail,
and artwork to: 430 Princeland Court,
Mind/Iron Continued Corona, CA 92879.

6 SERVO 05.2007
Mind-FeedMay07.qxd 4/5/2007 9:57 PM Page 7

By the 22nd century, going into the kitchen to make


coffee will seem just as strange.
If you want to take part in this great adventure, the Dear SERVO:
best place to start is a robotics contest. There’s nothing This email is in regards to the article "Seeing With
like a deadline to force you to create. And the best OpenCV, A Computer Vision Library," by Robin Hewitt. First,
robotics contest in the world is taking place in San I loved the article and I am anxiously waiting to see the the
Francisco on June 15, 16, and 17: RoboGames 2007 remaining parts of the series — great job! Second, I thought
(www.robogames.net). It may not be too late (four it might be useful for your other readers that don't know
weeks … plenty of time!); registration closes on much about C/C++ to find out that Microsoft offers Visual
5/16/2007. If you’re interested, go here NOW: C++ Express for free on their website (http://msdn2.
www.robogames.net/registration.php. If it is too microsoft.com/en-us/visualc/aa336404.aspx).
late, start building now anyways. You are never more Greg Vowles
than a few months from some kind of robotic event. Go Senior Engineering Technologist
to www.robots.net/rcfaq.html for the latest listings. If University of Toronto
you’re in the San Francisco Bay area at least go to the Dear SERVO:
show; it’s ROBOtastic! I am starting to build an AI robot using the Lispworks
Subscribe to SERVO Magazine and submit an program designed for the Leaf project and saw the article
article. Don’t just be a reader! Participate! Build about waypoint navigation with DarkBasic Pro. I have
something! This is a fun, educational, and potentially DarkBasic Pro and am looking for the code called robot path
practical hobby with big-time potential. It is a finding.
slow-grow industry as the learning curve is both deep Fred Miller
and wide, but timing is everything. Besides, after the Response: The Dark AI extension pack for DarkBasic Pro —
robots take over, it will be too late. Remember, the available online from www.thegamecreators.com —
journey is the reward. Where else can you have an includes several waypoint examples. The Developer Forum
impact on a technology primed to change the world so has additional examples of waypoint navigation and other
radically? examples that are directly applicable to robotics.
Looking forward … Camp SV Bryan Bergeron

HE8EJIFH;<;H>?J;9)0'
.EW 2OBOT 3ERVOS

>_j[Y
Ej^[h8hWdZ

+656* +656* +657*


6SHHGVHF 6SHHGVHF 6SHHGVHF
7RUTXHR]LQ 7RUTXHR]LQ 7RUTXHR]LQ
6WHHO*HDUV 6WHHO*HDUV 7LWDQLXP

$//63(&,),&$7,216$792/76

7KHUHVXOWVRIDQLQIRUPDOSROOWDNHQUHFHQWO\DWWKH)LUVW
$QQXDO:RUOG'RPLQDWLRQ6\PSRVLXPDUHQRZLQ5RERWV
SUHIHU+LWHFVHUYRVRYHURWKHUVHUYREUDQGV7KH\NQRZWKHZLGH
VHOHFWLRQRI+LWHFDQDORJDQGGLJLWDOVHUYRVSURYLGHWKHPZLWKWKHSRZHUDQGGHSHQG
DELOLW\QHHGHGWRHYHQWXDOO\WDNHRYHUWKH:RUOG0DNH\RXUURERWKDSS\XVH+LWHFVHUYRV
3DLQH6WUHHW_3RZD\_&DOLIRUQLD___ZZZKLWHFUFGFRP

SERVO 05.2007 7
Robytes.qxd 4/3/2007 9:40 AM Page 8

Robytes by Jeff Eckert


Amphibious Bot Mimics Knowing Your Cenote from project should be flowing in as the
Salamander a Hole in the Ground exploration continues, so stay tuned to
www.geo.utexas.edu/zacaton/DEP
THX/DEPTHX_home.htm for details.

Learning from Fish

Artificial lateral line that may


The DEPTHX team poses with the improve navigational capabilities
probe in front of the cenote La Pilita of underwater vehicles.
Salamandra Robotica, transitioning Photo courtesy of Chang Liu.
from walking to swimming, on Lake during a test run. Photo courtesy of
Geneva. Photo by A. Herzog, Jackson School of Geosciences,
courtesy of Biologically Inspired University of Texas at Austin. Also set for action in the depths is
Robotics Group, EPFL. a system of biologically-inspired sen-
As of this writing, scientists have sors that may supplement traditional
This month’s offering in the returned to the world’s deepest sonar and vision systems in subs and
category of artificial slippery things is known sinkhole, Mexico’s Cenote AUVs. It seems that fish rely on a row
Salamandra Robotica, created by Zacatón, to resume tests of a NASA- of sensory organs along the sides of
researchers from Ecole Polytechnique funded robot called DEPTHX (for Deep their bodies — known as the lateral line
Federale de Lausanne (EPFL, www. Phreatic Thermal Explorer, if you must — for guidance in synchronized swim-
epfl.ch) and Inserm (www.inserm.fr/ know). The bot, funded by NASA, is ming, predator avoidance, and picking
en/inserm/). It is basically a robotic designed to survey and look for life in up prey. This inspired a research team
model of a salamander’s locomotion one of Earth’s most extreme regions at the University of Illinois at
system, aimed at figuring out how the and potentially in outer space. Urbana-Champaign (www.uiuc.edu)
critters crawl and swim and to demon- On the terrestrial side, some of the to develop an artificial version.
strate “how robots can be used to test things DEPTHX will be looking at are The artificial lateral line is an
biological models, and in return, how some microbes that float in deep water integrated array of microfabricated
biology can help designing robot and line the rocks in Zacatón. The rela- flow sensors that detect changes in
locomotion controllers.” A detailed tively unknown microbes are so far water pressure and movement. Each
explanation can be found at birg. from any penetrating sunlight that sensor is integrated with MOS circuitry
epfl.ch/page65446.html. they must derive energy from another for on-chip signal processing, noise
Oh, and in case you haven’t source, such as nutrients originating in reduction, and data acquisition. The
heard, EPFL has been offering down- hot springs. The scientists surmise that largest array built so far has 16 flow
loadable “Talking Robots” podcasts for other unknown life forms may be wait- sensors with 1 mm spacing, and each
a year or so, the latest of which is an ing in the 1,000-ft deep hole. sensor is 400 m wide and 600 m tall.
interview with Metin Sitti on nanoma- DEPTHX is unlike other deep-sea In tests, the line was able to
terials for robotics. To access it, visit probes in that it is autonomous, and it localize a nearby underwater vibrating
lis.epfl.ch/index.html?content= creates 3-D maps of the areas it source and could detect a hydrody-
resources/podcast/index.html. explores and uses the maps to return namic wake (such as the wake formed
home. Results from the $5 million behind a propeller-driven submarine)

8 SERVO 05.2007
Robytes.qxd 4/3/2007 9:40 AM Page 9

Robytes Industrial
for long-distance tracking. The project
Strength
was funded by the US Air Force Office
of Scientific Research and (as usual)
DARPA.
Motor Control
And Hunting for Birds
for All
AX2550
AX2850

AX1500

Robotic camera system. Photo by


1944 photo of ivory-billed woodpecker. M. David Luneau, Jr., courtesy of
US Fish and Wildlife Service.
AX3500
Reverently referred to as the “holy
grail of birdwatching,” the ivory-billed join the madness, a good starting AX500
woodpecker was thought to be extinct place is www.birds.cornell.edu/ NEW
since the 1940s, but in 2004 some ivory, where you can learn more Get the DC
biologists claimed to have sighted one about the subject, support Cornell Motor Controllers that are at the heart of
in Arkansas. There was a lot of skepti- University’s mobile search team, or many of today’s world’s most demanding
cism, but then last September some report a sighting. You can even get an Industrial, Military and Research Robots, and
scientists from Auburn and Windsor ivory-bill T-shirt for a donation of many other innovative Applications.
Universities not only spotted the $100. Such a deal!
- RS232, RC, or Analog input
elusive creatures in Florida, they made - Speed or Position Mode
some audio recordings of the birds’ - Dual channel output up to 140A
distinctive double knock.
Since 2004, the bird has been
Victorian Robots? - Optional single channel at double Amps
- Optical Encoder Inputs
sighted more times than Elvis at If you’re interested in the ancient - Intelligent Current Limiting
Dunkin’ Donuts, and a slew of history of robotics (veritable or other- - Thermally Protected
- Field Upgradable Firmware
birdwatchers and websites have been wise), drop by www.bigredhair.com
- Enclosed and Board-Level versions
trumpeting its return. However, many and click on the “robots” link. There - and many more advanced features ...
ornithologists remain skeptical. you will find “the most extensive
To try to resolve the matter, a group collection of images and information Model Amps Features Price
of academics, with the assistance of the on Victorian-era robots to be found in AX500 2x15A B $145
Arkansas Game and Fish Commission, the whole World Wide Web.” This AX1500 2x30A B $275
have set up a robotic camera system includes information on Boilerplate (a AX3500 2x60A O-R-B $395
near the Cache River National Wildlife prototype soldier), The Electric Man, AX2550 2x120A A $495
AX2550HE 2x140A A $645
refuge that will keep its eye out for the The Steam Man (noted as the world’s AX2850 2x120A O-A $620
elusive woodpeckers. The system, first robot), and The Automatic Man. AX2850HE 2x140A O-A $770
powered by a 69 kV transformer, shoots Clicking on any of the images will A=Aluminum Extrusion, B=Board-Level, O=Optical Encoder In,
at 22 frames per second with two to bring up a detailed narrative and R= RC outputs. Qty1 price. Contact us for OEM Qty prices

three megapixels of resolution per additional illustrations, all of which


frame. It also performs real-time high-res seem to be the creation of artist Paul
video analysis to track flying birds. Guinan. Too bad I didn’t spot this in
Admittedly, it could take years to time for the April issue ... (Note that
8180 E.Del Plomo Dr.
catch one on video, if it happens at all. these are all fake. — Ed.) SV Scottsdale AZ USA 85258
But enthusiasm is high. If you want to (602) 617-3931 - info@roboteq.com
www.roboteq.com
SERVO 05.2007 9
Geerhead.qxd 4/4/2007 9:41 AM Page 10

by David Geer Contact the author at geercom@alltel.net

Lurking in the Shadows


Leeds Works With Robot Spider Crab!

Shadow Robot Company (London, UK) and its technical director, Rich Walker,
have a lot of experience designing, building, demonstrating, and performing
(performance art, that is) robots. Shadow is a reliable source of research robotics.
Researchers count on Shadow’s equipment, like the Dexterous Hand — arguably
the most capable robot hand in the world — and the air-pumped robot muscles.

M ore to the point, Shadow has


designed and constructed more
than one set of robot spiders already,
Do the Robot Spider
Crab Dance!
the emergent nature of the interface
between technological objects and the
human, which they believe is funda-
including the Zephyrus and Zephyrus The six-legged, 3 m by 4 m crab mental to the development of new
Two. The robot spider crab will be will be dancing in a new performance design thinking and practices,” accord-
similar and yet unique. project of the Faculty of Performance, ing to a recent Shadow media release.
Visual Arts, and Communications at
Close-up of spider robot technology. Leeds University. A single crab arm Robot Spiders,
will be constructed and interfaced Materially Speaking
with a virtual simulation of five
other limbs. The single leg will Shadow has formed spider robots
suspend from the ceiling and dance from wood, PolyMek, Delrin,
with human performers by use of its aluminum, polycarbonate, and a
multiple air muscles. variety of other materials. According to
On a grander scale, all this Walker, with the spider crab, part of
is part of the Emergent Objects the emphasis is on constructing a
project, which uses “performance robot that is very big and “soft” that
knowledge to explore and articulate can interact directly with humans, so
the material choices become very
Artist’s rendering of potential robot spider Close-up of six-legged spider interesting. “One of the prototype
crab configuration. robot technology. parts that we are putting together at
the moment is made out of the lagging
[casing] used for hot water pipes,”
he says.
Because the robot spider crab will
interact with people, there will be
many sensors incorporated into it,
though what those will be has not yet
been determined.
The spider crab’s robotic muscles

All photos are courtesy of


Shadow Robot Company, Inc.

10 SERVO 05.2007
Geerhead.qxd 4/4/2007 9:41 AM Page 11

GEERHEAD

will be the very same air


muscles created by Shadow for
the development of all their
robots. “The Air Muscle,” says
Walker, “is a soft, compliant
actuator that makes it easy to
construct bio-mimetic robots,
because it has very similar
movement characteristics to a
biological muscle.”
Shadow’s air muscles are Gathering for demo of Shadow robot
as small as a penny or as large spiders, predecessors to the coming
as a stick of pepperoni. These robot spider crab, which will be similar. Two larger air muscles next to a human hand.
actuators are lightweight, sim-
ple, and experimenter-friendly (soft, no diameter, has “the strength, speed, according to Walker, they SSH [secure
“stiction,” easily controlled, and signifi- and fine stroke of a finger muscle in a shell] in and issue a command.
cant in power), according to Shadow. human hand,” while a large muscle of The robotic control layer software
Air muscles imitate real muscular 50 mm can pull down a brick wall. Air is an in-house blend of the Shadow
expansion and contraction by providing muscles require a pneumatic system Robot Company. “The University of
a “pulling force.” The roboticists with valves. Leeds’ AI people will be working on
actuate the muscles using compressed some software for the higher-level
air; the muscles contract by more than Computer Technologies behaviors, but we don’t know much
a third of their expanded length. Not So Crabby about that yet,” says Walker. Most
Air muscles can move levers. With
one air muscle, a lever can move to a Shadow robot computer systems ROBOTS AND DANCERS TEACH
set angle because the muscle contracts run Debian Linux with Real-Time EACH OTHER NEW STEPS
to a given point. In a single muscle Application Interface (RTAI) technology
configuration, a spring must be used to for managing real-time applications. At a conference on research in
return the lever to its original position. Many of the embedded controllers are performance, according to Rich
Walker, technical director, the
Two muscles can pull the lever in two built around PIC18 microcontrollers.
Shadow Robot Company (Shadow),
directions “with considerable force.” In ”The original Zephyrus ran on a
the company and performance artists
fact, with a power-to-weight ratio of as BASIC Stamp, but we found they were from Leeds University demonstrated
much as 400:1, a 30 mm muscle can very fragile. Eventually, we moved to interactions between dancers and
bend a nail, according to its makers. using a PIC16 on the robot itself,” says robots using two versions of the
Rubber tubing and a strong plastic Walker. Zephyrus-Two used Controller Zephyrus spider robot.
“netting” outer layer comprise the air Area Network (CAN) modules similar Using the original six-legged and
muscles. The muscle actually contracts to those used for the Dexterous Hand; an eight-legged spider robot, the
(shortens) rather than elongating when so, Shadow was able to use the CAN dancers gave the audience — mostly
filled with air. Air muscles — now protocol from the Hand project for the advanced senior researchers and prac-
25 years old — are available from the second iteration of Zephyrus. titioners in performance studies — an
company website (see the Resources “We use our own protocol over intriguing display of the potential out-
sidebar). CAN that is designed around our comes of this kind of interaction and
According to the company, one experience of what is necessary for research. “Watching an experienced
of the slightest air muscles, 6 mm in robots,” says Walker. At a higher level, dancer engage with the movements of
a simple, yet flexible, eight-legged
robot was eye-opening,” Walker says.
A small air muscle preparing to bend a nail. The same air muscle, bending that nail! Walker, Shadow, and the perform-
ance artists at Leeds were ready to
take the interactive research to the
next level. By using Shadow’s air
muscles, which are flexible in creating
almost any size and nature of robot
limb and other movement, they will be
able to build a larger robot to perform
the research tango, so-to-speak. And,
that’s how they arrived at the robot
spider crab project.

SERVO 05.2007 11
Geerhead.qxd 4/4/2007 9:42 AM Page 12

GEERHEAD

• It was possible for the dancers to


RESOURCES
explore the space of possible kinemat-
The Shadow Robot Company ics of the robot. “We asked Liz if
www.shadowrobot.com Zephyrus could stand up, and she
was able to work out a movement
Shadow Robot media releases,
including news about the Robot Spider
pattern that would lead to Zephyrus
Crab project sitting on its back-end. To do this with
www.shadowrobot.com/news/ the robot would have taken many
press.shtml hours of re-design and re-work, and
still might not have led to the desired
Scheduled events where you can catch results.”
a glimpse of Shadow Robots live
www.shadowrobot.com/news/
An air muscle about the size of a penny. • The researchers presented the
events.shtml
dancers with new movement patterns
Robot demo TV clips robot spider crab is the interaction and kinematics. “In trying to embody a
www.shadowrobot.com/news/tv.shtml between human dancers and existing dinosaur with a long neck and tail, or a
robots. Shadow and the Performance six-legged robot with no “knee” or
Need Shadow Robots or engineering Robotics Research Group (PRRG) have “foot,” each dancer was challenged to
for your research or production
project? Surf here: been collaborating for years now. The reach into new areas of their own
www.shadowrobot.com/shop.shtml dance/interaction portion occurred as movement capabilities. This produced
part of a one-week workshop held some very innovative dance work from
The Faculty of Performance, at the School of Performance and the dancers.”
Visual Arts, and Communications Cultural Industries at the University
www.leeds.ac.uk/paci/index.html of Leeds. Faux Crab Legs
“One of the sessions,” says Walker, Anyone?
Shadow Robot programming makes “consisted of having two dancers, Liz
use of things like Shell Script, the C and Paul, work with two robots: a Shadow is building one leg of the
language, and PIC assembler. dinosaur and a six-legged walking 3 meter tall (or more) spider crab.
robot, Zephyrus. Each dancer embod- Gazebo, part of the Player/Stage proj-
Robots and People — ied the nature of the robot they were ect, will model the other legs, accord-
Let’s Dance working with.” ing to Walker. The project is funded
Here are the research findings, through a grant from organizations like
One aspect of research toward a according to Walker: the Arts and Humanities Research
Council (UK). The grant monies for
research total 300,000 (GBP). The
project ends with the actual installation
and performance in 2007. SV

ROBOT MUSCLES NOT


JUST FULL OF HOT AIR!
Most of the Shadow Robot
Company’s robots employ its air
muscle technology, which uses com-
pressed air to contract the muscle.
These muscles have several character-
istics that make them desirable for
actuating robot parts like levers.
Air muscles can weigh in at as little
as 10 grams (about 0.35 ounces), are
cheaper than other actuators, and
provide an “immediate response” to
their actuation. They are also flexible
and powerful.
The muscles are well-suited to
“weight-critical” applications and “nat-
ural” movement, as well as continued
operation when twisted or bent.

12 SERVO 05.2007
Full Page.qxd 4/5/2007 9:20 AM Page 13
MrRoboto.qxd 4/5/2007 9:43 AM Page 14

Our resident expert on all things


robotic is merely an Email away.
roboto@servomagazine.com

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

by
Pete Miles

This is Part 2 of the answer to a but they won’t answer the phone or It turns out that casting a copy of
question from the April ‘07 column. I’ve emails and I fear they’re out of a gear is a fairly straightforward
repeated the question for reference. business or at least out of town!! process. All you need is the gear that
Here is the site: http://nelnick.com// you want to make a casting of, a mold,

Q . I am an electronics teacher at
the Orleans Career and Tech
Center in Medina, NY. We have
entered the Monroe Community College
SUMOBOT competition for the past
nelnickrobotics/index.php?cPath=
21&osCsid=d5f00cb4eedc88af3ebeb
383ea78f5e4.
So, here’s the question ... where
can I find any Mod 1 compound gears?
and some casting compound. I don’t
have any Mod 1 gears lying around, so
for this demonstration, I will be making
a casting of a #25 plastic sprocket
that I happen to have (see Figure 1).
four years and have done very well. They Or, better yet, how about molding my The procedures will be the same with
have videos from the competition at own? I have old gears or single gears I your gear, or any other part you want
their website at www.monroecc.edu/ could make a mold from! to make.
depts/eng&phy/highschl.htm. Thanks for any info! For the casting materials, I chose
I have run into a brick wall for — Bill Leggett HobbyMold 150 to make the silicone
parts! Specifically, compound gears Medina, NY mold of the gear, and HobbyCast 110 to
that are Mod 1. That is to say that the make a polyurethane casting of the
number of teeth is equal to the diame-
ter in millimeters +1 mm. I have used a
gear that has a 40-to-10 tooth combi-
nation. They have an outer diameter of
41 mm; inner gear is 11 mm. I could
A . Last month, I talked about gear
specification, some places where
you can get gears, using two
smaller combination gears to get the
same gear ratios, and fabricating a
gear. Both of these products can be
obtained from HobbyCast.net, a division
of Freeman Manufacturing & Supply
Company (www.hobbycast.net and
www.freemansupply.com). These
use other combinations, but they must combination gear from two other products are very easy to use, and they
be Mod 1. By the way, LEGO gears and gears. This month, I will be addressing have an excellent video tutorial library
Kelvin ** gears P/N 990174 are Mod how you can cast a copy of one of the showing how to cast many different
1. My usual supplier is NELNICK.COM, gears you already have. types of parts, including CNC machin-
ing plastic molds. They are a one-
Figure 1. #25 plastic sprocket to be casted. Figure 2. HobbyMold 150 and HobbyCast 110 stop shopping place for all of your
molding and casting compounds. casting materials and support.
The HobbyMold 150 is a two-
part silicone rubber with a tensile
strength of 650 psi and a flexible
shore A hardness of 30. The
HobbyCast 110 is also a two-part
urethane compound with a ten-
sile strength of 3,300 psi, with a
rigid shore D hardness of 69.
Figure 2 shows the two pound
kits for both the HobbyMold 150
and the HobbyCast 110.
14 SERVO 05.2007
MrRoboto.qxd 4/5/2007 9:43 AM Page 15

Figure 3. Close-up view of the Figure 4. Set screw hole covered


sprocket’s mounting set screw. with modeling clay.
Figure 5. Bottom view of the sprocket
mounted to the base of the mold frame
The following is a description of the any excess clay. You want to keep this using modeling clay.
steps that I went through to make a layer as thin as possible so that the
casting of the sprocket shown in Figure thickness of the sprocket teeth is not
1, and is based on the videos I watched significantly increased.
on the HobbyCast and Freeman Using an X-Acto™ knife, remove
websites. The first thing that needs to excess clay from around the teeth and
be done is preparing the sprocket for the sprocket’s bore (see Figure 6).
casting. Figure 3 shows a close-up view Figure 7 shows the bottom view of the
of the set screw that is used to secure cleaned up sprocket. Figure 8 shows
the sprocket to a shaft. This needs to be the base of the mold frame placed
covered up so the sprocket can be inside the polycarbonate tube to
removed from the silicone mold without establish the sides of the mold frame.
damaging the mold. Some modeling The HobbyMold silicone rubber
clay was pressed into the set screw hole compounds are mixed at a 10:1 ratio Figure 6. Trimming excess clay from
on the outside surface and on the inside of Part A and Part B, on a weight basis.
between the sprocket teeth.
shaft bore surface, and smoothed out Based on the volume of the mold
to match the contour of the surfaces frame, I estimated that I would need
(see Figure 4). about 80 grams of the silicone rubber
The next step is to make a mold (based on the volumetric yield of
frame for the sprocket. The videos the silicone rubber 21.3 cubic
shown on the HobbyCast website inches/pound). The videos show how
show the base of the mold being made to estimate these numbers. For
from wood, and a simple paper cup simplicity, I used 100 grams of the Part
was used for the sides. The Freeman A compound, then added 10 grams of
website shows the sides made from the Part B catalyst to it, and started
small pieces of wood. These are very mixing (see Figure 9).
simple and inexpensive construction The HobbyCast urethane is pre-
methods. For this demonstration, I pared in a similar method, except that
chose to use clear plastic so that its Part A and Part B mixing ratios are Figure 7. Bottom view of the
certain steps could be visualized easier. 1:1 on a volume or weight basis. sprocket after all of the excess clay
My mold frame consisted of a three has been removed.
inch diameter polycarbonate tube and
a 1/8-inch thick polycarbonate disk (all
available at local hardware stores).
The disk was traced out from the
I.D. of the tube and cut from a flat
sheet of material.
Next, we need to secure the
sprocket down to the base of the mold
frame. HobbyCast recommended using
some modeling clay for this. Figure 5
shows the bottom view of the sprocket
mounted to the base of the mold Figure 9. Weighing the Part A and
frame. Make sure that you press down Part B compounds on a digital postal Figure 8. Polycarbonate tube used to make
hard on the sprocket to squeeze out scale prior to mixing. the sides of the sprocket’s mold frame.
SERVO 05.2007 15
MrRoboto.qxd 4/5/2007 9:44 AM Page 16

to slowly fill the hole so no air bubbles


are trapped inside the bore (see Figure
13). If a bubble forms inside the bore,
then the mold can become useless
because the mold will tear when
demolding and there won’t be a
complete hole when making the final
castings. Figure 14 shows the mold
completely filled with silicone rubber.
Once this is done, let the mold cure for
at least 16 hours before beginning the
Figure 11. Slowly allow the silicone rubber demolding process.
to flow around the sprocket’s teeth. Figure 10. Start with slowly pouring Figure 15 shows the bottom of the
the silicone rubber at the lowest mold after the silicone rubber has
point in the mold. cured. Notice the clay pattern has not
changed from Figure 7. Figure 16
Figures 10 through 12 show the shows the polycarbonate mold frame
silicone rubber being poured into the removed from the silicone rubber
mold. The pouring should be done mold. Notice that some of the clay
with a very thin stream starting at the remained on the sprocket surface.
lowest point in the mold (Figure 10), Figure 17 shows the sprocket being
then slowly allowing it to envelop removed from the silicone rubber
around each sprocket tooth. The slow mold. At this point, you may need to
pour helps to keep bubbles from form- use a thin piece of metal — like a
ing on the surfaces of the teeth. When sewing needle — to push between the
the silicone was near the top of the sprocket’s bore surface and the mold
Figure 12. Silicone rubber surrounding sprocket, a thin stream was directed so that mold doesn’t stick to the sides
the sprocket. down one side of the sprocket’s bore of the bore when lifting the sprocket

Figure 13. Slowly filling the sprocket’s Figure 14. Completing the mold Figure 15. Bottom view of the clear plastic
bore from one side of the bore. casting process. mold prior to removing the mold frame.

Figure 16. The silicone rubber mold Figure 17. Removing the sprocket Figure 18. Sprocket completely removed
removed from the mold frame. from the mold. from the silicone rubber mold.
16 SERVO 05.2007
MrRoboto.qxd 4/5/2007 10:02 AM Page 17

out of the mold. Don’t force it, or you


will tear the sprocket’s bore off the
mold. Work it out slowly. Figure 18
shows the sprocket removed from the
silicone rubber mold.
After cleaning the silicone rubber
mold, the mold is ready for casting the
urethane sprocket. Figure 19 shows a
couple of small plastic measuring cups.
(Actually, these cups come from a
liquid medicine. These make excellent
30 ml disposable cups. I save them all Figure 19. Disposable 30 ml medicine Figure 20. Mixing Part A and Part B of
the time.) Since my digital scale only measuring cups. the HobbyCast urethane by volume.
has a five gram minimum resolution, I
decided to measure the Parts A and B Figure 24 shows the cured ure-
HobbyCast urethane by volume instead thane sprocket in the silicone rubber
of by weight since I estimated that all I mold. Figure 25 shows the urethane
needed was about 10 ml of urethane sprocket being removed from the
to fill the sprocket cavity. Figure 20 mold. The same cautions need to be
shows a Popsicle stick mixing the two observed in regards to the sprocket’s
compounds together. bore sticking to the mold. A mold
As with the silicone rubber, the release compound can reduce the
urethane is poured into the mold at its friction between the urethane and
lowest point (Figure 21), then slowly the silicone rubber. Figure 26 shows
poured (Figure 22) until completely the sprocket removed from the mold,
filled (Figure 23). The urethane needs and Figure 27 shows the urethane
to cure for a minimum of two hours sprocket next to the original plastic Figure 21. Pouring the HobbyCast urethane
before removing from the mold. sprocket. into the mold starting at the lowest point.

Figure 24. Cured urethane sprocket Figure 23. Sprocket mold filled with Figure 22. Filling the mold with
in the silicone rubber mold. HobbyCast urethane. the urethane.

Figure 27. Side-by-side comparison of Figure 26. Urethane sprocket Figure 25. Removing the urethane
the new and original sprockets. removed from the mold. sprocket from the mold.
SERVO 05.2007 17
MrRoboto.qxd 4/5/2007 10:39 AM Page 18

Figure 28. Using an X-Acto knife to


remove the burrs created from the Figure 29. Marking the location for
clay mounting process. the shaft mounting set screw. Figure 30. Drilling the set screw hole.

Figure 32. Close-up view of the tapped Figure 33. Final sprocket with
Figure 31. Tapping the set screw hole. hole in the side of the sprocket. a #25 roller chain.

Figure 28 shows some post casting The last step is putting the set an X-Acto knife (see Figure 29). A
cleanup work that is needed to smooth screw mounting hole into the number 21 drill is used to drill the tap
out the rough spots created by the urethane sprocket. The clay that was hole in the side of the sprocket using
clay when the original sprocket was used to cover the hole in the original the mark from Figure 29 for alignment
mounted to the base of the mold sprocket can be easily seen in the new (see Figure 30). A #10-32 tap is used
frame. An X-Acto knife will work well casting. A small starter hole is poked to tap the hole for the set screw (see
for carving off the burrs. into the center of the impression with Figure 31). Figure 32 shows a close-up
view of the tapped hole. Note how
smooth the threads are inside the
tapped hole.
Figure 33 shows the final sprocket
with the shaft mounting set screw
installed along with the #25 roller
chain wrapped around it. Prior to using
the sprocket, it should be allowed to
fully cure to obtain maximum strength.
This takes about seven days.
As you can see, casting a sprocket
is a fairly straightforward process.
Once the mold is made, dozens of
parts can be made from the same
mold. These same steps can be used to
cast the gears that you are having a
difficult time finding. If you ever get a
chance to try the casting approach,
send a note to the SERVO Magazine
BIO-Feedback telling us how it went
and what we should be careful
about so that we can all learn from our
collective experiences. SV
18 SERVO 05.2007
HeatherColumn.qxd 4/5/2007 10:06 PM Page 19

DIFFERENT
BITS
THE TRUE
BEGINNER’S
GUIDE TO THE
SPARTAN3E
STARTER KIT The Spartan3E.
by Heather Dewey-Hagborg

Different Bits is a column which looks at the ways in which the traditionally software
oriented domains of Artificial Life and Artificial Intelligence can be transposed to embedded
hardware. From genetic algorithms to heuristics and neural networks, we will be examining
ways of bringing algorithms inspired by biology to electronic circuits.

F
ield Programmable Gate Arrays er and will arrive faster than it will from 1) Coding (behavioral description)
(FPGAs) have recently become Avnet or NuHorizons because they keep 2) Simulation
a hobbyist friendly medium. more parts in stock. However, they will 3) Pin assignment
Offering hundreds of I/O channels, not send you the Xilinx installer CD or 4) Implementation
faster clock speeds, and true parallel documentation, meaning you will have to 5) Programming
processing, they provide an exciting download everything from the web.
alternative to microcontrollers. With With the Xilinx WebPACK develop- Starting a New Project
free development software from Xilinx ment environment running more than
and a Spartan3E starter kit available a gigabyte in size, it might be worth it Our first project will be an AND
from Digilent, Avnet, or NuHorizons, to pay the extra money and avoid the gate which takes input from two switch-
you can get started for less than $200. interminable download if you have a es and turns on an LED. Once you have
Unfortunately, the learning curve is slow Internet connection. If you do the Xilinx WebPACK installed, open ISE
steep and online resources are often purchase from Digilent, you will need and begin a new project by choosing
confusing for beginners. I recently to register and download the Xilinx ISE from the file menu. Getting all the set-
purchased a Spartan3E starter kit from 9.1i WebPACK development environ- tings right for your first project can be a
Digilent and found the process of simply ment online at www.xilinx.com/ise/ bit confusing, so we will walk through it
getting my first LED blinking to be logic_design_prod/webpack.htm. step by step.
tedious. Board specific documentation While you’re at it, grab the The first page of FIGURE 1. New
was scarce, abstract, and sometimes bla- Spartan3E starter kit user Project Wizard.
tantly incorrect. This guide is my attempt guide: http://direct.xilinx.
to remedy this situation for future hobby- com/bvdocs/userguides/
ists interested in learning about FPGAs. ug230.pdf.
This tutorial will walk you through the This document will tell
steps to get you up and running with the you the pin locations of all
Spartan3E. All you need is the kit and a PC the devices on your starter
running Windows XP. Consider this a very board and give a little
thorough “Hello World” for the FPGA. nformation about using
them. It also includes a small
Getting Started section on programming.
The design flow we will
First things first, if you purchase your be following in this article
kit from Digilent, it will be slightly cheap- consists of five steps:
SERVO 05.2007 19
HeatherColumn.qxd 4/5/2007 10:06 PM Page 20

DIFFERENT BITS
FIGURE 3. AND which takes input
INPUT OUTPUT Gate Truth Table. from two onboard
switches and outputs
A B A&B to an onboard LED. In case you are
0 0 0 unfamiliar, a logical AND gate has two
inputs and one output. It outputs logi-
0 1 0 cal low unless both inputs are high, in
which case it outputs a logical high (see
1 0 0 the truth table in Figure 3). Check out
www.kpsec.freeuk.com/gates.htm
1 1 1 for a simple introduction to logic gates.
FIGURE 2. New Double-click on “hello_world.v” in
Source Wizard. the new project “hello_world.v.” On the next page, the sources pane to view your new
wizard will ask you enter “led” as a port name, and code file. It should look like Figure 4.
for a name, choose “hello_world” and change the port direction to output. The words next to // are comments,
a directory of your choice. Select HDL Then add “switches” as a port name, and you can delete them to compact
for Top-Level Source Type. The second leave the direction as input, and click your code. Four lines of code have
page is the most confusing, for Product the checkbox that says “bus.” Enter a 1 been automatically generated for you.
Category choose All, for family choose in the MSB column and leave the 0 in The first states:
Spartan3E. The Device is XC3S500E the LSB column. This specifies how
and the package type is FG320, both many bits wide our I/O ports are. `timescale 1ns / 1ps
of which can be found written on the When you are finished, your form
FPGA chip on your starter board. should look like Figure 2. Click through This line specifies the time units
The speed is -4, the synthesis tool the wizard, and click yes when it asks and precision for measurement of
is XST, the simulator is ISE simulator, you if you would like to create the new delay and time values. Next, it says:
and the preferred language is Verilog. directory for the file. Return to the new
Check the box for Enable Enhanced project wizard and click through until module hello_world(led);
Design Summary and leave the last you are finished.
two boxes for message filtering and A module is like a class or function.
incremental messages unchecked (see Adding Code It has inputs and outputs and can be
Figure 1). On the third page, click the instantiated by other modules. Our first
New Source Button. Now it is time to add some code. module is called “hello_world” and has
On the pop-up menu that appears, We are going to create the simplest a single output, “led.” The following
select Verilog Module and name it possible program — a logical AND gate line specifies that led is a one-bit-wide
output port and two-
bit-wide input port.

output led;
input [1:0] switches;

We close our module


with the “endmodule” line.
Note that the first three lines
end with semi-colons but
the last does not; end com-
mands are never followed
by semi-colons.

endmodule

Let’s add a bit more


code to create the AND
gate. Between the output

FIGURE 4. Completion of the


New Project Wizard.

20 SERVO 05.2007
HeatherColumn.qxd 4/5/2007 10:07 PM Page 21

DIFFERENT BITS
line and the endmodule line,
insert the following code:
and
a0(led,switches[0],switch
es[1]);

This line instantiates the


built-in primitive AND gate
and names it “a0.” It sets
port led as the output of the
gate and switches[0] and
switches[1] as the inputs.
It is time to check your
code. In the processes pane,
expand the menu under
“Synthesize – XST” and
double-click “Check Syntax.”
The little wheel should spin
and eventually a green
checkmark shows up,
affirming the impeccable
syntax of your code. Next FIGURE 5.
double-click “Synthesize – XST.” If the #10
#10
switches
switches
=
=
1;
2;
Pin Assignment Testbench
Waveform.
green checkmark does not show up,
#10 switches = 3;
step back through the code above and #10 switches = 0; With the simulation running correct-
make sure you don’t have any spelling ly, we are ready to assign our I/O pins.
or capitalization errors. This stimulates our hello_world Change the view back to Synthesis/
If your code looks perfect but you model with every binary combination Implementation and double-click “Create
are still getting errors, try clicking the of two bits and a delay of 10 in New Source” in the processes pane.
errors pane in ISE and following the between so we can see how it affects This time, choose “Implementation
links listed there. Often, links for our output. Double-click “Check Constraints File” as the type and name it
specific errors are missing, so if this still Syntax” in the processes pane and “constraints.” Click through the wizard,
doesn’t help, try deleting your entire when the green checkmark shows up, then back in ISE, expand the menu under
project, rebooting your computer, double-click “Simulate Behavioral hello_world.v in the sources pane. You
and starting again from scratch in a Model.” This feature is sometimes a should see a file named “constraints.ucf.”
different directory on your computer. little buggy. If it says that you already Click on it and then double-click “Assign
have an active simulation open and Package Pins” in the processes pane.
Simulation asks if you want to close it, click “No.” Xilinx PACE opens up showing a
Now click on the Simulation tab in view of the FPGA archi- FIGURE 6.
Now we are ready to simulate our the display pane and you should see a tecture on the right and a LED/Switch
Verilog code module by creating a waveform like in Figure 5. You can Locations.
testbench file. In the sources zoom in to the waveform by press-
pane, change the drop-down menu ing the + magnifying icon in the
from “Synthesis/Implementation” to toolbar. Zoom in until you can see
“Behavioral Simulation.” In the process- the measurement units for one
es pane, double-click “Create New clock cycle. Note that the output for
Source.” Choose “Verilog Test Fixture” our LED cycles high only once for 10
as the module type and name it ns. Remember, this is because we
“test.v.” When the wizard finishes, the created an AND gate which is only
test fixture should automatically open. high when both inputs are high, or
If it doesn’t, double-click “test.v” in the when our switches are set to binary
sources pane. 3 in our testbench. The length of
Let’s add some code to simulate time comes from setting our delay
sliding our switches on and off. Under timescale to 1 ns in our first line of
the comment which says “//add code, and including a #10 delay on
stimulus here,” type: each input change in our testbench.
SERVO 05.2007 21
HeatherColumn.qxd 4/5/2007 10:07 PM Page 22

DIFFERENT BITS

FIGURE 8. Jumper Settings for JTAG


Configuration.

should look like Figure 7. Save the file as


XST default and close PACE.

Implementation
This step is easy! Returning to ISE,
click on hello_world.v in the sources
pane and double-click “Implement
Design” in the processes pane. The
FIGURE 7. Package Pin wheels spin and eventually each
Assignment in PACE. design browser the board. Finish your pin assignment category in the expanded menu
and object list by typing “LVTTL” in the I/O Std. field, (Translate, Map, Place, and Route)
on the left. Notice that there are three “SLOW” in the slew field, and “8” in the should have a green checkmark next to
objects in the list: the LED and both DRIVE Str. field. These specifications can it. Don’t worry, this sometimes takes a
switches. This is where we will assign be found for each component in the while even for simple designs like ours.
which pins we want the code to use for Spartan3E starter kit user guide.
our input and output ports. Switch IDs and locations are also Programming
If you look at your starter board (or printed on the board. Enter “L13” and
Figure 6), you will notice that each LED “L14” in the location columns for switch- Finally, we are ready to program the
has an ID printed next to it (LD0-7) and es[0] and switches[1]. These are the FPGA. Unlike microcontrollers, FPGAs do
a location written in parentheses below rightmost switches on the starter board. not have onboard program memory.
it (F12, E12, etc.). Type “F12” in the Loc Their I/O standard is also LVTTL and This means that unless you download
field for the row with the led output their termination is “PULLUP.” When you the program to an external memory
listing. This will be the rightmost LED on are finished, your Design Object List device, the chip will lose the code every
time it powers up. This
section will walk through
both techniques: first
temporary programming
of the FPGA directly via
JTAG using the onboard
USB port, then program-
ming the Platform Flash
PROM and configuring
the FPGA to boot
from it.
On the top of the
starter board, you will
notice three jumpers,
M0, M1, and M2. These
configure the FPGA start-
up mode. Remove the
jumper on M0 and M2
leaving only a jumper on
M1 (see Figure 8). Plug
in the power supply for

FIGURE 9. Boundary Scan.

22 SERVO 05.2007
HeatherColumn.qxd 4/5/2007 10:08 PM Page 23

DIFFERENT BITS
the board and switch it on.
Then connect a USB cable
between the board and your
PC. Annoyingly, I have found
that every time I plug my board
into my computer, the Windows
new hardware wizard starts up. FIGURE 11. Jumper Settings for
I have to go through all the steps each Platform Flash PROM Configuration.
time or the Xilinx programming applica-
tion cannot see my device. Once (see Figure 11).
the hardware wizard is finished, return Double-click “Generate PROM”
to ISE and double-click “Generate in the processes pane and then
Programming File” in the processes “PROM File Formatter” in the bound-
pane. When the wheel stops spinning ary scan configuration mode pane
and the green checkmark appears, dou- which opens up. Name the file
ble click “Configure Device [iMPACT].” “hello_prom” and set the directory FIGURE 10. Programming Successful!
The iMPACT window opens up and location to your working directory for the When both switches are up, it should turn
offers you some configuration options. project. Click next and check the box to the LED on.
Choose “Configure Devices Using “Auto Select PROM.” Click through the
Boundary-Scan (JTAG).” The software will wizard and it will ask you to start adding Fonte’s “Programmable Logic” column in
immediately try to connect to your board. device files. Click OK and choose the past issues of SERVO for more details).
If it fails to connect, you will need to quit hello_world.bit file. This is the only file you I highly recommend purchasing a
iMPACT, unplug the USB cable, and try a need to add, so select no when it asks if Verilog book if you are new to program-
different port or try going through the you want to add additional device files. mable logic. The language is quite
Windows new hardware wizard again. Click on the icon for xc3s500e and double- different than C and often unintuitive if
Next, iMPACT will ask you to select a click “Generate File” in the Configuration you are coming from a microcontroller
configuration file from a file browser. Operations pane. A message will flash background. You can get a used book;
Choose “hello_world.bit,” the program- up saying “PROM File Generation just make sure it covers the 2001 Verilog
ming file we generated in the last step. Succeeded.” Now click on boundary scan standard. I also recommend picking up a
You may receive an iMPACT warning in the Configuration Modes pane and mating breadboard from Digilent (the
2257; just click OK. You will then be asked right-click on the PROM icon to assign the part number is FX2BB). It snaps right
for configuration files for the xcf04s MCS file you just generated. into the FX2 connector on the starter kit
platform Flash and the xc2c64a CPLD; just When it asks you to select which board, making all of the I/O available for
click bypass for both. Your screen should PROM you are using, choose xcf04s. prototyping. Have fun! SV
now display the setup you see in Figure 9. Right-click on the icon of the PROM
Click on the icon for xc3s500e
representing the FPGA, then right click
again and choose “Program.” Click OK
in the properties dialog that opens,
RESOURCES
and select “Program ...”. Click OK on making sure the checkbox for “Load For more details on the topics covered here
plus related information, check out these
the page that pops up without chang- FPGA” is checked. A progress dialog resources:
ing anything. A progress window will opens, followed by a “Programming
appear followed by a message stating Succeeded” message on the screen. Spartan3E starter kit user guide: http://direc
t.xilinx.com/bvdocs/userguides/ug230.pdf
that programming has succeeded. You That’s it! Now you can turn the
did it! The chip is finally programmed. board on or off as much as you please Spartan3E datasheet: http://direct.xilinx.
Slide switch 0 and switch 1 on the and the AND gate will persist. com/bvdocs/publications/ds312.pdf
starter board up and the LED will turn Application guides: www.origin.xilinx.com/
on. Slide one or the other down and Wrap-Up xlnx/xweb/xil_publications_display.jsp?
iLanguageID=1&category=1211393&sGlob
the LED turns off (see Figure 10).
alNavPick=&sSecondaryNavPick=
If you turn the power off and then This concludes our introduction to
turn it back on, the program will disap- the Spartan3E starter kit. Now that you Digilent, Inc., supplier of all kinds of starter
pear from the FPGA. To give our AND understand how the Xilinx settings and kits and accessories: www.digilentinc.com
gate some persistence, let’s program configuration work, you can get to the NuHorizons, authorized Xilinx distributor
the onboard platform Flash. Turn the fun stuff. Try expanding the program we (sell the starter kit): www.nuhorizons.com/
power on your starter board to the off wrote to include more switches and LEDs.
Avnet, authorized Xilinx distributor (sell
position and add back the jumpers for Add different types of gates for more the starter kit): www.avnet.com/
configuration headers M0 and M2. All complicated logic and try constructing a
three headers should now be in place multiplexer and then an adder (see Gerard Fun FPGA projects: www.fpga4fun.com/

SERVO 05.2007 23
Events.qxd 4/5/2007 11:31 AM Page 24

Send updates, new listings, corrections, complaints, and suggestions to: steve@ncc.com or FAX 972-404-0269

Looking at the event list for May, you’d have to con-


clude it’s international robot competition month. We’ve got
M ay
events in Sweden, Germany, Canada, Israel, Switzerland, 4 Robot-SM
Portugal, France, and Malyasia. There are also a couple of Sweden
US competitions scattered through there — like Chibotica in Autonomous Sumo and mini Sumo event. There’s
Chicago, IL and NATCAR in Davis, CA. no English version of the website, so if anyone
Know of any robot competitions I’ve missed? Is your can pinpoint the location a little more precisely, let
local school or robot group planning a contest? Send an me know.
email to steve@ncc.com and tell me about it. Be sure to www.robotsm.se
include the date and location of your contest. If you have a
website with contest info, send along the URL as well, so we 4 SPURT
can tell everyone else about it. Rostock-Warnemunde, Germany
For last-minute updates and changes, you can always Robots race on the official SPURT track.
find the most recent version of the Robot Competition FAQ http://spurt.uni-rostock.de
at Robots.net: http://robots.net/rcfaq.html
5 Eastern Canadian Robot Games
— R. Steven Rainwater Ontario Science Centre, Ontario, Canada

Robot Controllers Programmable Robot Kits


Wiring Robot Controller
· Atmel ATMega 128 INEX MicroCamp Mega8
· 128k Memory · Atmel ATMega8
· 43 Digital I/O Pins · Dual DC motor drivers
· 8 Analog Inputs · 2 Buttons, 2 LEDs
· 8 External Interupts · Serial port
· 6 PWM Channels · 5-Analog ports for sensors
· 2 Serial Ports including Bi-Directional USB · +5V switching power supply
· The Wiring Programming Language · No soldering required
· Supports In-system Programming via ISP connector
The Wiring language provides a simplified subset of
C or C++ that hides more advanced concepts like with included PX-400 Serial Programmer
classes, objects, pointers (while still making them Includes eveything you need to build a simple mobile
accessible for advanced users). You get the power robot. Add your own additional sensors for even
of C or C++ with the ease of a language like Basic. more complex robots.
Programs execute at full C++ speed on the board.
$59.95
$69.95
ARC1.1 Robot Controller MicroBric Viper
• Atmel ATMega16 Also Available: · Screw-together Assembly
• 1k SRAM, 16k Flash Electronic Components · BasicAtom Microcontroller
• Dual 1.1 amp motor drives Servos · 2 motor modules
• Supports motors up to 25V Motors · Bump sensor modules
• Dual quadrature encoder support Hardware · Switch Modules
• Programming cable included with kit Wheels & Tires · IR Remote & Receiver Module
• No additional hardware needed and More! With microbric, you can build complex electronic
• Works with BASCOM and AvrDude programming software
More New Products on the way! devices with little or no prior electronics knowledge.
Ideal for controlling your small robot. With a Microcontroller As no soldering is involved and the parts are fully
and onboard motor controllers, you get all the electronics
reusable, you can build and rebuild programmable
that you need (except sensors) on one board.
robots as many times as you like.
Kit $37.95 / Assembled $41.95 $89.95
1-800-979-9130
MaximumRobotics.com
24 SERVO 05.2007
Events.qxd 4/5/2007 10:21 AM Page 25

This event includes mini Sumo, line-following, 12 Chibotica


walker race, and a new event for beginners called Museum of Science and Industry, Chicago, IL
Search and Rescue. Line-following, maze-solving, Sumo, and a robot
www.robotgames.ca talent show.
www.chibots.org
8-9 Haifa Robot Competition
Haifa, Israel 12 Western Canadian Robot Games
Autonomous robot events for university students, Alberta, Canada
high school students, and amateurs. This event includes robot Sumo (western rules),
http://math.haifa.ac.il/robotics/competition mini Sumo, walking robot triatholon, robot art con-
test, Atomic Hockey, and a full set of BEAM events.
11-12 SwissEurobot www.robotgames.net/robot_games.htm
Yverdon-les-Bains, La Marive, Switzerland
This is a regional version of the main Eurobot 21 NATCAR
competition which will be held on May 16-20 in UC Davis Campus, Davis, CA
France. Very high-speed autonomous line-following.
www.swisseurobot.ch www.ece.ucdavis.edu/natcar

SERVO 05.2007 25
May07NewProd.qxd 4/5/2007 9:59 PM Page 26

New Products

N E W P RO D U C T S
ets required. The control boards will retain all of the Open
MOTORS Servo functionality with I2C control or TTL level serial
control. Normal servo pulse control and a trimmer pot to
Digital Robot Servo adjust the center position will be added later. The control
boards are all digital and use powerful HEXFETs in the

H itec announces the release of their new HSR-5980SG


considered by many to be the most powerful servo
for the money. It features 417 oz/in of torque at 7.4 volts,
output stage. They will also be available separately in 5 amp
and 10 amp versions for use in homebrew servos. The
control firmware will remain completely open source. These
super strong, wear-resistant steel gears, and HMI digitial new products will be available in the third quarter of 07.
feedback protocol. For further information, please contact: For further information, please contact:
Tel: 858•748•6948
Hitec Website: www.hitecrcd.com Lynxmotion Website: www.lynxmotion.com

Planetary Gear PLATFORMS


Head Motor
Servos Base Rotation
For Servos
L ynxmotion has joined forces with
members of the Open Servo team to provide
two very powerful planetary gear head motor servos. The L ynxmotion is adding a
new product that falls
first of the two servos is based on a 22 mm planetary gear under the “Why didn’t
head motor with 355 oz/in of stall torque. The second anyone think of this
servo will use a 32 mm planetary gear head motor with before?” category. It’s an
945 oz/in of stall torque. Both motors have all metal gear injection molded base rotation for
trains for maximum power transfer and durability. The new standard size servos. It is made from heavy duty black ABS
servos are Servo Erector Set ready with no additional brack- material and incorporates five 6 mm ball bearings to support
the deck. The sturdy construction can
easily support a 10 lb payload. The
base rotate measures 4.00” at the
HobbyEngineering base, 3.75” at the top, and is 1.88”
tall. The top deck has the Servo
The technology builder's source for kits, components, supplies, tools, books and education.
Erector Set hole pattern so there are
several options as to what can be
Robot Kits For All Skill Levels ICs, Transistors, Project Kits mounted to the top. Some applica-
tions include robotic arm base rotate,
Motors, Frame Components heavy duty pan and tilt, panning a
and Scratch Builder Supplies.
large sensor array, or even a waist
rotate for a Johnny 5 style robot. Any
Order by Internet, phone, fax or mail.
of the most popular Hitec standard
www.HobbyEngineering.com size servos can be used. The new base
Books and 1-866-ROBOT-50 rotate will be available with or
1-866-762-6850 without servos, starting at $19.95.
Educational K 1-650-552-9925 The new BR-KT will be available in the
1-650-259-9590 (fax)
sales@HobbyEngineering.com
second quarter of 07.
180 El Camino Real For more info, please contact:
BEAM Kits and Components Millbrae, CA 94030
Visit our store near SFO! Website:
Lynxmotion www.lynxmotion.com
Most orders ship the day received! World-wide shipping. Convenient payment options.

26 SERVO 05.2007
ShowcaseMay07.qxd 4/5/2007 7:44 PM Page 27

7KH(VFDSH
5RERW¶VEXLOWLQ
PLFURSURFHVVRU
HQDEOHVLWWR
³WKLQN´RQLWVRZQ

G 
.65 

LUH QJ
TX U L
UH ROGH
6
7KHURERWIURJPRYHVIRUZDUG
ZKHQLWGHWHFWVVRXQGDQG
UHSHDWVVWDUW PRYHIRUZDUG !
VWRS!OHIWWXUQ!VWRS!ULJKW
WXUQ!VWRS .65 
PP:KLWH
ZDWHUFOHDU
/('9
PFG
$% 

VHFRQGYRLFHUHFRUGHUSOD\EDFN
PRGXOH7KHHOHFWUHWPLFURSKRQHLVRQWKH
ERDUG2QHEXWWRQUHFRUGVWKHRWKHUEXWWRQLV
PRPHQWDULO\SUHVVHGWRUHSOD\WKHPHVVDJH
SUHDVVHPEOHG  $ 
7KH9HOOHPDQ3HUVRQDO6FRSH
LVQRWDJUDSKLFDOPXOWLPHWHU
EXWDFRPSOHWHSRUWDEOH
RVFLOORVFRSHDWWKHVL]HDQG
FRVWRIDJRRGPXOWLPHWHU
+36 
QGV
7KRXVD
L WH P VRQ
PRUH
E LWH
V
RXUZH

Robotics Showcase
Robotics Showcase

THOUSANDS OF ELECTRONIC
PA R T S A N D S U P P L I E S
VISIT OUR ONLINE STORE AT
www.allelectronics.com
WALL TRANSFORMERS, ALARMS,
FUSES, CABLE TIES, RELAYS, OPTO
ELECTRONICS, KNOBS, VIDEO
ACCESSORIES, SIRENS, SOLDER
ACCESSORIES, MOTORS, DIODES,
HEAT SINKS, CAPACITORS, CHOKES,
TOOLS, FASTENERS, TERMINAL
STRIPS, CRIMP CONNECTORS,
L.E.D.S., DISPLAYS, FANS, BREAD-
BOARDS, RESISTORS, SOLAR CELLS,
BUZZERS, BATTERIES, MAGNETS,
CAMERAS, DC-DC CONVERTERS,
HEADPHONES, LAMPS, PANEL
METERS, SWITCHES, SPEAKERS,
PELTIER DEVICES, and much more....
Request a Free Sample Today
O R D E R TO L L F R E E
1-800-826-5432
Ask for our FREE 96 page catalog

SERVO 05.2007 27
CombatZone.qxd 4/4/2007 9:47 AM Page 28

Featured This Month


Participation
28 Propane/MAPP Torch Safety
by Jeffrey Scholz

29 Fingers and Toes


by Steven Kirk Nelson

Feature
30 Robots That Don’t Break
by Brian Benson
PARTICIPATI N
Propane/MAPP Torch Safety
Technical Knowledge ● by Jeffrey Scholz
32 Chains — Putting the Growl
in Your Drive Train
by Steven Kirk Nelson P ropane and MAPP torches are
not only used by plumbers to
solder pipes together, robot builders
watch), it can get very hot. Take
your bling off before using the torch.

Events use them as well for hardening • Hitting a red-hot piece of metal
weapon blades and for heating up with a hammer throws off sparks,
32 Results — Feb. 12 - Mar. 11 titanium to make bending the mate- so do not pound any harder than
35 Upcoming — May and June rial into the desired shape easier. you need to. Again, sparks
Along with the warnings included in probably won’t seriously hurt
Product Review your manual, robot builders have a
few more things to watch out for:
you, but it can make you react
suddenly and unsafely.
34 LED Lighting Systems
by Chad New • Reflected heat — bending titanium • Your vise is attached to a wood-
into a concave plow? Did you en workbench. Sufficient heat is
remember that solar ovens are not likely to reach the wood to
also concave in shape? I’ve been cause it to ignite. However, there’s
rudely reminded of this phenom-
Propane and MAPP torches.
enon several times; it’s one you
need to watch out for. Even if
the piece is straight, you can
still reflect heat at yourself acci-
dentally. Remember to angle
the torch away from your face
and your other hand.

• Reflected heat probably


won’t burn you, but if it
concentrates onto metal
touching you (like a metal

28 SERVO 05.2007
CombatZone.qxd 4/4/2007 9:47 AM Page 29

always the possibility of pointing the dunk the part in oil or water while it blade in a vise; it takes too long to
torch at the wood carelessly (espe- is red hot. However, the part loses its remove and the vise wicks away heat.
cially when handling the piece you’re “redness” quickly after you stop heat- You can hold the part in pliers, but it
working on), so dampen the wood ing it. Loosening the part from the often bends under its weight while
with water to retard ignition. Or, you vise, grabbing it with pliers, sticking it hot and soft. Your best bet is to heat
can buy commercially-available flame in oil, and swirling it, all while holding the part on firebrick and slide the
retardant sheets to cover the wood. a lit torch in the other hand is not part into the cooling solution. Have a
exactly a kosher practice. My first bit partner handy to take the torch away
• Some heat-treating requires you to of advice is that you not clamp the from you while you do this. SV

Fingers and Toes


● by Steven Kirk Nelson

Y ou know, it’s funny. Sometimes


you get involved with things that
are beyond your control. If you’re
The Wranglers Job ...
The wrangler is responsible for
6) Power-up the least dangerous
robot first. Use your best judgment if
they are similar in danger level.
lucky, you both survive them and the safety of everyone involved at the
learn how to respect them, as well. particular event. This job can never be 7) Allow only one person to power-up
What doesn’t kill you, usually teaches taken lightly and it can require a one robot at a time. Keep the others
you when to run (or at least duck). forceful attitude from time to time. outside the arena or behind barricades.
Some folks say that herding cats Basically, the wrangler’s job is to get
is difficult. They should try herding the machines in and out of the arena 8) Power-up the other robot. Have
combat bots and robot builders. as quickly as possible while keeping everyone leave the arena.
They can be just as independent and everyone safe (including them). The
their wit and claws are usually wrangler may also have to enter the 9) Do not allow testing or twitching
sharper and stronger. Over the last arena to separate robots that are of the bots while anyone is inside
10 years or so, I have built many powered up, stuck on something, or the arena.
machines, competed in many events, even put out machines that are on
been a judge, written rules, been an fire. I’ll tell you what, this can be a bit 10) Close the arena doors and allow
EO (Event Organizer), built arenas scary. The wrangler is putting his life limited testing of the robots. Time
and helped out at many events. Boy, in the hands (or twitchy fingers) of the to rock!
it’s been a heck of a ride. builders and their technology.
One of the most difficult jobs I Power-down:
have been assigned to in all of this What Works for Me 1) Do not open the arena doors until
happy mayhem is working as a safety builders and bots have calmed down
officer or the head wrangler at robot- Here are a couple procedures for a few seconds. Often, they are
ic combat events. Consider this text that have always worked for me. very excited or possibly in shock after
the obsessions of an event wrangler. a match.
Power-up Procedure:
Robotic combat is a very unique 1) Be kind and friendly to the builders. 2) Open the arena door and let some
sport. The goal for most that build fresh air into the arena before allow-
machines is to test their imagination 2) Check for a radio frequency clip on ing anyone to enter.
and intelligence by building an every machine.
unbeatable and deadly machine. 3) Only allow one builder to enter the
Once it’s built, their goal becomes 3) Assess the robot design and arena at a time.
proving their prowess to anyone danger level.
foolish enough to challenge them in 4) Power-down the most dangerous
the arena. With this in mind, a good 4) Assign robot to an arena position bot first.
machine is very dangerous and the depending on its danger level.
builder is determined to demonstrate Let the builders do their own loading 5) Have the builders vent their
its capabilities. For many of us, this is /unloading. pressurized weapon systems before
what the sport is all about. That’s all allowing others to approach the
good for the builders, but it is what 5) Never rush a builder during power- robot.
makes life difficult for the EO and up (within reason) to avoid hasty
their event staff. mistakes. 6) Power-down the other robot.

SERVO 05.2007 29
CombatZone.qxd 4/4/2007 9:48 AM Page 30

7) Have the builders shake hands expected of them every time. Fires
once everything is shut down.
Un-sticking Robots Fires do happen, but they’re most-
8) Have the builders load up and exit ly electrical in nature. I like to keep a
the arena. This delightful task is probably the CO2 fire extinguisher handy. Dry
most dangerous job in robot combat. chemical extinguishers work as well,
I have found as a wrangler its a These machines can easily hurt or even but I wouldn’t shoot one into a robot
good idea to remind the builders of kill a person. It is extremely important unless I absolutely had to since this can
these steps for every match. I tend to that the Wrangler has the undivided make a complete mess.
repeat myself hundreds of times attention of the builders before enter- Safety is everyone’s job in this
during an event. I also do not change ing an arena to un-stick machines. You sport. And it should be everyone’s
the procedures for any weight class must make sure the builders control number one priority to go home with
or weapon types. Everyone plays by their machines. Your life is truly in their all of their fingers and toes, even
the same rules. That way, they hands, which must always strongly be if they have just had their bot
know what to expect and what is emphasized to them. kicked! SV

ROB TS
THAT DON’T BREAK
● by Brian Benson

T here are many secrets to building


a winning robot. There are rules
of thumb defining proper weight dis-
after every fight tearing their robot
apart and trying to repair it. In most
cases, they are simply charging their
itself. The solution to this comes down
to good engineering. It’s hard to deter-
mine the forces and loads that other
tribution, frame types, armor types, batteries and looking the robot over. robots will exert on your robot but it’s
and materials that span the building This is because their robot was engi- easier to find the forces of your own
community. However, the real key to a neered (not just designed) to survive robot. I won’t go into the math and
winning robot is a robot that doesn’t an average fight without failing from physics here, but with some research
break. It sounds simple and obvious, major complications. A well designed it’s possible to calculate rough esti-
but it is surprising how many robots and engineered robot will have a bet- mates. From here, you can determine
lose matches because the robot ter opportunity to win because you‘ll whether that shaft is really big enough
breaks during an average match. be able to fully concentrate on strate- in diameter, if those bolts are going to
It’s expected that things will break gy and doing well, not just surviving. be strong enough, or if that keyway is
when you fight the really dangerous going to fail. Take advantage of safety
robots, but not against the tame ones. Your Own Enemy factors; there are reasons they are
If you watch carefully during competi- used in industry. Engineer your robot
tions, the veteran builders with a As I said, one of the biggest chal- so that all components will last
reputation for winning have one thing lenges to building a destructive robot through at least one competition; this
in common: They are not in the pits is building one that doesn’t break generally means seven or more fights.
FIGURE 1. One pound robot Decidedly FIGURE 2. This 220 lb robot used shock- FIGURE 3. In this robot, the soft wire
Undecided uses a bent steel wedge to mounted .75 inch aluminum to absorb blows insulation was no match for getting caught
deflect spinning weapons. from other robots in order to prevent damage up in the gear. The proper solution in this
to the drive system and frame. case is to keep the wires out of the gear,
but a wire sleeve might have helped.

30 SERVO 05.2007
CombatZone.qxd 4/4/2007 9:49 AM Page 31

FIGURE 4. This speed controller is FIGURE 5. To create a custom radio switch, a simple push
shock-mounted on .25 inch Lexan button switch, large set screw, and plastic are used.
using a cut-up mouse pad.

Design for failure. This


means that when you select your
components, consider how they
will fail and what will happen
when they fail. A ball bearing that
fails halfway through the match
will likely explode or lock up while
a bronze bushing that cracks
during a match will probably still
work for the rest of the fight, just at a second best method is to absorb the multiple instances of this can cause
decreased efficiency. Try to engineer energy. This can be done in a variety a short. To prevent this, use wiring
your robot so it won’t fail, and in of ways; thick aluminum will perma- with good insulation for both rated
places you need to make compromis- nently deform and absorb energy, and temperature and durability. Wrapping
es, design it so that when it does fail rubber will deform and return to its the wires in a protective sleeve is the
it doesn’t completely compromise the original shape. A good example of the best option and might prevent failures
effectiveness of the robot. absorption method is seen in Figure 2. like the one shown in Figure 3.
The third method — which I The next failure point is the wire
Be Tolerant don’t recommend — is to transfer the connections. All connections should
energy into motion. This involves be crimped and soldered. All connec-
Next, consider what is going to making your robot as solid as you tors that can be disconnected need to
happen to your robot during a com- can, so that all impacts yield no dam- be taped or zip-tied so they cannot be
petition. The frame will bend, wheels age and your robot is simply thrown disconnected accidentally during a
will get hit, and screws will shear; across the arena. The problem with match. Every joint between a wire and
you need to account for this. Design this is that your speed controllers, motor or other device should be built
your robot for low tolerances so that motors, receivers, etc., will then feel up with hot glue, Goop, or something
it will be accepting of damage. If you the maximum amount of shock. It is similar. This will provide support for
have a frame rail that can take hard to build such a strong robot and the wires when they get pulled on.
damage, don’t make it a key bearing properly shock-mount your compo- This brings us to the main
holder for the drive or weapon nents so you would be better off components portion of the electrical
system. Carefully choose between considering the first two methods. system. The receiver is one of the
live and dead shafts. Live shafts have smallest components, but it is the
their place, but a dead shaft can All the Small Things heart of the robot. When it breaks,
double as a frame support and is everything else stops working. The
much more tolerant to misalignment. The worst way to lose is because receiver crystal is prone to popping
of a minor issue that could have been out; solve this with a strip of electri-
Damage Control avoided with a 30 second fix. This FIGURE 7. Billy Bob, a 30-lber, has
usually translates to problems with the shock-mounted armor, a hinged titanium
wedge, shock-mounted batteries, and
Other robots generally try to electrical system. Wires make up most electrical components. Billy Bob competed
at the North East Robotics Club’s Motorama
destroy your robot by transferring as of the electrical system and the insula- competition going undefeated and winning
much kinetic energy to your robot as tion on the wires can first place Why? Because it didn’t break.
possible. So your goal is to minimize be sliced by sharp
the effect of the energy. There are frame members or
three ways to do this: absorb the ener- moving parts. If you
gy, deflect it, or just transfer it to sky have a metal frame,
miles (flying across the
arena). Deflecting the FIGURE 6. The
completed switch
energy is usually the best is ready to mount.
option. This can be done
with a hard armor (like
steel) set at a shallow
angle as shown in Figure
1. Other robots will just
hit it and glance off. The

SERVO 05.2007 31
CombatZone.qxd 4/4/2007 9:49 AM Page 32

cal tape around the entire receiver to The last small thing to consider is Conclusion
prevent it from coming out. The power switches. Most builders have
PWM cables need to be glued into lost at some point due to a power As you can see, there are many
the receiver as described before. You switch accidentally turning off during factors to consider when designing
also need to shock-mount the receiv- a match. I feel the best option for and engineering a robot. For an exam-
er, speed controllers, batteries, and robots 12 lbs and higher are the ple of a robot that has taken into
anything else that else that might Team Whyachi power switch options. account all of this, see Figure 7.
break (foam works well). If you prop- (see www.teamwhyachi.com). Remember, don’t be your own enemy.
erly glue, zip-tie, tape, and foam all Custom solutions do work (Figure 5 Be tolerant, control the damage, and
of your critical components, you will and 6), but off-the-shelf products remember all the small things. But
drastically limit your failure points. generally are not suited to this use. above all, have fun and be safe! SV

EVENTS
RESULTS — February 12 - March 11
● Open Feathers (30 lb) — 1st: “Billy
M otorama 2007 was held
February 16 in Harrisburg, PA.
Presented by North East Robotics Club.
Bob,” Robotic Hobbies; 2nd: “Sloth,”
Team Massacre Robotics; 3rd:
Sacramento,
CA. Presented
by Sacbots. Results are as
Results are as follows: “Tripolar,” Team Brain Damage. follows:
● Sportsman 30s — 1st: “Bounty ● Fairyweights (150 g) — 1st:
● Fairies (150 g) Hunter,” Team Hammertime; 2nd: “Crisp,” clamp, Team Misfit; 2nd:
— 1st: “Deimos,” “PITR,” Team Javman; 3rd: “Helios “Micro Drive,” lifter, Team Misfit;
Team Cosmos (ranked #4); 2nd: “Mr. Sport,” Team Cosmos. 3rd: “Atom Bomb,” drum, Team
Bigglesworth,” Team Udanis; 3rd: ● Ant Rumble — “yelo,” Team Pinq. Misfit.
“Steve-O,” Team PITA. ● Beetle Rumble — “Destructive ● Antweights (1 lb) — 1st: “MC Pee
● Ants (1 lb) — 1st: “Switchblade,” Crab,” Green Machines. Pants,” drum, Team Fatcats; 2nd:
Team Sawzall (ranked #2); 2nd: ● Hobby Rumble — “Pummel,” “Dark Pounder,” drum, Dark Forces;
“Fender Bender,” Team JandA; 3rd: Robotic Hobbies. 3rd: “Unblinking Eye,” horizontal
“Absolutely Naut VDD,” Team ● Feather Rumble — “Gnome spinner, Hammer Bros.
Anarchy Robotics. Portal,” Robotic Hobbies.
● Beetles (3 lb) — 1st: “Can O Nuns,” ● Most Destructive Robot — Sloth,
HockeyRunner Robotics;
“Enemy,” (ranked #7), NovaRobots;
2nd: Massacre Robotics.
● Coolest Robot — Diabolical
B ay Area Robot Fights 2007
was held March 3 in Tampa,
FL. Presented by TeamPyramid.
3rd: “SSOD,” jZRobotics. Machine, Team Terror. Results for
● Hobbys (12 lb) — 1st: “Solaris,” ● Best Driver — Jon Durand, Team this event
Team Cosmos; 2nd: “Darkblade,” Anarchy Robotics. w e r e
Team Sawzal (ranked #7); 3rd: unavailable
“Rants Pants,”
Robotics (ranked #1).
Not-so-boring
T he Smackdown in Sactown III
was held February 18 in
at press
time. SV

TECHNICAL KN WLEDGE
CHAINS — Putting the Growl in Your Drive Train
● by Steven Kirk Nelson

R egardless of the motor or engine


used in powering a combat
robot, you have to get the power to
ways to do this using gears, belts,
friction drives, or just good old chain.
Each method has a different
builder and the application. Chains
have certain advantages over belts
and gears. One of the most obvious
the output shafts. There are several level of efficiency, so it’s up to the is chain can be cut to length rather

32 SERVO 05.2007
CombatZone.qxd 4/4/2007 9:50 AM Page 33

easily and when properly installed, the key stock in the sprockets and
does not slip. Another advantage is it shafts before drilling the mounting
is possible to change shaft ratios by holes as they do change chain
changing the sprocket sizes. This lets tension a bit.) You have to always
you adjust the final torque output maintain at least a 120 degree (33
of the drivetrain to fit your power percent) wrap on the smaller
output needs. sprocket. And it is usually not
The three commonly-used chain recommended to go over a 7-to-1
sizes in larger combat robots are #40 reduction in a single stage. For
roller, #35 non-roller, and #35 high more reduction, use multiple stages Sprockets and chain, oh my!
tensile extended bushing or “space through intermediate (jack) shafts.
chain,” such as EK Spaced Silver When fitting a chain, you first about 1/2” deflection. Running a
Pro Chain. Chain size is determined mark the links to be removed (soap- chain too tightly wastes horsepower
by how much load that it will have stone works well). Then, using a and destroys the chain, bearings,
to handle. chain breaker tool, you push the pins sprockets, and motors. It makes a lot
In all reality, it has been proven out on each one a little at a time of noise, as well.
that for non-weapon drivetrain use, until the side bars come loose. Don’t I am not a believer in the need
standard #35 non-roller chain works try to fully push a pin all the way out for added chain tensioners or
really well up to about three in one operation. Alternate between rubbing blocks. So I simply make my
horsepower; for 4-8 HP, use #35 EK each pin; this reduces the damage to mounts adjustable by drilling multiple
Spaced Silver Pro GoKart racing the chain and the chain breaker tool. holes in the frame and mounting my
chain; and for anything over that or a Personally, I grind the pins down bearings in the center hole on initial
weapon drive, use #40 roller chain. I flush on the link I want to remove, to assembly. Once it’s all running
should mention that we have used further reduce the stress on the chain smoothly, I cut out the slots to allow
the #35 GoKart chain with over 13 and the tool. for chain adjustment in two
HP and at 10,000 RPM with great When installing the master link directions from the original install.
success. But your mileage and service (if used), the closed side of the mas- Also, it makes it possible to adjust
life may vary. ter link should be facing the direction the alignment when needed. Chain
of rotation for maximum strength tension will change after a few hours
Fitting Chain and reliability. If the output shaft will (or even minutes) of run time.
turn both directions, then mount the
For a properly designed closed side of the link toward the Lubrication
machine, you have to do the math more common direction of use, for
and calculate the shaft centers, loads example, the forward motion in a Steel chains require lubrication.
applied, and type of lubrication used. pushy bot. (You’re not supposed to They are not designed to run dry. I
If you want 15,000 hours of run time run away from your opponent.) should note that most chains come
with your chain, then you must It is very important to get your with a protective lubricant applied to
do the math! A good site is www. sprockets aligned as straight as possi- them at the factory. This lubricant is
drivesinc.com/roller-PDFs/rollr- ble to keep your chain happy. You applied to keep them from rusting in
precsn.pdf But there is a mechani- should use a straight edge to align the box. To keep your chain working
cal way to build a drive train, as the sprocket faces to each other. This properly, you need to lubricate them
well. Basically, you let the chain tell takes a bit of time and practice. with a good grease or oil. With brand
you what it will handle and where Basically, you want the faces of the new chain, I usually run them for a
the motors and shaft can be sprockets to be true and square, so few minutes with the factory lube.
mounted. When building a drive the chain will ride on the center of Before I do any real testing, I clean
train in the garage, I always start the sprockets and not rub on the side
with some wood blocks, bearings, bars in operation. Once you get
shafts, sprockets, motors, and a everything straight, you want to
box of chain. I just keep sliding the install the chain and rotate the drive-
parts around and observe the train by hand while checking for
amount of wrap on the small binding and crunchy sounds.
sprocket. If you can make the chain Another thing to double check
happy in this way, you can just drill is the chain tension; #35
the holes and bolt the bearings and chain should have about 3/8” up/
shafts to a frame and your drive- down deflection between the shaft
train is done. (Note: Always insert centers, and #40 chain should have Chain breaker.

SERVO 05.2007 33
CombatZone.qxd 4/4/2007 9:51 AM Page 34

The master link. Sprockets need to be do not slip.


aligned as straight as
possible.
• #35 non-roller or #35 HT GoKart
chain will handle most drivetrains.

• Maintain at least 120 degrees of


chain wrap on your smaller sprocket.

• Single reduction ratios over 7:1 are


unreliable. Use a multiple reductions
for higher final reduction ratios.
them thoroughly, then use a mild After that, I remove the solvent
automotive solvent or even kerosene. with hot water mixed with a little liq- • Lay out your drive chains, sprock-
Do not use carburetor cleaner or uid dish soap and then blow dry ets, shafts, and bearings before
gasoline! I just use a soft parts brush them with an air nozzle. Immediately building the framework.
and a clean bucket filled with clean after the chain is blown dry, you
solvent. must apply a good chain lube to pre- • Using adjustable mounts is a good
vent rusting and galling under load. idea.
I’ve had good luck with PJ1 chain
lube. Of course, there are lots of • Align your sprocket faces using a
brands of both wet and wax type straight edge.
lubes for motorcycles and GoKarts
out there. • Thoroughly clean new chains and
then lubricate them with a proper
Summing It All Up chain lube.

Adjustable mounts. • Chains are very strong and • Never run chains dry! SV

PRODUCT REVIEW — LED Lighting Systems


● by Chad New

R ule 6.6 of the Robot Fighting


League states that all robots
must have a light that is easily visible
ity of an LED from a random area of
wiring from within the robot.
However, LEDs can add a cool finish-
Easy Light system — which uses a
pair of ultra bright LEDs; the Fire Fly
lights use two LEDs that glow on
from the outside of the robot which ing touch to your robot, giving it per- and off depending on their setting;
shows when main power is activat- sonality and something to distin- and the Sidewinder Light system
ed. The power status light is one guish it from other bots while still which harkens back to the ‘80s TV
aspect of most robots that is often satisfying a rule for nearly all robotic show “Knight Rider” and the light
overlooked while the robot is being events. system that was embedded in its
built. Most builders choose to use At times, LEDs can tend to be hood. It uses several LEDs that scroll
the status light on their speed con- bland, with nothing special about back and forth while also fading in
trols or run a tape covered monstros- them other than the different col- and out.
ors; perhaps they will blink at a All three of these LED systems
given interval or change colors. offered are extremely easy to install
But even with that, I believe it to and use; they come with a standard
still be a little too plain. hobby receiver plug which you can
Dimension Engineering has creat- plug into any channel that you are
ed a line of products that can not using to power the unit. You can
solve all of your LED troubles! also attach them to any 5V power
They offer three different prod- source if you do not have an
ucts that not only emit light, but extra channel or are not running a
do it in a unique way which is receiver.
extremely easy to install. The The lights also double as a
three different systems are: the radio signal indicator if you have

34 SERVO 05.2007
CombatZone.qxd 4/4/2007 9:53 AM Page 35

them plugged into the receiver. If Overall, the lights are very easy tems fail, showing their toughness
you lose signal, the lights will turn to mount. They come with mounting and durability.
off or glow continuously alerting holes so you could secure them with So, if you are looking to give
you to a problem. However, this can bolts, but I have found that a dab of your robot a unique touch, give the
be disabled by cutting the signal Shoo Goo provides adequate support Dimension Engineering’s LED sys-
wire should you not want this for the units. During many events I tems a look at www.dimension
feature. have yet to have any of the light sys- engineering.com. SV

EVENTS
UPCOMING — May and June

C arolina Combat — This event will


take place on 5/4/2007 through
5/5/2007 in Greensboro, NC. It’s
presented by ComBots. Antweights
through SuperHeavyweights, with
a $10,000 Heavyweight prize
Robot Combat. Antweights
through their unique Mega 390 lb
class. Unique revenue sharing
presented by Carolina Combat and a $3,000 MiddleWeight prize! format plus prizes. Go to www.
Robots. Robots from 150 g Go to www.robogames.net for tcmechwars.com for more informa-
Fairyweight to the 120 lb more information. tion.
Middleweights will be competing.
The big bot arena is a 16 x 32 steel
structure with 1/4” steel floor and
1/2” Lexan for the walls. Go to
R OBOlympics/RoboGames 2007
— This event will take
place on 6/15/2007 through
www.carolinacombat.com
more information.
for
M echwar 10 — This event will
take place on 5/19/2007
through 5/20/2007 in Eagan,
6/17/2007 in San Francisco, CA.
It’s presented by ComBots. Combat
classes fairyweights through
MN. It’s presented by Mechwars superheavies, plus dozens of non-
combat classes. Go to www.
robogames.net for more informa-
tion. SV

H ORD Spring 2007 — This event


will take place on 5/19/2007
in Strongsville, OH. It’s presented
by the Ohio Robot Club. The
Ohio Robotics Club will be holding
its fourth House of Robotic
Destruction event at the Strongsville
HobbyTown USA, just outside of
Cleveland, OH. The ORC insect arena
is 4 x 8 in size; halfway through a
match two
14” x 14” pits
open. Go to
www.ohioro
botclub.com
for more infor-
mation.

C omBots Cup 2007/Maker Faire —


This event will take place
on 5/19/2007 through 5/20/2007
in San Mateo, CA. It’s

SERVO 05.2007 35
Bergeron.qxd 4/2/2007 10:30 AM Page 36

HAPTICS,
Telepresence, and
TELEROBOTICS
by Bryan Bergeron

RESPONDING TO AN EMERGENCY LOCATOR BEACON, AN AUTONOMOUS


TELEMEDIC ROBOT HOMES IN ON A SOLDIER WOUNDED IN BATTLE ...

A
human medic, safe in a military TATRC.org) for a view of the current shown in Figure 1. The device serves as
base on another continent, takes state of the art in autonomous casualty an extension of the user’s arm, effective-
command of the robot and drags care robotics. Although many technolo- ly increasing reach by an additional foot
the unconscious soldier out of harm’s gies are involved in telemedicine, it is or more. Compared to operating a robot
way. Then, using a video, audio, and telepresence — the ability to see, hear, arm with a keyboard or joystick, manipu-
touch telepresence interface, he directs speak, touch, and feel at a distance — lating an object with the gripper is
the robot’s arm to gently manipulate the that places the medic virtually at the second nature. Release the grip and the
soldier’s bleeding leg. Through visual soldier’s side. In particular, it is the jaws open. Squeeze the grip and the
inspection and carefully prodding and ability to feel at a distance through a jaws close. More importantly, when the
bending the leg, the medic operator haptic interface that enables the medic jaws stop moving — whether because of
determines that the damage is limited to to physically assess the soldier’s wound an object in the jaws or because the jaws
a deep laceration. Using the robot arm as and correctly apply the tourniquet. are completely closed — so does the grip.
an extension of his own, the medic This article introduces the features The toy gripper does add some
applies a tourniquet, using just enough and design challenges associated with complexity over direct manipulation. For
pressure to stop the bleeding without haptics by way of a telerobotic gripper example, there is slight tension in the
damaging the underlying tissue. With the that you can add to your robot arm or grip because of the spring that keeps the
soldier stabilized, the medic returns the mobile robot platform. jaws open, and pulling back the grip only
robot to autonomous operation so that it a few millimeters causes a proportionally
can rejoin the swarm of robots combing Force Feedback larger change in jaw opening. Despite
the active battlefield for wounded. and Haptics these nuances, the interface is both intu-
itive and easy to learn. An inquisitive five-
While this scenario is fictitious, the To appreciate the advantages of year-old can master the toy in seconds.
technology isn’t. See the videos of pro- a haptic interface over a traditional One reason the toy gripper is so easy
totype robots in operation on the Army’s interface limited to audio and/or to learn is the force feedback provided by
Telemedicine and Advanced Technology video feedback, consider the the direct physical linkage between the
Research Center website www. features of the toy gripper grip and jaws. Pick up a Nerf ball with
the toy and the grip feels squishy. Pick

FIGURE 1. A toy gripper arm


that provides force feedback to
the operator through a direct
mechanical linkage.
36 SERVO 05.2007
Bergeron.qxd 4/2/2007 10:31 AM Page 37

Haptics, Telepresence, and Telerobotics


up a hard plastic ball and the sliding grip FIGURE 2. Haptic
mechanism doesn’t yield to additional gripper key Force
components. Sensor(s) Motor
pressure. With a few minutes of practice, Motor position
you can probably learn to use the toy to sensors not shown MCU
discriminate between a range of rigid and for clarity.
Motor Force
soft objects by feel alone. Sensor(s)
Imagine that we take the toy Telerobotic Jaws Grip

gripper, physically separate the grip from


the jaws, and yet somehow maintain the
Gripper pair of wires lengthwise into each of
force feedback. By replacing direct force Creating a telerobotic gripper three foam rectangles, as shown in
feedback with synthetic force feedback, involves building two complete gripper Figure 4. The two force sensors with
we have the haptic component of a tele- circuits: one to provide the operator solid wire will be used on the jaw
robotic system. Although conceptually with force feedback and one to manip- assembly, along with two unwired
trivial, faithfully replicating the force feed- ulate the jaws. The grip and jaw circuits pieces of foam to provide symmetry.
back supplied by the mechanical linkage both generate force and respond to When inserting wires in the
in the toy gripper can be challenging. stimuli as defined by the MCU. conductive foam, try to keep the wires
Figure 2 shows a high-level schemat- parallel and about 3 mm apart. Use an
ic of the key components of our new Jaw Assembly ohmmeter to verify the wires inside the
telerobotic gripper. Note the jaw and grip If you own a robot arm or gripper, foam aren’t touching and add a drop
circuits are mirror images of each other. then you’re over half-way to a telero- of thin CA cement (Super Glue) where
There are force sensors and effectors on botic gripper. However, if you’re start- the wires enter the foam to keep them
either end of the loop, with a microcon- ing from scratch, then an inexpensive in place. Nominal resistance should be
troller unit (MCU) arbitrator in the middle. but workable gripper is the Big Gripper about 5K ohms uncompressed to
The MCU defines the properties of the from Budget Robotics. I purchased the about 2K ohms when compressed to
feedback loop, providing filtering, amplifi- basic kit without servo and added an half of the foam’s original thickness.
cation, attenuation, scaling, or range Airtronics 94358z, which provides Glue one pad to the tip of one jaw
constraints for signals to the motors and more than the recommended torque, and one pad to the middle of the same
from the force sensors. Although not and a heavy-duty servo coupler. jaw using silicone glue. Because the
shown in the figure, there may be This combination — shown in Figure jaws are hollowed out, you’ll have to fill
bidirectional communications between 3 — enables me to work with the ampli- the center grove with glue so that the
the motors and MCU for position sense. fied power translation with enough jaw conductive foam compresses properly.
The MCU enables telerobotics to be force to crush empty beverage cans. I Twist each pair of sensor wires togeth-
applied to complex operations such as mounted the gripper on a graphic tube er and secure them to the jaw assembly
surgery or munitions handling. Consider using a Lynxmotion HUB-09 tubing with tape or tie-wraps. Glue the two
the benefit of having the ability to scale connector. Graphite tubing, available pieces of unwired foam to the other
down human input motions for micro- from Kite Studio, is a strong, light- jaw at the same level (refer to Figure 3).
surgical procedures, or of filtering small, weight alternative to aluminum tubing
sudden movements (i.e., tremors) to for this and other robotics applications. Operator Grip Assembly
improve the precision of incisions. The next step is to add force sens- A standard servo can be used to
Amplified force feedback can enable a ing to the jaw assembly. One option is
surgeon operator to detect small to use a pair of FlexiForce pressure
differences in tissue elasticity and in the sensors, which are accurate and
tension on a suture while tying a knot. provide good dynamic range, but are
Furthermore, the ability to programmat- expensive. An economical alternative is
ically constrain the range of motion of to make your own sensors from
remotely operated surgical instruments the conductive foam used to protect
can minimize risk of injury through semiconductors from ESD damage.
accidental operator movement. Start with five 15 mm x10 mm
Developing telerobotic surgical sta- rectangles of foam (four for the jaws
tions capable of enabling a surgeon to and one for the grip), four two-foot
operate meters or miles away from the lengths of solid 28 gauge insulated
patient typically involve multi-million hookup wire, and two 10” lengths of
dollar investments. However, you can stranded 28 gauge wire. Strip 10 mm
experiment with basic telerobotic from one end of each wire and insert a
concepts by building and working with
FIGURE 3. Telerobotic gripper jaw
the gripper described here. assembly grasping a fluorescent bulb.
SERVO 05.2007 37
Bergeron.qxd 4/2/2007 10:32 AM Page 38

Haptics, Telepresence, and Telerobotics


FIGURE 5. Firgelli PQ-12f connecting rod with
linear actuator, GWS an adjustable servo
Naro Pro/Std servo,
and SMC NCJ2D10-200S link, you’ll have more
pneumatic linear flexibility in position-
actuator. ing the actuator. Wire
the motor controller and linear actuator and add
a screw terminal block for the serial communica-
tions and sensor lines to the MCU. Glue the
remaining foam sensor — the one made with
stranded wire — to the squeeze mechanism grip
so that it will make contact with a finger as you
FIGURE 4. Construction squeeze the grip. Figure 6 shows the grip assem-
of the conductive foam provide operator-side force feedback. bly with the linear actuator mounted on the toy grip handle.
rubber force sensors. However, I opted to use a Firgelli
miniature linear actuator because it seemed like a good Microcontroller
application to test the capabilities of the new actuator. The Almost any microcontroller with analog inputs and a seri-
diminutive Firgelli PQ-12f linear actuator provides a force of 18N al port to communicate with the motor controller will do. I
at 6 mm/s over a stroke of 20 mm when driven by 5 VDC at 250 used an ATMEL 128-based Mavric IIB from BDMicro. The
mA. Position information is available from the PQ-12f through a board, shown with the complete telerobotic gripper circuit in
2K ohm linear potentiometer tied to the stroke position. Figure 7, provides terminal block access to 51 digital I/O and
The 19 g linear actuator is comparable to the GWS Naro eight analog input pins. When combined with the BASCOM-
Pro/Std servo in size and weight and yet provides the same AVR compiler, the Mavric IIB provides a rapid prototyping
stroke as the much larger SMC NCJ2D10-200S pneumatic environment with ample processing power.
linear actuator. Although the pneumatic actuator provides Connect the jaw assembly servo leads to the servo block on
54 N of force, it weighs 50 g and doesn’t provide the the Mavric IIB, using a servo extension cable. Calibrate the servo
positioning capabilities of either the Naro or PQ-12f. Figure 5 control code so that the servo stops before the jaws reach their
shows the three actuators without their associated control mechanical range limits so that the servo isn’t damaged. Using
circuitry or supply lines. You can probably envision a compact 5K potentiometers in series with each force sensor, create volt-
crawler robot made with the PQ-12f. age dividers with the supply voltage. Feed the variable voltage
The linear format simplifies the design of the grip and leads to two analog input ports on the microcontroller board.
saves space and weight. However, the PQ-12f requires a motor With the motor controller configured and the jaw and
controller, such as the three-amp SMC03A motor controller grip assemblies complete, the real fun begins — programming
with feedback from Pololu. The controller’s analog voltage the microcontroller signal manipulation routines. Controlling
feedback mode proved a good match for the PQ-12f. Use the the SMC03A with the Mavric IIB is straightforward. The motor
2K potentiometer as a voltage divider and feed the wiper controller is configured by sending four-byte commands to
voltage to the feedback terminal on the motor controller. With the serial port using the SEROUT command with BASCOM-
the feedback jumper set to analog feedback mode, the speed AVR. The pseudocode for the microcontroller code is:
commands listed in the manual act as position commands.
The handle from the toy gripper provides a reasonable DO
hardware platform for the telerobotic gripper. Disassemble the IF Grip_Force = 0 THEN
plastic handle and attach a 3” x 4” PCB (printed circuit board) Open_Jaws
ESSE
to one side of the handle. Mount the linear actuator and Close_Jaws
motor controller on the board. You can either use the odd five- LOOP
pin 1 mm pitch connector supplied with the linear actuator or
solder directly to the pads on the actuator’s flex PCB cable. Open_Jaws
Jaw_Servo_Position = Jaw_Servo_Open_Limit
Position the actuator so that the 20 mm stroke Grip_Position = Grip_Open_Limit
matches the Return
normal grip
range of Close_Jaws
motion. If you FOR X = Jaw_Servo_Position to Jaw_Servo_Close_Limit
IF Jaw_Tip_Force > Tip_Limit THEN Exit_Early
replace the IF Jaw_Mid_Force > Mid_Limit THEN Exit_Early
existing metal IF Grip_Force < Grip_Limit THEN Exit_Early
Jaw_Servo_Position = X + K1
FIGURE 6. Grip_Position = X + K2
Exploded view NEXT X
of the operator Early_Exit:
grip assembly. Return
38 SERVO 05.2007
Bergeron.qxd 4/2/2007 10:32 AM Page 39

Haptics, Telepresence, and Telerobotics


The main loop continually checks actuator limits the rate at which you hard doesn’t double the force applied
the resistance of the grip force sensor. can draw in the grip as you squeeze. to the grip sensor. This is because our
When there is no force on the sensor, The PQ-12f requires about 1.8 seconds organic sense organs and effectors are
the jaws open to their maximum for a 20 mm stroke. If you try to force both nonlinear and time varying.
position and the grip slides forward in the PQ-12f or squeeze the grip harder If you’ve spent any time in the
the handle. When force is detected by after the linear actuator has stopped, gym, you’ve probably experienced the
the grip sensor, the jaws attempt to the jaws should continue to close, up nonlinearity of muscular strength first-
close from their current position. to the range limit or the limit controlled hand. The pressure that you can exert,
However, the position of the jaw servo by the jaw pressure sensor. say, curling a dumbbell, varies through
and grip linear actuator aren’t updated With force amplification, I can the movement because of changes in
if the force levels detected by the jaw sense and pick up an empty aluminum the mechanical advantage of the
sensors is too great, or the pressure on beverage can without damaging it and, elbow joint, elasticity and tone of the
the grip sensor is insufficient. with added pressure on the grip, crush biceps and opposing triceps muscles,
Otherwise, the jaw servo position is the can. To avoid stripping an expensive as well as short- and long-term neuro-
incremented by a factor K1 and the grip servo on a closed can or solid object, muscular adaptation. Fatigue, marked-
is advanced by a factor K2, where K1 consider adding a current sensing circuit ly decreased ambient temperature,
and K2 can take on simple values or in the jaw servo supply line in case the drugs, sleep deprivation, and injury all
represent complex functions. object doesn’t happen to align with one affect the capacity for muscular work.
By adjusting Tip_Limit, Mid_Limit, of the force sensors. Muscle efficiency drops with fatigue,
Grip_Limit, K1, and K2, you can create You’ll notice a short lag between extremes in ambient temperature,
a variety of force mapping functions the time you apply pressure to the grip sleep deprivation, and injury.
for your microcontroller to provide and when the jaws begin to close. Similarly, the human nervous
varying degrees of physical feedback Minimizing this delay is one of the system automatically adjusts the
for a given resistance change in a jaw most important challenges in telerobot- sensitivity of our sensors as a function
sensor. K1 and K2 vary the relative ics, especially in time-critical applica- of ambient noise and the nature of
movement of the jaws and grip with tions such as surgery. Try minimizing the signals. Our response to weight,
each update. By dynamically varying the lag in your system by using a sound, light, and many other stimuli
Grip_Limit, you can create a stair step higher performance microcontroller, can be approximated by the Weber-
response that enables you to increase adjusting sensor set points, and remov- Fechner law or model, which is useful
the force on the object in the jaws, up ing slack from the physical linkages. in identifying the just noticeable
to the jaw force limits. difference in a stimulus. The law states
Psychophysics that the just noticeable difference of a
Operation stimulus is proportionally related to the
Squeeze the grip lightly and the As you experiment with various magnitude of the stimulus [1]:
jaws should begin to close from their mapping functions, you’ll soon
open, resting position. The jaws should discover that mathematically nonlinear p = k log s + C
continue to close until one of the force mappings feel linear after a minute,
sensors on the jaw is compressed by an and that squeezing the grip twice as where p is a measure of the perception
object, the preset limit of servo travel
has been reached, or you let up on
your grip. When the jaws stop moving,
so does the grip. In addition, if you
squeeze the grip harder, the jaws will
attempt to close more until the next
force threshold on the jaw sensors is
reached. If the jaw angle changes
because the object is compressible,
the grip should move, as well.
If you have a video camera,
extend the grip-microcontroller cable
so that you can place the jaw
assembly in an adjacent room. You’ll
find that haptic feedback takes on
added significance without direct
visual feedback. FIGURE 7. Telerobotic
The maximum speed of the linear gripper circuit.

SERVO 05.2007 39
Bergeron.qxd 4/3/2007 9:59 AM Page 40

Haptics, Telepresence, and Telerobotics


of the stimulus, k is sense and especially for operators with large hands.
RESOURCES level-dependent, s is the magnitude of For example, the aluminum Pikstik Pro
Big Gripper the stimulus, and C is the constant of reacher has an ergonomic trigger grip
Budget Robotics integration. and the jaws are good enough to be
www.budgetrobotics.com The Weber-Fechner law quantifies repurposed for a robot jaw.
the common finding that humans are The capabilities of the single-axis
SMC Pneumatics much better at sensing relative difference telerobotic gripper can be extended by
Available as individual components than absolutes. For this reason, photogra- adding additional axes and by replacing
through Allied Electronics and Control
phers rely on light meters, sound the grip-microcontroller wiring with a
Sources, Inc., or in complete kit form
from IFI Robotics technicians on sound level meters, and Bluetooth or WiFi connection. Try
www.alliedelec.com grocery shoppers on scales. If you’re an mounting the gripper and a wireless
www.controlresourcesinc.com audiophile, you know that doubling the video camera on a mobile robot base
www.ifirobotics.com power of your audio amp won’t double and interacting with objects out of your
the perceived volume (loudness) of your direct field-of-vision. You can substitute
PikStik Reacher sound system. The relationship between a standard servo and servo saver for the
www.pikstik.com sound power (stimulus strength) and linear actuator or use a pneumatic cylin-
loudness is logarithmic, and commonly der, such as the SMC NCJ2D10-200S or
FlexiForce Sensors
Available from Parallax described in terms of decibels. a less expensive LEGO Technics cylinder.
www.parallax.com If you have access to a force The NCJ2D10-200S is particularly
gauge, experiment with various force well suited for the grip actuator because
BASCOM-AVR mappings. You’ll find the force exerted it has a built-in spring that returns the
MCS Electronics by the Big Gripper is nonlinear, even cylinder to the retracted position at rest.
www.mselec.com with a linear control signal because of Connect a solenoid air valve to the air
the varying mechanical advantage of input port of the cylinder and activate
Pololu SMC03A Motor Controller
www.pololu.com
the jaw mechanism and the variation in the solenoid when the jaw sensors
servo torque as the servo-jaw linkage indicate contact. The partial vacuum will
Graphite Tubing moves through its full range of motion. increase the travel resistance of the
Available from Kite Studio grip. The feeling is less crisp than that
www.kitebuilder.com Variations provided by the PQ-12f, but there is no
limit on the squeeze rate or pressure,
PQ-12f Miniature Linear Actuator An inexpensive adult-sized gripper, and no chance of stripping servo gears.
Firgelli Technologies, Inc.
sold as a reacher, provides a much Consider using the remaining
www.Firgelli.com
better platform than the toy gripper, analog inputs on the Mavric IIB to read
potentiometers to interactively set the
amplification, tremor filter, and motion
limits. If you have a CMUCam II, use it
to identify skin tones and limit the
closure force of the jaws, regardless of
the pressure exerted on the grip
sensor. When you’re ready to build one
of those autonomous telemedic
robots, the TATRC site (www.tatrc.
org) and the IEEE article by Rosen and
Hannaford [2] are good places to start
for more information. SV

REFERENCES
[1] Dudley, B., Basic Phenomena of
Electronics, in Electrical Engineering
Handbook, D. Fink and D. Christiansen,
Editors. 1986, McGraw-Hill: New York.
p. 1-58.

[2] Rosen, J. and B. Hannaford, Doc at


a Distance. IEEE Spectrum, 2006.
43(10): p. 34-9.

40 SERVO 05.2007
Lorenz.qxd 4/4/2007 11:39 AM Page 41

Dull, Dirty, and Dangerous ...


These are the missions that are ideal for robots. Researchers at the US Army Cold Regions
Research Lab and Dartmouth College are breaking new ground in developing a robot
‘Husky,’ to carry scientific instruments across polar ice sheets. Their ‘cool robot’ looks like a
blue cube and can carry or drag equipment, or even a person, across the snow.

A lthough small and simple compared


with the autonomous vehicles driving
in the DARPA Grand Challenge, the Cool
1.2 x 1.0 m. It has a lightweight honey-
comb structure with solar panels and a
set of brushless DC motors with big tires.
of Global Positioning System satellites
some 20,000 km up. Because of the
flat terrain, the signals are rarely
Robot tackles a broadly similar problem; Away from the edges of the ice sheet, the blocked. The robot is programmed with
70-85% of the Antarctic and Arctic terrain is almost featureless and flat, a set of waypoints and simply navigates
research budget pays for logistics. There apart from a ribbed surface called sastru- from one to the other. For tests, a
can be huge savings, and great reduction gi that wind action forms in the snow. short-range radio is used for control,
in risk to personnel, if the relatively simple Obviously near the poles, a magnet- although an Iridium satellite modem is
task of crossing large expanses of empty ic compass is not much use. The magnet- used for long-distance communications.
terrain to deploy equipment can be done ic field lines dip very steeply towards the Two factors are key to the success of
with a simple solar-powered robot. ground at high latitude, meaning only a the robot. First is power. It is expensive to
As well as acting as a delivery truck small component of the field is useful for deliver fuel to remote polar bases, and the
carrying or dragging supplies, the measuring direction. Also, since the environmental pollution associated with
robot could be used to deploy magnetic pole is displaced from the spills is a concern. Since most polar opera-
networks of weather or seismic sen- geographic pole, the difference between tions are carried out in summer, solar
sors, dropping packages off every few true north and magnetic
kilometers. Another application might north becomes large and very
be to conduct a geophysical traverse, sensitive to exact location.
dragging an ice-penetrating radar The Cool Robot instead
across the polar cap to measure the uses GPS guidance, compar-
rock topography hidden underneath. ing the reception times of
The concept that resulted looks more precise signals from the set
like a delivery truck than a sports car,
comments Alex Streeter, a member of the A new winter sport? The Cool
team. It is a four-wheel drive solar pow- Robot towing more than its own
weight. Note laptop for remote
ered box-shaped robot, measureing 1.2 x control via wireless link.
SERVO 05.2007 41
Lorenz.qxd 4/4/2007 11:40 AM Page 42

COOL ROBOTS
What lies beneath. The robot chassis
ADDITIONAL INFORMATION containing the motors, batteries, and
More pictures and details on the control system; the solar cells are
mounted on lightweight panels that are
Cool Robots project are available at: simply hung on the main structure.
http://engineering.dartmouth.edu/
crobots/ panels. Another neat trick is that — apart
The paper available there — from special situations like battery
Performance of a Solar-Powered Robot recharge stops or payload operations —
for Polar Instrument Networks — gives the system can be programmed to match
lots of useful detail on the peak power the motor current draw to the solar panel
tracker and on traction estimation. output, thereby minimizing the current
going into or out of the batteries. This
power is a feasible option, and has the surface of the panels varies throughout improves battery life, and avoids the
advantage that once the robot is deliv- the day due to the sun’s changing need to have a shunt resistor into
ered, it can keep operating year after year. position, the current-voltage curve of the which excess power would have to be
In polar regions, the sun will be panels changes. This can also happen dissipated (which would, in turn, warm
always low in the sky, if it is above the due to temperature changes, and the panels, making them less efficient).
horizon at all. This means that roof- because of drops in illumination due to The second factor in the robot’s per-
mounted solar panels alone are not clouds, although the polar summers are formance is its net traction (T) compared
much use. In fact, in polar midsummer, usually fairly clear. If the electrical system to its weight (W). This depends on the
the sun will be above the horizon in all was designed to work at a fixed current rolling resistance of the tires and on the
directions — south at noon and due or voltage, it would generally not be able compaction of the snow. The goal was to
north for the ‘midnight sun.’ So the Cool to extract the maximum power available. achieve (T/W) of 0.5 or better, meaning
Robot is equipped with solar panels on Instead, a dedicated circuit called a peak that the vehicle could climb a 30 degree
its four walls, as well as one on its roof. power tracker is used to continuously slope or tow a substantial load. The robot
Although it is bright, it is, of adjust the power being drawn from the has large tires — 15 cm wide by 50 cm
course, still cold. In fact, low tempera- panel — up to 40 times a second it draws across. These have walls stiff enough to
tures improve the efficiency of solar more or less current to see if the new support the robot with zero inflation
panels, causing them to run at a draw provides more power than the last. pressure. The researchers calculated a
voltage of 10-20% higher than usual. Starting from a low current state, the likely resistance-to-weight ratio of 0.25.
One surprise was that with the sun logic increases the current until each The Cool Robot was tested in
low in the sky, a significant amount of step starts to reduce the power, and so it summer 2005 at Summit Camp in
sunlight was reflected off the bright steps back. This ‘bang-bang’ way of test- Greenland. This site is at 72 degrees
snow onto the panels — in fact, as ing whether the panel is at maximum North and is at an altitude of some
much as 30% of the power sometimes output is convenient because it requires 3,200 m. Even though the robot weighs
available was due to such reflection no details about the panel being used. only 61 kg, it can tow a much heavier
and appreciable power was generated Because the sunlight falling on a load on a sled behind it. It drove beauti-
by the panel facing away from the panel can change rapidly as the robot fully, observed Jim Lever of CRREL (US
sun. After all, this reflected light is why crosses an ice ridge or sastrugi, the Army Cold Regions Research and
people can get snow-blindness. power-tracking logic (implemented on a Engineering Laboratory), and consumed
As the angle of the sunlight with the microcontroller) is especially fast even less power than predicted. It was
compared with the systems used, for able to climb 0.3 m high steep-faced
The guts of the robot — most of it is example, on domestic rooftop solar berms, and in tests dragging up to three
power-conditioning circuitry. researchers on a sled on level
snow, it could drag 3.5 times its
own weight. Streeter notes, how-
ever, that in the field the tough-
est thing was diagnosing prob-
lems — it’s easy in the lab to feel
for a broken part or put a scope
on a circuit, but at 15 degrees in
wind chill, it’s a different story!
The robot typically sank
abut 5 cm into the snow, using
The key to good traction
performance are the large wheels.
42 SERVO 05.2007
Lorenz.qxd 4/5/2007 1:03 PM Page 43

COOL ROBOTS
an ultrasonic ranger to measure the
amount of sinkage. In fact, on the ACKNOWLEDGEMENTS The robot climbs foot-high
obstacles with ease.
cold, hard snow of the Antarctic, the The author thanks Alex
robot should sink less and therefore Streeter, Laura Ray, and Jim Lever
need less power to move than on the for sharing their experiences with
soft late July snow at Summit Camp. the robots in the preparation of
In principle, the design should scale this article.
up well; larger robots generating more
power and being able to carry more, The design goal for the Cool
faster, but the present design is a good Robot is to cross 500 km of the
compromise, being affordable and easy Antarctic plateau with 15 kg of
to transport. In fact, the ability to fit the payload in less than two weeks, and team hopes to build a fleet of five such
disassembled robot into a tiny Twin Otter the team’s Greenland tests suggest that robots. Of course, during polar sum-
plane for delivery to the South Pole their 60 kg design should be able to mer, the robots can’t drive off into the
Station was a factor in sizing the robot. achieve this. With further funding, the sunset, because it never happens! SV

For the finest in robots,


parts, and services, go to
www.servomagazine.com
and click on Robo-Links.

Electronic Parts & Supplies


Since 1967

Plug in the p Standard Features:


Help
o • CAN, SPI, SCI
Adap ing you
w
e • RS232
r

t • 10-bit A-to-D
of

tech to new • 32K or 128K Flash


9S

nolo • PWM
12

Adapt9S12C gy • Input Captures


!

• Output Compares
www.technologicalarts.com • 3V/5V Operation
C Stamp™ Controller
• LOW COST - High Pin Count
• 48-Pin Module with Analog
• High Speed, Large Memory
• Professional SW Dev. Tools
• Easy to Connect Accessories
• Free Expert Technical Support
Toll-Free: 1 (800) 985-AWIT
www.c-stamp.com

SERVO 05.2007 43
Hewitt5.qxd 4/2/2007 1:45 PM Page 44

Seeing With OpenCV


Implementing Eigenface
b y R o b i n H e w i t t PART 5

H
ere’s a brief recap of last month’s (PCA) to reduce the “dimensionality” of
Last month’s article explained article explaining how eigenface these images. Eigenface defines image
how the face recognition works. dimensionality as the number of pixels
method called eigenface works. Eigenface consists of two phases: in an image.
learning and recognition. In the learning The lower dimensionality represen-
This month’s article concludes phase, you give eigenface one or more tation that eigenface finds during the
both the OpenCV series and the face images for each person you want it learning phase is called a subspace. In
eigenface topic with a detailed to recognize. These images are called the the recognition phase, it reduces the
look at a complete program for training images. In the recognition phase, dimensionality of the input image by
when you give eigenface a face image, it “projecting” it onto the subspace it
implementing eigenface with responds by telling you which training found during learning. “Projecting onto
OpenCV. image is “closest” to the new face image. a subspace” means finding the closest
Eigenface uses the training images point in that subspace. After the
FIGURE 1. The two input files for the to “learn” a face model. This face unknown face image has been project-
eigenface program: train.txt and test.txt. model is created by applying a method ed, eigenface calculates the distance
The paths in these input files point to called Principal Components Analysis between it and each training image. Its
images in the ORL face database. output is a pointer
to the closest train-
ing image. You can
then look up which
person eigenface
identified.

Setting
Up for
Eigenface
In use, you’ll
probably want to
combine eigenface
with the face
detection method
presented in Part 2
of this series. To
simplify the exam-
ple code for this
article, however,
I’ll be assuming
you already have a
set of training
images and a set
FIGURE 2. The
top-level source
listing for the
eigenface program.

44 SERVO 05.2007
Hewitt5.qxd 4/2/2007 1:45 PM Page 45

FIGURE 3. The printUsage()


of test images. These face images must helper function.
all be exactly the same size.
For the examples in this article, I’ve and cvEigenDecomposite(),
used a free, publicly available face data- that are defined in cvaux.h.
base — the Olivetti Research Lab’s (ORL) The primary variables for
Face Database. The URL is listed in the eigenface are defined at lines
References and Resources sidebar. 8-15. One of the datatypes
To set up for using eigenface, unzip here, CvMat, is one we haven’t
the ORL database in the same directory used before. This is OpenCV’s matrix The Learning Phase
you’ll use to run eigenface. This data- datatype. A matrix contains a table of Figure 4 shows the learn()
base contains 10 face images for each data, arranged as rows and columns. function, which implements the
of 40 subjects. These are organized into If you only need to hold data learning phase as four steps:
40 directories, named s1-s40. Each temporarily within your program, an
directory contains 10 images, named ordinary C-style array is usually a little 1) Load the training data (line 6).
1.pgm-10.pgm. All the ORL images are easier to use than CvMat. But the CvMat
already the same size — 92 x 112 pixels. datatype can be nice when you want to 2) Do PCA on it to find a subspace
You’ll also need two input files: take advantage of OpenCV functions for (line 16).
train.txt and test.txt. Figure 1 shows an working with matrix data. The ones we’ll
example of these input files. Both files use are OpenCV’s persistence functions. 3) Project the training faces onto the
use the same format: person number, With these, you can store matrix data PCA subspace (lines 20-29).
whitespace, path to image file. with a single line of code. Reading it back
You may have noticed that the first into your programs later is just as easy. 4) Save all the training information
three test images are the same as the Here, I’ve used a C array for two variables (line 32).
training images. These are useful test (faceImgArr and eigenVectArr) and a) Eigenvalues
cases, because eigenface should CvMat for several others. b) Eigenvectors
always give the right answer when you The main() function simply reads c) The average training face image
ask it to recognize one of its training the input string, then calls either the d) Projected faces
images. If it doesn’t, you know you learn() method or the recognize() e) Person ID numbers
have some debugging to do! method. Figure 3 shows the
To run the learning phase of this printUsage() helper function. The next four subsections analyze each
eigenface program, enter

eigenface train

at the command prompt. To run the


recognition phase, enter

eigenface test

Source Code
Figures 2-10 contain the complete
source listing for a basic eigenface pro-
gram. To keep the presentation simple,
I’ve omitted most of the error checking.

The Top-Level Listing


Figure 2 shows the top-level source
listing for eigenface — a program to learn
and recognize faces with OpenCV’s
eigenface methods. At line 4, it includes
cvaux.h. Until now, we’ve only included
cv.h and highgui.h. But we’ll use
two specialized functions for face
recognition, cvCalcEigenObjects()

FIGURE 4. The learn() function.


This function implements the
learning phase of eigenface.

SERVO 05.2007 45
Hewitt5.qxd 4/2/2007 1:46 PM Page 46

FIGURE 5. The loadFaceImgArray()


function loads face images and person
ID numbers for both the learning and
recognition phases.

is in Figure 6. It calls the built-in


OpenCV function for doing PCA,
cvCalcEigenObjects(), at lines 27-36.
The remainder of doPCA() creates the
output variables that will hold the PCA
results when cvCalcEigenObjects()
returns.
At line 8, the number of eigenval-
ues is set to one less than the number
of training images. (As explained last
month, this is the maximum number of
eigenvalues we can find.)
Lines 11-15 create the global
image array eigenVectArr. When
cvCalcEigenObjects() returns, each
image in this array will hold one eigenvec-
tor, one “eigenface,” in other words. Note
that these are floating-point images, with
data depth = IPL_DEPTH_32F.
At line 18, another matrix is creat-
ed — eigenValMat. This matrix will hold
the eigenvalues. The eigenvalues are
floating-point numbers, and we only
of these steps in detail. of rows, the number of columns, and need one channel for this, so the
the datatype for the matrix. On a 32-bit matrix type is CV_32FC1. That gives us
Loading Face Images for operating system, the datatype for a a one-channel matrix, with 32-bit,
Training or Test matrix of int values is CV_32SC1. The S floating-point data values.
The loadFaceImgArray() function here stands for “signed,” and C1 indi- To do PCA, the dataset must first
(Figure 5) loads face images and cates that the matrix has one channel. be “centered.” For our face images,
person ID numbers for both the (A matrix can have up to four channels. this means finding the average image
learning and recognition phases. Multiple channels allow you to add a — an image in which each pixel
The face images — assumed here third dimension to a matrix variable.) contains the average value for that
to be all the same size — are stored The CvMat datatype is a struct, pixel across all face images in the
in the global variable faceImgArr; with the raw data stored in the struct training set. The dataset is centered by
loadFaceImgArray() returns the element data; data is defined as a subtracting the average face’s pixel
number of face images loaded. union (the definition is given in the values from each training image.
The person ID numbers are stored in CXCORE documentation), with int You don’t have to do that yourself. It
a CvMat variable, personNumTruthMat. data accessed as data.i. Lines happens inside cvCalcEigenObjects().
“Truth” here refers to the AI term, 22-23 show one way to access CvMat But you do need to hold onto the
“ground truth.” It means the values in values — as offsets from the start of the average image, because you’ll need it
this variable are the true (correct) data buffer. later to project the data. So you’ll need
values for each face image. During the Matrix rows are aligned to start to allocate memory for the average
learning phase, those are the only type on four-byte intervals. The in-memory image. The code for doing that is at
of person ID numbers we have. row width, in bytes, is stored line 21. Note that — like the eigenvec-
But during the recognition phase, the in CvMat.step. Since we’re using a tors — this is a floating-point image.
program will have both ground truth four-byte datatype with this matrix The last step before calling
values (specified in the file test.txt) and (and also, since it has only one row), cvCalcEigenObjects() is to prepare a
the output from eigenface. Having we can ignore CvMat.step. But, if you data structure called CvTermCriteria.
both allows us to evaluate how create a matrix of, for example, char The fields in this structure specify termi-
well eigenface does under varying data, you may need to take the step nation criteria for iterative algorithms
conditions. size into account when you access the such as PCA. You can read more
The cvCreateMat() function — data elements. about CvTermCriteria options in the
called at line 16 — creates the CXCORE documentation. Here, we can
personNumTruthMat variable. This func- Finding the PCA Subspace simply tell it to compute each eigenval-
tion takes three parameters: the number The code to find the PCA subspace ue, then stop, since that’s all we need.
46 SERVO 05.2007
Hewitt5.qxd 4/2/2007 1:47 PM Page 47

FIGURE 6. doPCA() finds the


PCA subspace using OpenCV’s
cvCalcEigenObjects() function.

The code for that is at line 24.


Now that all the output variables are
ready, we call cvCalcEigenObjects()
to compute the PCA subspace for the
training faces. The last parameter,
eigenValMat->data.fl, is the pointer
to the data values in eigenValMat.
Here, we use the data.fl field, not
data.i, since this matrix variable holds
floating-point data.

Projecting the Training Faces


Now that you’ve found a subspace
using PCA, you can convert the
training images to points in this
subspace. As explained last month, this
step is called “projecting” the training
image. The OpenCV function for this
step is called cvEigenDecomposite()
(Figure 4, line 22).
The OpenCV function names are,
unfortunately, confusing. Not only is
the projection function oddly named,
but there’s also a function named
“EigenProjection” that doesn’t project
image data onto the subspace. In
fact, it does the opposite. It
restores (uncompresses) projected
data, turning it back into the original
image. The correct name for doing
that is Reconstruction, not Projection! CV_STORAGE_WRITE, which means to For example, the call to cvWriteInt()
You’ll need a place to put the create (or overwrite) that file and open at line 10 writes the number of
projected training images. Line 19 in it for writing. eigenvalues as <nEigens>2</nEigens>.
Figure 4 creates a matrix for that To write basic C-language data — The really nice thing about using
purpose. The for loop, at lines 20-29, integers, floating-point values, and OpenCV’s persistence functions is that
calls cvEigenDecomposite() once for strings — in XML format, you can use it’s just as easy to save complex
each training image. the function cvWrite<datatype>(). datatypes, such as an image or matrix.

Saving the Learned Face Model


The small bit of extra effort to
use OpenCV’s CvMat datatype really
pays off when it comes time to save
the training data! Figure 7 shows the
complete code for saving all the data
for your learned face representation
as an XML file using OpenCV’s built-
in persistence functions.
At line 7, the call to
cvOpenFileStorage() opens an
XML file named facedata.xml. The
last parameter to this function
controls the access mode. Here, it’s
FIGURE 7. storeTrainingData() saves
all the data for the learned face
representation as an XML file using
OpenCV’s built-in persistence functions.

SERVO 05.2007 47
Hewitt5.qxd 4/2/2007 1:48 PM Page 48

FIGURE 8. The recognize() function


implements the recognition phase of
the eigenface program.

The second parameter to the


Write() functions is a string. The
string can be anything you like, but to
ensure uniqueness — and for clarity’s
sake — it’s usually a good idea to make
it the same as your variable name.
When you’ve finished writing
data, close the file and release the file
storage as in line 24.

The Recognition Phase


Figure 8 shows the recognize()
function, which implements the recogni-
tion phase of the eigenface program. It
has just three steps. Two of them – load-
ing the face images and projecting them
onto the subspace — are already familiar.
As described above, the face
images for recognition testing should
be listed in a file named test.txt, using
the same format as in train.txt. At line
8, the call to loadFaceImgArray()
loads these into the faceImgArr and
stores the ground truth for the person
ID number in personNumTruthMat. This
step is similar to line 6 of the learn()
Lines 12-15 add three matrices and an <eigenValMat type_id=”opencv- function in Figure 4. Here, the number
image to the same XML file. The matrix”> of face images is stored in the local
<rows>1</rows>
built-in persistence functions save not <cols>2</cols> variable, nTestFaces.
only the row and column data, but all <dt>f</dt> We also need to load the global
<data>
the header information, as well. Here’s 14279064. 9614034.</data></eigenVal
variable nTrainFaces, as well as most
the XML that line 13 generates: Mat>. of the other training data — nEigens,
EigenVectArr, pAvgTrainImg, and so
on. The function loadTrainingData()
in Figure 9 does that for us. Again,
OpenCV’s persistence functions make
this step easy. To open file storage for
reading, use the CV_STORAGE_READ
flag. Then, simply call the appropriate
Read() function for each variable.
OpenCV locates and loads each data
value in the XML file by name. When
the variable is a CvMat type, OpenCV
creates a new matrix for you automati-
cally, then sets its data values.
The last parameter in the Read()
function’s interface is a default value. If
a named variable is missing from the
XML file, it will be set to the default.
For pointer types — such as the
matrices — it’s a good idea to set the
default to 0. You can then add a

FIGURE 9. OpenCV’s persistence


functions make it easy to load the
saved training data from the XML file.

48 SERVO 05.2007
Hewitt5.qxd 4/2/2007 1:48 PM Page 49

FIGURE 10. The findNearestNeighbor()


function computes the distance
from the projected test image to each
projected training example to find the
closest training image.

validation check to make sure these


pointers have a non-zero value
before you use them. To simplify the
example code, I’ve omitted these (and
similar) validation steps from the
loadTrainingData() function.
After all the data are loaded,
the final step in the recognition phase
is to project each test image onto
the PCA subspace and locate the
closest projected training image.
The for loop at lines 16-34 of the
recognize() function (Figure 8)
implements this final step. The call
to cvEigenDecomposite(), which
projects the test image, is similar to the
face-projection code in the learn()
function.
As before, we pass it the number
of eigenvalues (nEigens), and the array
of eigenvectors (eigenVectArr). This
time, however, we pass a test image, by comparing squared values. misrecognized as Subject 1 instead of 4.
instead of a training image, as the The for loop at lines 6-22
first parameter. The output from computes the squared distance to each Improving Eigenface
cvEigenDecomposite() is stored in a projected training image, and keeps
local variable — projectedTestFace. track (at lines 18-21) of which training Having a framework like this for
Because there’s no need to store the image is closest. training and testing will make it
projected test image, I’ve used a C The return value is the index of easier for you to add improvements to
array for projectedTestFace, rather the closest training image. In the eigenface and to test their effects.
than an OpenCV matrix. recognize() function (Figure 8), this One of the first improvements you
return value is used, at line 31, to look might want to add is to change the
Finding the Nearest Neighbor up the person ID number associated way distance is measured. The original
As last month’s article explained, with the nearest training image. eigenface paper used Euclidean
eigenface “recognizes” a face image by distances between points, and that’s
looking for the training image that’s clos- Here is the print output from the the distance basis I’ve used in
est to it in the PCA subspace. Finding the recognize() function: findNearestNeighbors(). But a
closest training example in a learned sub- different basis, called Mahalanobis
space is a very common AI technique. nearest = 1, Truth = 1 distance (after its inventor), usually
It’s called Nearest Neighbor matching. nearest = 2, Truth = 2 gives better results.
nearest = 4, Truth = 4
Figure 10 shows the code for the nearest = 1, Truth = 1
One of the things that happens
findNearestNeighbor() function. It nearest = 2, Truth = 2 when you project a face image onto
computes distance from the projected nearest = 4, Truth = 4 the PCA subspace is that each dimen-
test image to each projected training nearest = 1, Truth = 1 sion receives a certain amount of
nearest = 2, Truth = 2
example. The distance basis here is stretch. The amount of stretch isn’t the
nearest = 4, Truth = 4
“Squared Euclidean Distance.” As last nearest = 1, Truth = 1 same, though, in every direction. The
month’s column explained, to calculate nearest = 2, Truth = 2 directions that correspond to the
Euclidean distance between two nearest = 4, Truth = 4 largest eigenvalues get stretched far
points, you’d add up the squared dis- nearest = 1, Truth = 1 more than the directions associated
nearest = 2, Truth = 2
tance in each dimension, then take the nearest = 4, Truth = 4 with smaller eigenvalues. Because
square root of that sum. Here, we take nearest = 1, Truth = 1 Euclidean distance ignores this stretch-
the sum, but skip the square root step. nearest = 2, Truth = 2 ing, using it to measure distance is
The final result is the same, because nearest = 1, Truth = 4 approximately the same as using only
the neighbor with the smallest distance one eigenvector and ignoring the rest!
also has the smallest squared distance, Not bad! We only have one It’s easy to switch from Euclidean
so we can save some computation time mismatch: the last test image was to Mahalanobis distance. Just change
SERVO 05.2007 49
Hewitt5.qxd 4/2/2007 1:49 PM Page 50

References and Resources Where to Go From Here?


• OpenCV on Sourceforge
http://sourceforge.net/projects/opencvlibrary This article introduced several new OpenCV concepts. You
can gain a deeper understanding of these from the OpenCV
• Official OpenCV Usergroup documentation. The persistence functions, the CvTermCriteria
http://tech.groups.yahoo.com/group/OpenCV struct, and the CvMat datatype are described in detail in the
CXCORE documentation. The eigenface functions are
• Turk, M., Pentland, A., Face recognition using eigenfaces, described in the CVAUX documentation. The CVAUX documen-
Proc. IEEE Conf. on Computer Vision and Pattern tation isn’t linked from the documentation index page, but you
Recognition, 1991.
can find it in the documentation subdirectory named ref.
• ORL Database If you want to incorporate eigenface into a system that
www.cl.cam.ac.uk/research/dtg/attarchive/facedata detects faces in live video, you’ll first need to detect the face, then
base.html extract it into a separate image. Since each face image must be
exactly the same size, the easiest way to do that is to define a
• Source code in this article can be downloaded from standard size, say 50 x 50 pixels, ahead of time. Then, when you
www.cognotics.com/opencv/servo. detect a face, you can use code like this to extract and resize it:

line 15 in findNearestNeighbors() from CvRect * pFaceRect = (CvRect*)cvGetSeqElem(pRectSeq, 0);


cvSetImageROI(pImg, *pFaceRect);
IplImage * pFaceImg =
distSq += d_i*d_i; cvCreateImage( STD_SIZE, IPL_DEPTH_8U, 1 );
cvResize(pImg, pFaceImg, CV_INTER_AREA );
to
There are more capabilities built into OpenCV, and many,
distSq += d_i*d_i/eigenValMat->data.fl[i]; many more computer vision programs one can create using
this library. I hope this short series of articles has given
Switching to Mahalanobis distance eliminates the mis- you a taste of what’s possible with OpenCV, and perhaps
match error mentioned above, bringing recognition accuracy motivated you to explore more of its capabilities.
up to 100% for these three subjects. Be seeing you! SV

STEER WINNING ROBOTS


WITHOUT SERVOS!

P erform proportional speed, direction, and steering with


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

Build the Ultimate


Remote Control FIGURE 1. The Ultimate Setup.
by Michael Simpson

I
n order to build this
remote, you will need
some controls like those Last month, we created
shown in Figure 2. These
will range from buttons to a walking robot called
full action joysticks. The
buttons weren’t an issue, the BioCrab. The
but finding a joystick at a
reasonable price was a real problem with such a
problem. A company called
P3 America sells them, but
bot is that there are a
even the simplest dual axis great many control
joystick was over $100
each. Since I wanted at points and a remote
least four, my remote
would probably cost me over $400 for With a small screwdriver and a control does not exist
the joysticks alone and over $500 for soldering iron, you can retrieve the two
the completed remote. There just had joysticks shown in Figure 4 with about that will allow us to
to be another option. 10 minutes of effort. One really nice
feature about these joysticks is that you control all its aspects.
Vex Radio Interface may remove a small spring and the
I am going to show
stick will remain where set and not
What I really wanted was a joystick return to the center position. You can you how to build a
like you find in those four- or six-channel do this with either or both axis. This
R/C radios. They seem to be very makes them perfect for our remote. custom control system
modular and rugged enough for the Before I get into the details on build-
kind of remote I wanted to build. Many ing the remote, I thought I would show that has four dual axis
of you may have already seen the Vex you how to use the Vex radio with the
R/C radio shown in Figure 3. When first BioCrab. The Vex radio is a six channel joysticks, as well as six
released, they sold for over $100. A
while back, RadioShack dropped the buttons and a keypad.
FIGURE 3
Vex line and many of the radios have
There is also a 4 x 16
made their way to some of the mail
order houses at a very reasonable price. LCD display for
At the time of this article, All Electronics
was selling them for $29.95 each. configuration and
FIGURE 2 robot feedback.
We will add a serial
interface that can be
connected directly to
a robot via a wireless
Zigbee module.

SERVO 05.2007 51
Simpson3.qxd 4/3/2007 9:48 AM Page 52

Build the Ultimate Remote Control


The radio does require a lit-
FIGURE 5 tle bit of an interface to be able
to plug it into one of the I/O
ports of the DiosPro. You need
to supply power to the radio and
pull the data pin high with a 22K
resistor. To add the resistor and
connections for this interface,
remove the four screws from the
FIGURE 4
back of the receiver and add
three wires as shown in Figure 5.
FM system. In addition to the two dual big difference is that the receiver does You may also add the 22K resistor as
axis joysticks, there are four buttons on not contain the channel decoder circuit- shown or connect it between the data
the back of the remote. While the radio ry for the individual servo channels. port and 5V at the microcontroller.
does not have the capacity to control While this is not a good thing for R/C To use the radio, connect the radio
every aspect of the BioCrab, it may be enthusiasts, it is perfect for those who to the DiosPro as shown in Schematic
worth experimenting with before you want to interface the radio to a micro- 1. If you hard-wired the 22K resistor
take the radio apart for our project. controller. The receiver outputs all the inside the radio, you may omit R1. As
The Vex radio kit comes with a pulses for the six channels one right an option, the radio kit also comes
receiver that is unlike any other R/C after another. To handle this pulse train, with a small yellow cable with small
radio receiver you may have seen. The there is a library built into the DiosPro. modular connectors on each end. You
can cut one of the connectors off and
attach the small wires to a header. The
red wire is Vss, the yellow is Vdd, and
green is the data lead.
The heart of the interface is the
single readvex function. Simply call this
function passing the port number, and
six global variables will be populated
based on the joystick positions and
the four buttons on the back of the
receiver. The function will return 0 if
the radio is not connected or off. To
test the interface, run Program 1.
I have included a program called
BioCrabVex.txt that will allow you to
use the Vex radio to control the crab.
Feel free to experiment.

Custom Remote Base


Construction
I will be referencing various parts
that I purchased for this project. A
complete source list for those items is
provided at the end of the article.

Joystick Removal
Before we start, you will need to
obtain the four joystick assemblies. On
the back of the Vex radio, there are six
screws that must be removed. Under
the battery holder are an additional
three. On the front of the radio, there
are four screws holding each joystick in
place. Once these are removed, lift the
SCHEMATIC 1
cover off the back of the receiver and
52 SERVO 05.2007
Simpson3.qxd 4/3/2007 9:49 AM Page 53

Build the Ultimate Remote Control

PROGRAM 1
DiosPro
‘Vex Radio Interface Demo
func main()
dim stat as integer
loop:
stat=readvex(4)
print stat,”: “,VCH1,” “,VCH2,” “,VCH3,” “,VCH4,” “,VCH5,” “,VCH6
goto loop

endfunc

include \lib\vexradio.lib

expose the joysticks. FIGURE 7


There is a circuit board
in the middle of the radio. Simply lift
FIGURE 6
it off of its posts to gain access to the
joysticks. You will have to use your
soldering iron to remove the wires
that are attached to the joysticks, but
once done, they can be removed by
simply lifting them out of the radio.
The right and left joysticks are the
same except for the layout of the small
circuit board that is attached to
the stick shown in Figure 6. As I
mentioned earlier, you may remove
the small springs on one of the axes.
There is also a small detent area on
the vertical axis, and by adding a small
bent wire, you can add a cool click
detent to that axis as shown in Figure
FIGURE 8
7. On my control, I removed the
spring on all the axis of the bottom
two joysticks and added the detent wire The joysticks need a 2” hole cut placement. The LCD needs to be
to the vertical axis on them, as well. out in order to mount them. I used a mounted between the top two
scroll saw, but a 2” hole saw could also joysticks. Keep this in mind if you use a
Base Construction do the trick. Use Figure 9 as a rough different LCD or set of joysticks. Once
You will need to select some sort layout guide. I recommend you lay out the holes are cut, you will need to insert
of material to use for your base. In my your components to get a feel for the joysticks, then mark the four
case, I used a piece of
FIGURE 10
1/8” x 8” x 10” clear
acrylic shown in Figure
8. I like the acrylic
because it comes with a
protective coating and
its transparency allows
you to easily mark the
holes for the various
boards and controls
that you will need
to attach. You can
purchase this material
from your local home
FIGURE 9
center in various sizes.
SERVO 05.2007 53
Simpson3.qxd 4/3/2007 9:50 AM Page 54

Build the Ultimate Remote Control


Robotics Serial
LCD. This is a four
line by 16 charac-
ter LCD with a
LED backlight. To
mount the LCD,
simply place the
LCD in place and
mark the four
mounting holes
and the outline of
the LCD to create
a cutout. If you
FIGURE 11
plan on keeping
the base clear, you
screws may be don’t need to add a cutout for the LCD,
used, but must be simply mark the four mounting holes.
cut short as they are The key pad can be mounted under
too long. This is just the base with a cutout or on top with a
a dry fit to aid in slot cut for the header. The keypad was
assembly; you will purchased from All Electronics and is a
FIGURE 12
mounting holes for have to remove the sticks in order to add row/column matrix of keys. Other types
each. Attach the joysticks using some the additional cutouts as needed. will work as well, but you may need to
1/2” machine screws. The original We are going to use a Kronos make changes to the software.
Figure 9 shows all the cutouts and
holes in my base. Your layout may be
SCHEMATIC 2
slightly different. Note the two small
1/2” holes. These are for two buttons.
You may want to place them in differ-
ent positions. There will also be four
buttons mounted on the bottom base.
Figure 10 shows all the components
mounted on the base. It also shows the
lower base attached, as well. I used a 2”
standoff that I created by connecting a
1” M/F standoff to a 1” F/F standoff.
These are #4 standoffs purchased from
Jameco. You may have also noticed that
I attached the metal handle from the
Vex radio to the lower base.
The top two buttons and the lower
four buttons were purchased from All
Electronics. You will need to drill a 1/2”
hole for these. Place the lower button in
a position that your fingers can reach
while you are manipulating the joysticks.
The Dios WorkBoard Deluxe is
mounted to the upper base using four
1” standoffs. These standoffs keep it
above the header connected to the
keypad. Notice that the breadboard
is being used for this project. I
recommend its use until you have your
remote configured to your satisfaction.
It will be very simple to make hardware
changes, and once you get the remote
operating the way you want, you can
54 SERVO 05.2007
Simpson3.qxd 4/3/2007 9:50 AM Page 55

Build the Ultimate Remote Control


remove the breadboard and solder the
wires directly to the prototyping area
under the breadboard.
At this point, it is important to note
that the two joysticks that you removed
from the Vex radio are slightly different.
The difference is in the thin PCB
(printed circuit board) attached to the
two potentiometers. One has a small
crisscross design. You should mount
them as shown in Figures 10 and 12.
FIGURE 13
The lower standoffs used to attach characters to be visible. even while the Dios
the upper base to the lower base are Workboard is installed. Once the header
positioned in such a way that they hold Keypad Hookup is attached to the keypad, plug the wires
a six-cell battery pack snugly in place as The keypad is very easy to hook up. into the ports shown in Schematic 4.
shown in Figure 11. Here, I used a 9V You only need to connect seven wires to Load and run the program called
battery clip attached to a 2.1 coax to the header on the keypad as shown. Joy3.txt. This program will display
plug into the board, but you could also Note that the schematic shows the rear the joystick information, as well as the
use the onboard power header, as well. view of the keypad. This is the view of keypad key numbers 1-12.
the header that you see on the
Hookup underside of the base. I cut off a seven- Button Hookup
pin section from a female header and One pin of all the buttons is tied to
Let’s take a look at each subsection soldered seven wires. This allowed me Vss as shown in Schematic 5. The other
in detail. This will allow us to test each to slip the header onto the keypad pin is connected to an I/O port on the
section as we add it to the system.

Joystick Hookup
Each joystick has a small PCB; you
will make the connections as shown in
Schematic 1. Figure 12 shows the
joystick placement when viewing from
the bottom of the control. The yellow
wire is connected to the Y axis of each
joystick. The green is connected to the
X axis. Red is Vdd (5V) and black is Vss.
Load and run the program called
Joy1.txt. This program will display
the X and Y axis from each of the four
joysticks.

LCD Hookup
The serial LCD comes with a small
four-pin header that you may mount as
needed, but we won’t be using it.
Simply attach four wires as shown in
Figure 13.
The last pin on the serial LCD
interface is optional and can be used to
set the baud rate to 19200 when tied
to Vss. In this application, we are going
to use the 19200 baud interface as
shown in Schematic 2.
Load and run the program called
Joy2.txt. It will display the X and Y axis
from each of the four joysticks on the
LCD. Note that you may need to adjust
SCHEMATIC 3
the contrast trimmer in order for the
SERVO 05.2007 55
Simpson3.qxd 4/5/2007 11:07 PM Page 56

Build the Ultimate Remote Control

PARTS LIST
AVAILABLE FROM KRONOS • 50 #4, 1/2” machine screws
ROBOTICS (#106810)
• DiosPro chip (#16148) • 50 #4, washers (#211131)
• Dios Workboard Deluxe (#16452)
• DiosCompiler (a free download AVAILABLE FROM ALL
from the Kronos website) ELECTRONICS
• 4x16 Serial LCD (#16531) • Two six-channel transmitter
• 36-pin Snapable Female Header rReceivers (#JS-6)
#16291 (used to make header • Six push buttons (#PB-138)
sockets) • Keypad (#KP-28)
• Nine-pin serial cable #16259
(needed to program the DiosPro) OTHER
• Six cell battery pack (#16321) • Two 8x10 1/8” Plexiglass (or
• 9V battery clip (#16264) similar) (Available at most home
centers)
AVAILABLE FROM JAMECO
ELECTRONICS WEBSITES
• Eight 3/8” #4 Machine Screws Jameco Electronics
(#40969) www.jameco.com
• Four #4 Washers (#106826) All Electronics
• Eight #4, 1” Standoffs F/F www.allelectronics.com
(#139206)
• Six #4, 1” Standoffs M/F Kronos Robotics
(#139231) www.kronosrobotics.com

DiosPro. The ports are ton is pressed, the corresponding I/O port
SCHEMATIC 4 held high with a 10K will go from a high state to a low state.
resistor. When the but- First, solder and connect the two

PROTOTYPE
CIRCUIT BOARDS
U two 2.25" sq.
S 2-layer boards

Shipped NEXT BUSINESS DAY


if data is received by
1:00 pm
EASTERN

www.apcircuits.com
AP Circuits
(403) 250-3406
staff@apcircuits.com

56 SERVO 05.2007
Simpson3.qxd 4/3/2007 9:51 AM Page 57

Build the Ultimate Remote Control


buttons mounted on the top of the
base. Then connect wires to the four SCHEMATIC 5
buttons on the lower base. I used 10”
wires held together with small tie wraps.
This will give you a good deal of room to
wire the lower base to the mounted
components on the upper base.
Load and run the program called
Joy4.txt. This program will display the
joystick, keypad, and button informa-
tion on the LCD. Push each button to
make sure the display goes from 1
when idle to 0 when pressed.

What’s Next?
I had to cram quite a bit into this
article. Next month, I will add a bit of
software to create a tethered serial
interface that can be used to talk to
robots. Then we will add a ZigBee
interface to complete our remote.
All the example programs, as well
as the source, are available for down-
load at www.kronosrobotics.com/
Projects/remote.shtml. SV

SERVO 05.2007 57
Haston.qxd 4/5/2007 1:06 PM Page 58

Ultra-Sonic Microsensor
Comparison Project
by Kyle Haston, University of Arizona, ECE Undergraduate

Microsensors have proven their usability in many ways including object detection
applications such as automatic doors, ranging applications such as the rear
bumper of modern vehicles, and educational applications such as microrobotics.

There are many different microsensors on the market dates for the test are as follows: SRF02, SRF04, SRF08,
today featuring a spectrum of possibly confusing SRF10 from Devantech, Maxsonar-EZ1 from MaxBotix, and
characteristics. The recipients of these products are often PING))) from Parallax. The SRF04, SRF08, and SRF10 sen-
aspiring microrobotics hobbyists and may be unaware sors from Daventech and the PING)))TM sensor from Parallax
of the differences between the many sensors. Also, are most commonly used in microrobotics applications such
manufacturers usually boast solely on the positive as data acquisition/logging or robot Sumo. The MaxBotix
features of their sensor without explaining the resulting sensor is much smaller in size and is one of the newest
detriments. For example, a sensor with high gain may sensors on the market. The SRF02 was recently released by
be able to see a long distance, but this is usually Devantech and is similar in size and shape to the MaxBotix
accompanied by a unique beam pattern. Whether the sensor. The websites for these three manufacturers are
sensor is actually better than any others depends also on www.robot-electronics.co.uk, www.maxbotix.com,
the user’s application. and www.parallax.com, respectively.
The many tests performed to evaluate sensors are
usually conducted differently. It is easy to conduct a test or The Tests
represent data slightly differently to give one sensor an
apparent advantage over others. Most microsensors require a FIGURE 2. Beam
The purpose of my project was to conduct a series of microcontroller to switch them on patterns for the
SRF02 sensor.
tests on the major microsensors
FIGURE 1. Beam available today and find out how
patterns for the they actually compare. The candi-
PING))) sensor.

58 SERVO 05.2007
Haston.qxd 4/5/2007 1:07 PM Page 59

Ultra-Sonic Microsensor Comparison Project


FIGURE 3.
Beam
patterns for
the SRF04
sensor.

and off
and inter-
pret the
readings
that they
output.
The test
setups —
including
w h i c h
microcon-
trollers
were used with which microsensors — and code examples
that were used can be found at my website at
www.ece.arizona.edu/~khaston/
The tests used to compare the sensors determine the
beam pattern, accuracy of readout for objects in motion, FIGURE 4. Beam patterns
and current draw for each sensor. The results for each a sensor actually exists in for the SRF08 sensor.
sensor are described below. three dimensions. While most
representations are shown on a two-dimensional
Beam Patterns plane, it is generally understood that such a pattern
The beam pattern of a sensor is usually very is lathed 180 degrees about the approximate axis of
important in determining whether or not a certain sensor symmetry.
will be useful in the intended application. Symmetry, Another way to generate a beam pattern for a sensor
smoothness, size, shape, etc., should all be considered. It is to place the sensor a fixed distance from a wall and test
should also be noted that the beam pattern of a sensor the maximum and minimum degrees that one can rotate
changes depending on characteristics of the object the sensor while still having the sensor ‘see’ the wall. In
being sensed. These characteristics include size, shape, this instance, textural characteristics of the wall also affect
and texture. For this test, we will use wooden dowels the results.
of two diameters: 1/4 inch, one inch, The previously stated FIGURE 6. Beam patterns for
the MaxSonar-EZ1 sensor.
FIGURE 5. Beam and a plastic PVC pipe with a five
patterns for the inch diameter. The beam pattern from
SRF10 sensor.

SERVO 05.2007 59
Haston.qxd 4/5/2007 1:07 PM Page 60

Ultra-Sonic Microsensor Comparison Project

FIGURE 8. Comparison chart of Distance per Current


FIGURE 7. Current draw comparison chart for microsensors. Consumption for microsensors.

tests were performed for all six microsensors. The results Current Draw
were then graphed in overlay format to produce a Current draw is another feature of microsensors that is
single beam pattern sheet usually considered important. To perform this test, one
FIGURE 9. Pendulum test for each sensor as seen in must simply supply power to a microsensor in series with an
results for the MaxSonar- Figures 1-6. ammeter. The results are shown in Figure 7.
EZ1 microsensor.
One feature that is often tweaked by the
manufacturer to achieve a larger beam pattern is
called the gain. By increasing gain, oftentimes
sensors can see further. Notorious side effects
of this include non-smooth beam patterns, read-
ing instability, and higher power consumption.
Figure 8 shows a chart comparing the sensors
with both power consumption and distance
considered. The distance used for each sensor is
the maximum reading achieved for the five inch
diameter PVC pipe. This value was chosen
because it represents the farthest the sensors
could see.

Pendulum Test
Some sensors give accurate distance readings
for objects moving to and from the sensor. Others
will suddenly jump to a reading of the sensor’s
maximum range or zero. Stable and accurate
readings in this setup are necessary for some user
applications, so included among the tests is one
of this nature.
An easy way to test whether a sensor
performs well in this scenario is to mount the
sensor somewhere and swing a pendulum of
some sort in front of the sensor. The pendulum
needs to swing to and from the sensor to produce
an object with a distance that varies over time. If
the results are captured via serial port and
plotted, the result should be a sinusoidal wave
of gradually decreasing
FIGURE 10. Pendulum amplitude. Sudden spikes
test results for the
PING))) microsensor. to obviously inaccurate

60 SERVO 05.2007
Haston.qxd 4/5/2007 1:08 PM Page 61

Ultra-Sonic Microsensor Comparison Project

FIGURE 11. Pendulum test results for the SRF02 microsensor. FIGURE 12. Pendulum test results for the SRF04 microsensor.

distance values indicate potential inadequacies depending results of the comparisons and FIGURE 13.
on the intended application. intended use of the microsensor Pendulum test
results for the
The units of the time axis has been omitted and the will determine the rest. SV SRF08 microsensor.
number of points plotted varies between
sensors, because various microcontrollers
take different amounts of time to output a
distance reading. The number of readings
per second is also influenced by the code
used to program the microcontroller that
controls the sensor. The units for the
distance axis have also been omitted
because some sensors output data that
requires calibration, and it is the sinusoidal
resemblance of the data that reveals
performance more than actual values. The
results of two trials for each sensor are
shown in overlay format in Figures 9-14.

Understanding the Data


There are many legitimate conclusions
that can be drawn from the results of this
data, but it is almost impossible to determine
which sensor is best. This is due to the fact
that certain sensors will be more advanta-
geous in some applications and less so in
others. The purpose
of this project was to FIGURE 14. Pendulum
compare all chosen test results for the
sensors equally. The SRF10 microsensor.

FOR YOUR INFO


More on this project can be found at
my website at www.ece.arizona.edu/
~khaston/.
There is a considerable amount of
extra and useful information currently
available on the website with more to
come soon.

SERVO 05.2007 61
BookstoreMay07.qxd 4/5/2007 10:03 PM Page 62

dy
Mind Cany
For Toda t
Roboticis
’s The SERVO Store
SERVO CD-ROM SERVO CD-Rom SERVO CD-Rom
Are you ready for Are you ready for Are you ready for
some good news? some good news? some good news?
Along with the first Along with the first Starting with the
26 issues of 14 issues of SERVO first SERVO
SERVO Magazine, Magazine, all issues Magazine issue —
all issues from the from the 2005 November 2003 —
2006 calendar year calendar year are all of the issues
are now available, now available, as through the 2004
as well. These CDs N E W ! well. These CDs calendar year are
include all of include all of now available on a
Volume 1, issues 11-12, Volume 2, issues 1-12, Volume 1, issues 11-12, Volume 2, issues 1-12, CD that can be searched, printed, and easily
Volume 3, issues 1-12, and Volume 4, issues and Volume 3, issues 1-12, for a total of 26 stored. This CD includes all of Volume 1,
1-12 for a total of 38 issues all together. issues all together. These CD-ROMs are PC issues 11-12 and Volume 2, issues 1-12, for a
These CD-ROMs are PC and Mac compatible. and Mac compatible. They require Adobe total of 14 issues. The CD-Rom is PC and Mac
They require Adobe Acrobat Reader version Acrobat Reader version 6 or above. Adobe compatible. It requires Adobe Acrobat
6 or above. Adobe Acrobat Reader version Acrobat Reader version 7 is included on the Reader version 6 or above. Adobe Acrobat
7 is included on the discs. $24.95 – Buy 2 discs. $24.95 – Buy 2 or more at $19.95 Reader version 7 is included on the disc.
or more at $19.95 each! each! $29.95
The Official Robosapien Linux Robotics
50 Model Rocket Projects Hacker's Guide by D. Jay Newman
for the Evil Genius by Dave Prochnow
If you want your robot
by Gavin D. J. Harper to have more brains
The Robosapien robot
Yes, as a matter of fact, than microcontrollers
was one of the most
it IS rocket science! can deliver — if you
popular hobbyist gifts
And because this book want a truly intelligent,
of the 2004 holiday
is written for the popu- high-capability robot —
season, selling approxi-
lar Evil Genius format, everything you need
mately 1.5 million units
it means you can learn is right here. Linux
at major retail outlets.
about this fascinating Robotics gives you
The brief manual
and growing hobby step-by-step directions
accompanying the
while having run for "Zeppo," a super-smart, single-board-
robot covered only
creating 50 great powered robot that can be built by any
basic movements and maneuvers — the
projects. You will find a hobbyist. You also get complete instructions
robot's real power and potential remain
detailed list of materials, sources for parts, for incorporating Linux single boards into
undiscovered by most owners — until now!
schematics, and lots of clear, well-illustrated your own unique robotic designs. No pro-
This timely book covers all the possible
instructions. $24.95 gramming experience is required. This book
design additions, programming possibilities,
includes access to all the downloadable
and "hacks" not found anyplace else. $24.95
programs you need, plus complete training
LEGO MINDSTORMS NXT in doing original programming. $34.95
Hacker's Guide
by Dave Prochnow Mechanisms and Mechanical PIC Basic Projects
Here is an awesome Devices Sourcebook by Dogan Ibrahim
next-generation collec- by Neil Sclater / Nicholas Chironis Covering the PIC
tion of LEGO MIND- The fourth edition BASIC and PIC BASIC
STORMS projects that of this invention- PRO compilers, PIC
enables you to build inspiring engineer- Basic Projects pro-
and program a real ing resource covers vides an easy-to-use
working robot in just the past, present, toolkit for developing
30 minutes! New tech- and future of applications with PIC
nologies and expand- mechanisms and BASIC. Numerous
ed sensor capabilities mechanical devices.
! simple projects give
make it easier than
ever to add a level of sophistication to
You'll find drawings NEW clear and concrete
and descriptions of examples of how PIC
robotic and architectural creations. This more than 2,000 BASIC can be used
cutting-edge guide describes new advances components that to develop electronics applications, while
that make LEGO MINDSTORMS NXT such a have proven themselves over time and can larger and more advanced projects describe
great robotics resource. The book explains be incorporated into the very latest mechani- program operation in detail and give useful
the all-new NXT intelligent brick ... the inter- cal, electromechanical, and mechatronic insights into developing more involved
active servo motors with rotation sensors products and systems. Overviews of robot- microcontroller applications. $29.95
that align speed for precise control ... the ics, rapid prototyping, MEMS, and nanotech-
ultrasonic sensor that allows robots to “see” nology, along with tutorial chapters on the We accept VISA, MC, AMEX, and DISCOVER
by responding to movement ... the improved basics of mechanisms and motion control, Prices do not include shipping and
light and touch sensors that let robots detect will bring you up-to-speed quickly on these may be subject to change.
color and feel ... and much more. $24.95 cutting-edge topics. $19.95
62 SERVO 05.2007
BookstoreMay07.qxd 4/5/2007 10:04 PM Page 63

To order call 1-800-783-4624 or go to our Mind Cand


For Today y
website at www.servomagazine.com Roboticis ’s
t
Nuts & Volts CD-ROM Build Your Own All-Terrain Robot Take This Stuff and Hack It!
Here’s some good by Brad Graham / Kathy McGowan by Dave Prochnow
news for Nuts & Remotely operated robots are becoming Transform common
Volts readers! increasingly popular household items into
Along with all 24 because they allow really cool stuff. You
issues of Nuts & the operators to don't need to be an
Volts from the
2004 and 2005 N
E W! explore areas that
may not normally be
electronics genius to
get started turning
calendar years, the easily accessible. everyday items into
2006 issues are
now available, as
The use of video-
controlled technolo- N E
W! high-performing won-
ders. With how-to guru
well. These CDs include all of Volumes 25, gy has sparked a Dave Prochnow's step-
26, and 27, issues 1-12, for a total of 36 growing public inter- by-step directions and
issues (12 on each CD). These CD-ROMs are est not just in hobby- fully illustrated plans, even beginners can
PC and Mac compatible. They require ists, but also in the areas of research, space, hack their way to a high-tech home, cooler
Adobe Acrobat Reader version 6 or above. archeology, deep-sea exploration, and even toys, and less yard work. Certain to fire your
Adobe Acrobat Reader version 7 is included the military. This book has the ideal mix of imagination and start you plotting new, origi-
on the discs. $24.95 – Buy 2 or more at “brains and brawn,” making it appealing to nal, and even more creative wonders you
$19.95 each! hobbyists and interested professionals alike. can make from ordinary household items,
$29.95 Take This Stuff and Hack It! is the perfect gift
Robot Building for Dummies for your inner inventor. $27.95
by Roger Arrick / Nancy Stevenson 10 Cool LEGO Mindstorm Dark
Ready to enter the Side Robots, Transports, and
robot world? This Creatures 10 Cool LEGO Mindstorm
book is your The Dark Side Robotics Invention
passport! It walks Developer's Kit is System 2 Projects
you through building targeted towards the The LEGO MIND-
your very own little young or novice LEGO STORMS RIS 2.0 is
metal assistant from MINDSTORMS designer, the core set for all
a kit, dressing it up, age 9 and up, although MINDSTORMS users,
giving it a brain, experienced MIND- that lets users design
programming it to do STORMS fans will and program working
things, even making it appreciate the unique robots — limited only
talk. Along the way, you’ll gather some possibilities offered by by their imagination.
tidbits about robot history, enthusiasts’ this kit, as well. The Dark Side Developer's Kit Initially designed for
groups, and more. Do it the Dummies’ way — includes special MINDSTORMS pieces that users 12 and up, LEGO
explanations in plain English, “get in, get out” allow the user to create a host of Star Wars MINDSTORMS has taken off with LEGO
information, icons and other navigational themed robots, creatures, and vehicles. It enthusiasts of all ages. 10 Cool LEGO
aids, tear-out cheat sheet, top 10 lists, and also comes with the Micro Scout, a mini- MINDSTORMS RIS 2.0 Projects: Amazing
more. $21.00 computer with seven built-in programs, a Projects You Can Build in Under an Hour
motor, and a light sensor that brings the provides step-by-step instructions and
MINDSTORMS creations to life with a mini- detailed illustrations for users of all skill
Troubleshooting mum of effort. $24.95 levels and proficiencies. $24.95
Electronic Equipment
by R. S. Khandpur
From cell phones to
$ 2 0o fe ach
medical instruments f if y o u
to digital and micro- 1 5 % t w o oror
buy e .
processor based mo r
or
equipment, this
hands-on, heavily illus-
trated guide clearly
explains how to trou-
bleshoot, maintain,
and repair all types of
electrical equipment.
The author covers all the essentials such as
necessary tools, soldering techniques, test- From HomoSapien to RoboSapien Before R2D2 there was R1D1
ing, fundamental procedures, and mechani-
cal and electrical components. $49.95 SERVO Magazine T-Shirts
Get your very own limited-edition SERVO Magazine T-shirt. Shirts come
Check out our online bookstore at in sizes S, M, L, and XL, and are available in either black or white.
www.servomagazine.com for a complete
listing of all the books that are available. All shirts are 100% pre shrunk cotton.

SERVO 05.2007 63
Calkins.qxd 4/5/2007 2:06 PM Page 64

by Dave Calkins

ROBOGames Prep:
Sumo Robots — The Easiest
and Hardest Event There Is
S
o you want to build a competi- strategies (such as circling around the cube, and then expand along a
tion robot? Well, the easiest kind other guy and push from behind), diagonal axis, so they end up as a
of robot — and the event in tricks (use better servos), and tactics long wedge.
which most competition builders get (replaceable blades on the front scoop The challenge in a good
started — is Sumo robots. Sumo to make sure you get under the other autonomous robot isn’t just being able
robotics is like chess. The basics are guy) make the matches exciting and to push the other robot, but also being
very simple, yet players vary wildly in unpredictable. Just like combat robots, able to find the other robot, while not
how good they do when competing — the designs of Sumo robots vary wildly. driving itself out of the ring. All Sumo
even though both players know the Unlike combat robots, most matches robots have some method of detecting
same rules. are over in about 10 seconds, robots the edge of the ring. The dohyo itself is
What is a Sumo robot? Well, there have no weapons, and almost all the all black, except for a thin white lining
are six weight classes: 25 g, 100 g, robots are autonomous. along the edge. Most robots use IR
500 g, 1 kg LEGO, 3 kg, and 3 kg sensors or photo-resistors to detect the
humanoid. The 3 kg “cake-boxes” and So, Let’s Get Building white line along the edge, so that the
3 kg humanoids can be either remote a Sumo Robot! bot knows to turn around once it sees
controlled or autonomous (though the edge of the ring (you’ll have to
the R/C bots don’t compete against If you want to compete in the 3 kg program it to react once it sees the
the autonomous robots — they have remote control category, basically all white line).
separate divisions). The other classes you have to do is build a powerful, 20 But that’s only half the battle.
are all autonomous only — the robot cm (7.87”) long by 20 cm wide robot While there are some Sumo robots out
has to think for itself. that can push anything else about there that wander around the arena
Sumo robot competitions are the three feet. No weapons. Just raw turning when they find the edge,
oldest robot competitions in the world, pushing power. The closest thing to a they only win by chance — the robot
having started in the 1970s (!) in weapon you can have is a perfectly flat happens to bump into the other robot.
Japan. The concept is the same wedge along the front of your robot so What we need is some sensors!
as human Sumo wrestling — two you can get under the other robot. Of You can use infrared, sonar, laser,
opponents face off on a “Dohyo” (a course, the other driver will have his photo-resistors, video cameras — just
circular competition ring with two own ideas about avoiding you. about anything! And that’s the biggest
starting lines called shikiri lines). When But the real fun of building a Sumo challenge — being able to see the other
the match starts, the contestants try to robot is in building an autonomous guy, and maneuver around the other
push each other out of the ring. When robot. Most people start with the bot before pushing it out of the dohyo
one contestant goes out of the ring or 500 g class. The robots need to be no and winning!
touches the floor with any part of more than 10 cm (3.94”) long by 10 One of the easiest and most
his body other than the feet, he cm wide. effective ways to win at 500 g Sumo is
loses. Even if he went out of the ring The 500 g and 3 kg Sumo robots to have the most powerful servos you
by himself. can be any height however, which is a can afford. These will have to be
huge bonus if you work it right. continuous rotation servos, which you
Simplicity in Itself Because once the match starts, the can modify from regular servos, or buy
robot can fall over, and thus be longer (ServoCity will modify any servo to con-
Except when it’s not. Because that its initial size. I’ve also seen some tinuous rotation for a fee.) I once spent
while the rules are simple, the various really cool robots that start out as a weeks building the “perfect” sumo,
64 SERVO 05.2007
Calkins.qxd 4/5/2007 2:08 PM Page 65

[ “

]
Sumo robotics is like
chess. The basics are very
simple, yet players vary
wildly in how good they do
when competing — even
though both players know
the same rules.

SERVO 05.2007 65
Calkins.qxd 4/5/2007 2:08 PM Page 66

ROBOGames Prep — Sumo Robots


and got slaughtered by a 12-year-old that will give you a step-by-step guide as-is, or modify it. There are lots of
who simply used better servos than I in servo modification. kits you can buy that are competitive
did. You can also “boost” a servo by If you’re building your first Sumo out of the box — Parallax, Lynxmotion,
overvolting it. I’ve overvolted servos up robot, start with either the 500 g or 3 JCM inVentures, OWI, Solarbotics, and
to 12 VDC. This absolutely will destroy kg class. The 3 kg class gives you a LOT several other companies all make very
the servo after a few matches, but you of flexibility in terms of power and the good Sumo robot kits. Of course, if
quadruple the power every time you kinds of sensors you use. You can stick everyone has the same kit, it’s just
double the voltage. So while you’ll end a lot of batteries and much bigger chance as to who wins. So you should
up throwing out the servos, it’s still a gearmotors on a 3 kg, although the upgrade!
pretty easy way to boost your power. cost will be higher than on a 500 g One of the biggest disappoint-
Modifying a servo to continuous Sumo. Most first-timers build 500 g ments in international Sumo robot
rotation would take a whole article. robots to save money while they competitions is the dearth of US com-
But the basics are that you replace the learn the basics. If you understand petitors. At RoboGames, Singapore
potentiometer with a few 10K ohm basic microcontrollers (such as a and Japan have swept the 3 kg classes
resisters, and snip off the mechanical BASIC Stamp, PIC, or ATMega) you can and taken 1st in 500 g every year since
stop so that the gears can rotate 360 build a pretty good 500 g Sumo for we started. Yet, it’s really not that hard
degrees. It’s more complex than this, under $100. to build a competitive robot. A few
but there are lots of articles on the net You can also buy a kit and run it Dewalt 24V drills could easily get you a
gold medal if you spent the time!
Carlo Bertocchini — famous for
SUMO ROBOT RULES his heavyweight combat robot
● All matches are “best-of-three.” ● Parts that could break or damage “Biohazard” — is also the reigning US
Robots fight three times and the the ring are not allowed. Do not use champion of 3 kg sumo robots with his
winner of two matches goes on to the parts that are intended to damage the bot, “The Beast.” Many of the new
next round. opponent’s robot or its operator. 3 kg robots coming out of Asia aren’t
Normal pushes and bangs are not much better than The Beast. You could
● 500 g, 1 kg LEGO, and 3 kg robots considered intent to damage. be the person to take the gold medal
can have any starting height, or they at RoboGames 2007 — all you have
can “grow” by flipping open or ● Devices that can store liquid, to do is try!
expanding once the match starts. powder, gas, flame, or other substances Beyond RoboGames, Sumo robots
Before the match, they must fit into the for throwing at the opponent are not are the most popular autonomous
size cube relative to their class. 25 g allowed.
robot class in the world. You’ll find
and 100 g class robots cannot expand.
● Devices that throw things at your events and competitions for Sumo bots
● Mini (500 g), Micro (100 g), and Nano opponent are not allowed. all around the country — Seattle,
(25 g) robots must be autonomous. Any Portland, Dallas, Chicago, and many
method of control may be used, as long ● Sticky substances to improve other cities all have Sumo events.
as it is fully contained within the robot. traction are not allowed. Tires and Autonomous Sumo robots are
Robot operation must begin automati- other components of the robot in absolutely the single best way to get
cally no less than five seconds after contact with the ring must not be able involved in robots. No matter where
being started by the user. 3 kg Sumo to pick up and hold a standard 3” x 5” you live or what your goals are, you
and Humanoid class robots can be index card for more than two seconds. should build a Sumo. It will teach
remotely controlled. you everything you need to know
● Devices to increase down force, about the basics of robotics — sensors,
● Autonomous robots must not start such as a vacuum pump or magnets,
pulse width modulation and motor
operating for a minimum of five are only allowed in the 3 kg class. They
seconds after initiation by the user. are not allowed in all other classes. control, gearing, voltage-to-torque
ratios, microprocessor control, simple
● Dohyo rings for 3 kg robots are ● All edges — including, but not mechanical engineering, and robot
154 cm in diameter. 500 g and 1 kg limited to the front scoop — must not construction and assembly.
LEGO doyhos are 77 cm in diameter; be sharp enough to scratch or damage Sumo robots are how I got
100 g doyhos are 38.5 cm in diameter; the ring, other robots, or players. involved in robots. If it weren’t for
and 25 g doyhos are 19.25 cm in Sumos, there would be no RoboGames
diameter. ● One match will be fought for a total /ROBOlympics. I wouldn’t be teaching
of three minutes, starting and ending robotics at SFSU. I probably wouldn’t
● Jamming devices — such as IR LEDs upon the judge’s command. The clock be involved in robots at all.
intended to saturate the opponents IR shall start ticking five seconds after the Go build a Sumo. You’ll never
sensors — are not allowed. start is announced.
regret it. The first hit’s free ... SV
66 SERVO 05.2007
Full Page.qxd 4/5/2007 9:23 AM Page 67
TwinTweaks.qxd 4/4/2007 11:15 AM Page 68

THIS MONTH:

Rummaging
in the Robot
Reliquary

U sually we’re given a kit to work with


for our column, but such is not
always the case. So, left to our own
devices, we had to figure out a good
charred Vantec speed controllers. Upon
pawing through some other possible
robot bits, we uncovered a project that
would be much more useful.
numerous epic battles, it was certainly
an area of robotics that had captured
our interest.
When we were just wee middle
project for our next column. One of our Troublemaker was our first major schoolers, we had the opportunity to
initial ideas was to make a simple robot robotics project — a 60 lb combat apply for a $500 grant from CAG
out of scrap we had in our garage. A robot. In its present condition in the (California Association for the Gifted)
quick survey of Robot Central reveals garage, Troublemaker was inoperable. to fund an educational project. Robots
that it is not your typical garage. A It wasn’t because of a fatal skirmish in looked like a lot of fun that would
cursory look will reveal solar powered competition as one might expect from incidentally be hugely educational, so
boats hanging from the ceiling, shells of a retired combat bot, but rather an we applied for the grant to build a
FIRST robots past, and copious amounts upgrade gone awry. But that is at the combat robot. We received the grant,
of aluminum strewn about, courtesy of end of the story, and the beginning is a and we were on our way to becoming
our dad’s job at Cosworth Racing. There much better place to start. real roboticists.
was certainly enough there with which How do middle schoolers build a
to make a robot — Maxon motors, Once Upon a Time 60 pound combat robot anyway?
Colson wheels, carbon fiber plenum Thankfully, we had two great
tops (for cool factor, of course), and It is a difficult thing to nail down resources: our dad, who works at
exactly when our interest in robot- Cosworth, and that wonderful tool
MEET TROUBLEMAKER. ics began. Maybe it was playing called the Internet. Robotics resources
with Z-Bots as small children. abound on the web, and our dad was
Maybe it was experimenting with able to salvage scrapped aluminum
LEGOs and eventually LEGO and motors from his work to give us
Mindstorms. But what we general- something to work with. One of the
ly label as our first major foray into most inspiring pieces we received
the world of robotics was in the courtesy of Cosworth was an obsolete
arena of combat robots. Combat plenum top; an air intake manifold
robotics might seem like an odd from one of Cosworth’s racecar
choice for an introduction to robot- engines. The plenum top was made
ics, but after watching shows like from super cool carbon fiber, and
Battlebots and pitting the Z-Bots the compelling shape galvanized our
and Voids against each other in imaginations.
68 SERVO 05.2007
TwinTweaks.qxd 4/4/2007 11:16 AM Page 69

Rummaging in the Robot Reliquary

With Background and off our spinning weapon. We used Dan Danknick, the esteemed former
big, heavy sealed lead acid batteries to technical editor of SERVO Magazine.
Music, This Would power our bot, with the unpleasant- Overall, Botbash 2001 gave us a
Make a Good Robot ness of the weight and size offset by very good first impression of the com-
the fact that they, too, came courtesy bat robotics community and of robotics
Building Montage of Cosworth. We spent our grant in general. We were afforded the same
The plenum top had a circular hole money in purchasing our Vantec speed respect as everyone else there even as
cut out from its roof, and we were controller and Futaba radio, and with young rookies, and we were amazed
immediately inspired to fill that gap. Our that, we had all of our essentials. It was by the variety of designs at the compe-
minds leapt to the most logical time to get down to real robot building. tition. Baseball bats, spinning shells,
conclusion — when you have a combat A philosophy that we have alter- and saw blades were all fair game, and
robot with a hole in the top, what do nately embraced and abandoned (for we left the event with a galvanized
you put in it? A spinning kinetic cool factor) has been the classic KISS — imagination and a few battle scars.
weapon, of course! Many ideas were Keep It Simple Stupid. This being our
tossed around and contemplated. first robot, we really did want to keep Causing More Trouble
Everything from Active Threat Detection it simple, so we settled on a simple
to Tesla coils was addressed, but we direct drive train with four motors and Botbash 2001 had left
had to fit our plan to the constraints of four wheels. After balancing simplicity Troublemaker with a few battle scars.
the rules of the competition and of with practicality, we powered our spin- Namely, the starter motor we used to
practicality. Ideas were jotted down and ning weapon through a pulley and belt power our kinetic spinner was
refined on napkins from a local pizza system, in anticipation of some heavy completely smoked, filling the plenum
place, and schemes developed over the shocks. To give our robot a little extra top with the lingering odor of electrical
pizza were refined in the garage. bite, we outfitted it with a set of hard- death. We replaced the motor and we
Designs were refined from napkin ened chromoly spikes on the front, and also replaced the heavy sealed lead
to computer. We wanted an interesting with that we were ready for action. acid batteries in Troublemaker with a
robot, but a spinning weapon on a box lighter pair of cordless drill batteries.
was not quite up to our expectations of Open the Door, The extra weight the batteries afforded
cool factor. Instead of a simple square, us went towards a second inner
we angled off the back corners to You’re There layer of 7075 T-6 aluminum armor.
come up with something more unique. Our original plan when we took the Troublemaker was ready to play again.
Drawings were made on AutoCAD plunge into combat robotics was to actu- Almost. We found the thrill of com-
with the eventual goal of getting our ally compete in Battlebots. But the more petition so inspiring that we simply had
creation machined. we researched the competition, the to build another robot. The plenum top
We decided the ground floor of more unmanageable of a commitment once again served as the nucleus of our
the robot was a good place to start, it seemed. After building an expensive design, and we created a 30 lb robot —
and we wanted to make the physical robot, a costly trip to San Francisco was Twibill Trouble — which we fashioned to
construction of the robot as easy as out of the question, so we had to look look like the head of a double bladed
possible. Our goal was to make a floor for other options. What we found was battle axe. Twibill Trouble was ready just
that we could simply bolt everything Botbash — a smaller competition located in time for our second combat robotics
onto, but to do that we basically had to in Phoenix, AZ that still drew a lot of endeavor: Botbash 2002 in Tempe, AZ.
design everything first. We had to big names from the combat robotics Botbash 2002 introduced some new
know exactly what we wanted in the establishment. It seemed like a perfect aspects of competition. The matches
robot, and where to put it. Back to the fit, so we packed the robot in the car and were no longer one on one — two teams
pizza place and the napkins. headed off to the Copper State. of two robots squared off against one
A pleasant discovery it was when Botbash 2001 was held in a aban-
we found out that robots didn’t really doned warehouse affectionately and TROUBLEMAKER GUTS!!!
require everything from RadioShack inscrutably known as “Automatic.” The
and a kitchen sink. All we needed were competition was a double elimination
batteries, a radio transmitter, speed tournament, where each match would
controllers, an antenna, a kill switch, feature two robots going head-to-
motors, wheels, a solenoid, a junction head in a fight to the death. Even
block, and mounting brackets. It may before the matches started, we had an
seem like a long list, but those really are exciting opportunity to survey the
the only necessities we needed for our other competitors, and everyone was
robot. Things like solenoids aren’t more than happy to answer any
required for robot construction, but we questions about their robots. Botbash
thought it was a handy way to turn on 2001 was also where we first met
SERVO 05.2007 69
TwinTweaks.qxd 4/4/2007 11:16 AM Page 70

Twin Tweaks ...


Killball had somehow made it into our um guard that circled the lower
team’s goal. Upon further inspection, it perimeter of a new plenum top. Of
was revealed that the Killball had course, these upgrades required
become seriously dented. We have no extensive planning on more pizza place
proof, but one theory we have is that napkins, and the robots were finished
the disembodied weight actually hit the on the usual timetable — a few late
Killball into our own goal. Apparently nights before the competition.
Troublemaker was quite the pool shark, Our usual timetable allotted the
though it was unfortunate that we had usual time for testing — the first hours
to sacrifice our spinner to find that out. of the competition. Twibill Trouble fired
Fortunately, we still had our up smoothly, but when we went to
chromoly spikes, and Troublemaker was turn on Troublemaker, the sound it
still ready to brawl. In a later match, made was like crickets in a cartoon. We
however, Troublemaker inexplicably died were stunned that Troublemaker was
in the middle of the melee. The autopsy totally non-operational. We were able
revealed that we had smoked our Vantec to determine that the problem was
TWIBILL TROUBLE. speed controller. Troublemaker was down rooted in our apparent upgrade;
for the count, but the matches that we moving from our charred Vantec speed
another in each match. Also, the objec- did play were certainly a great time. controller to two robust Victors.
tive was no longer simply to destroy the Twibill Trouble remained operational The problem was that our Futaba
opposition. Botbash 2002 introduced throughout the event, and even though radio was on PCM (pulse code modula-
Killball, where teams would win the it often exited matches with bent blades tion) frequency, and our new Victors
match by scoring the most goals with an or scraped up carbon fiber, it certainly apparently didn’t speak that language.
unevenly weighted ball. The second event proved itself to be one scrappy little bot. What we needed was an electronic inter-
was Elimination, where teams would Twibill Trouble, however, was eventually preter to mediate between the Victors
participate in the traditional fight to the eliminated. But even though we didn’t and the radio controller, and that inter-
death. The arena was also much more leave Botbash 2002 with awards, we left preter takes the form of a mixer. We did-
interactive. Instead of a barren steel floor, with the memories of another great and n’t anticipate such a problem and we had
this arena featured a swinging pendulum inspiring experience. no mixer with us at the competition, but
in the middle and two pits on either end thanks to the generosity of Ted Shimoda
of the field. Goals for Killball were also What We Have (our neighbor in the pits), we were able
placed at either end of the field. to outfit Troublemaker with a mixer for
Troublemaker had an interesting Here is a Failure the duration of the competition.
time at Botbash 2002. Our new motor to Communicate
for our kinetic spinner was certainly up The Pit and the
to the job, but it turned out that other On the drive home from Botbash Flaming Pendulum
parts of the design were unexpected 2002, we were already thinking of
weak points. In one of our first match- upgrades we wanted to make for Botbash 2003 — also affectionate-
es, we went up against a formidable Botbash 2003. Number one on the list ly known as Botbash by the Sea — was
opponent with a large, two toothed, for Troublemaker was a new speed a thrilling competition. As part of the
spinning disk as a weapon. Our oppo- controller to replace our trashed Del Mar Fair, the event brought many
nent actually cut the steel cable that Vantec, and we were also dreaming of more spectators than previous years,
fastened a weight to our spinner, and some more protection for Twibill and the combat arena itself had some
the weight went flying. A particularly Trouble’s battered plenum top. exciting upgrades. The pits and pendu-
interesting note is that seconds later, Rather than replacing our charred lum were carried over from the previ-
the Killball match was over because the Vantec with another Vantec, we ous year’s event, but the pendulum
decided to equip Troublemaker was now on fire. The events from the
BOTBASH 2002. with two Victor speed controllers previous competition were also carried
instead. We had heard great things over, so we had the opportunity to play
about the robustness of Victors at Killball and Elimination once again.
the Botbash events, so they seemed We enlisted some of the Club
like a logical choice. We also CREATE members from our high school
outfitted Troublemaker with new to help us in the pits, but for much of the
steel cables for the weights on the competition, we fortunately did not have
spinner, and we shielded the too heavy of a workload beyond
cables with protective tubes. Twibill popping the tops off of the robots to
Trouble was equipped with a titani- extract batteries for charging. That, how-
70 SERVO 05.2007
TwinTweaks.qxd 4/4/2007 11:31 AM Page 71

Rummaging in the Robot Reliquary

ever, does not mean that Troublemaker


and Twibill Trouble avoided battle scars.
Troublemaker’s kinetic spinner met
with more trouble — another weight
went for an unscheduled flight after
hitting the floor while TM was on uneven
footing partially in a pit. Twibill Trouble’s
titanium guards did help in averting some
damage, but the plenum top still met
with the business end of some weapons.
Both robots fared pretty well, and
Troublemaker even secured second place
after a tense one-on-one deathmatch. THE FLAMING PENDULUM. THE PIT.

Back to the Future A closer examination of combat ative process. Competitions like Botbash
robotics events like Botbash reveals are stimulating the exploration of new
We had to return the loaned mixer them to very much be kindred spirits technology and new uses for existing
at the end of Botbash 2003, so with competitions like FIRST. Combat technology. Perhaps it sounds over-
Troublemaker was again rendered events, like FIRST, are all about creative reaching, but competitions like these
non-operational. We thought that ideas being born out in competition, are helping to democratize technology.
Troublemaker’s catatonic state was not with Botbash and FIRST simply being
fitting for a robot that had just brawled different types of competitions. Take the Plunge
its way to second place, so we ordered While the FIRST competition has
our own mixer. Alas, the frenzy of FIRST the stated philosophy of Gracious When we dove into robotics, the
(For Inspiration and Recognition of Professionalism, participants in all differ- driving force was really just the idea that
Science and Technology) and other ent types of robotics competitions we “wanted to build a robot.” That really
aspects of life’s general business stole our espouse an ideology of sportsmanship. is all it takes; anyone can get involved in
attention from the deserving robot, and Even though combat robots are pitted robotics if that is what they want to do.
Troublemaker sat waiting in the garage, against each other in a fight to the Of course, we greatly benefited from the
slowly being buried, for almost four years. death, competitors will not go over- mentorship we received from our dad,
Now we return to the beginning of board, and they will often help former but that doesn’t make robotics an exclu-
the article, where we’ve unearthed opponents with repairs to their creation. sive pursuit. Let the wealth of informa-
Troublemaker and gathered all of the In competitions like Botbash, every tion on the Internet be your guide, or
requisite parts to bring it back to life. competitor knows that it is an volunteer at a local FIRST regional, or just
We bought our mixer from Team Delta, accomplishment simply to be there. It is get involved in some way, shape, or form.
and the product came with comprehen- an incredible challenge to take your The bottom line is that there are
sive instructions that made installation idea from being just a dream to a plenty of resources for anyone to get
a snap. We were able to scrounge up a concrete creation, and everyone at involved, no matter what their back-
few over-long PWM cables, allowing us these competitions can relate to that ground is. And even though robotics
to make the requisite connections to grueling process. The sportsmanship may seem like an overly academic
the speed controllers and the receiver and professionalism at these competi- pursuit, competitions like Botbash are
module. After four years, Troublemaker tions also stems from respect. Every what make it a fun and cultivating
was finally ready to play again. competitor respects their competition thing to do. Even though Botbash
because everyone there is an innovator. events are no longer being held, maybe
More Than Everyone from the intrepid garage you’ll see Troublemaker and Twibill
Meets the Eye tinkerer to the professional engineer Trouble at some other RFL melee. SV
have created something unique,
Combat robotics is often cast in an and progress is simply made by a THE MIXER.
antagonistic light — the thought is that series of innovations.
since the object of the competition That really gets to the heart of
is to destroy the other person’s robot, these competitions. Why do these
there would naturally be an atmos- roboteers spend lots of time and
phere of cutthroat adversarialism. Such money on remote controlled
is not the case. That might seem gizmos that simply beat the crap
counterintuitive, given the apparent out of each other? Because it’s not
object of the competition. But is that just about the end result (in this
really the object of the competition? case, FUN!), but rather in the cre-
SERVO 05.2007 71
RoboResources.qxd 4/3/2007 10:02 AM Page 72

Tune in each month for a heads-up on


where to get all of your “robotics
resources” for the best prices!

Fabulous Robots
With Pre-Fab Parts!
T wenty five years ago, if you want-
ed a robot you built it from scratch.
Out to the garage you’d go, with
pre-fab construction kits that are
available, and why such a kit may be
just what you’re looking for if you’re
module, sensors, and rechargeable
batteries. The Vex is the de facto stan-
dard kit of parts for the US FIRST Vex
sheet metal, wood, and plastic bits in wanting to experiment with robotics. Challenge robotics competition, open
hand. You’d cut, drill, sweat, and in the to high school students. Participants
end you’d have a functional but Vex Robotics form teams who compete with one
perhaps amateur-looking robot to Design System another in building and programming a
show to your friends and family. And robot to perform a specific task.
that would be just for the mechanical The Vex system is based around
body. The electronics and brain would the Erector set style of pre-drilled LEGO Mindstorms
be a project for the next year — if you stamped metal girders and connector
made the effort at all. pieces. To build a robot, you fasten the Now in its second incarnation as
Starting about 10-15 years ago, a girders and other parts together using the NXT, LEGO continues as a favorite
few enterprising mail order businesses machine screws and nuts. What makes robot construction set in the home and
— such as Solarbotics and Lynxmotion Vex different than the Erector set you school. NXT sets combine specially-
— began offering robot construction can buy at the toy store is the collec- made electronic components with tra-
kits. You could bypass the mechanical tion of parts specially designed for ditional (and some not-so-traditional)
construction phase, and go straight to small robotics. It comes with two types LEGO building blocks.
the electronics, programming, or even of motors — servo and continuous At the center of the NXT system
play phase! The kits were special- rotation gear head — made to fit the is the NXT controller — a second-
purpose, designed to construct a single girder construction of the system. To generation microcontroller that sup-
version of the robot. To this day, there these motors you can attach a variety ports up to three motors and up to
are still plenty of pre-made kits that of mechanical parts, such as wheels, four sensors and other inputs. Like
make it easy to build a robot, letting gears, and even tank-type treads. the RIS controller in the original
you concentrate on the other aspects Once upon a time, Vex was sold Mindstorms set, the NXT provides
that you may find more enjoyable. exclusively by RadioShack, so it was visual feedback using an LCD display,
Now, the latest trend in amateur widely and easily available. Alas, that and receives its programming from a
robot construction is prefabricated company had rolled back its inventory PC (in the case of the NXT, the connect
components that allow you to build a in hobbyist electronics parts, and no is via USB; early RIS controllers used
variety of designs, all from a single kit longer distributes the sets. You can still infrared communications). Once it has
of parts. The idea is hardly new — for get Vex via mail order from the manu- received its programming, the NXT is
decades, kids have been building things facturer’s website at vexlabs.com. self-contained and operates by itself.
with Erector and LEGO parts, even They sell a starter kit, as well as NXT connects to a wide variety of
Lincoln Logs. While the idea of mixing separate components. Need an extra motors and sensors, which either come
and matching components to build set of wheels? No problem! They are with the basic Mindstorms NXT kit, or
custom designs is old-hat, only recently available separately, along with various are available separately. Basic touch,
has the concept come to the field of packages of extra girders, nuts, bolts, light, and sound modules provide basic
educational and amateur robotics. and other hardware. sensory feedback, and ultrasonic and
In this month’s column, we’ll take The $300 Vex starter kit also accelerometer sensors give the NXT the
a closer look at some of the robot includes a programmable electronics ability to judge distances and even tilt.
72 SERVO 05.2007
RoboResources.qxd 4/3/2007 10:02 AM Page 73

The motors on the NXT are enhanced bipedal robot, the body for a four- and (www.robotis.com). I’ve included
and provide built-in encoders, which six-legged walking robot, and parts to several North American dealers in the
count the revolutions of the drive shaft make a sci-fi looking robot hand. Sources section that follows.
as the robot rolls along the carpet. As pre-fab kits go, the Bioloid is
While NXT comes with graphical pro- Robix Rascal relatively inexpensive, especially when
gramming software, LEGO also provides you consider it comes with everything
an open source firmware API (applica- The Rascal Classroom Robot Set you need to start building, including
tion programming interface), so you can from Robix is, as its name the battery pack and the motors. The
lift up the hood and work directly with implies, designed for classroom study servos used in the Bioloid are not off-
the electronics in the NXT module. of robotics and mechanics. Yes, you the-shelf; in fact, they are proprietary
can build several different types of designs that boast upwards of 220 oz-
Lynxmotion robots with the Rascal kit, but in torque (at 9.6 volts). They are unlike
Servo Erector Set the emphasis is on learning about traditional servos in that they are
mechanical design and construction. operated using serial commands. You
Lynxmotion was one of the first Rascal parts are relatively simple don’t need or use separate pins on a
robotics-specific companies to realize and straightforward, and that’s the microcontroller for each servo; instead,
the benefits of producing prefabricated secret to their ingenuity. Kits are all the Bioloid servos are connected to
construction parts, allowing builders composed of standard R/C servos and the same serial communications input.
the freedom to create custom designs. pre-cut and pre-drilled aluminum angle The Bioloid servos provide torque and
Their Servo Erector Set is composed of stock called Rascal Links. The links angular feedback.
a variety of stamped aluminum metal come in different lengths. When you consider that a high-
brackets that are specially designed to The servos in the Rascal kit are torque standard R/C servo motor costs
work with common R/C servo motors. standard R/C unique, and can be about $40, 18 such motors would set
By connecting the brackets, chan- commanded using most any serial you back $720. At $899 for the full
nels, tubing, and other construction servo controller or microcontroller. A Bioloid kit, you get the equivalent value
hardware in various ways, it’s possible controller is included in the Rascal kit, in servos, plus a microcontroller, battery
to build two-, four-, six-, and even which is designed to operate up to 32 pack, and construction pieces. Actually,
eight-legged walking robots. In similar servos via a USB link to a PC or Mac. this comparison is not accurate,
fashion, you can build arms, grippers, Software supplied with the kit provides because traditional analog R/C servos
pan/tilt mechanisms, wheeled robots, a programming environment. do not provide the feedback possible
and just about anything else that uses with the Bioloid servos, and few
standard R/C servos. A page on the Robotis Bioloid are capable of torque much beyond
Lynxmotion site provides a long list of 100-110 oz-in. (The 200 oz-in range is
illustrated examples of what you can An exciting new entrant into the mostly occupied by digital hobby
build using the Servo Erector Set. prefab robot kit arena is the Bioloid, servos, which retail for $75-$125 each.)
The component parts of the compa- from Korea-based Robotis. The full The Robotis kit is a great deal now,
ny’s Servo Erector Set are wide and Bioloid kit (about $900) comes with and promises plenty of fun. It’s likely
varied. Lynxmotion sells some small kits enough parts to — according to the only the first one in a soon-to-be long
with parts designed for specific tasks, sales literature — build 26 different line of all-in-one imported kits from
like a two- or three-degree-of-freedom robots. No doubt with a bit of creativi- Korea, Japan, and China that are sure
leg. Buy four, six, or eight sets to con- ty you could build more, especially if to follow. This is a market that is sure to
struct a complete walking robot. Or, you you combine parts from additional kits. catch on.
can purchase the individual parts sepa- The full Bioloid kit — called the
rately. These parts aren’t inexpensive, Comprehensive Kit — contains a main Ye Olde Standbys
but they’re far easier than making them programmable controller, 18 special pro-
yourself, and cheaper than if you go to a grammable servo motors, and various Not to be forgotten, these
local metal shop for custom-made parts. frame construction pieces. A less expen- construction toys are useful as the
Rounding out the Servo Erector sive entry-level kit (about $350) contains framework for DIY robotics. The best
Set offerings is a complete collection of the controller, but only four servo part: You probably already have at
robot “torsos” or bodies, some made motors and a selection of construction least one set in the back of your closet.
of stamped and pre-drilled aluminum, parts. Both kits also include a multi- Dig it out, and start using it for your
and some from laser-cut polycarbonate function sensor module, which includes next robotics project!
plastic. These bodies are designed to an infrared receiver, infrared distance
attach to the various legs and other sensor, light sensor, and buzzer. • Erector — One of the older construc-
mechanics that you’ve built using Servo Robotis sells their kits through a tion toy brands. The original kits were
Erector Set parts. Among the available worldwide network of dealers. See the made of all stamped metal, but the
torso parts is the framework for a list of dealers on their home page modern versions contain a number of
SERVO 05.2007 73
RoboResources.qxd 4/3/2007 10:55 AM Page 74

plastic pieces. The sets come in various sizes, and are magnetic, hydraulic, pneumatic, static, and robotic mechanisms.
generally designed to build a number of different projects.
Many kits are engineered for a specific design with provisions • K’Nex — Using a series of half-round plastic spokes and
for moderate variations. connector rods, K’Nex encourages construction of larger
models. A number of K’Nex kits are available, from simple
• Plastic Construction Bricks — You can literally build anything starter sets to rather massive special-purpose collections
with plastic construction bricks, typified by the LEGO and (many of which are designed to build robots, dinosaurs, or
LEGO Technic sets. A few companies make “LEGO compati- robot-dinosaurs). Several of the kits come with small gear
ble” sets (without actually saying so) with similar functionali- motors, so you can motorize your creation.
ty. Check out the sets by MEGA BLOKS and others. The parts
snap together, but for more permanent creations, you can Sources for Prefabricated Robot
use a dollop of solvent cement. Use ABS cement for LEGO Construction Sets and Related Parts
bricks; plastic model cement for most of the other brands.
80/20, Inc.
• Tamiya — Besides plastic models, Tamiya makes a line of www.8020inc.net
educational kits that include motors, wheels, tank tracks, and Aluminum extrusions and connection parts for industrial-
a (wired) remote control robot construction set. strength constructions. Useful for larger robots. Check the
site for local retailers.
• Capsela — This popular snap-together motorized parts kit
uses unusual tubular and spherical shapes. The kits contain Construction Toys
unique parts that other put-together toys don’t, such as www.constructiontoys.com
plastic chain, sprockets and gears. Online and local retailer of construction toys. These toys
are available both online and in the retail store: Capsela;
• Fischertechnik — These kits are less toys and more learning Eitech; Erector; Fischertechnik; Geofix; Geomag; K’NEX;
labs. They aren’t designed for use by small children. Pre-made LEGO Dacta; Roger’s Connection; Rhomblocks; Rokenbok;
kits offer a snap-together approach to making working electro- and Zome System.

CrustCrawler
www.crustcrawler.com
US-based reseller of the Bioloid kits, as well as their own
custom-made metal robot kits. Extensive site with plenty of
how-to and background information on using the Bioloid kits.

e-Hobbyland
www.e-hobbyland.com
Well-established retail and online seller of all types
of toys.

Fischertechnik
www.fischertechnik.com
Company website for Fischertechnik in North America.
Check out the Retail Outlets links.

Hobby Engineering
www.hobbyengineering.com
General source for robot parts, as well as a lengthy list
of Erector set kits of all shapes and sizes.

Jameco Robot Store


www.robotstore.com
Reseller of a number of robot kits, including the Tamiya
remote-controlled robot construction set.

KBtoys.com
www.kbtoys.com or www.etoys.com
Online mail order. Check often for deep discounts on
LEGO, K’NEX, and other brands.
74 SERVO 05.2007
RoboResources.qxd 4/3/2007 10:03 AM Page 75

LEGO Shop-at-Home Rokenbok radio-controlled toys. the website for clearance items.
shop.lego.com
Online outlet for LEGO products, Robotis Timberdoodle
including spare parts (when available). www.robotis.com www.timberdoodle.com
Manufacturer’s site for the Robotis Timberdoodle specializes in home
LEGO Mindstorms line of robot construction sets and education products. They offer a good
mindstorms.lego.com parts. Check out the dealer pages to selection of Fischertechnik kits at good
Informational page for the LEGO find a reseller near you. prices. They also sell K’NEX and
Mindstorms sets. Be sure to check out electronics learning labs. Be sure to
the user-to-user forums to see what Robotshop check their “swan gong” closeout deals.
other LEGO builders are up to. www.robotshop.ca
Resellers of Fischertechnik and US First
Lynxmotion other robot construction sets. www.usfirst.org/community/fvc/
www.lynxmotion.com Main page for the FIRST Vex
Lynxmotion offers complete robot Tamiya Challenge. (If you are a high school
kits, as well as a unique Servo Erector www.tamiya.com student, check with your school to
Set, a collection of brackets, and other Home page for Tamiya. Check out see if they participate in the FIRST
parts for building custom robots using their Educational Construction Series competition. If they don’t, talk to your
standard-size R/C servos. line of kits, such as the remote- teacher or administrator about getting
controlled robot construction set. involved.)
Only Toys
www.onlytoys.com Target VexLabs Vex Robotics Kits
Only Toys carries metal Erector www.target.com www.vexlabs.com
sets; most are for building vehicles, and Retail stores and online site. Both Makers of the VEX Robotics Design
some (like the Steam Engine) are quite offer great deals in clearance items. System. Use their online ordering
elaborate. The company also sells Make it a habit of regularly checking system. SV

SERVO 05.2007 75
Appetizer.qxd 4/5/2007 10:01 PM Page 76

Environmental Sensing in a
Robotics Curriculum
by Chris D. Odom

The Allure and er science programs are not seeking solu- cute, multicolored graphs.
Repulsion of tions to the big questions and the impor- My robotics students, too, incorpo-
Computer Science tant problems. After all, very few of my rate a number of sensors to help their
students will go on to careers in industrial autonomous robots monitor their sur-
The readers of this magazine certain- robotics even though it was robotics which roundings. But because robotics students
ly understand the attraction of robotics. lured them to my courses in the first place. are building and programming their own
After all, designing, building, and pro- Instead, most of my students will pursue probes and sensors, the data collection
gramming robots to do what you tell them majors in the pure research fields of chem- process is much more creative, transpar-
to do is exciting, challenging, and istry, biology, physics, and environmental ent, and rewarding. Even beginning stu-
mentally stimulating. Recognizing that science; for these are the disciplines that dents learn how to use photoresistors,
microcontrollers and robot kits had attempt to answer mankind’s deepest and thermistors, infrared transducers, and IR
become both robust and affordable, four most fundamental questions. range finders in their robotic applications.
years ago I decided to expand my high Another advantage to designing and pro-
school computer science curriculum to Robotics and Pure gramming your own sensors is the cost: a
include the study of robotics. My students Science 50¢ thermistor does the job of a $22
have certainly appreciated the upgrade. temperature probe; a 25¢ photoresistor
With their line-following, fire-fighting, As I see it, computer science replaces a $59 light sensor; and two pen-
soccer-playing, and land-navigating robots, programs in colleges, high schools, and nies and a piece of conductive foam can
they are proof-positive that robotics even in middle schools should place more be used in place of a $119 force sensor.1
applications excite students to the point of emphasis on pure scientific research. Not I should explain that the school in
increasing both their enjoyment and their only is this healthy for computer science which I teach is not set up with a research-
understanding of math, electronics, and students, but it will also give our science- grade electronics laboratory or an industrial
computer programming. (The effect was so minded students a deeper understanding machine shop that some schools enjoy.
positive and immediate that I even wrote a and appreciation of technology. I will Instead, I buy off-the-shelf equipment when
textbook on using robots in the classroom.) demonstrate that even in a robotics I can and emphasize software solutions to
In the four years since I began teach- course it is easy and straightforward to our robotics problems. To this end, I have
ing robotics at my school, enrollment conduct meaningful scientific research, found that NetMedia’s BX-24 microcon-
in my computer science courses has and that the research can be a natural troller and BasicX software fit the needs of
increased nearly 300%. However, this extension of the robotics curriculum. my classroom perfectly. The BX-24 is a fast
is certainly not the trend experienced by Today’s modern educational science and powerful microcontroller with 16 stan-
colleges and universities in the United labs use sophisticated data acquisition dard I/O pins (eight of which function as
States. Despite the increased demand for a interfaces (e.g., Vernier’s LabPro or 10-bit A-to-D converters), 20 MHz 32KB
highly skilled workforce, the number of PASCO’s Xplorer) and a wide array of EEPROM, and a processor speed of 82,000
computer science majors in this country has probes and sensors that measure BIPS, which is able to perform floating-
dropped significantly in the past five years. everything from temperature and voltage point math and is capable of multitasking.
The causes for this decline are numerous, to conductivity and turbidity. These The BasicX software, which is compatible
but the two reasons most commonly acquisition packages are expensive, and with Microsoft’s Visual Basic™ language,
sited by students and computer scientists while I wouldn’t dream of teaching my makes programming the BX-24 easy and
is the media’s attention to offshoring and physics courses without them, I am user-friendly. In my classroom, I use
the fear of another dot-com bust. saddened that my science students treat Robodyssey System’s educational robots,
A third reason cited by a growing them as little black boxes that magically which are equipped with their RAMB moth-
number of experts is the fact that comput- record, display, and plot relevant data on erboard and the BX-24 microcontroller. The
76 SERVO 05.2007
Appetizer.qxd 4/5/2007 10:01 PM Page 77

RAMB allows for direct connection of off- test run, none of the sensors had been the internal temperature lagged behind
the-shelf sensors (such as IR rangers and calibrated, so only raw data is displayed. the external temperature as expected.
GPS modules). Furthermore, with a simple It is not necessary for the ESS to be This is most pronounced when the ESS
voltage divider, fabricating our own vari- tethered to a PC, for data can be stored was first taken outside into the hot
able-resistance sensors such as thermistors with the BX-24’s EEPROM. The amount weather and again when placed into
and photoresistors is a trivial matter.2 My of data one can collect is dependent the cool stream. Note, too, that the
point is this: Collecting, recording, and upon the amount of available space. water temperature rose substantially
analyzing data is a breeze with the BX-24 Because my computer program after the storm runoff from the warm
and RAMB. consumed only about 6,000 bytes of earth made its way into the creek.
the 32,768 total, 26,768 bytes were set Finally, notice the lag time in the diurnal
The Environment aside for data storage. Each sensor was heating and cooling of a body of water
Sensing Station (ESS) connected to an A-to-D channel on the associated with sunrise and sunset.
BX-24 and each data point was stored Data from the Conductivity graph
It seemed to me that a few lessons as a two-byte integer. I also decided to also shows the effect the thunderstorm
in environmental science, with its heavy store the local time using the BX-24’s had on the creek’s electrical properties.
dependence on remote sensing and data built-in real time clock (RTC), which While more difficult to analyze, the
collecting, would be a natural extension requires 12 bytes per reading. With five effect of the storm is unmistakable.
of my robotics curriculum. To test this sensor readings and the time, 22 bytes I believe there are many things to
idea, I designed an Environment Sensing of EEPROM was consumed with each glean from this experiment. First, there
Station (ESS) made of three-inch (I.D.) data sample. This means, for example, is room in a robotics curriculum for pure
PVC pipe and fitted it with a BX-24 and that our application could collect one scientific research. Second, it doesn’t
RAMB to make simultaneous readings of sample each second for 20.3 minutes; take a lot of equipment or program-
up to seven sensors. (The BX-24 has eight or it could collect a sample, say, every ming skill to perform solid scientific
analog ports, but I used one of them to 15 minutes for a total of 12.6 days. Not experiments. Third, even the simplest of
set the apparatus to data-taking or bad, huh? experiments can offer a wealth of data
printing mode.) The ESS, which only cost For my first run, I elected to record that could keep a classroom occupied
a few dollars to build, is capable of col- data every two minutes for 18 hours. for days.
lecting data for several days — or longer Little did I realize this test run would So, will this and other similar
if a solar panel was used to recharge the yield some amazing data. At 18:10 on traditional science experiments find
batteries. The station is weather- and August 7, 2006, I began acquiring data. their way into robotics curriculum?
water-proof, so I decided to test it under- At 18:20, I left my office and carried the Absolutely! Certainly my future robotics
water using five sensors to measure and instrument to a creek running through students will continue to create their
record internal and external temperature, campus. At 18:37, the ESS was placed fire-fighting and soccer-playing robots,
ambient light, turbidity, and conductivity. in the creek and submerged under but they will also see how technology
All the sensors were inserted into about 25 cm of water. and science mesh together. Hopefully,
Robodyssey voltage divider boards (VDB) Data was later imported into Excel my students will get a taste of real
equipped with variable resistors.3 These and graphed back in the lab. If you’d scientific inquiry that may even be
VDBs were then connected to the BX-24 like to study the graphs (which are more rewarding than they would get in
A-to-D pins via the RAMB. While I gener- available on the SERVO website; a traditional science class.
ally prefer the fixed resistor VDBs, the www.servomagazine.com), note For more information on the this
variable ones are nice during the that light intensity, temperature, and experiment including computer code,
development stages of an experiment. conductivity increase along the vertical raw data, graphs, construction plans,
Measuring temperature and light intensi- axis. You should know that on August 7 classroom curriculum materials, and
ty is a simple matter of screwing a there was a brief but powerful thunder- detailed local weather reports for
thermistor and photoresistor into their storm that occurred between 21:53 August 7-8, 2006, see www.basicx
respective VDBs. Conductivity was and 22:15. androbotics.com/apps/ and click on
measured with a gold IC wire-wrapping If you look at the Light/Turbidity Environment Sensing Station. SV
socket. The pins along one side were graph, note that the ambient light probe
soldered together and connected to a was sensitive enough to detect twilight Footnotes
wire, as were the pins along the other and dawn conditions, the timing of 1) All comparison prices are from PASCO’s 2007
catalog.
side. The two wire leads were then con- which agreed with meteorological
nected to a VDB. In air, the resistance forecasts. From that graph also note that 2) In 2004 we launched the BX-24, the RAMB, and
Robodyssey’s voltage divider boards (VDB) into
between the two rows of pins is very the turbidity sensor detected an influx of space onboard NASA’s Terrier-Orion rocket. The
high so the signal read by the BX-24 is soil runoff immediately after the storm. I acceleration at lift-off was nearly 20Gs and all
assume the noise recorded by these two components worked flawlessly throughout the 25-
nearly equal to the input voltage of 5V. minute mission.
In water, the resistance varies according sensors after sunrise was due to debris
to its mineral content, which can be that became trapped by the ESS. 3) With the addition of a Robodyssey Multiflexer,
we would be able to monitor seven additional
quite variable. I measured the turbidity Data shown on the Temperature sensors.
of the water by shining a bright LED graph illustrate many interesting
4) You can fabricate your own divider board, but
directly into a photoresistor.4 During this thermodynamics processes. Note that the VDB is inexpensive and easy to use.

SERVO 05.2007 77
Full Page.qxd 4/5/2007 9:26 AM Page 78

Founding Sponsor

Premier Sponsors

Gold Sponsors

The International Business


Development Event for the
Mobile Robotics & Intelligent
Systems Industry
Corporate Sponsors & Exhibitors
May 15-16, 2007 Advanced Digital Logic
Hynes Convention Center Atair Aerospace
ATI Industrial Automation
Boston, MA Autonomous Solutions
Axis New England
Conference Tracks Boston Engineering
■ Business Development and Investment Braintech
■ Technology and Standards Carnegie-Mellon University
City of Osaka
■ Applications and Products
Energid
■ New Markets for Industrial Robotics Foster-Miller
■ Application and Products Galileo Mobility Instruments
Gears Educational Systems
- First Responder Robotics Global Emerging Trade Organization
- Security and Defense GOSTAI
Hagisonic
- Intelligent Transportation & Field Robotics Hobby Manufacturers Association
- Healthcare Robotics Hokuyo Automatic
- Consumer Robotics Honeywell
Hydroid
Now in its fourth year, the RoboBusiness Conference and InterSense
InTouch Health
Exposition is the ‘must attend’ event for the mobile robotics
IZI Robotics
and intelligent systems industry. Japan External Trade Association
Kumotek
■ Two full days of sessions and keynotes in 5 tracks featuring 50+ MachineBus
world class speakers from business, government and academia Magmotor
■ Expo floor featuring the latest robots and robotic technology Merlin Systems
from around the world – many never seen in North America MicroInfinity
■ Special events, networking receptions, Robot Hall of Fame NeuroRobotics
luncheon, breakfast keynotes hosted by Evolution Robotics and NEXSTAR
Object Management Group
Microsoft and more! OC Robotics
OceanServer Technology
REGISTER EARLY AND SAVE OLogic
Register online at www.roboevent.com and use Perrone Robotics
Robosoft
Priority Code RBCD200 to save $200 off the price Robot Hall of Fame
of a full conference registration. RoboTeX
RoboTech Center
Robotics Society of America
Questions? SCHUNK
E: info@roboticstrends.com Segway
P: 508-663-1500 x329 SolidWorks
Strategy Analytics
Valde Systems
Vecna Robotics
Virtus
Media Sponsors

www.roboevent.com
Then&Now.qxd 4/5/2007 9:29 AM Page 79

Then NOW

a n d
ROBOT NAVIGATION
b y T o m C a r r o l l

N avigation — the definition from


Webster’s New Collegiate Dictionary:
Referring to the above list of elements,
the first is position. To have navigational
autonomy, the robot must know where it
determine degrees of turning immediately
as a magnetic compass has a bit of a lag.
It is also helpful to know the
“The act or practice of navigating is. (We’ll discuss methods of determining distance that you have to travel to get
(duh). The science of getting ships, position a bit later, as well.) to the next location. In a boat, after
aircraft, or spacecraft (and, I’ll add The above definition also mentioned reading the chart and measuring the
robots) from place to place. The course, but, to determine a course, the distance with a compass, you can esti-
method of determining position, robot must know where it is and the posi- mate your distance traveled by knowing
course, and distance traveled.” tion of another location where the robot your boat’s speed and the elapsed time
is supposed to go. For example, a boater traveled (D = S x T). Of course, in boats,
Basically, it means the process of can look at a chart and see that he has to there are currents and winds and the
planning to get from where you are to travel on a course of 190° to go from his angles they present to the boat’s
where you want to go. You do that present location to a harbor on a nearby course that you have to take into con-
when you get into your car and drive island. Of course, he has to take into sideration, but usually not with robots.
somewhere or even when you walk consideration variation of the Earth’s Robots and cars can use what is
across a room. Every robot has to do magnetic field where he’s at. The mag- known as odometry — or measuring the
some sort of navigation, even industrial netic north pole is quite a ways south of distance by wheel revolutions and shaft
robots that are fastened to a single loca- the true North Pole, so variation at Los encoders on the wheels to create pulses
tion. Ever since the first robot designers Angeles is 13.5° to the east, whereas it is for the microcontroller to count, or
connected a computer to some sort of 18.3° east to the north at Seattle. What mechanical odometers in cars. This
mechanical arm or mobile base, that this means is the needle of the compass method of determining speed and dis-
person also had to know the location is pointing further clockwise to the right tance along multiple points in a course
and orientation of the arm’s end effector than it should. On the East Coast, it is know as dead reckoning and is the
or the location of the base. This is where varies to the west. There is a wavy line in basic navigation method used with
the design and operation of a robot the central US where the compass points most mobile robots for course planning.
becomes a bit more complex. We find directly north, to both the magnetic
that we have to jump from simple motor north pole and the true North Pole. Early Robot Navigation
control to intelligent motor control. The boater also has to consider devi-
ation caused by magnetic and electrical The ability for an experimenter’s
Robot Navigation things on his boat, so his compass course robot to navigate has not always had
may have to be 15° to 25° from the 190° today’s processing power and sensors
Compared to Boat true course he measured on his chart to available for the machine’s designer.
Navigation have an accurate course to the other One of my earliest robots used a bunch
harbor. Robots have the same problem of switches and six volt DPDT relays that
There are numerous factors to be with magnetic compasses, whether the my brother had given me as the ‘logic’
considered in true navigation, but I’ll just flux gate type or any magnetic compass for my robot. It had two motorized
list a few for lack of space and time. installed on a robot with ferromagnetic wheels arranged in a differential (tank
These main elements are position, materials and electrical systems on board. style) configuration and when a
course, and distance. Notice that I have One neat robot that I saw years ago used microswitch ‘whisker’ touched a wall or
left out obstacle detection — a factor that a magnetic compass for the general direc- obstacle, it would kill the power to the
alters a course and will be discussed later. tion reference and had a gyro compass to opposite side’s motor for a moment and
SERVO 05.2007 79
Then&Now.qxd 4/5/2007 9:38 AM Page 80

track light. Is that navigating? No way! order to locate the light and the wrong
It sure amazed my friends and my turns that caused her to erratically search
science teacher, though. I managed to until the light was rediscovered. When it
learn logic the hard way and ate up a came close to the light and its hutch, it
bunch of flashlight batteries in the would dance about wildly, much like a
process. It sure would have been nice to moth near a porch light, until its battery
have some simple logic ICs or a micro- was low, and then enter its hutch until
controller back then. My ‘programming’ the batteries were replaced.
and ‘software’ was anything but soft; it Figure 3 shows the actual path of
was a hard, hot soldering iron. one run highlighted by a candle on top of
the robot in a timed exposure. Walter
Grey Walter’s Tortoise used an early form of behavior-based
Figure 1. Elsie — crude but effective. logic that is now used in the designs of
Navigates to a Light many small robots today. He developed
allowed the robot to turn away from the In my SERVO column of October the first artificial intelligence, artificial life
wall. If it hit a wall head on, a wooden ’05, I wrote about Grey Walter — the form, and perceptual navigation to be
stick that ran from front to back with English neurophysiologist who built the used in a robot. This is pretty amazing
bumpers on each end toggled a DPDT first autonomous mobile robot in 1949 navigation for a robot of six decades ago.
switch to change the polarity of the that he called an imitation of life. His
battery power supply to the motors. It robot named Elsie only had a two-tube Modern Robot
worked well for a kid’s robot as it ‘brain with a single photoelectric tube Navigation
‘navigated’ itself around my house like a ‘eye,’ yet was able to navigate to its
crazed sheep randomly grazing grass. ‘hutch’ much like a bacterium. Figure 1 Let’s jump forward 60 years to the
I later added the relays to provide a shows Elsie without her plastic shell. The age of microcontrollers, GPS, and
bit of logic (i.e., if this switch and that do photoelectric tube stands above the precise navigation. I purposely skipped
this, then cause this action to occur) and front, steered wheel and has blinders on mentioning a robot’s ability to deter-
sometimes wired them wrong to occa- each side to focus only on a light source. mine its position until I could discuss the
sionally short out the batteries in certain You can see the worm gear drive steer- methods that we have today. In course
situations. The hard part came when I ing system and the two tubes straddling determination, you have a starting point
used a couple of cadmium sulfide ‘photo the shaft in the middle of the robot. and a goal or ending point. In many
resistive cells’ to trigger relays in the pres- Figure 2 shows a diagram represen- robot contests, a robot is placed
ence of light. I had one mixed up robot tation of the robot’s path to a seven- randomly at a location and it scouts out
for the longest time until I finally figured watt light source. Notice the opaque its goal. In many of the fire-fighting
out a relay logic circuit to have the robot objects that Elsie must search around in contests like the Trinity College contest
in Connecticut, a robot starts at a gate
Figure 2. Elsie’s path to light. in a maze and must navigate its way to
an open flame (candle) and extinguish it.
In other applications, a robot can
start anywhere and search for its goal. I
can randomly place my Roomba floor-
sweeping robot on the floor, turn it on,
and it navigates its way about the room,
sweeping in a definite pattern. I have two
virtual wall units that I can place by an
open door or the edge of a stairwell to
tell it to not go there. These units act as
beacons that tell the robot that these IR
beams are the same as hard walls. These
devices act just like the aids to navigation
that boaters use, such as lighted buoys,
to tell them to avoid dangerous areas.
Unlike an unmanned airplane or
autonomous underwater vehicle that
operates in a 3D environment, most
of our robots operate in a two dimen-
sional, flat plane environment. Robots
can use XY coordinates to determine
their position, the direction it is facing,
80 SERVO 05.2007
Then&Now.qxd 4/5/2007 9:38 AM Page 81

their eventual target area and course miles of desert environment, following a
to follow, and the required distance to course set out by DARPA just before the
travel. Resourceful experimenters have start of the race. The first race basically
placed retro-reflectors that act some- fizzled with the leader only making a
what like my virtual wall units to tell a few miles and most of the rest failed just
robot where a door is located or a past the starting gate. The next race
dangerous area such as a drop-off. was much more successful with several
These can be made of simple reflective vehicles completing the 132-mile course.
tape that you can buy in many stores. The VW Touareg SUV from Stanford
The robot can bit map a room by a University won the two million-dollar
series of random searches and store prize in just under seven hours. The next
this in its memory for use at later times. planned race — The DARPA Urban
Various vision systems such as the Challenge — is an even more exciting
CMU cam and AVR cam can look at an competition with the vehicles driving
area, determine obstacle locations, through a city. DARPA announced oppor-
map out a course, and actually steer tunities for urban challenge teams to
the robot around these objects to receive funding in amounts up to $1M to
arrive at its target location. The new develop their autonomous vehicle. Sixty-
WowWee Roboquad (see Figure 4) crab five proposals were reviewed and evalu-
robot uses a suite of various sensors in ated, and 11 recipients were announced,
its head to navigate about a tabletop. including a smaller VW Passat from Figure 3. Elsie circles light using
The many types of sensors that a Stanford that is a bit more street-friendly. a candle as a beacon.
robot experimenter has available deter- The prizes are $2 million for the fastest
mines just how his robot will navigate its qualifying vehicle, and $1 million and Robotics Society and other groups
way about its environment. Direction-find- $500,000 for second and third place. The began what is called Robo-Magellan
ing devices such as compasses are not the original race vehicles relied on sophisti- contests. These small, under 100
only tools he has available. Mechanical cated vision systems to avoid obstacles pound robots use GPS to navigate a
whiskers connected to simple SPST and keep on the rugged roadway, but specific course outdoors. These compe-
switches are the most popular devices to their main navigation aid was GPS. titions have proved to be very popular.
detect walls and obstructions. Active On June 26, 1993, the Air Force
ultrasonic and IR distance sensors are very launched the 24th Navstar satellite into How Can I Use
popular to detect barriers, walls, and orbit, completing a constellation of GPS With Robots?
obstructions without the robot having to 24 satellites known as the Global
actually go to these objects to ‘feel’ them. Positioning System, or GPS. In May of A constellation of 24-30 or more
Maze and micromouse robots can 2000, a signal degradation system that GPS satellites is in orbit around the
use reflective phototransistor/LED pairs to the military applied to the GPS satellite earth (see Figure 5). They are in what is
detect drawn lines or tops of walls. Gyros signals to prevent possible enemy use known as ‘half geosync,’ or in an
designed for RC helicopter applications, of the highest accuracy part of GPS, approximate 12-hour orbit and three or
ring laser gyros, aircraft instruments, Selective Availability, was removed, more are visible at any place on earth
accelerometers, specifically located active thus allowing greater accuracy for all at any time. Newer ones are orbited as
beacons and bar codes, and even hacked users. This new DARPA challenge will older ones are taken out of service and
computer mice for X-Y positioning can all also rely heavily on this system. most GPS equipment is updated as to
assist the robot in determining its location GPS really hit home for the robot the location of specific satellites. Each
and orientation. An experimenter can experimenter when the Seattle
place multiple IR beacons in a room and Figure 5. GPS satellite.
the robot can triangulate the angles to Figure 4. The new WowWee
the beacons and determine its exact Roboquad robot.
position by simple trig calculations.

GPS — The Ultimate


Navigation Aid for
Autonomous Vehicles
We’ve all watched with interest
the two DARPA Grand Challenges
where competing autonomous vehi-
cles had to traverse over a hundred
SERVO 05.2007 81
Then&Now.qxd 4/5/2007 9:39 AM Page 82

ty due to weak signal


strength. Weather, upper
atmospheric phenomena,
multi-path signal errors,
and shadowing can cause
system problems but the
newer receiver manufac-
turers are striving to solve
these issues.
GPS for the robot
experimenter is available
Figure 7. Winner of 2006
RoboMagellan contest at for less than $100. Hand-
Figure 6. Typical hand- Robothon. Notice the small held units such as the
held GPS receiver. black GPS external antenna. Figure 8. Bluetooth MotoNav. Garmin E-Trex (see Figure
6) have been connected to
satellite downlinks a high power, nar- The GPS receiver detects the slight mobile robots and used for outdoor
row bandwidth, 1575.42 MHz signal differences in the various signal arrival navigation. Figure 7 shows the winner
that is received on larger, professional times to plot the receiver’s location. of the Seattle Robotics Society’s 2006
receivers, vehicle-mounted, and hand- The system needs at least three satel- Robothon Robo-Magellan Contest from
held receivers. lites to obtain a latitude and longitude Washington State University. It used
The receivers receive signals simul- positional fix. A lock on four satellites GPS and cameras to navigate its way
taneously from all the satellites visible allows the receiver’s height to be deter- about a thousand-foot course near the
in a particular area. This is a key point mined and the more satellites that can base of Seattle’s Space Needle.
as the signals are so weak that inside be received, the higher the accuracy of Figure 8 shows Motorola’s new
of buildings, tall buildings, terrain, and the results. If the position of the T815 Bluetooth connected MOTONAV
even trees and clouds can mask “receiver is changing, speed and direc- unit that was designed to be used with
the signals. The signal strength in a tion of movement can be determined. Bluetooth cell phones for car or
building can be as feeble as -160 dBm If the received satellites are closely walking navigation. It talks to your cell-
— think of one milliwatt with a decimal grouped, the accuracy will not be a phone giving you driving instructions to
and 15 zeros in front. Some of the con- good as if the satellites were spread a destination. I have already heard of
testants in our SRS Robo-Magellan out across the visible sky. Likewise, if plans by robot experimenters to use
competitions have had one heck of a the receiving time is spread out, the the system for mobile robot navigation.
time because of a high wall and the accuracy will increase over time. You’ll find millions of hits looking
nearby Space Needle. Differential GPS corrections (DGPS) up “GPS” on a search engine, a great
Each GPS satellite has on-board an and a Wide Area Augmentation System place for further study of this very use-
extremely accurate cesium or rubidium (WAAS) that uses ground stations to ful technology. Accuracy approaching
clock so that all the satellites in orbit augment the orbital signals can the centimeter range will soon be
are in perfect synchronization with dramatically increase the accuracy of a possible for moving vehicles. Robots
each other. The original Block 1 group simple GPS system in a small robot. need no longer to search out a beacon,
of satellites used a rubidium clock with Europe’s planned $4 billion Galileo nav bump into obstacles, and perimeters to
an accuracy of one second in 1,000 satellite system should be in place by know where they are. GPS coupled
years. The newer satellites use a cesium 2010 and promises a marked increase with today’s inexpensive sensors and
beam clock with a thousand-fold in accuracy, especially in buildings cameras can turn a simple mobile plat-
increase in accuracy. where the US GPS systems has difficul- form into a sophisticated robot. SV

Advertiser Index
All Electronics Corp. ..............................27, 43 Lynxmotion, Inc. ...........................................13 ROBOlympics ...............................................67
AP Circuits .....................................................56 Maxbotix .......................................................43 RoboteQ .........................................................9
AWIT ..............................................................43 Maximum Robotics ................................24, 43 Robotis Co. Ltd. ...........................................57
CrustCrawler ...................................................3 Net Media .....................................................83 RobotShop, Inc. .....................................43, 75
Electronics123 ..............................................27 Parallax, Inc. ...................................Back Cover Schmartboard ...............................................27
Futurlec .........................................................43 PCB Fab Express ...........................................50 Sensory, Inc.............................................43, 56
Hitec ................................................................7 PCB Pool ..................................................12, 43 Solarbotics.....................................................18
Hobby Engineering .....................................26 Pololu Robotics & Electronics ..............25, 43 Technological Arts .......................................43
Images Co. ....................................................43 RCATS ............................................................27 The Machine Lab ..........................................40
Jameco Robot Store ................................2, 43 ROBO Business 2007 ...................................78 Titanium Joe .................................................35
Lorax Works ............................................27, 43 Robodyssey Systems, LLC ...........................74 Vantec ...........................................................50

82 SERVO 05.2007
CoverInside.qxd 4/5/2007 9:08 AM Page 2

Perfect projects for kids of all ages!

robotic kits
Robotic Kits Components...
chassis
...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
servos selection of fun and interactive kits! You or your child can assemble the kits and
then enjoy endless hours of discovery.

passives 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
optos

. Hackable Robots . OctoBot Survivor Kit


integrated circuits
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
semiconductors boxes, servos and chassis, for those who are ready to take on the extreme.

muscle wires Robotic Kits


and Components...
The World’s
Complete OfMost
fering!
Enthusiasts,
Start Dream
ing...
Gift Givers
,
connectors Take Note..

Engineers,
.

We’ve Got
It All!

motors

I-800-374-576
4
WWW.ROBO
TSTORE.CO M
CATALOG I62

test equipment
WWW.ROBOTSTORE.COM/SRD
I-800-374-5764 Call for your free catalog today!

software

books
0 5>
$7.00

4
CANADA

74470 58285
$5.50
U.S.

0
Vol. 5 No. 5 SERVO MAGAZINE GRIPPER • SPIDER CRABS • ULTRASONIC MICROSENSORS • THE ULTIMATE REMOTE CONTROL May 2007
Page 84
12:07 AM
4/6/2007
Cover.qxd

You might also like