Circle #40 on the Reader Service Card.

V
o
l
.

3

N
o
.

5
S
E
R
V
O
M
A
G
A
Z
I
N
E
R
O
B
O
T
S

T
O

T
H
E

R
E
S
C
U
E
M
A
Y

2
0
0
5
U.S.
Cover.qxd 4/7/2005 2:24 PM Page 84
Be sure to visit our new website at
www.Jameco.com/nvd
Jameco Electronics
—where electronics is still fun!
Great Products. Awesome Prices.
1.800.831.4242
Remember when...
Remember when...
...electronics stores were stocked to the rafters
with every component imaginable and there was ALWAYS
a knowledgeable person there to help you?
Think those days are gone?
Well they’re not!
You just need Jameco!
Call for a FREE 256-page catalog today.
We have the electronic components and knowledgeable
Technical Support people who can help bring back the fun
in your electronics hobbies, inventions, and DIY projects.
Circle #37 on the Reader Service Card.
Circle #36 on the Reader Service Card.
CoverInside.qxd 4/5/2005 7:55 PM Page 2
Circle #35 on
the Reader Service Card.
Full Page.qxd 4/7/2005 9:53 AM Page 3
Features & Projects
On The Cover
SERVO Magazine (ISSN 1546-0592/CDN Pub Agree#40702530) is published monthly for $24.95 per year by T & L Publications, Inc., 430
Princeland Court, Corona, CA 92879. APPLICATION TO MAIL AT PERIODICALS POSTAGE RATE IS PENDING AT CORONA, CA AND AT
ADDITIONAL ENTRY MAILING OFFICES. POSTMASTER: Send address changes to SERVO Magazine, P.O. Box 16826, North
Hollywood, CA 91615-9213 or Station A, P.O. Box 54, Windsor ON N9A 6J5; cpcreturns@servomagazine.com
SERVO
28 Trust in Their ... Programming
Five Robots That Can Save Your Life
36 Error-Proof Your Workbench
Part 2: Common Errors in Building Robots
42 Reusable Software Components
Part 4: Behavior Control
48 Real Combat Robotics
The SWORD Robot
51 A Hobby CNC Machine
Part 2: Electronics, Interfacing, and Cutting
56 Visions of Boe-Bots
Add an LCD to Your Boe-Bot
48
22
ROBONAUT — One of the
five robots covered in this
issue that is helping to keep
humans out of harm’s way.
TOCMay05.qxd 4/7/2005 2:33 PM Page 4
Columns Departments
5.2005
VOL. 3 NO. 5
6
Mind/Iron
The Philosophy behind Tetsujin 2005
7
Bio-Feedback
Where You Have a Voice
8
New Products
The Latest Development Software
55
Robotics Showcase
Get What You Need Quick
62
SERVO Bookstore
Feed Your Brain
72
Brain Matrix
Reversible Electronic Speed Controllers
78
Events Calendar
Find a Show Near You
80
Robo-Links
Your Link to Parts and Services
81
Advertiser’s Index
A List of Supporting Advertisers
12
Robytes
News from the Robotics World
14
GeerHead
The RoboX Tour Guide
18
Rubberbands
Charging Ni-Cd and NIMH Batteries
22
Twin Tweaks
Prepare For the (Robosapien) Swarm
64
Robotics Resources
All About Gears
74
Ask Mr. Roboto
Your Problems Solved Here
79
Appetizer
It All Starts With a Bright Idea
82
Then and Now
A Look Back at the Tomy Omnibot
Coming 6. 2005
Tune in next month for coverage
of Japan’s new Palette
mannequin robot. Beautiful
and deceptive, Palette moves
in response to consumers as
it displays its fashionable
adornments while collecting
marketing data on you!
TOCMay05.qxd 4/7/2005 2:34 PM Page 5
Published Monthly By
The TechTrax Group — A Division Of
T & L Publications, Inc.
430 Princeland Court
Corona, CA 92879-1300
(951) 371-8497
FAX (951) 371-3052
Product Order Line 1-800-783-4624
www.servomagazine.com
Subscriptions
Toll-Free 1-877-525-2539
Local 1-818-487-4545
P.O. Box 16826
North Hollywood, CA 91615-9213
PUBLISHER
Larry Lemieux
publisher@servomagazine.com
ASSOCIATE PUBLISHER/
VP OF SALES/MARKETING
Robin Lemieux
display@servomagazine.com
CIRCULATION DIRECTOR
Mary Descaro
subscribe@servomagazine.com
WEB CONTENT/STORE
Michael Kaudze
sales@servomagazine.com
PRODUCTION/GRAPHICS
Shannon Lemieux
STAFF
Dawn Saladino
OUR PET ROBOTS
Guido
Mifune
Copyright 2005 by
T & L Publications, Inc.
All Rights Reserved
All advertising is subject to publisher's approval.
We are not responsible for mistakes, misprints,
or typographical errors. SERVO Magazine
assumes no responsibility for the availability or
condition of advertised items or for the honesty
of the advertiser. The publisher makes no claims
for the legality of any item advertised in SERVO.
This is the sole responsibility of the advertiser.
Advertisers and their agencies agree to
indemnify and protect the publisher from any
and all claims, action, or expense arising from
advertising placed in SERVO. Please send all
editorial correspondence, UPS, overnight mail,
and artwork to: 430 Princeland Court,
Corona, CA 92879.
Engineers love a challenge.
Whether it is calculating the best way
to transmit motor torque in a
machine, determine the response
frequency of a control system, or
effectively order drinks for a dinner
party, each of these tasks ultimately
become an exercise in optimization.
Once a person leaves school to work
in the “real world,” it doesn’t take
long to discover there is never
enough time, money, or manpower
for most projects. For most of my
colleagues, solving a particular
problem isn’t as much fun as solving
it well.
In last month’s issue, the
framework of SERVO Magazine’s
second exoskeletal competition —
Tetsujin 2005 — was announced on
Page 76. Steve Judd and I worked
quite a while on adding some new
twists to this year’s event, with a
couple of goals in mind.
First, we wanted to offer some
new and interesting challenges —
namely, the Walking Race and
Cylinder Stacking. And secondly, we
wanted to craft new challenges that
could embody existing exosuit work
already underway in the world —
augmented walking and augmented
dexterity.
Greek philosophers were fond to
point out that amongst the gods,
strength without control was
useless. Thus, both of the new
challenges focus more on controlling
the enhanced strength framework
than on the raw amount of strength.
And for many engineers, this is a
more approachable problem —
software and electronics are easier
than welding and machining. They
also lend themselves easily to 3D
simulation.
The reaction to last year’s Tetsujin
event was incredible. It received great
coverage in magazines, websites, and
blogs around the world. If there is
one overriding theme I sensed
throughout, it was the excitement
that people had for the competitors.
How often do you get to witness
the beginning of a technology leap
from the pages of science fiction
and into reality? (Not to mention,
walk up and enjoy a technical
discussion with the people causing the
leap!)
Are you looking for a fun project
to turn your mind loose on this
summer? If so, Tetsujin 2005 is
where you want to be. Start getting
your team together and put those
“blue sky” ideas down on paper. If
you’re a student, talk to an instructor
in your engineering department to
get some resources — both technical
and monetary. Just like the
DARPA Grand Challenge, Tetsujin is
the kind of event you will only
emerge from with a greater
understanding of how to build things
that work.
As well, you’ll get the chance to
demonstrate that you are a doer
and not just an observer. This worked
well for 2004 competitor Bryan
Hood, a high school junior from
Florida, that built his chromoly
exosuit in his garage. After his first
lift, he was met back in his pit area
by iRobot cofounder Helen Greiner,
who offered him a summer
internship! So download and study
those rules – and we’ll see you in
October!
6 SERVO 05.2005
Mind / Iron
by Dan Danknick Œ
Mind-FeedbMay05.qxd 4/7/2005 3:28 PM Page 6
Dear SERVO:
I randomly came across your
magazine at a surplus electronics store
last summer and have looked forward
to and enjoyed every issue since. It is
great to see our field growing.
Great article in your April 2005
issue, “Neural Networks 101.” Finally, I
have read a reasonable description of
how ANNs work. I admit that it lost me
on the Sigmoid equations.
However, it has compelled me to
ask: Is it possible that some derivative
of an MLP ANN be written in Basic and
wedged into a Stamp or Atom? If so,
could there be some sample code out
there? If so, could you publish it? If
not, then perhaps an article on a
self- teaching program. Thanks for your
good work!
Norm — Satisfied Subscriber
via Internet
Dear SERVO:
I love the magazine and would
like to see articles on the First Lego
League (FLL). I am actively involved
with it and use the Robolab
programming language. I would
hope to see some articles on it.
Kevin Wenger
via Internet
Dear SERVO:
I would like to see less of
commercial robotics and more of
hobby robotics. If I want info on
current commercial robotics, I can
get it from other places. I prefer to
see hobby robotics in this magazine.
I like the variety of articles,
although I feel more variety could be
incorporated by not doing long
string articles — better to have a
greater variety than concentrating on
one thing for multiple magazines.
I enjoyed very much the general
article on starting robotics written in
the April 2005 magazine, but since it
was not written on my level, I feel it
wasn't much use to me. Such articles
on higher levels I feel would be
great.
Nathaniel Barshay
via Internet
SERVO 05.2005 7
Circle #71 on the Reader Service Card.
We now have updated URLs for the
RoboCoaster G2 that was covered in the
GeerHead column in the April 05 issue.
Check out the ride at:
www.kuka.com/en/products/systems
/robocoaster/start.htm
www.robocoaster.com/english
/index2.html
When he’s not helping out
with crime prevention
programs in Arizona,
Ron Palmer’s creative
creation keeps up-to-date
with his SERVO magazines.
Mind-FeedbMay05.qxd 4/7/2005 3:29 PM Page 7
Robot Control Software
E
nergid Technologies now has
available version 1.0 of its Actin
toolkit, C++ software for controlling
and simulating complex robotic mech-
anisms. Based on software developed
for NASA, Actin provides coordinated
control for fixed or mobile robots with
up to 100 independent moving parts. The Actin toolkit pro-
vides libraries for the Windows platform that robotics devel-
opers can use to quickly create complex, intelligent control
systems. The developer specifies the robot kinematics and
desired behavior, and Actin produces algorithms for setting
joint positions and rates to achieve specified hand motion.
Without Actin, a roboticist would need to first solve
complex nonlinear differential equations and implement the
solution for real-time operation. In the past, this has prevent-
ed the application of many valuable mechanical designs.
For mechanisms with many moving parts, tasks can be
accomplished in an unlimited number of ways. The human
arm, for example, can position and orient the hand while
retaining freedom of motion in the elbow. Actin takes
advantage of this kinematic redundancy to produce intelli-
gent robotic motion, including collision avoidance, joint limit
avoidance, minimum motion, and strength optimization.
Through a configurable object-oriented design, Actin
applies to many robot types. It works with fixed-base manip-
ulators, as would be typical for factory automation, and with
mobile manipulators, as would be appropriate for home
entertainment. Actin works with almost any joint type or
hand type, with a virtually unlimited number of degrees of
freedom and branching connections. Actin can also be used
to control mechanisms with self-connecting loops.
In addition, Actin includes the ability to dynamically
simulate robots, visually render the robots, express control
systems using the Extensible Markup Language (XML), cre-
ate XML schemas describing the control-system language,
communicate control systems over a network, incorporate
machine vision, and implement force control.
For further information, please contact:
PIC Programming Made Easy
R
4 Systems is now an author-
ized reseller of PICBASIC
Proton Development Suite. The
Development Suite represents a
quantum leap forward in the development of Crownhill’s
PICBASIC product. This Development Suite — incorporat-
ing not only a brand new IDE (Integrated Development
Environment), but also a Virtual Simulation Environment —
has been described as “the very best of breed” solution
for working with the Microchip Technology PICmicro®
microcontrollers.
The Development Suite is suitable for all levels of users,
from outright beginner to seasoned professionals, writing
commercial applications. The IDE/Compiler will allow you to
develop your code in a state-of-the-art development environ-
ment, compile your program code and view the resulting
assembly language commented with your own program
code. The output of the compiler is 100% Microchip MPASM
compatible and the resulting Hex file, COD, ERR, and LST files
can be used with Microchip™ compatible programming tools.
Included with the Development Suite is a fully working,
highly acclaimed, Proteus Virtual Simulation Environment.
The Proteus Simulator provides near real time simulation of
your code on Virtual Proton Development Boards. Proteus
Virtual System Modeling (VSM) combines mixed mode SPICE
circuit simulation, animated components, and microproces-
sor models to facilitate co-simulation of complete microcon-
troller based designs, with step-by-step code execution for
source level debugging. This makes it possible to develop
and test designs before a physical prototype is constructed.
The Proton IDE is a professional and powerful visual
IDE which has been designed specifically for the Proton
Plus compiler. Proton IDE accelerates product development
in a comfortable user environment without compromising
performance, flexibility, or control. The compiler has
enhanced support for I2C, SPI, Dallas 1-wire bus, RS232,
X10, Compact Flash cards, Alphanumeric and Graphics
LCDs, and USB interface.
The Proton Development Suite is available at an intro-
ductory price of $255.00 (US).
For further information, please contact:
N
N
e
e
w
w
P
P
r
r
o
o
d
d
u
u
c
c
t
t
s
s
New Products
DEVELOPMENT SOFTWARE
124 Mount Auburn St. Suite 200 N.
Cambridge, MA 02138
Tel: 888•547•4100
Website: www.energid.com
Energid
Technologies
Circle #83 on the Reader Service Card.
1100 Gorham St. Suite 11B-332
Newmarket, Ont.
Canada L3Y 8Y8
Tel: 905•898•0665 Fax: 905•898•0683
Email: info@r4systems.com
Website: www.r4systems.com
R4 Systems
Incorporated
Circle #99 on the Reader Service Card.
8 SERVO 05.2005
NewProductsMay05.qxd 4/6/2005 3:09 PM Page 8
Get a hot deal on ColdHeat
With purchase of $20 or more of component parts,
soldering equipment, test equipment or Kronus

Tools.
FREE ColdHeat

Soldering Tool
(a $19.99 value)
Must present coupon at time of purchase.
RSS Instructions: If the customer purchases $20 or more in Compo-
nent Parts, Test Equipment, Soldering Equipment or Kronus Tools,
use the Price Change key to reduce the price of the ColdHeat
(640-2102) to free. Select Reason Code “7. Promo/Coupon” and
scan the barcode on the coupon.
One coupon
per customer.
Valid at participating stores only. May not be used online or by phone. Excludes services and special orders. May not be
combined with certain other discounts. No cash value. No photocopies. Void where prohibited. Offer expires May 31, 2005.
A $19.99
Value FREE ColdHeat

Soldering Tool
With purchase of $20 or more of component parts,
soldering equipment, test equipment or Kronus


Tools.
V I S I T R A D I O S H A C K . C O M O R C A L L 1 - 8 0 0 - T H E - S H A C K
®
Soldering Equipment
11-Piece SolderingTool Set
64-2803
Kronus Tools
55-PieceHomeRepairTool Set
64-2910
Component Parts Test Equipment
22-RangeFold-UpPocket Multimeter
22-820
California residents: WARNING: These products contain, or when used for soldering and similar applications produce, chemicals known to the State
of California to cause cancer and birth defects (or other reproductive harm).
Full Page.qxd 4/5/2005 3:09 PM Page 9
MTSU’s Department of Engineering Technology and Industrial Studies recently added a
national championship in robotics to its mantle of achievements.
Known for its Moonbuggies, concrete industry program, Formula 1 car, and solar bikes,
ETIS had a student team capture first place in the 2004 International Conference on Earth and
Space March 7-10 in Houston. MTSU defeated the other two finalists, the University of Illinois
and Prairie View A&M, for the championship.
“They perfected the robotics system to the extent that NASA may change the require-
ments next time,”said Dr. Ahad Nasab, professor, ETIS. “They have been waiting for a group
to take it to a higher level. NASA will add something to the competition (requirements) next
year and make it more challenging.”
Five students — seniors Aaron Dudley and Amy Black and sophomore Seth Holland of
Murfreesboro, senior James Barker of Elizabethton and alumnus Travis Martin of Murfreesboro
— were recognized in the Voorhies Industrial Studies building for their roles in leading the team
to the national crown.
by Randy Weiler
ETIS Wins First in Robotics
Walking i-foot Robot
Graduate Students in Action ...
NC State University
The Department of Biological
and Agricultural Engineering
Whenever an Explosive
Ordnance Disposal technician
heads downrange, one thing
is certain: the robot goes first.
“The cost of losing a robot
is not nearly as close as losing
a trained EOD person,” said
Sgt. 1st Class Gregory Carroll,
noncommissioned officer in
charge of the 184th Ordnance
Battalion, an EOD robotics
team from Fort Gillem, GA,
deployed to Baghdad.
“Time on target is our
biggest danger, and these robots eliminate us from having to
go downrange if we don’t have to,” he said.
Since their EOD inception, robotic systems have saved
numerous lives by helping to wipe away the threat of impro-
vised explosive devices and vehicle-borne IEDs encountered
daily throughout the Iraqi theater of operations.
Not surprisingly, 95 percent of all EOD robots are used for
reconnaissance missions and delivering explosives to the haz-
ard for detonation, said Carroll.
These “man-portable” robots, initially employed by
infantry units for advance scouting purposes, dually serve as
multi-versatile, lightweight machines supplementing EOD
teams on the roads of Iraq.
Tractor Cutter
by Spc. Jonathan Montgomery
Talon Robots
Send us a high-res picture of your robot with a few
descriptive sentences and we'll make you famous.
Well, mostly. menagerie@servomagazine.com
10 SERVO 05.2005
Photo by J. Intintoli
This two-legged, mountable
robot was developed for three-
dimensional mobility, with the ability
to navigate staircases. The passenger
climbs on and drives with a joystick.
The egg-shaped design of the “i-
foot” that wraps around the passen-
ger is meant to express the dream of
future three-dimensional mobility
and the feelings of safety and reliabil-
ity upon which that dream is built.
(Someone should tell them about Tetsujin 2005!)
Photos by Carolyn Mitkowski
CHAMPS — From left, Aaron
Dudley, senior and team captain;
James Barker, senior; alumnus
Travis Martin; and Amy Black,
senior, from ETIS work with their
remote-operated vehicle, the
“Moon Raider” robot, outside
the VIS building.
MenagerieMay05.qxd 4/6/2005 1:42 PM Page 10
Weightlifting. Ascend stairs in your suit to the lifting
platform and lift a load of from 100 to 1,000 lbs* from a
squatting position to a height of at least 24 inches*, return
the load to the ground in a controlled manner, and
descend the stairs. Stair-climbing may be unpowered. The
winner is the competitor who lifts the most weight.
Dexterity. Stack nine concrete cylinders weighing about
70 pounds each in a 4-3-2 vertical arrangement, but don't
knock them over as the pyramid grows! The winner is the
competitor who arranges the cylinders in the shortest
time.
Walking Race. Walk the 100 foot* long U-shaped
challenge course, stepping over a small obstacle at the
half-way point.The shortest time wins, with a time bonus
being granted based on any auxillary load carried.Walking
must be powered.
challenge 1:
challenge 2:
challenge 3:
Y Y
es exo-fans, Tetsujin is back for a second action-packed year! Once
again, we'll be part of the giant RoboNexus Conference — which
will be twice as large as last year.To "suit" the quickly-evolving work in
strength augmentation, we've expanded the challenges for Tetsujin 2005.
Now you have three ways to showcase your work:
The current rule set is available online at
*Specifics of the competition are in a tentative state and may be subject to change.
and questions can be directed to
Tetsujin2005@gmail.com
www.servomagazine.com/tetsujin
www.servomagazine.com/tetsujin
Start planning NOW so you can be a part of the largest
"exo-games" event of the year — Tetsujin 2005!
Tetsujin2005Ad.qxd 4/7/2005 3:36 PM Page 11
12 SERVO 05.2005
Exploring Antarctica
In 1997, it covered 220 km
through the Atacama Desert in Chile.
In 2000, it discovered and classified
five meteorites in Antarctica. Now,
Carnegie Mellon University’s robotic
rover, Nomad, is being upgraded and
field tested in preparation for a return
to the Antarctic as part of the Life on
Ice: Robotic Antarctic Explorer
(LORAX) project, which is designed to
measure the distribution of microor-
ganisms in the near-surface Antarctic
ice plateau.
Nomad is no miniaturized
machine: the gasoline-powered device
weighs in at 1,944 pounds and meas-
ures eight feet square. It can travel up
to 20 inches per second and deploy a
variety of instruments. The current
incarnation of Nomad includes a wind
turbine, allowing researchers to weigh
the merits of combined solar and wind
energy to help power the device.
Previously controlled via telecommuni-
cations, it has now been fitted with
sensors and computing capabilities
to expand its ability to navigate
autonomously.
At last report, Nomad was
deployed on New Hampshire’s frozen
Lake Mascoma, which adequately sim-
ulates the Antarctic plateau, where it
successfully migrated across 10 km of
ice and snow.
For the actual expedition,
researchers at the University of
Oklahoma are developing an ice cor-
ing and sampling device, and others at
the University of California, Berkeley,
are working on a fluorescence spec-
trometer that Nomad will use to iden-
tify and quantify microorganisms in
the ice. The project is supported by a
$400,000.00 grant from NASA. For
details, visit www.frc.ri.cmu.edu/
projects/lorax/
Robot Imitates Cockroach
There’s nothing new about robots
that look like bugs, but Owen Loh, a
student at Johns Hopkins University
(www.jhu.edu), decided a couple
years ago to see if a robot can be
taught to navigate like a cockroach.
The work is important because most
robotic vehicles that are sent into dan-
gerous locations rely on vision or sonar
to find a safe path.
Since robotic eyes don’t operate
well in low light, and sonar systems
can be confused by polished surfaces,
the solution was a flexible, sensor-
laden antenna. It is used to guide the
robot on its journey along walls and
around corners and obstacles.
An early version showed promise,
so Loh recently fabricated a more
advanced version. The new one is
made of cast urethane encased in a
clear plastic sheath. Embedded in the
urethane are six strain gauges that
change resistance as they are bent.
“We’ve calibrated the antenna so that
certain voltages correspond to certain
bending angles that occur as the
antenna touches the wall or some
other object,” Loh said.
This data is fed to the robot’s
controller, enabling it to sense its
position in relation to the wall and to
maneuver around obstacles. When
the antenna signals to the robot that
it is veering too close to the wall, the
controller steers it away. It is believed
that the cockroach-inspired anten-
Johns Hopkins student Owen Loh
developed this advanced cockroach-
inspired robot antenna, equipped with
six strain-gauge sensors that change
resistance as they are bent.
Photo courtesy of Will Kirk.
Researchers have adapted a commer-
cial robot for their experiments with
cockroach-inspired technology. Here,
the robot uses an early version of the
antenna to “feel” its way along a wall.
Photo courtesy of Will Kirk.
The Nomad robot is slated to conduct
survey traverses of the Atlantic ice
sheet. Photo courtesy of Carnegie
Mellon University Robotics Center.
by Jeff Eckert
Robytes
A
re you an avid Internet surfer
who came across something
cool that we all need to see? Are
you on an interesting R&D group
and want to share what you’re
developing? Then send me an
email! To submit related press
releases and news items, please
visit www.jkeckert.com
— Jeff Eckert
Robytes.qxd 4/5/2005 8:57 AM Page 12
nae could eventually provide a new
generation of robots with enhanced
ability to move safely through dark
and hazardous locations, such as
smoke-filled rooms strewn with
debris. And, presumably, it could
allow them to locate cookies in your
pantry.
Universal Interface for
Bots, AGVs
Maybe you’ve settled into a cushy,
minimum-wage job as a security guard
or tour guide and think you have
achieved a certain level of job security.
In theory, you could be replaced by a
robot. However, in practice, industrial
robots aren’t cheap, and the hardware
is just the beginning. Programming a
bot is time-consuming and expensive,
and your employer may not have
the resources or resolve to undertake
such a project. But the folks at
MobileRobots.com have introduced a
product that is aimed at changing
things.
In the past, robot users generally
have needed to develop or buy custom
software for each application, but
MobileRobots.com (formerly known as
ActivMedia Robotics) has introduced
MobileEyes, a standard interface for
robots and automated guided vehicles
(AGVs). According to the company, it
is a single, modifiable graphical user
interface (GUI) that is applicable to
nearly any point-to-point automation
application, including materials han-
dling, remote sensing, security surveil-
lance, visitor guidance, and asset
tracking.
The robot’s progress is displayed
through a floor plan that it creates,
and cameras, sensors, and other
accessories can communicate through
the MobileEyes interface. Users can
also converse with people along the
route, play audio files, and perform
other various and sundry chores.
The robots are controlled via PCs from
anywhere in the enterprise, and com-
munication is protected by encrypted
passwords.
The interface is compatible with
any robot that employs the
Automated Robot Control System
(ARCS), which is designed for use by
third-party robot and AGV developers
as well as MobileRobots’ own
platforms. Details are available at
www.MobileRobots.com/Mobile
Eyes.html
And Your Little Dog, Too
If you have some solid expertise in
robot locomotion and would like to
pick up a cool $600,000.00 to
$800,000.00 (and perhaps double
that), you may be interested in a grant
opportunity being offered by the
Defense Advanced Research Projects
Agency (DARPA). The project, dubbed
“Learning Locomotion,” is aimed at
developing a new generation of learn-
ing algorithms “that enable traversal of
large, irregular obstacles by unmanned
vehicles.”
Apparently, current battlefield
robots are insufficiently capable of
moving over such obstacles, and a
great deal more agility is needed.
If you receive one of the grants,
you will have 15 months in Phase I to
get Little Dog to adeptly maneuver
over a board with terrain features built
into it. The mechanical canine (which
has four legs, three actuators per leg,
and a total weight of less than seven
pounds) will have to travel 0.6 times its
leg length per second and surmount
an obstacle with a height of 0.9 times
the leg length.
If successful, you may be able to
proceed to Phase II, which offers simi-
lar funding. Proposals must be
received by March 1 of next year, so
get moving.
For details, visit www.fedgra
nts.gov/Applicants/DOD/DARPA/
CMO/BAA05-25/listing.html click on
“Learning Locomotion,” and download
the Proposer Information Pamphlet
(PIP). (Thanks to Alex McNair for the
tip.) SV
Robyt es
The Little Dog Locomotion Platform.
Photo courtesy of DARPA.
The Little Dog weighs less than seven
pounds. Photo courtesy of DARPA.
The MobileEyes interface provides a
GUI for nearly any point-to-point
automation application, including the
company’s PatrolBot pictured above.
Photo courtesy of MobileRobots.com.
SERVO 05.2005 13
Robytes.qxd 4/5/2005 8:58 AM Page 13
N
ot your average bag of bolts,
RoboX is yet another great exam-
ple of robotics designed for intimate
interaction with you and me.
As a totally autonomous, magnifi-
cently mobile, and social robot, RoboX
is well suited to its primary task, having
first appeared as a tour guide for the
Expo 02 robot exhibition held in
Switzerland.
The Autonomous Systems Lab of
the Swiss Federal Institute of
Technology, in conjunction with a
spin-off company, BlueBotics SA, devel-
oped RoboX. BlueBotics is in charge of
full production.
As with the RoboCoaster featured
on these pages in the previous issue,
RoboX’s safety and reliability had to be
assured to receive approval for use with
the public.
At the Expo, the robot responded
to crowds in the hundreds and in close
proximity. For many attendees, this
was their first encounter with any
robot, let alone one so advanced and
human-like.
RoboX creators were uncertain
how people would react to their jovial
metallic ambassador, but the robot’s
friendly appearance, mimicked facial
responses, and intuitive behavior set
Expo visitors quickly at ease. In addition
to considering the safety of patrons,
the robot’s own safety and durability
against unwelcome responses had to
be weighed.
Standards
Most mobile robots that work in
close quarters with people only need
to meet the standards set for a tempo-
rary, limited-demonstration robot. The
RoboX project had to be proven to the
industry and had to meet top
standards so that it could work the
12-hour days the Expo would require
of it. On top of that, it had to be
functional every single day for a full
five months!
Dimensions
RoboX stands 1.65 meters in
height, which equates to about five-
and-a-half-feet tall, and is 0.90 meters
in diameter, or about three feet
around. It weighs about 250 pounds.
A Song and Dance
Man?
Though RoboX is no song and
dance bot, it can easily be pro-
grammed for complex movements,
interaction, and tour sequences.
14 SERVO 05.2005
Contact the author at geercom@alltel.net by David Geer
RoboX — Tour-Guide Robot
The X displayed by the LED matrix
in RoboX’s right eye, in combination
with the positioning of his eyebrow,
help communicate what his creators
at BlueBotics refer to as an
“angry yet nice” emotion.
By displaying a question mark in his
LED matrix eye, RoboX creates an
expression of surprise.
The robot’s friendly appearance, mimicked facial responses, and intuitive behavior set
Expo visitors quickly at ease, but RoboX creators were uncertain how attendees might
react to their jovial metallic ambassador. In addition to considering the safety of
patrons, the robot’s durability against unwelcome responses also had to be weighed.
“The Name’s X, RoboX, and I’ll be Your
Guide for Today ... ”
Geerhead.qxd 4/5/2005 8:50 AM Page 14
RoboX speaks English, German,
French, and Italian, and it even plays
music for its audiences.
RoboX asks questions of his visi-
tors, which can be answered with the
press of one of his colored buttons.
RoboX has eyes and eyebrows with
which to demonstrate his broad range
of emotions. An LED matrix in the
robot’s right eye aids communications
by presenting animations and icons,
such as a question mark to show sur-
prise, an “X” for an irritated blink, or a
small dot to express loneliness.
RoboX can see you, follow you,
and avoid you with the help of his eye
sensors. He can sense your presence
and track you with his laser scanner.
He knows where he is each step
(wheel turn, actually) of the way
through the tour, and where he needs
to go next.
Even while mingling in large
crowds and in tight areas, RoboX
won’t misstep or bump into you or
objects in his path. His foam bumpers,
tactile plates, and a redundant control
system insure a smooth tour for RoboX
and his guests.
How Does He Do
That?
What makes him function so well
in heavily crowded rooms? RoboX was
programmed so that he is well able to
move around in his intended environ-
ment. Using his laser sensor, he sees
his surroundings and takes measure-
ments of all that’s around him. With
this information and a combination of
several state-of-the-art algorithms,
RoboX can find a collision-free
trajectory even in very crowded
environments.
RoboX can be reprogrammed for
different tasks or environments. How
so? For new areas, he simply creates a
SERVO 05.2005 15
GEERHEAD
Here you have a good head-on shot
of the robot’s facial expression
technologies, speakers, push-button
response pad, shaft, base, and
tactile plates used in sensing.
Four onlookers examine RoboX from
the front as we get a look at his “aft,”
so to speak. Notice the robot’s large
base, motor area, main shaft, and
connections to its sensors.
Visitors to the Expo 02 responded
to RoboX’s questions by selecting one
of four colored buttons on the robot’s
angled, diamond-shaped pad. This
afforded BlueBotics a survey of the
quality of the exposition and of several
of RoboX’s modalities.
Here are the questions that RoboX
posed:
1. How do you rate the robot’s physical
appearance?
2. How do you rate the robot’s
character?
3. How good is the robot’s synthesized
speech?
4. How did you understand how to
interact with the robot?
5. How do you rate the speech recogni-
tion (only on two robots)?
6. Which sensor is used by the robot in
order to navigate?
7. How many exhibits did you visit?
8. Which exhibits did you visit?
9. How do you rate the quality of the
overall presentation?
10. Would you prefer a normal informa-
tion desk or an interactive robot?
Independent of the question’s
subject, the results were equally distrib-
uted. Responses demonstrated overall
rankings of the bots and the event as
either very good (20 percent of respon-
dents), good (51 percent), acceptable
(26 percent), and bad (only three
percent) with no significant variation.
Visitors perceived the robots and
the entire exposition as a whole as one
experience during their stay. Two hun-
dred and seven attendees were
queried. Remember, many of these folks
had never encountered a robot before,
let alone socialized with one or trusted
it to be their guide.
In contrast to normal visitors, the
long-term staff members considered the
robots an ensemble of different compo-
nents, probably an effect of longer
exposure to them. The visitors, however,
seemed to have personified RoboX.
ROBOTS RECEIVE WARM RECEPTION
Geerhead.qxd 4/5/2005 8:53 AM Page 15
suitable map of the environment. Then
he can make use of BlueBotics scenario
program that allows the programming
of dedicated sequences the robot
will move through within the given
environment.
If You Get to See
RoboX Someday ...
Look for his intuitive nature. Listen
to him, look at his eyes, answer his
questions using the colored buttons on
his diamond shaped pad, and follow
him when he asks you to.
BlueBotics had a contract to
export a RoboX to China, and for the
project, they were to extend and
upgrade the speech capabilities of the
robot to Chinese. However, they were
unable to achieve these extended
speech capabilities. No other upgrades
have been made or are slated for
RoboX at this time.
True Bot Tales
Eleven RoboX were deployed in all
at the Expo 02. The Swiss National
Exhibition included a section for robot-
ics and took place in Neuchatel,
Switzerland — a lovely country setting
with vineyards surrounding a narrow
lake with the same name.
The theme of the exhibition was,
“the natural and the artificial,” and the
intent was to demonstrate the increas-
ing proximity between man and
machine in the world in which we live.
The RoboX tour-guide robots led
visitors through the exhibit from the
industrial robots to the cyborgs.
This event was the largest installa-
tion of autonomous mobile interacting
robots that has ever been offered to
the public. The project required thou-
sands of hours of operation of the
robots, which afforded the engineers
the opportunity to examine and
improve RoboX’s hardware and
software in ways not possible in
smaller projects.
For example, during the Expo,
some errors appeared after only a few
days, while others didn’t appear for the
first time until after a couple of
months. The laser scanners failed dur-
ing Week Five of the Expo, due to the
temperature in the exhibit. Once the
robot received its last available scan
before failure, it ran into the next
unscanned object rather than shutting
down. This was an important safety
and security issue.
Curious Roboticists
Want to Know
RoboX is a reference work in
advanced mobile robotics. Roboticists
who experience RoboX are fascinated
with him and respect what this product
design has achieved. He has even
become a reference work for industrial
applications.
RoboX Public Debuts
Where can we see RoboX in oper-
ation in the US or around the world?
Since the first big exhibition in 2002
(the Expo), RoboX has been rented out
for much shorter events like trade fairs
and other interactive events. A poten-
tial customer has appeared, which may
order a fixed installation of RoboX for a
museum in Dundee (UK). SV
GEERHEAD
Several RoboX wait in line until called on
for duty. The side angle views afford a
good look at the cabling and the four
button interface on the robot tour
guides’ diamond-shaped pads.
RoboX Home Page
www.bluebotics.com/entertainment/
RoboX
Link to much more RoboX info
http://robotics.epfl.ch
RESOURCES



















































16 SERVO 05.2005
Circle #41 on the Reader Service Card.
Geerhead.qxd 4/5/2005 8:55 AM Page 16
3 Input 100MHz Analog DSO
Classic Analog Scope using a standard
x1/x10 BNC probe. Additional inputs on the
POD for dual channel operation.
8 Channel 40MS/s Logic Analyzer
Capture digital signals down to 25nS
with arbitrary trigger patterns.
8 + 1 Mixed Signal Scope
True MSO to capture an analog waveform
time-synchronized with an 8 channel logic
pattern triggered from any source.
Real-Time Spectrum Analyzer
See the spectrum and waveform of analog
signals simultaneously and in real-time
Waveform Generator
Load up to 32K arbitrary waveform and replay
via the onboard DAC (10MS/s) or a digital
pattern from the POD (40MS/s)
Standard 1M/20pF BNC Input
200uV-20V/div with x10 probe
S/W select AC/DC coupling
S/W select 50ohm termination
Arbitrary Waveform Generator
BitScope and your PC provide an array of Virtual Instruments
BitScope DSO 1.2 software for Windows and Linux
BitScope "Smart POD" Connector
8 logic channels, 2 analog channels
Dual channel capture from POD A/B
Async serial I/O for external control
Logic Pattern generator 32K 40MS/s
BUS Powered USB 2.0 Device
Single USB cable to your PC
Compressed data transmission
Simple ASCII control protocol
BitScope Scripting Language
BitScope Pocket Analyzer uses highly integrated Surface Mount
technology to provide functionality you would expect from scopes
many times the size and price. Its programmable Virtual Machine
architecture means new functionality can be added via software.
For custom Data Acquisition, export directly to your spreadsheet.
External/Passthru Power Supply
Auto senses an external supply -
removes power load from USB
for use with unpowered hubs.
Supplies up to 500mA via POD
• R&D
• Education
• Robotics
• Lab Scope
• Fast DAQ
• Service
• Debug
See inside your circuit in the analog and digital domains at the same time to
make tracking down those elusive real-time bugs much easier.
Pocket Analyzer combines a high speed sample-synchronized storage scope
and logic analyzer with a programmable waveform and logic pattern generator.
Also included is an integrated real-time spectrum analyzer and powered "Smart
POD" expansion interface so you've got all bases covered!
About the same size and weight as a Pocket PC, this USB powered BitScope
needs no bulky accessories. It's the perfect low cost "go anywhere" test and
debug solution.
USB Oscilloscope & Logic Analyzer
The new generation Scope
for the age of microelectronics.

www.bitscope.com
Turn your PC or NoteBook into a powerful Scope and Logic Analyzer!
$
2
9
5
Full Page.qxd 4/5/2005 8:02 PM Page 17
18 SERVO 05.2005
I
f you have been playing around with hobby robotics for a
while, you’ve probably noticed that you tend to go
through batteries fairly often. If that’s true, now might be
the time to think about using rechargeable batteries in your
projects. In the past, rechargeable batteries were poor sub-
stitutes for alkaline batteries. A reason for this was that
rechargeable batteries had only a fraction of the capacity of
alkaline batteries. These days, rechargeable batteries that
are packaged in standard sizes, such as AA or C sizes, are
still not up to the capacity of alkaline batteries, but they are
pretty close.
Rechargeable batteries used to have a “memory effect,”
where they would lose capacity if they were not completely
drained before recharging. Modern rechargeable batteries
don’t have this problem, so you have a lot more flexibility to
charge them when you want/need to.
There are several types of rechargeable battery, such as
lithium ion, lithium polymer, nickel cadmium (Ni-Cd), nickel
metal hydride (NIMH), and lead acid. Lead acid technology
has been around for decades and is a reliable and easy-to-use
battery. Lithium ion is used in many cell phones and laptops
because of its high-energy density. Lithium polymer is an
exciting battery technology due to its high-energy density, its
light weight, and its ability to supply high currents. This
column will focus on Ni-Cd and NIMH batteries because they
are readily available at local stores, and they charge in a
similar manner.
Please note that the other rechargeable battery types do
not charge by the same methods, and you should not
attempt to charge them using the method described here.
While alkaline batteries supply roughly 1.5 volts when
they are new, Ni-Cd and NIMH batteries will supply around
1.2 volts when they are freshly charged. Sometimes this pre-
vents them from being a direct substitute for alkaline batter-
ies, but in most cases, the voltage difference won’t matter.
Another interesting thing about Ni-Cd and NIMH batteries is
that, after an initial drop in their voltage when they are first
used, they remain relatively stable until they finally have a
steep drop in voltage at the end of their life. By comparison,
alkaline batteries steadily drop in voltage as they are being
used. Figure 1 and Figure 2 show discharge graphs for these
batteries.
Charging NIMH and Ni-Cd batteries is fairly easy.
There are a few strategies that manufacturers take to
charge them. The first way that is used is to simply
connect the battery to a wall adapter and instruct the
user to remove the battery after a certain length of time.
This is probably the most common method used for
low-end products, because it also happens to be the
least expensive.
There are a few problems with this method.
The first is that it can reduce the battery life if the
user leaves the battery connected too long. The second
reason is that this charge method cannot be very fast.
The manufacturer has to keep the charge current low so
that if the user leaves the battery on the charger for a
long time, it might go bad but it won’t leak fluids or
overheat. To partially prevent these problems, some
chargers incorporate a timer that will stop the charge
cycle after a certain amount of time has elapsed. This is
also a minimal cost solution but provides a safer method
of charging batteries.
by Jack Buf fington by Jack Buf fington
You’ll Get a Charge Out of This!
How to Charge Ni-Cd and
NIMH Batteries
Figure 1. Discharge graph of an alkaline battery.
Rubberbands.qxd 4/5/2005 8:41 AM Page 18
The final method of charging these batteries is
called peak charging. This method of charging takes
advantage of the fact that NIMH and Ni-Cd batteries will
rise in voltage as they are being charged. When they
have reached maximum charge, they will level off
and then decrease in voltage. A peak charger detects
this decrease in voltage and turns off the charger at
that point.
This column describes how you can build your own
peak charger. The first thing that you need to realize is
that the battery or battery pack will reach voltages high-
er than the voltage arrived at by multiplying the number
of cells by 1.2 volts. Unless you are using a DC-to-DC con-
verter to regulate the current going into your battery, it
would be wise to pick a wall adapter that can output
between 150 to 200 percent of the full battery voltage,
otherwise your charge current won’t be sufficient for
faster charge rates.
The recommended method of charging these batter-
ies is to hold the current constant and let the charge volt-
age vary. Fortunately, this is easy to do using a LM317
adjustable-voltage regulator. Simply wire it up as shown in
Figure 3.
Varying the value of the resistor will vary the amount of
current that you allow to pass. This resistor will need to be a
fairly hefty resistor, unless you are charging a pretty small
battery or you want a low-charging current. This resistor will
likely be something in the range of one to 20 ohms, depend-
ing on your application.
To give this charger some smarts, you will need to add a
microcontroller; any microcontroller that has an analog-to-
digital converter will work. The basic structure of the pro-
gram will be that it will start charging the battery and, at reg-
ular intervals, will read the battery voltage using its analog-
to-digital converter. It will track this voltage, and if it is high-
er than any previous reading, it will store this value. If the cur-
rent reading is less than a certain value (below the highest
previous reading), then the charger will stop charging the
battery.
This is a pretty easy process, but there is one
small issue that you need to be aware of. Any wall
adapter that you use, unless it is regulated, will
have some voltage ripple in its output, which will
introduce ripple into your battery voltage readings.
When you sample the battery voltage, you will actually
need to take several samples that you can average together
to get the actual voltage of the battery. Alternately, you
could put an extremely low pass filter on the analog-to-
digital input pin so that the ripple effect would be averaged
out in the hardware. If you don’t do this sort of filtering,
what will happen is that your charger will prematurely stop
charging when it happens to sample a voltage peak and
then later samples at a low point in the voltage ripple. If you
make sure to average over the length of 1/60th of a second,
or a multiple of that, then you will avoid this premature
charge-cycle termination.
If you look at Figure 5, you will see a graph of what hap-
pens if you just feed constant current to a Ni-Cd battery pack
but don’t cut off the charge cycle. You can see that at the
beginning of the charge cycle, the battery’s voltage will
slowly rise. As it nears completion of the charge cycle, it will
rise quicker until it peaks at its highest voltage. After the
Rubberbands and Bailing Wire
Prototyping on a breadboard can create some awfully messy
wiring that can be quite fragile. Wires can come loose from where
they are supposed to be fairly easily. Breadboards also are not a
good permanent solution for keeping your circuit over the long-
term. One way to prototype your designs in a much more durable
manner that only takes slightly longer is called point-to-point
wiring. Simply take the same
parts that you would use on a
breadboard and solder them to
a circuit board that has uncon-
nected solder pads on the back.
Then use wire-wrapping wire to
connect the proper leads
together.
TECH TIDBIT
Figure 3. Current limiting using an LM317.
Figure 2. Discharge graph of an NIMH battery.
SERVO 05.2005 19
Rubberbands.qxd 4/5/2005 8:44 AM Page 19
peak, the battery’s voltage will start to decline. You would-
n’t want to keep charging the battery as long as shown
in Figure 5 under normal circumstances. Figure 5 does not
use any averaging, so you can see the effect of the voltage
ripple.
In Figure 6, there is a graph of a proper battery charge
cycle. In this example, the blue line represents the battery
voltage and the red line represents the peak voltage that was
read. This example has multiple samples averaged over
approximately 1/30th of a second, which produces a much
smoother graph. In this graph, the red line indicates the peak
measured voltage and the blue line represents the voltage
measured at the time when the data point was recorded. The
red line is sometimes above the level of the blue line. This is
because the peak-value variable was updated more often
than the battery voltage.
Playing It Safe
Detecting the peak of the battery’s voltage is the proper
way of detecting the completion of battery charging. Even
still, there are some situations where you may want to stop
charging for some other reason. These are easy enough to
implement, so it is worth taking the extra time to add them
if you are going to go to the trouble to make your own peak
charger. The first situation is if your battery, for some reason,
never peaks. You can do a few charge cycles using complete-
ly dead batteries to see how long they take to charge. If
you design your charger so that it will turn off the charge
after the batteries have been charging for a little longer
than is required for a full charge, then it would make your
charger safer.
Another way that you can make your charger safer is to
make it shut off if the batteries become too hot. You can
measure the battery temperature using a thermistor and a
resistor connected together to form a voltage divider as
shown in Figure 7. With this setup, if the thermistor goes
down in resistance, the output voltage will go up, and if the
thermistor goes up in resistance, the output voltage will
go down.
Figure 8 shows a complete charger circuit. In this case,
an NPN transistor is used to stop the charge by sinking the
adjust pin of the LM317 low. There is a diode in series with
the battery to prevent the battery from discharging itself
through the circuit after the charge is complete. This diode
will change the voltage read by the microprocessor, but that
doesn’t matter, since what we really are looking for is the
voltage peak.
You’ll also notice that there are two voltage dividers.
One is the temperature sensor that was discussed before,
and the other allows the microcontroller to sense the battery
voltage. You would change the values of the resistors in the
voltage sensor divider to limit the maximum voltage received
by the microcontroller to +five volts.
You might be wondering at what current you should
charge your batteries. There is no answer that is right for all
batteries. Some batteries are made so that they can charge
quickly, while others can’t handle a high-current charge. The
best way to figure out how much current to use when charg-
ing is to look at your battery’s data sheet to see what the
manufacturer says is acceptable.
Here are a few rules of thumb to go by if you don’t have
a data sheet to look at. The first thing that you can do is to
look at how many mil-
liamp/hours the bat-
tery is rated at.
Manufacturers specify
charge rates in terms
of “C.” If you have a
1,200-milliamp/hour
battery and you
charge it at one C,
then you would be
charging it with 1,200
milliamps of current.
A charge rate of one
C is considered to be
a fast charge, and not
Rubberbands and Bailing Wire
20 SERVO 05.2005
Figure 4. Hefty five- and 10-watt resistors are used.
Figure 5. Graph of what happens if
constant current is applied to a battery.
Figure 6. A good charge cycle.
Rubberbands.qxd 4/5/2005 8:46 AM Page 20
all batteries can handle that. To play it
safe, you might charge your batteries
at 0.5 C.
If you are designing something
where you can’t control the type of
battery being charged, then you
might consider an even lower current.
Another thing to consider is that fast-
charging your batteries decreases
their lives a little bit more than if you were to charge them at
a slower rate. If you want the maximum lifetime from your
batteries, you will want to charge them at a rate that is less
than their highest charge rate.
When your battery is done charging, you may want to
ensure that it will be at its peak voltage the next time that
you use it. Ni-Cd batteries lose about
10 percent of their capacity per month
after they are charged.
To prevent this, you can do what is
called a trickle charge. Different data
sheets say different things about trick-
le charges, but typically, a trickle
charge will be between 1/50 C and
1/100 C. At this current level, the
batteries can be continually charged
without damage. This sort of charge
rate can be achieved by pulse width
modulating the transistor in the charg-
er circuit to give you an average
charging current that is at the level that
you require.
Having the ability to charge your
robot’s batteries without removing
them can be quite beneficial some-
times. Developing a charger’s software
and electronics is a fairly simple task
but can take a long time due to the
need to continually wait to see if the
charge cycle went well.
On the plus side, you will be able to design projects that
have a battery embedded inside of them, and if you have a
project where many batteries must be charged simultaneous-
ly, you won’t have to deplete your wallet buying a bunch of
chargers. SV
Rubberbands and Bailing Wire
Figure 7. A thermistor/resistor
voltage divider.
Figure 8. A complete charger circuit.
WANTED: DEALERS AND IMPORTERS
For EUROPE's No.1 (Educational) RO
ASURO robot kit
Developed by DLR (www.dlr.de)
Programmable in C, including
LÌNUX and Windows® software
WWW.AREXX.COM
PIease contact us by e-maiI: info@arexx.nI
ROBBY RP-5 robot kit
Europe's most advanced robot!
More information @ www.c-robotics.de
Low cost Hobby
PC-Controller
A complete software and
hardware set to control
the OWÌ/MOVÌT robot
arm trainer.
SERVO 05.2005 21
Rubberbands.qxd 4/5/2005 8:47 AM Page 21
S
ERVO Magazine has seen some
great Robosapien hacks, so when
we decided to tweak a
Robosapien, we knew it would have to
be something fresh and unexpected.
We were wary about attempting a sin-
gle hack that would be compared to
the likes of the Surround Sound
Robosapien, but suddenly a light bulb
went on. We both have our own
Robosapiens in addition to the one pro-
vided as a victim, and you can do much
more with three Robosapiens than
with one.
How could we use three
Robosapiens in one hack? Outfit them
all with custom weapons for a
Robosapien melee? No! The three
Robosapiens provided us with
an opportunity to make a tentative
foray into the emerging field of swarm
robotics.
The Robosapien
What is there to be said about the
Robosapien that has not already been
said? It walks, runs, dances, talks back,
and can be programmed to clean up
your room (though when we tried that,
the Robosapien fell
asleep). The Robosapien is
easy to control and easy
to program, but that is not
to say that it is an exces-
sively simple machine.
Reflexive motion and
other principles of BEAM
robotics that went into its
design make it very effi-
cient, and perhaps, to the
eye of a connoisseur, even
artistic. With socketed
electronics and easily
accessible innards, the RS
was truly made to be
tweaked.
Problem Analysis
Swarm robotics has several defin-
ing characteristics, such as cost effi-
ciency, scalability, robustness, and self-
organization. We will try to connect
these concepts to this project as often
as possible. While what we create
might not abide by all of the parame-
ters that define swarm robots, it will be
a model of swarm robots and signifi-
cant in the same way (as in economics)
that the market structure of pure com-
petition is significant in that it does, in
fact, closely approximate the real thing.
An example of swarm robotics
that we both have had experience with
are the PARC Polybots. The PARC
Polybots are modular robots built for
applications like urban search and res-
cue that do abide by all of the parame-
ters of swarm robotics.
Multiple Robosapiens can function
cooperatively to execute a variety of
different tasks, from amplifying a sin-
gle Robosapien’s abilities (the concept
of “force multiplier” in action) to enter-
taining small children as a performance
troupe. Maybe, with a little gumption
and a lot of luck, they can even clean a
whole room (watch out, Roomba!). We
are not going to give the RS swarm an
22 SERVO 05.2005
THIS MONTH:
The
Robosapien
Swarm
Cometh
With some household items and a hat, we will
coordinate Robosapiens into a swarm.
TwinTweaks.qxd 4/5/2005 9:03 AM Page 22
The Robosapien Swarm Cometh
interactive intelligence like the
Polybots, but we will still coordinate
their actions to approximate swarm
activity.
Roundin’ Up the Posse
The Robosapien, when left to its
own devices, is a very disorganized
creature in need of some discipline. An
easy way to coordinate the actions of
the RS swarm would be to make them
all obey one infrared remote. Infrared
devices are limited in range by line of
sight, so we definitely needed to figure
out an alternative if we wanted to con-
trol three Robosapiens at once.
An early idea was to tether the
three Robosapiens to one remote with
wires, replacing the infrared transmit-
ter and receiver. One of the inspira-
tions for this idea was a project we
worked on while we were apprentices
at the Palo Alto Research Center last
summer.
We were working on modular
robots, and there was a remote-con-
trolled tank that was being used to
help in mapping. Due to the way the
competition that we were entering was
set up, radio control would not work.
One of our jobs was to make the tank
operate through a wire to where the
receiver was on the tank and the anten-
na was attached on the remote, there-
fore having the tank on a tether. Would
the same method work
on infrared devices? We
thought so, but splicing
three wires into one
tether seemed a little
fiddly. All options were
still on the table.
Another idea hit us
while we were watching
an old episode of
“MacGyver.” To avoid
detection by a laser secu-
rity system, MacGyver
used plastic tubes as
large fiber optics to
essentially bend the lasers out of the
way and expand the gap to allow him
to fit through. Fiber optics! But do fiber
optics work with infrared light? We
have not covered the optics chapter in
our AP physics class yet, so we would
need to experiment.
Fiddly Fiber Optics
Fiber optics are generally made out
of glass or plastic, and their average
diameter is 60 micrometers. MacGyver
used a plastic tube, but fiber optics in
LEGO kits and our Team 1079 hats for
the FIRST competition are solid rods,
and we like to work with what we are
used to. Fishing line appeared to be a
logical and cost-effective choice. We
would be able to bundle the lines like
stranded wire, so it would be easy to
combine them into one bundle to con-
nect to a single remote. Before fabricat-
ing the whole tether, we wanted to see
if infrared fiber optics would actually
work.
We have never heard of infrared
fiber optics before, and we wanted to
know if we were the pioneers of new
optical technology or simply blowing
smoke. Initial tests appeared encourag-
ing, but after beginning work on the
tether and performing another set of
tests, we found that fishing line was
ineffective. Stymied by fishing line fiber
optics, we were ready to try the idea of
a wire tether.
Before we visited a soldering iron
upon the RS, though, we had a mag-
netism test in physics to study for. One
night, when opening the textbook, we
serendipitously happened upon a page
The trio is ready for action.
SERVO 05.2005 23
Circle #54 on the Reader Service Card.
TwinTweaks.qxd 4/5/2005 9:08 AM Page 23
on fiber optics where we found the
average diameter tidbit above. That
gave us the idea that maybe fishing line
was simply too thick, so we ran some
more tests with some good ‘n’ honest
fiber optics to test the validity of such a
form of infrared communication. The
hats from our FIRST team are crowned
with a bundle of real fiber optics, so we
plucked a few for testing. These tests
proved definitive: infrared fiber optics is
indeed a valid idea.
The individual strands from the
hat’s fiber optics were only about 10
inches long, though, so we thought
that thinner fishing line might be the
way to go. If we had to line up several
of the hat strands there would be more
room for error. The strands would have
to line up perfectly end-to-end to allow
the infrared light to continue the suc-
cessive internal reflections that are the
basic mechanisms of fiber optics, and
making a tether of a decent length
would involve quite a few suspect con-
nections with the short bits we had.
After testing some thinner fishing line
and not getting any results, we accept-
ed our fate of fiddly fiber optics
plucked from sparkly topped hats.
Construction and
Testing
Our initial idea was to make indi-
vidual long strands by using heat shrink
around the joints of singular fibers. We
found out that the fiber optics were
more vulnerable to heat than the heat
shrink. The fiber optics came in bundles
already for the hats, and even though
they were very big bundles, we decid-
ed to keep things simple. The bundles
came with plastic bush-
ings on their ends that
were perfect places to
tape them together.
We hoped that having
big enough bundles
would get enough
good connections at
the joints. A long tether
was what we were
going for, because it
would provide the RS
Swarm more mobility,
but after testing some
long tethers with a flashlight, we saw
that too much intensity was lost to be
effective.
To be sure, we tested the long teth-
er with the infrared remote, ultimately
finding that a shorter tether would be
the way to go. We grouped the end of
the tether leading to the Robosapiens
into three bundles with tie wraps and
cunningly fastened the tether to the
backs of their heads with duct tape.
Cunningly in the fact that the duct tape
provided a strong attachment while
also covering the infrared receiver in the
back of the Robosapiens’ heads to
anticipate the argument of detractors
that we were still simply pointing the
remote at the trio.
Once the tether was attached to
both the trio of Robosapiens and the
infrared remote, we engaged in the
final tests. After trying to encourage
some synchronized motions, we found
the Robosapien Swarm to be function-
al, but only intermittently. We figured
that the large bundle attached to
the remote must have been too big
for the transmitter to effectively
communicate through all of the
fibers.
Bryce’s Robosapien was partic-
ularly taciturn, and after a good
talking to proved fruitless, we pro-
ceeded to trim the bundle. We
deduced that the connection
between the two bundles in the
tether must not have worked for all
of the individual fibers. To make
the good fibers all within the line
of sight of the infrared transmitter
at once, we trimmed down the
bad fibers to make a smaller bun-
dle of good fibers. This method
24 SERVO 05.2005
Twin Tweaks ...
Tethered together, their actions
are exactly the same.
The sacrificial hats from which
we borrowed the fiber optics.
Once decapitated, the bundle was
ready to be linked to the swarm.
Fiber Optics from our FIRST team hats would
serve as a nice source for our project.
TwinTweaks.qxd 4/5/2005 9:09 AM Page 24
proved effective, and soon the RS
Swarm had no problem letting out a
deafening roar on cue.
Judgement
Earlier we said that our RS Swarm
would adequately model a real swarm,
so how close did we really get? A good
way to find out would be to see how
well we met all of the defining param-
eters of a robotic swarm. The parame-
ters we stated before are: cost efficien-
cy, robustness, scalability, and self-
organization. As far as cost efficiency
goes, the RS Swarm does pretty well.
From what we hear, Robosapiens are
down to about $75.00 a pop, which is
not bad for individual members of a
swarm. Other swarm robots that per-
haps like to use nice servos for locomo-
tion are looking at figures of up to
$115.00 per servo, which makes the RS
look more inexpensive.
Also, one of the purposes of
swarms is to replace larger, more com-
plex (and therefore more expen-
sive) single robots. Who knows,
in the future, a swarm of
Robosapiens could supplant the
Honda Asimo as far as some
humanoid functions go. A
Robosapien swarm would cer-
tainly not thin out your wallet as
much as the taller humanoid,
and a Robosapien swarm could
certainly do things like plant a
flag in a hole like the Asimo
does in the commercial for the
Honda Classic Golf Tournament.
Another parameter is
robustness. Even though swarms
are composed of many small robots,
they still need to complete their tasks
without breaking down. Robustness is
particularly important in such trying
tasks as urban search and rescue, toxic
waste cleanup, and minesweeping. The
Robosapien as a unit is adequately
robust — robust enough so that the
potential jostling in a large swarm won’t
cause it to fall apart. Another aspect of
robustness to consider is the goal of
swarms to be able to either repair or
abandon broken modules or individu-
als. That would be difficult with our
tethered RS Swarm, but our
Robosapiens have more of the “never
leave a man behind” mentality anyway.
The next parameter is scalability.
Scalability refers to the ease with which
the swarm could be expanded or com-
The Robosapien Swarm Cometh
The bundles taped together.
























SERVO 05.2005 25
Circle #68 on the Reader Service Card.
TwinTweaks.qxd 4/5/2005 9:11 AM Page 25
pressed — how easy it is to add or take
away robots from the swarm. Even
though a tethered swarm is not really
like other swarms, our model does pro-
vide good scalability. It would be very
easy to add more Robosapiens to the
swarm; all it takes is another fiber optic
tether to be incorporated into the main
bundle.
The final and most defining param-
eter of a robotic swarm is self-organiza-
tion. Broadly speaking, self-organiza-
tion is the ability of the individual mem-
bers of the swarm to interact. The cen-
tral form of interaction between the
members of the swarm is self-localiza-
tion — the ability for a single member
of the swarm to know where it is in
relation to the rest of the swarm. Since
our RS Swarm is tethered and they all
obey the same remote, self-localization
isn’t much of an issue, but that also
makes it less of a real swarm.
Common forms of self-localization
are visual recognition through signifi-
cant coloration or a form of
sonar using ultrasonic sensors.
Self-localization is where the
real challenge of swarm robotics
lies, because it is a daunting
software challenge to come up
with an effective, yet simple,
way for the simple-minded
members of a swarm to interact
intelligently.
Even though our
Robosapiens obey one remote,
they should have some type of
program to deal with objects in
the field. Vision sensors of the
Robosapiens could be hacked
into for sight, or perhaps the sonic sen-
sor could be used if some other sound
sensors were hacked in to complement
them. Or we could teach them to play
Marco Polo. An easy method would be
to program some reflexes based on the
Robosapiens’ touch sensors with the
standard programming. A little collision
detection shouldn’t go amiss.
Self-organization also refers to the
adaptability of swarm robots — their
ability to deal with obstacles in the
environment. Modular robots like the
PARC Polybot change shape to deal
with different challenges, while other
swarms can do things like hook togeth-
er to cross gaps too big for a single
one. The Robosapien’s humanoid
design makes it pretty adaptable to
begin with, and most challenges it
could likely surmount without major
shape shifting.
Upping the Ante
In the March issue, a
reader voiced a desire for
a broader discussion of
problems rather than a
narrow focus on a proj-
ect, and the RS Swarm
project provides a unique
opportunity for a broad discussion on
what we see as some of the driving
forces behind swarm robotics.
Swarm robotics are essentially an
economic approach to applications like
search and rescue, mapping, explo-
ration, toxic waste clean-up, minesweep-
ing, and whatever other uses there are
for swarms of simple robots.
One who likes to wax philosophical
might say that swarm robotics capital-
izes on the dis-economies of Gestalt.
The Gestalt theory contends that the
whole is greater than the sum of its
parts. The FIRST Competition is a fine
example of the Gestalt theory in
action. The finished product at the end
of the six-week-build time is certainly
more effective at playing the game
than if someone just plopped down the
kit of parts on the field and hoped for
the best. In other cases, however, a
structuralist approach is more effective.
Structuralism is basically the oppo-
site of Gestaltism. Structuralism asserts
that the sum of the parts is more signif-
icant than the whole. When applied to
robotics, this can be restated to mean
that several simple robots can accom-
plish a task better than one big com-
plex robot. A current example is the
exploration of other planets.
Take a look at the ill-fated Beagle
II. Beagle II, in this case, is a represen-
tative of the Gestalt approach. This sin-
gular explorer likely had all of the nec-
essary tools to do a thorough job of
surveying the red planet, but a rough
landing caused it to be dead on arrival.
Spirit and Opportunity, though only
two in number, are closer to a swarm
approach. Closer in the philosophy,
anyway, that if one breaks down, all is
not lost.
This brings us to the central dis-
economy of Gestalt: if one part fails,
everything fails. Everything is depend-
ent on the singular whole. In swarm
With the fiber optics bundles and remote,
they were ready to go.
26 SERVO 05.2005
Check out these websites if you are an intrepid hacker
who wants to learn more about swarm and modular robotics:
www2.parc.com/spl/projects/modrobots
www.swarm-bots.org/
Check it Out
Twin Tweaks ...
Bryce’s Robosapien needed a good talking
to to get it back in line again.
TwinTweaks.qxd 4/6/2005 3:18 PM Page 26
philosophy, if one part fails, others take
over for it. In instances like minesweep-
ing, if one big robot makes a mistake it
is immediately back to the drawing
board. If one member of a swarm ends
up taking one for the team, the rest of
the team can still go on.
Final Thoughts
Swarm robotics is an esoteric but
rapidly growing field. For any other
intrepid hackers out there that might
want to experiment with their own RS
Swarm before miring themselves in dif-
ficult programming conundrum, we
have a few recommendations that
would be an improvement upon our
design.
One idea would be to use thinner
fiber optics for more effective commu-
nication. Our 0.0125-inch diameter
fiber optics were still quite larger than
the normal 0.0024-inch diameter fiber
optics that are used in most medical
procedures ending in -oscopy, so there
is definitely room for
optimization.
Perhaps the best rec-
ommendation we could
give would be to use
small bundles of solid
strands. It would have
been better for us if we
didn’t have to make a
joint in the middle of our
tether. A single solid
strand would have guar-
anteed better communi-
cation by giving the
infrared light a continu-
ous path through which
to make the internal reflections; discon-
tinuities, because of bad joints, were
some of our biggest problems.
The RS Swarm serves as a model
to demonstrate the basics of swarm
robotics, and, as always, there is room
for optimization. In the end though, it
adequately demonstrates the concepts
of cost efficiency, robustness, scalabili-
ty, and self-organization that are the
basic tenets of swarm philosophy. We
were also able to use infrared fiber
optics (of which we are not really the
pioneers and only too happy to give
credit to whomever is). Now all we
need to do is name our mini swarm
after a famous trio. Manny, Mo, and
Jack? Dean, Woody, and Dave? Alexey,
Ivan, and Dmitri?
So many possibilities ... SV
The RS Swarm serves as a model to
demonstrate the basics of swarm robotics.
The Robosapien Swarm Cometh
Robot Building
Blocks
Motor Speed
Control
PID Motor
Position
Control
Phone 530-891-8045
Solutions Cubed
www.solutions-cubed.com
Affordable Motion Control Products
Affordable Motion Control Products
l
t
n
S
o
u
io
s
3
SERVO 05.2005 27
Circle #75 on the Reader Service Card.
TwinTweaks.qxd 4/5/2005 9:13 AM Page 27
R
O
B
O
T
S
A
R
E
P
L
A
Y
I
N
G
A
N
I
N
C
R
E
A
S
I
N
G
L
Y
V
I
T
A
L
R
O
L
E
I
N
O
U
R
S
O
C
I
E
T
Y
Five.qxd 4/5/2005 10:22 AM Page 28
R
obots are playing an
increasingly vital role in
our society. Although many
applications involve using
robots to perform repetitive
behavior (painting doors on
an automobile assembly line,
winding transformers, weld-
ing, etc.), robots are also mov-
ing into areas that are haz-
ardous to humans, providing
life-protecting and life-saving
duties. Though robots may
not yet be able to run through
the city streets to fetch our
inhaler (as depicted in the
movie I, Robot), they are
already assisting in the operat-
ing room, removing humans
from harm’s way by perform-
ing difficult industrial and mil-
itary duties, and performing
chores in outer space and in
the deep sea. Let us take a
look at five robots that
could save your life ...
Five.qxd 4/5/2005 10:24 AM Page 29
30 SERVO 05.2005
FIVE ROBOTS THAT COULD SAVE YOUR LIFE FIVE ROBOTS THAT COULD SAVE YOUR LIFE
I
n the original Star Trek television series, Dr. McCoy used his
small medical tricorder to diagnose or cure many life-threaten-
ing calamities. Although we have not boldly gone that far yet,
much progress is being made in the medical area of robotics.
The da Vinci Surgical System, developed by Intuitive Surgical
(www.intuitivesurgical.com) uses robotic technology to enable
surgeons to perform minimally invasive surgery (MIS), operating
through a tiny opening (port) into the body. MIS reduces trauma,
blood loss, patient pain, and discomfort. The da Vinci Surgical System assists surgeons in the following ways:
• Routine surgical procedures are accomplished quicker and easier.
• Dif ficult procedures may be performed by more surgeons via the controls provided by the system.
• More procedures may now be performed through tiny ports that measure only one centimeter wide.
The da Vinci Surgical System contains four parts: the Surgeon Console, the Patient-side Cart, the EndoWrist
Instruments, and the InSite Vision System.
The Surgeon Console is where all the action originates. The surgeon sits at the console, viewing a three-
dimensional image of the surgical site. Console controls allow the surgeon to manipulate the EndoWrist
Instruments accurately, safely, and in real-time.
The Patient-side Cart supports the robotic arms that manipulate the EndoWrist Instruments and endoscope.
The da Vinci Surgical System uses the surgeon’s hand and wrist movements to control the robotic EndoWrist
Instrument that replaces the surgeon’s own hand. A wide selection of EndoWrist Instruments are available,
including forceps, cutting blades, hooks, and grippers, all of which operate within a one-centimeter opening.
Intuitive motion is realized through the da Vinci Surgical System. Instruments move in the same direction as the
controls, allowing the surgeon’s hand/eye coordination to be translated to the EndoWrist instruments.
True three-dimensional vision inside the operating port is made possible using the InSite Vision System,
which is controlled with the Navigator Camera Control software, allowing the surgeon to move, zoom, and rotate
the surgeon’s view. A dual-lens, three-chip digital camera provides three-dimensional depth-of-field within the
operating port and is easily positioned for dif ferent views.
The da Vinci Surgical System is the
first robotic surgical system approved
by the FDA for such medical procedures
as laparoscopic surgery, chest surgery,
and cardiotomy. There are currently
over 210 da Vinci Surgical Systems in
use around the world.
The da Vinci Surgical System
Five.qxd 4/5/2005 10:26 AM Page 30
SERVO 05.2005 31
FIVE ROBOTS THAT COULD SAVE YOUR LIFE FIVE ROBOTS THAT COULD SAVE YOUR LIFE
T
he Johns Hopkins Hospital has a new doctor, a robotic doctor ... so
does Hackensack University Medical Center, UCLA, Chicago Hospital,
and many other medical institutions. Developed by InTouch Health, Inc.
(www.intouch-health.com), and called Dr. Robot, Mr. Rounder, or Dr.
RP-6 (depending on where you are),
these robotic doctors provide remote
access to a real, human doctor through
a wireless audio-video teleconferenc-
ing link that directly connects the
doctor to the patient over the Internet.
The robots are able to move
around the patient during an exami-
nation, and their movements are con-
trolled remotely by the human doctor
and a joystick.
The patient sees the human
doctor via a flat-screen display (the
“head” of the robot) and is able to talk to the doctor via a microphone. A video
camera allows the human doctor to see the patient and examine hospital-
related websites for information on proper healing, scan X-rays, and view
charts. The robotic doctor is popular with its patients, who say they prefer a
virtual visit from their own doctor to an of fice visit
with a dif ferent doctor.
Dr. Robot
Five.qxd 4/5/2005 10:28 AM Page 31
Model Designed For Used By Features
PackBot
EOD
Explosive ordinance disposal,
HAZMAT, search-and-surveil-
lance, hostage rescue
Bomb squads, SWAT teams,
the military
Rotating gripper, OmniReach manipulator system,
fiber spooler, vision and targeting head, wireless
operator control unit
PackBot
Scout
Search-and-surveillance in
urban terrain
The military
QuickFlip flipper design, recessed vision system
head, interchangeable payload modules, wireless
operator control unit
PackBot
Explorer
Intelligence, reconnaissance,
surveillance, and battle
damage assessment
Law enforcement, the
military
Vision, sound, and sensor head with tilt/pan
neck, long-run battery packs, GPS, temperature,
heading, and other sensors, wireless operator
control unit
Military
R-Gator
Perimeter guarding, troop
deployment, supply carrier
The military
Unmanned ground vehicle, obstacle avoidance
system
Table 1. PackBot series of robots.
FIVE ROBOTS THAT COULD SAVE YOUR LIFE FIVE ROBOTS THAT COULD SAVE YOUR LIFE
T
housands of people are killed every year by land mines, even those
trained to retrieve and dispose of them. It is an unfortunate fact that
current and past wars have led to millions of hidden and buried land mines
just waiting for someone to tred on them. Combine that threat with those
posed by house-to-house combat in unfamiliar locations, and you have a
recipe for disaster for both military personnel and civilians.
The PackBot series of robots from the US government and the Industrial
Robotics Division of iRobot (www.irobot.com) are designed to go into
harm’s way. For example, the PackBot Explorer is used to provide soldiers
on the battlefield with real-time surveillance of dangerous areas, while the
PackBot EOD is used to gather and dispose of explosive ordinance.
The PackBot design has proven itself in Afghanistan and Iraq, with its
on-board robotic control system controlled by a Pentium processor.
iRobot is performing research on the SwarmBot and SwarmOS (Swarm Operating System), where 10 to
10,000 SwarmBots may be controlled in unison. This research pushes the boundaries of algorithms, hardware,
and user-interface design to develop swarms of robots that exhibit useful group behavior, such as meeting at a
point of interest, exploring a building, or navigating over long distances.
PackBot
32 SERVO 05.2005
Five.qxd 4/5/2005 10:30 AM Page 32
FIVE ROBOTS THAT COULD SAVE YOUR LIFE FIVE ROBOTS THAT COULD SAVE YOUR LIFE
I
n December 1999, astronauts Steven Smith and John Grunsfeld from
the Space Shuttle Discovery spent over eight hours in a spacewalk
to replace gyroscopes on the Hubble Space Telescope. During the
spacewalk, the temperature cycled between plus and minus 250
degrees Fahrenheit. And, of course, there is no air to breathe in outer
space, so there are a few good reasons to want to stay inside the
spaceship.
Robonaut, developed by NASA and DARPA, is designed to assist
(and/or replace) human astronauts in many extravehicular activities
like spacewalks. Human astronauts require consumable resources
while in space (power and life-support) that limit their time and ability to perform duties. Robonaut is designed
to perform such mundane, yet dangerous, tasks as inspection and maintenance outside the space vehicle.
Robonaut looks remarkably like a human astronaut. It does not have the typical robot-style grippers, but very
articulate fingers, wrists, and arms instead. Through a process called telepresence, a human operator controls
Robonaut’s 47 individual degrees of freedom through hand gloves and a visual helmet.
Robonaut has the biological equivalent of a central nervous system, with a Versa Module Europa (VME)
backplane used for input/output and PowerPC processors to do the number crunching for the VxWorks real-time
operating system that controls Robonaut.
The control system architecture of Robonaut must meet several requirements:
• Provide safe control for 47 degrees of freedom.
• Operate completely under human control, share
control, or even operate autonomously.
• It must operate under extreme temperatures.
• Real-time performance must be achieved with current
hardware.
Robonaut is packed with technology. There are
field programmable gate array (FPGA) motor con-
trollers, scores of sensors (torque, position, tempera-
ture), harmonic drives, and vacuum-rated motors.
One day, with a Robonaut attached to the end of
the Space Shuttle’s cargo bay arm, the Hubble Space
Telescope will feel the corrective touch of a robotic
finger instead of a human one.
Additional information about Robonaut can be
found at http://vesuvius.jsc.nasa.gov/er_er/html/
robonaut/robonaut.html
Robonaut
Schematic and PCB Layout
• Powerful and flexible schematic capture.
• Auto-component placement. • Rip-up and Retry PCB routing.
• Polygonal gridless ground planes.
• Library of over 8000 schematic and 1000 PCB foot prints.
• Bill of materials, DRC reports and more.
Mixed Mode SPICE Circuit Simulation
• Berkeley SPICE3F5 simulator with custom extensions for true
mixed mode and interactive simulation.
• Six virtual instruments and 14 graph based analysis types.
• 6,000 models including TTL, CMOS and PLD digital parts.
• Fully compatible with manufacturers’ SPICE models.
ProteusVSM- Co-simulation & debugging for popular Micro-Controllers
• Supports PIC16 & PIC12, AVR, 8051, HC11 and ARM micro-controllers.
• Latest version includes 40 new PIC18's.
• Co-simulate target firmware with your hardware design.
• Includes interactive peripheral models for LED and LCD displays,
switches, keypads, virtual terminal and much, much more.
• Provides source level debugging for popular compilers and
assemblers from HiTech PICC, Crownhill, IAR, Keil and others.
PCB AutoRouting
• Proteus PCB design includes an interface to the Electra Gridless
autorouter.
R4SYSTEMS INC.
Tel: 905•898•0665
www.r4systems.com info@r4systems.com
FREE DOWNLOADABLE DEMO! Save Time. Save Money.
Proteus Starter Kit – $199 • Complete Systems from $499
“This is clearly superior in every respect.”
The Complete
Electronics
Design System
EASY TO USE
CAD TOOLS AT
FANTASTIC PRICES!
SERVO 05.2005 33
Circle #89 on the Reader Service Card.
Five.qxd 4/5/2005 10:34 AM Page 33
FIVE ROBOTS THAT COULD SAVE YOUR LIFE FIVE ROBOTS THAT COULD SAVE YOUR LIFE
A
s any scuba diver knows, the underwater world is both
an amazing and scary place. The wonder and beauty of
the deep are tempered by the fact that humans are merely
guests, visiting for a short while at the mercy of the remain-
ing oxygen in their tanks (or other gas, depending on the
depth). Accidents happen underwater just as they do on
land, without warning, and with the added punch of drown-
ing thrown in. Even routine underwater activities such as
inspection and maintenance can turn deadly when some-
thing unforeseen happens. Fortunately, help is available.
The VideoRay line of remotely operated vehicles (ROV) is
designed for underwater surveillance, inspection, and res-
cue. They operate at depths of up to 1,000 feet, providing visual feedback from a color camera, as well as depth
and heading information. Each VideoRay system is dive-ready and can be controlled via a joystick (with more
advanced models utilizing wireless control from a laptop). All models use 300 watts of 10 to 240 volts AC power,
with the VideoRay submersible fed with 48 volts DC through its tether (much lower than the 360 volts DC used
by other ROVs).
With the weight of the VideoRay packages ranging from 70 to 165 pounds, transportation and setup of each
device can be done by only one or two individuals. VideoRays are used all over the world, in crystal-clear as well
as polluted water, from the tropics to the Artic.
VideoRay
34 SERVO 05.2005
Model Standard Features
Rated
Depth
Price
Scout
Two 20-watt halogen lights, 420-line color camera, five-inch color LCD display
monitor, 131-foot tether
300 feet $5,995.00
Explorer
Two 20-watt halogen lights, 570-line color camera, camera tilt and focus controls,
five-inch color LCD display monitor, depth gauge, heading, and cumulative time
shown on display, 250-foot tether
300 feet $9,995.00
Pro III
Two 20-watt halogen lights, 570-line color front camera, camera tilt and focus
controls, 430-line resolution B&W rear camera, five-inch color LCD display monitor,
depth gauge, heading, and cumulative time shown on display, 250-foot tether, tether
deployment system, PC remote control software
500 feet $19,995.00
Deep Blue
Two 20-watt halogen lights, 570-line color front camera, camera tilt and focus con-
trols, 430-line resolution B&W rear camera, five-inch color LCD display monitor, depth
gauge, heading, and cumulative time shown on display, SeaSprite scanning sonar
system, 1,000-foot tether, tether deployment system, PC remote control software
1,000 feet $46,500.00
Table 2. VideoRay product line and associated features.
Conclusion
On the operating table, on land, in the air, and even underwater, somewhere a robot is
lurking, ready to assist in saving a life or performing a hazardous job. Right now, a human
controls the robot for the most part, but sometime soon, the application of artificial intelligence
will perhaps provide robots with an autonomous behavior. Then, we truly will see robots running
through the streets with our inhalers. SV
Five.qxd 4/5/2005 10:36 AM Page 34
FIVE ROBOTS THAT COULD SAVE YOUR LIFE FIVE ROBOTS THAT COULD SAVE YOUR LIFE
SERVO 05.2005 35
Not Done Yet —Some Juicy Tidbits to Feed Your Appetite for Info!
James Antonakos can be reached at antonakos_j
@sunybroome.edu or you can visit his website at
www.sunybroome.edu/
~
antonakos_j
With all the fuss over robots saving lives, it is easy to
overlook the good work done by simpler devices, namely
the electronic sensors now being used to perform these
critical functions:
• Chemical, biological, and nuclear detection
• Blood analysis
• Heart rate measurement
• Measuring the brain’s electrical activity
As robots become more human-like (as Robonaut is
trying to do), sensors will play an increasingly important role
in providing feedback for the robotic control system. Sight,
touch, smell, hearing, and taste are the five human senses
that must be mimicked by hardware. Not all sensors are
alike, and this is true for their sensory processing, as well. An
image sensor requires a hefty amount of processing to
extract image information, while a touch sensor may be
implemented as a simple microswitch, requiring only one bit
of information to be tested. As sensors evolve, so must the
ability to gather and process their information.
Sensors Are People, Too
In October 2004, the United Nations Economic
Commission released a report indicating that the number
of robots assisting with chores in the home may increase
from over 600,000 in 2003 to over four million by 2007.
The 2004 World Robotics Survey found an 18 percent
increase in orders for industrial robots in 2003. Japan
alone has 400,000 industrial robots (as many as the rest of
the world’s industries). Japan’s New Energy and Industrial
Technology Development Organization (NEDO) estimates
their market for service-oriented robots will grow to $17
billion in the next five years. The Robotic Industries
Association shows that North American orders for
industrial robots were up 28 percent in 2003, with a
$3 billion US market. Visit http://robots.net for additional
information about personal and industrial robots.
More, More, More Robots!
Circle #95 on the Reader Service Card.
Five.qxd 4/5/2005 11:02 AM Page 35
36 SERVO 05.2005
L
ast month, we discussed several problems and errors that a beginner can experience while
designing a new robot. We discussed where to begin and some of the many skills to be
learned. In this article, we will continue with more problems you may run into, programming
errors, and a list of helpful notes for any beginner. In addition, you will find many useful circuits
to use in your designs. There are many pitfalls to be avoided, but the rewards are great. We feel
the ultimate goal for any beginner should be personal satisfaction. As mentioned in the last
article, design and build in a way that you can easily understand. Use a program language and
chassis design that you can easily work on. When you design your second, third, and fourth
robots, you can begin to branch out by adding more complicated skills to your arsenal. I hope
these primers will assist you, as well as guide you to a rewarding experience with robotics.
Barlow2.qxd 4/5/2005 9:27 AM Page 36
Syntax and Code
Errors
One of the earliest pitfalls to be
avoided is programming errors. As a list
of potential errors could fill many vol-
umes, I will only show you some of the
more common problems to be avoided.
Much of this depends on whatever pro-
gram language you have chosen for
your robot.
1. Declarations — Check your variable
declarations. Make sure that you have
a declaration for the size variable that
you expect to see. If you return a word-
size variable (255) and only have a
byte-size declaration (16), it can cause
all kinds of weird errors.
2. Return — Make sure that all of your
subroutines have a return statement at
their ends.
3. Subroutines — Do not use a “go to”
line statement when you really mean a
“go sub” statement. In other words, do
not mix the two. This mixture may
work for awhile and then come back
to bite you. Believe me, I learned the
hard way.
4. Subroutine Names — Name your
subroutines in a way that you can
easily understand what they are
doing. You are coding for your own
use. As much as possible, keep things
legible and readable. Subroutine
names such as LEFTSERVO, FOR-
WARD, and BACK are self-descriptive
and tell you immediately what the
subroutine is doing.
5. Variable Names — Avoid at all costs
using variable names such as “I” and
“1” in your code. A “1” and an “I” can
look so similar that you can have a typo
error and never realize it. Even worse,
many on-screen fonts display these
characters as identical, when they
are not.
6. Declarations — Keep your variables
in one section and your constants in
another. Alphabetize these sections so
you can easily find a variable.
7. Comment, Comment, Comment —
You can never have too many com-
ments in a program. I now comment
my variable declarations, my subrou-
tines, and every single line within the
program, as well. I can almost guaran-
tee that, after a while, you will forget
what something does and lose many
hours trying to figure out your own
code. I do this all the time. In fact,
there cannot be enough comments.
Have a section of nothing but com-
ments at the start of your program, as
well. It is also a good place for some
simple wiring codes for your hardware.
For example, you can list the wire
codes for your sensors in your program
comments section. The first line of your
program should be comments describ-
ing the program’s name and date,
along with changes you have made to
the program. For example,
“10/15/2004 bolomark3.2.bas added
in second SRF04 Sensor.”
8. Stand-Alone Programs — Keep
small working examples of programs
for every sensor or subroutine you use.
I have separate programs for LCD,
SRF04, GP2D02, motor drive, and
servo, etc. When testing things, you
can load this small program and test
the exact item you wish without load-
ing a huge program.
9. New Hardware — As mentioned
above, when you add in new hard-
ware, create a simple test program that
only tests this new hardware. After you
have the hardware working to your sat-
isfaction, you may add the new code to
your existing robot. For example, I
received a new compass for Christmas.
I will write a program to implement the
compass and save it as compass1.0
.bas. When I am satisfied with the
operation of the compass, I will copy
that code into my working robot. If I
ever have any problems, I can load
the compass code and test only that
particular piece of hardware.
10. Feedback — Get whatever feed-
back you can when debugging or
designing a robot. Debug statements
are fine while the robot is connected to
your compiler, but they won’t offer
much help in real-world situations.
To provide feedback while not con-
nected to the computer, use a LCD dis-
play or speaker. I use a Seetron LCD
mounted on my robot and also a
speaker for output. In my various sub-
routines, I will call the LCD or the
speaker and send out status informa-
tion so I know what my program is
doing. You can have a simple single
word on an LCD display or a simple
beep sequence from the speaker to tell
you where in the program your robot is
operating. This is also good for finding
a major error. I once even resorted to
putting an LCD message just before
the END statement in my program,
because I thought the code was some-
how jumping out of the main loop and
exiting.
The LCD will slow down your code
somewhat and so will the speaker.
When you have your robot working the
way you want it to, you can comment
out the LCD and speaker sounds.
I also will place the version number
of the program at the start of my pro-
gram and display it on the LCD. This
way, when your robot is in operation,
you can easily tell what program is
loaded at that time.
Another idea I am implementing is
using Morse code as feedback from a
speaker. This is a bit slower, but it adds
an interesting touch for output. A voice
or sound chip would be the ultimate
output from your robot.
11. Backup, Backup, Backup — Back
up your programs using more than one
method. Storing all your programs on a
single hard drive is a disaster waiting to
happen. Back up to a floppy, CD-ROM,
another friend’s hard drive, or anywhere
you can. I recommend at least once in
awhile to get a hard copy printout, as
well. I know it will use a lot of paper,
but this will seem trivial if you lose a
year’s work to a hard-drive crash. I still
have printouts from the 80s when I was
programming. They are always useful.
12. Ideas — Keep a separate list of
ideas you have for your robot, rather
than digging through your logbook try-
SERVO 05.2005 37
PART 2: Common Errors in Building Robots
Barlow2.qxd 4/5/2005 9:29 AM Page 37
ing to find them. You also can keep a
wish list of hardware, as people who
are designing competition robots will
probably have hardware requirements
to follow.
13. Reserved Names — I have been
burned more than once by using a
reserved name for a variable or subrou-
tine. Many times it is not obvious what
the problem is when a program com-
piles. This happened quite a bit to me
when I transferred a few Parallax pro-
grams to the Basic Micro Atom. If you
have created a new subroutine or vari-
able and have weird problems you
can’t figure out, rename that item to
something that definitely cannot be a
reserved word. Use something strange
like “dog.”
14. Hardware or Software Errors —
This may also be designated as trou-
bleshooting, and a book could be writ-
ten on this topic alone. I can only guide
you in certain directions. Try to remem-
ber what you have done most recently
to your robot. Read your logbook (you
keep one, correct?). Go back to a pre-
vious version of a program. Go way
back in some versions, and by this I
mean go back a couple of major revi-
sions and see if the robot will run on an
older version of your program.
Be sure your batteries are fully
charged, and set up debug points with-
in your program to find out what your
variables are doing. Display your vari-
ables on a debug screen or an LCD dis-
play. Do you have a variable out of
range? Can you swap the parts on your
robot from one side to another? For
example, move the left wheel servo to
the right side. If possible, swap pins on
your CPU, because maybe one pin has
burned out.
Run a debug session and watch all
of your variables for a strange value. Is a
pin bent on a connector? Use speaker
output as feedback to check code
sequences. Put a beep sound after sec-
tions of code, simply to see if your pro-
gram is flowing properly. Do you have a
hardware output problem or a hardware
input problem? Is your IR generator
actually producing a waveform or are
your IR receivers not detecting a wave-
form present? Check all connections;
maybe something has come loose.
This next situation seems obvious,
but sometimes you’ll forget if the robot
quit on its own or if it was something
you did. If the robot quit on its own,
then there is a good chance you had a
hardware failure. Will it run for an
extended period of time on an old
version? Is the CPU resetting? Place
some feedback as your first lines in the
program, display START on your LCD,
or play a recognizable tone from your
speaker.
If the CPU resets, why is it doing
that? Check for stack overflow or
unshielded motor leads. Add a larger
filtering capacitor to the CPU’s power
input. Add a separate battery pack to
run only the CPU. Write a very simple
program for your robot and run it. For
example, only drive the motors in this
simple program.
See if the robot will keep moving
for three minutes. Write a simple pro-
gram to rotate the motors forward,
backward, left, and right. The combina-
tion of motor changes should cause
the CPU to reset if it ever is going too.
Sonar detectors may draw as much as
one amp when they fire. Can your bat-
tery bus supply this quick surge of
amperage?
Are you testing on hardwood
floors, then having problems on a rug?
Motors will draw more amperage on rug
floors. What are your light conditions?
Halogen, incandescent, and fluorescent
lights will all affect IR sensors differently.
Duplicate the error as closely as possible.
Does the robot only fail when it detects
a wall at the same angle?
Write down, in sequence, every-
thing your robot does up to the point
of failure. Check your flowchart or
code and try to determine how your
robot came to be in this situation from
what you wrote down.
Ask for help! We all need help at
some time, and maybe someday you
can help another person and return the
favor. Remember, that there is never
such a thing as a stupid question.
15. Line Errors — Why is a given line
of code producing an error? Have
somebody else read the line of code or
the section of software. A friend may
see an error that you cannot. This is
also why authors should never edit
their own work.
Retype the line. I don’t know how
many times just retyping a command
line has resolved a problem. You can
put the lines side by side and not see
the difference, but in actuality, there
may not be a visible difference. The dif-
ference could be buried at a machine
level that the application is not making
available to you. Even printing out the
line may not show the error.
Helpful Notes
In recent years, I have been keep-
ing a notebook of problems that have
occurred with my designs. The follow-
ing list is only some of the many notes
I have kept over the years.
• Test — Test your robot in all environ-
ments. What may work well on hard-
wood floors could be a disaster on
shag carpets.
• Light — Different lighting conditions
and colored walls can cause major grief
with sensors.
• Battery — Keep your batteries fully
charged when testing. Weak batteries
can cause many varied problems.
• Label — Place labels on all your
connectors and designate them top
and bottom if they do not have a KEY
in the connector.
• IR sensitivity — To reduce IR sensi-
tivity, lower the frequency output to a
value less than 38 kHz or install a larg-
er resistor on the IR LED to reduce its
output. A two-kilohm resistor is recom-
mended.
• Glue — Use hot glue for holding
wires and battery packs.
• Diodes — The short lead is negative.
• Vdd — On Stamp and Atom micro-
38 SERVO 05.2005
A PRIMER FOR THE NEW ROBOTICIST
Barlow2.qxd 4/5/2005 9:29 AM Page 38
processors, Vin is unregulated, Vdd is
regulated.
• Pins — Unused pins should be set to
Output.
• LED pins — + Anode is the long lead,
while cathode is the flat side.
• Basic Atom will not program in Board
of Education. The capacitors on Parallax
Stamp serial pins must be removed.
• Sharp GP2D02 outputs at values
from 35,000 to 50,000. The higher the
value, the closer the object.
To convert to a usable value:
Val02 = Val02/100 max 255
Range = 255 to val02
Range = Range/4 (in inches)
The above gives a rough measurement,
in inches, that is returned in the Range
variable.
• GP2D02 will output a maximum
value when an object is closer than its
minimum range of detection.
• Bumper switches are a necessary evil.
Even your best remote sensor design is
going to fail in some situation? In this
case, a mechanical bumper switch may
save you endless grief.
• Wiring — Double and triple check
your wiring before you power on. Ask
a qualified friend to also check it if you
are unclear. I once burned out two PIR
sensors at $50.00 each because the
manufacturer’s wiring schematic was
less than intuitive.
• Sockets — Use sockets for any IC or
CPU in your design. Use sockets for any-
thing that you may change frequently.
• Use a socket for a fixed resistor that
you may occasionally change.
• Printout — Physically print out a
hardcopy of your program no matter
how long it is. It is much easier to
debug a program when you can hold
the entire program in your hands
rather than scrolling up and down a
window, looking for mistakes.
• If you get in over your head and can-
not find the error in your code, go back
a major revision or two and make sure
your robot is still working. It is possible
you don’t have a software error, but
have developed a hardware error. I
went through five major revisions and
scores of minor changes, and all of a
sudden, my robot quit turning one
direction. I went nuts going over the
software, trying to find what the latest
error was I had made. It turned out that
a wire had never been soldered to my
circuit board; it was only poking
through the solder hole! This loose wire
worked fine for over a year and then
quit one day, making me think I had a
software problem. I made this mistake,
and have since repaired over a dozen
commercial electronic products with
the same problem: a bad solder joint.
• White baseboards will mess up a
light sensor.
• Motor Leads — Twist the wires of
your motor leads together. This forces
the magnetic fields to cancel each
other out.
• Mix sensor types for robust object
detection. You can never have too
many sensors.
• Use both high µF capacitors for
power-spike filtering and low µF for
high-frequency spikes across the CPU
power input; 1000 µF and 0.1 µF.
• Separate battery packs are recom-
mended for noise filter problems.
• Use stranded wire for anything that
moves. Solid-core wire can break easily.
• Keep high-power and low-power
wire circuits separated, if possible.
PART 2: Common Errors in Building Robots
Too Much Heat?
Run Cool.
SERVO 05.2005 39
Circle #102 on the Reader Service Card.
Barlow2.qxd 4/7/2005 10:00 AM Page 39
• Color-code your wiring and stay con-
sistent in all your designs: red for
power, green/black for ground, yellow
for signal.
• Use color-coded wire for all wire
runs. This makes troubleshooting much
easier.
• Keep all your replaceable sensors
color-coded, as well. It will be easier to
swap them with troubleshooting.
• Use quality connectors and battery
packs. I have lost tremendous amounts
of time struggling with cheap connec-
tors and battery holders.
• Workbench — Maintain a large clut-
ter-free workbench. This can make
more of a difference than it may seem.
• Test leads — Use only quality test
leads. I cannot tell you how many times
a test lead has failed on me, and I
thought the robot was bad.
• Salvaged verses New Parts — If in
doubt, throw it out. Sometimes it does
not pay trying to work with an old part
from your junk bin.
• Beauty — The overall look of your
robot should be the last item to worry
about. Function is far more important
than looks.
• Design for easy repair. You will be
tearing your robot apart many times
during the design phase. Make life eas-
ier on yourself as much as possible.
• Rugged Design — Make your robot
sturdy enough to handle household
abuse. Almost all small motor systems
can handle three to four pounds, so
use that to your advantage.
• Expansion — Try to think ahead for
future improvements. Leave room on
your circuit board for additional com-
ponents, and make a large robot base.
Don’t paint yourself into a corner, so
to speak.
• Replaceable battery cells are better
for beginner designs than sealed bat-
tery packs. A sealed pack can lose one
cell and cause many headaches.
• Switch — Use a separate switch for
the motor and the CPU. It is handy to
turn off the power to your drive motors
and yet still run your CPU/sensors
for testing.
• Heat Shrink — Use quality heat
shrink. Bargin store-type heat shrink
melts easily and is not recommended.
•Solder all permanent wire connec-
tions. Tape, wire nuts, and other con-
nections may come loose.
• Butt Splice — Use quality butt splices
and ring terminals. Cheap terminal kits
will fail every time. Tug on your crimp
to be sure it is tight.
• Fuse — Use a fuse or circuit breaker
on any high-power load circuits. Rate
the fuse for only the maximum amper-
age expected.
• Organize all your spare components
into parts bins and label them.
• Pre-test — Test your sensors on a
bench first and write down what they
output before installing them into the
robot. This will also help you program,
because you will know what your sen-
sors are actually doing.
• Make a portable sensor and CPU on
a breadboard. Carry this around and
test various surfaces in your home.
Find out where you may get odd
reflections.
• Place yourself in your robot’s shoes.
You cannot expect to program your
robot to do better with sensor informa-
tion than you can. If your robot only
returns a single ping in a certain situa-
tion, what would you do if that was all
you knew?
• Expect your robot to fail at another
person’s house. I can almost guaran-
tee it will not perform like it does at
your home. This may be caused by
lighting, floor material, or color of
cabinets, etc.
• Display the output from your sensors
on your robot’s LCD screen. You can
watch the output values and see why a
robot may not detect an object.
• Early in your design, try not to waste
I/O ports. I/O ports are to be hoarded
at all times. If you plan for it, you can
use a multiplex circuit.
40 SERVO 05.2005
A PRIMER FOR THE NEW ROBOTICIST
• Seattle Robotics Encoder: www.seat
tlerobotics.org/encoder/index.html
• Battery Bus Supply: Keith Payea
www.seattlerobotics.org/encoder/
feb97/powerup.html
• Acroname: Good source of robot
parts and sensors.
www.acroname.com
• Atom Microprocessor:
www.basicmicro.com
• Sensors: Brooke’s Sensors Page.
www.pacificsites.com/~brooke/Sensor
s.shtml#Compass
• Subsumption Architecture:
www.restena.lu/convict/Jeunes/
Subsumption.htm
• SuperDroid Robot Kits:
www.superdroidrobots.com/index.htm
• Tracy Allen’s BASIC Stamp Application
Notes:
www.emesystems.com/BS2index.htm
• Zagros Robotics:
www.zagrosrobotics.com
• IC Master: http://icmaster.com
• Online Conversions:
www.sciencemadesimple.com/conver
sions.html
• Seetron LCD Displays and Electronics:
www.seetron.com
RESOURCES
Barlow2.qxd 4/5/2005 9:32 AM Page 40
• Do not waste memory or stack
space. Do not use a word declaration
when a byte will do the same job.
• Multiple Sensors and Types — One
thing that all roboticists find out in the
long run is that the more sensors you
have, the better your crash avoidance
will be. These sensors should be of
mixed types, as well.
On my latest robot, I used four
SRF04 sonars, one GP2D02 IR range
sensor, six IR edge sensors, and three
light sensors. The combination of all of
these sensors makes a very robust plat-
form. I also have a light sensor and a
GP2D02 mounted on a rotating servo
head. I can swivel this head to look for
objects around the robot. Trying to
make your robot crash free with a sin-
gle sensor is a fruitless endeavor.
Useful Circuits
Over the years, I have collected
these circuits from various sources. I
have found them to be very handy for
design and testing purposes.
1. LM2940 Voltage Regulator — To
run from a six-volt-battery pack, you
must use a LM2940 voltage regulator,
as a 7805 drops too much voltage.
2. Motor Noise — To prevent motor
noise, use three 0.1-µF capacitors
across motor leads. Tie one capacitor
across both leads and attach the
second and third capacitor from
each terminal to the metal case of
the motor.
3. Battery Bus Supply — Separate
battery packs are recommended but
not always necessary. There is a very
good article online at Seattle Robotics
(www.seattleroboics.org) called
“Power Grounding and Noise Problems
in Mobile Robots,” by Keith Payea.
4. IR 555 timer circuit — This gener-
ates 38 kHz for infrared.
5. I/O PIN Sharing — Always share I/O
pins with two sensors.
6. IR Detection Tool Schematic —
This is useful to see if your IR generator
is outputting a waveform.
7. CDS Cell — This connects to an A/D
port on your CPU.
8. Servo Test Circuit — This is useful
for testing servos.
9. H-bridge Circuit — These chips may
be stacked for additional amperage.
10. LED Circuit
11. Pull-up and Pull-down Circuits
12. 4051 Multiplex — Add additional
I/O ports to a CPU using this chip.
13. 4052 Multiplex — Dual-channel
multiplex for SRF04 Sonar.
I hope this has not overwhelmed
you with the many problems that may
develop during a robot build.
Perseverance is one of the most useful
skills a roboticist may have. Use this
article as a guide for your designs that
you can build on.
Always remember, it is just as use-
ful to record your errors as it is to
record your working designs. Mark
articles in SERVO with sticky notes so
you can find them in the future. Visit
websites and read about other
people’s designs.
Your friends and other builders can
supply many more tips, as well. I
encourage you to keep a list of all of
these hints and record them in a note-
book. Above all, do not become dis-
couraged by this challenge. Thousands
of people every day around the world
are designing robots, and so can you.
The robot community is always willing
to offer you advice and design tips. I
encourage you to be willing to ask
many questions of others, but above
all, have fun. SV
PART 2: Common Errors in Building Robots
SERVO 05.2005 41
Barlow2.qxd 4/5/2005 9:33 AM Page 41
OO
ccasionally, every robot needs to get away from the grind
of doing the tedious and hazardous jobs we humans
assign to it. Our robot, which we’ve been developing for a
few months now, is able to keep track of its location and nav-
igate from place to place. Now, let’s program it to take a road
trip, so it can have a little vacation. As a metaphor for pro-
gramming our robot, let’s consider how we might go about
taking our own road trip.
When we leave on a vacation, we usually have a plan in
mind that includes places we want to go. Often we don’t do
a lot of detailed planning, so we aren’t sure how long it will
take to get to each of our destinations. We just go to as
many places as time permits and then head home. As we
travel, we generally follow the most direct route to our next
stop. We don’t attempt to make our plans so detailed
that it includes every other car, obstacle, or hazard we
might encounter along the way. This would require
information that we don’t have, and even if we could
obtain the information, it would take an inordinate
amount of time to do the necessary planning. Instead,
we just leave it up to our driver to look out for (and
react to) hazards along the way.
We will use a behavior-based control approach to
program our robot to take its vacation.
With behavior-based control, the robot’s
control program arbitrates among a col-
lection of simple behaviors, combining
them into a more complex overall behav-
ior that governs the robot’s actions. The
key is to identify a set of simple behaviors
that will combine to create the desired
overall behavior. In addition, we must
also identify the circumstances that trig-
ger each simple behavior and determine
the relative priority of the behaviors.
Using the vacation metaphor, the four
simple behaviors listed in Table 1 will
allow our robot to take a road trip with
two stops.
Conveniently, the RoboJDE

class
by Steve Grau
Figure 1. Class Diagram.
Behavior Trigger Priority
Avoid running into things Obstacle in the way 1
Return home Vacation time up 2
Head to first stop Haven’t gotten there yet 3
Head to second stop Nothing more important to do 4
Table 1. Simple Behaviors.
42 SERVO 05.2005
Grau4.qxd 4/5/2005 9:38 AM Page 42
library, which comes with the IntelliBrain

-Bot,
already provides a BehaviorArbiter class and a
behavior interface. We will build upon these and
the classes we created in the previous articles to
implement the class diagram shown in Figure 1.
This will require building three new behavior class-
es: AvoidBehavior, ReturnHomeBehavior, and
GoToBehavior. These classes will implement the
behavior interface so we can use them with the
BehaviorArbiter. We will also need to create a
new class that we will name “vacation” that will
initialize everything and plug into the function
selection mechanism we created in the first article
in this series.
Avoiding Collisions
Crash, bang! Our robot has just had another
“fender bender,” this time with Johnny’s backpack that he
dropped on the floor, as he made a beeline from the front
door to the cookie jar. With all the effort we’ve put into build-
ing our object-oriented, Java-programmed, multi-threaded,
re-usable software, our robot still can’t help but crash into
anything dropped in its path.
Imagine leaving on a vacation in your brand new car
with the latest top-of-the-line navigation system. No matter
how carefully you stare at the navigator’s display and follow
its verbal instructions, it’s not likely you’ll get very far if you
don’t look out the window to avoid objects — other cars and
pedestrians — the navigation system doesn’t know about.
Similarly, our robot isn’t going to be able to avoid crashing
into things if it doesn’t look where it is going and steer
around obstacles in its path.
We will solve this problem by adding two Sharp GP2D12
infrared range sensors to our robot to enable it to see obsta-
cles. Table 2 lists the parts and tools we’ll need to add the
sensors. They are shown in Figure 2, while Figure 3 shows the
IntelliBrain-Bot with the sensors attached.
Testing, Testing, Testing ...
The first thing we always want to do when adding new
sensors is test them in isolation. If we don’t do this, our robot
will undoubtedly not work as we expect, and it will be very
difficult to determine the reason why. By first testing the sen-
sors separate from the rest of the system, we will verify they
work correctly and also validate (or invalidate) assumptions
we made about how the sensors should work.
Fortunately, we can easily test the new range sensors by
adding another screen to our robot’s user interface. We will
create a trivial class, RangeFinderScreen, to display the read-
ings of the sensors on the LCD screen. The following two-line
method samples the sensors and updates the display:
public void update(Display display) {
display.print(0, “L Range: “ + mLeftRange.sample());
display.print(1, “R Range: “ + mRightRange.sample());
}
By selecting the “Do Nothing” function we created in a
previous article and turning the thumbwheel to view the
range finder screen, we can view the sensor readings while
the robot (you guessed it!) does nothing other than periodi-
cally updating the user interface. By moving an object in
front of each sensor, we see that the sensors produce the
highest reading (around 500) when the object is about three
inches away. The reading drops as we move the object fur-
ther away from the sensor. The sensor reading drops to its
minimum value, near zero, once the object is about 30 inch-
es away. We can also move the object from side to side to
determine the field of view of each sensor.
AvoidBehavior Class
Now that our robot can see when it’s about to collide
with something, we need to add software that will allow it
to react quickly to avoid a collision. The AvoidBehavior class
PART
4
Quantity Description Part Number Source
2 Sharp IR range sensor GP2D12 www.junun.org
2 Three-pin JST cable www.junun.org
2 Three-circuit housing WM2801-ND www.digikey.com
6 Crimp terminals WM2555-ND www.digikey.com
1 Universal crimp tool WM9999-ND www.digikey.com
1 Wire stripper Hardware store
1 Phillips head screwdriver Hardware store
2 One-inch corner braces Hardware store
4 4/40 1/4-inch screw Hardware store
4 4/40 washer Hardware store
4 4/40 nut Hardware store
Table 2. Range Sensor Parts and Tools.
Figure 2. Range Sensor Parts.
SERVO 05.2005 43
Grau4.qxd 4/5/2005 9:40 AM Page 43
Creating Reusable Robotic Software Components
44 SERVO 05.2005
will do this. It will have the highest priority behavior, so if a
collision is imminent, it will be given control of the robot so
it can take evasive action.
Each behavior must implement the behavior interface so
it can interface with the BehaviorArbiter class. The behavior
interface defines two methods:
public boolean poll();
public void setActive(boolean isActive);
The poll method is called periodically by the
BehaviorArbiter to poll whether the behavior wants control
of the robot. If the behavior has previously been activated,
the behavior may also issue control commands to the robot
in the poll method. The poll method returns true if the behav-
ior wants control of the robot.
The setActive method activates or deactivates the behav-
ior. If the behavior is inactive, it must not attempt to control
the robot, but if the behavior is active, it should take control
of the robot. The BehaviorArbiter decides which behavior
should be active at any point in time. This method of behav-
ior arbitration relies on the individual behaviors working
cooperatively at the direction of the BehaviorArbiter to
achieve the desired overall behavior.
To follow this model, the AvoidBehavior class will deter-
mine if there is an obstacle ahead by sampling the range sen-
sors in its poll method. If the behavior has been activated, it
must take control and avoid a collision with the object it
sensed. We will compare the sensor readings to a threshold
value to determine if there is an object that needs to
be avoided.
If the reading of either sensor is higher than the thresh-
old, the behavior will want control of the robot. We will use
the following code to implement this:
public boolean poll() {
boolean wantControl = false;
int leftValue = mLeftRange.sample();
int rightValue = mRightRange.sample();
if ((leftValue > mThreshold) || (rightValue > mThreshold))
wantControl = true;
if (mIsActive) {
// take control
:
}
return wantControl;
}
If the behavior was previously activated, the poll
method will also take control of the robot. There are many
possibilities as to how the software can go about navigating
the robot around an object. We will simply program the
robot to turn a pre-defined angle to head away from the
object and drive for a pre-defined period of time, as shown
in Figure 4.
The following is the code that will execute when the
behavior is active (below the “take control” comment in the
previous code snippet):
if (wantControl) {
// object ahead, turn away
Pose pose = mLocalizer.getPose();
if (leftValue > rightValue)
mHeading = pose.theta - mTurnAmount;
else
mHeading = pose.theta + mTurnAmount;
mNavigator.go(mHeading);
mHoldUntil = System.currentTimeMillis() + mHoldTime;
}
else if (System.currentTimeMillis() < mHoldUntil) {
// object out of view, continue driving away
wantControl = true;
mNavigator.go(mHeading);
}
else
mNavigator.stop();
Figure 3. IntelliBrain Bot With Range Sensors Attached.
Figure 4. Collision Avoidance.
Grau4.qxd 4/5/2005 9:41 AM Page 44
If the object is in view, as indicated when
wantControl is true, the code queries the localiz-
er to get the current heading, then chooses a
new direction to head in. The robot will turn
clockwise if the object is closer to the left sensor
or counterclockwise if it is closer to the right
sensor.
If the object is no longer in view, but the behav-
ior’s hold timer hasn’t expired, the robot will contin-
ue in the same direction. Otherwise, it will stop and
wait for another behavior to assume control.
Note, the navigator’s go method is asynchro-
nous, so it sets a new heading and returns imme-
diately. The navigator, which is running on a differ-
ent thread, will continue to drive the robot in the
specified direction until told otherwise.
Listen to Your Navigator!
The GoToBehavior class must implement the behavior
interface just as the AvoidBehavior class does. Fortunately,
the navigator provides the moveTo method which provides
just what GoToBehavior requires to control the robot. The
GoToBehavior class’ poll method can just tell the navigator
where it wants to go and leave it up to the navigator to do
the rest.
However, the poll method cannot wait around while the
robot travels to its destination; otherwise, the BehaviorArbiter
would not continue to run, the AvoidBehavior class’ poll
method would not execute, and the robot would run into
obstacles instead of going around them. We must develop an
alternative way for the navigator to notify the GoToBehavior
when the moveTo operation is complete or has been
cancelled.
We will solve this problem by extending the navigator
interface and adding another interface, NavigatorListener.
The NavigatorListener interface simply needs to define a sin-
gle method that gets called when a navigation command
completes or is cancelled, as follows:
public interface NavigatorListener {
public void navigationOperationTerminated(boolean
completed);
}
The “completed” parameter that is in the
navigationOperationTerminated method will be
true if the operation completed and false if it was
terminated before it completed.
The GoToBehavior will listen to the navigator
by implementing the NavigatorListener interface.
This will allow it to be notified of the completion
or cancellation of the commands it issues to the
navigator. We must also extend the navigator
interface to provide a mechanism to tell the nav-
igator which listener to call. We will add the fol-
lowing two variants of the moveTo and turnTo
methods for this purpose:
public void moveTo(float x, float y, NavigatorListener
listener);
public void turnTo(float radians, NavigatorListener listener);
Finally, we must implement these two methods in the
DifferentialDriveNavigator class, a class we developed in Part
3 of this series. These are minor changes, so we won’t go
into the details here. You can learn the details by reviewing
the source code, which is available online (see Resources).
Now we have everything we need to implement the
GoToBehavior class. The essence of the GoToBehavior class is
contained in two methods mentioned, poll and
navigationOperationTerminated. As it turns out, these meth-
ods are trivial:
public boolean poll() {
if (mCompleted)
return false;
if (mIsActive)
mNavigator.moveTo(mDestinationX, mDestinationY, this);
return true;
}
public void navigationOperationTerminated(boolean completed) {
mCompleted = completed;
}
PART
4
Figure 5. Path With No Obstacles.
SERVO 05.2005 45
Figure 6. Path With Obstacles.
Grau4.qxd 4/5/2005 9:42 AM Page 45
The “this” parameter in the call to moveTo tells the navi-
gator that the object calling the moveTo method — an
instance of the GoToBehavior class — is the object whose
navigationOperationTerminated method should be called
when the operation completes or is cancelled.
Home Beckons ...
Finally, to complete our collection of simple behaviors,
we must implement the ReturnHomeBehavior class. This class
is similar to the GoToBehavior, except it doesn’t ask for con-
trol of the robot until after it is time to head home and, after
it completes the trip home, it terminates the program by call-
ing System.exit:
public boolean poll() {
if (System.currentTimeMillis() < mReturnHomeTime)
return false;
if (mIsActive)
mNavigator.moveTo(0.0f, 0.0f, this);
return true;
}
public void navigationOperationTerminated(boolean completed) {
if (completed)
System.exit(0);
}
Road Trip!
So now we have almost everything we need for our
robot to take a road trip. All we need to do still is create
a class to tie the behaviors together and plug the new vaca-
tion function into the function list in the user interface. The
vacation class will do this. All of the interesting code in this
class is in the constructor, which is where the behavior
objects get created and the BehaviorArbiter object gets
initialized:
public Vacation(Localizer localizer, Navigator navigator,
AnalogInput leftRange, AnalogInput rightRange,
int priority) {
Behavior behaviors[] = new Behavior[] {
new AvoidBehavior(localizer, navigator, leftRange,
rightRange, 200, 0.7f, 3000),
new ReturnHomeBehavior(navigator, 45),
new GoToBehavior(navigator, 60.0f, 0.0f),
new GoToBehavior(navigator, 30.0f, 30.0f),
};
mArbiter = new BehaviorArbiter(behaviors, 200, null);
mArbiter.setPriority(priority);
}
Here we create a list of four behaviors in priority order.
We pass a reference to the navigator object to each behav-
ior. The AvoidBehavior also requires references to the local-
izer and the left and right range sensors. We set the
AvoidBehavior object’s obstacle detection threshold at
200, which will cause the behavior to activate if an obsta-
cle is within approximately 11 inches of either range
sensor. The final two parameters to the AvoidBehavior
constructor control the turn angle, 0.7 radians (around
40 degrees), and the hold time when driving away, 3,000
milliseconds.
The ReturnHomeBehavior constructor’s second parame-
ter is the number of seconds the robot is allowed to travel
before it returns home.
We use two instances of the GoToBehavior to define the
two destinations we want the robot to travel to — (60, 0) and
(30, 30).
The order in which the GoToBehavior objects are placed
on the behavior list is the order in which the robot will go to
the particular destinations. Once the first GoToBehavior
object on the list has been satisfied by the robot reaching the
behavior’s destination, the behavior will cease to request con-
trol of the robot. Hence, the next GoToBehavior on the list
will gain control, and the robot will head toward the next
destination.
Lastly, we update the list of functions in the
RidgeWarriorII class to add the vacation function:
Runnable functions[] = new Runnable[] {
new Vacation(localizer, navigator,
leftRange, rightRange,
Thread.MAX_PRIORITY - 3),
:
}
Testing and Results
With the behaviors we’ve added, our robot’s vacation
plans are to visit two destinations, as shown in Figure 5.
Testing reveals the robot does indeed follow a triangular
path, though it does tend to drift from the path as
localization errors accumulate. Equipping the robot
Creating Reusable Robotic Software Components
46 SERVO 05.2005
RidgeWarrior II Source Code
www.ridgesoft.com/articles/ridgewarriorii/ridge
warriorii.htm
IntelliBrain-Bot Kit
www.ridgesoft.com/intellibrainbot/intellibrainbot.htm
WheelWatcher WW-01 Quadrature Encoders
www.nubotics.com
Sharp GP2D12 Sensors
www.junun.org
Connector Hardware and Tools
www.digikey.com
RESOURCES
Grau4.qxd 4/5/2005 9:43 AM Page 46
with WheelWatcher encoders (see Part 2 of this series)
significantly improves the accuracy with which it follows
the plan.
When unforeseen obstacles appear in the robot’s path,
as depicted in Figure 6, it is highly effective at avoiding them.
However, the robot does tend to drift further from its
planned course with the addition of more obstacles it has
to avoid.
Adding more obstacles also makes it more difficult for
the robot to find an unobstructed path through them. The
placements of multiple objects, as well as the threshold
and hold-time parameters to the AvoidBehavior, affect the
robot’s ability to find the shortest path to its next vacation
destination.
Setting the object detection threshold too low causes
the robot to be hyper-sensitive, which will make it react to
objects that are far away. This makes it more difficult for the
robot to find the gaps between obstacles and successfully
navigate through them. If there are multiple obstacles in
close proximity, the robot is more likely to take a circuitous
path around them rather than a shorter path going between
them.
Conclusion
We have developed several new Java classes that added
basic behavior-based controls to our robot. By developing
a few simple behaviors, we were able to program the robot
to carry out its previously planned vacation while avoiding
obstacles that were not included in the plan. These
classes are not tied to the specific mechanical characteristics
of the robot and therefore can be re-used to control other
robots.
In addition, we were able to make use of several
pre-existing re-usable software components — Behavior and
BehaviorArbiter — from the class library included with the
IntelliBrain robotics controller.
The behavior-based control system will enable us, in
the end, to create a more sophisticated overall behavior
for our robot by adding more sensors and more behaviors.
So, stay tuned, as we will continue to build upon the founda-
tion of re-usable software that we have developed thus
far ... SV
PART
4
www.RobotStore.com
1.800.374.5764
Yes! The internet’s first and best
robotics source has been purchased
by Jameco Electronics, and we’re
committed to greatly expanding the
product line quickly!
Each month we’ll add hundreds more
new robotics products. Plus we’ll
continue to supply favorites like
Muscle Wire
®
, the OctoBot Survivor™
robot and more.
Be sure to visit us online at
or call
For All Your Robotic Needs!
...and see what’s changed!
Robotic Arm Kit
(No. 4-523)
Twin Motor Gearbox Kit
(No. 3-709)
For All Your Robotic Needs!
www.RobotStore.com
1.800.374.5764
We’re
Back!
SERVO 05.2005 47
Steve Grau has been developing software for over
20 years. He is the founder of RidgeSoft, LLC, and
the author of the RoboJDE, a Java-enabled robotics
software development environment.
ABOUT THE AUTHOR
Circle #111 on the Reader Service Card.
Grau4.qxd 4/5/2005 9:43 AM Page 47
48 SERVO 05.2005
1. Zoom camera
2. Microphone
3. Night-vision camera
4. Lithium-ion battery
5. Antennas
6. Machine gun
7. Gunsight camera
8. Ammo can
9. Rear camera
10. Heavy-duty tracks
WEIGHT:
85 to 120 pounds
MAXIMUM SPEED:
5.2 mph
MAXIMUM RUN TIME:
4 hours
REMOTE OPERATING
DISTANCE:
Up to 1/2 mile
by David Geer
SWORDS (Special Weapons Observation Reconnaissance
Direct-action System) come with M16s, M240s, M249s, Barrett
50 calibers, 40 mm grenade launchers, or M202 anti-tank rocket
systems. Grenade launchers come with six barrels. The bots can
also be armored and equipped with sensors for heat, gas,
chemicals, and radiation to know when they are in environments
that might be a danger to others or even themselves.
THE LOW-DOWN:
Geer.qxd 4/5/2005 11:39 AM Page 48
U
S troops will carry, wield, and con-
trol these SWORDs as the soldiers
of old did with their less technical
weaponry, insinuating them into tight
spots with the finesse of a master fenc-
ing instructor. That’s about as much as
they have in common with their fencing
counterpart. These SWORDs are small
tank-like robotic defenders with more
than one cutting edge.
The SWORD robot is one of the lat-
est offspring of the TALON military,
police, and emergency rescue robot
line of products developed by Foster-
Miller, in Waltham, MA.
There is a move away from manned
vehicles and aircraft to unmanned vehi-
cles (UMVs) and unmanned air vehicles
(UAVs) across the entire military. In the
wave of this trend, robotic attack vehi-
cles are being employed, as unmanned
efforts are expected to save lives and
lower the general costs of waging war,
while making combat more effective.
Emanating from the President, the
Senate, and the Pentagon is a mandate
in the form of the Defense Authorization
Bill for Unmanned Vehicles.
This bill requires that our armed
forces field unmanned, radio-controlled
technology like the SWORD so that a
full third of our ground combat vehicles
will be unmanned as early as 2015, a
mere 10 years away.
As we’ll see with the SWORD —
just one of the iterations of the TALON
line of robots — not all UMVs are big.
But, if we were to judge military fitness
and tenacity based on size alone, nei-
ther the SWORD nor any of the
TALONs would qualify. In some cases,
the SWORD wouldn’t even make the
fighting weight at 85 to 120 pounds.
But like the law in Walking Tall, it’s
really the size of the stick and the force
behind it rather than the size of the bot
(although neither The Rock nor Joe
Don Baker were small fries).
Our fighting men and women can
utilize this fighting mobile war robot
equipped with a zoom camera, micro-
phone, antennas, gun sight camera,
machine gun, and ammo can.
The SWORD can be outfitted with
numerous weapons, configurations,
and as many as seven cameras in com-
binations such as night vision, wide-
angle, thermal, and zoom abilities.
Other options include additional
front and rear cameras, while heavy-
duty tracks and a lithium-ion battery
for power come standard.
Arsenal
SWORDS come with M16s,
M240s, M249s, Barrett 50 calibers, 40
mm grenade launchers, or M202 anti-
tank rocket systems. Grenade launch-
ers come with six barrels for six times
the effectiveness. The bots can also be
armored and equipped with sensors for
heat, gas, chemicals, and radiation.
This allows them to know when they
are in environments that might be a
danger to others and even themselves.
Even though they are expendable,
we don’t want to allow them to be
blown up every chance they get! These
little warriors games are waged using
an Operator Control Unit (OCU) com-
plete with split-screen viewing, wireless
control, and a joystick. Though the
SWORD’s main job will be reconnais-
sance missions, it is loaded for bear or
anyone else that stands in its way.
Remote operation makes it possi-
ble to put up to a half mile between
our troops and land-based enemy
forces. It can run for four hours with a
SERVO 05.2005 49
Our soldiers don’t carry the SWORD for nothing!
Special Weapons and Tactics (SWAT) is about controlling
difficult policing situations and emergencies. It’s not about
losing the lives of SWAT team members or innocent citizens.
TALONs help mitigate the risks involved in maintaining
control and producing positive outcomes. For this scenario,
TALONs come equipped to do recon on the frontlines while
SWAT members remain secure.
TALONs come with up to 80 different payloads and
attachments for countless configurations for any field situa-
tion. TALONs fulfill SWAT’s needs for nighttime surveillance,
two-way communications, and a variety of environmental
sensors.
TALONs can break down doors, loft smoke and other
grenades, and maneuver over almost any domestic terrain.
These rugged, tracked anti-terror machines climb stairs, endure
threatening environments, and respond with deadly force
when there’s just no other way.
The robots can be transported in the trunk of any SWAT
vehicle and can be controlled wirelessly from a safe distance
with a handheld or wearable RC unit. They cannot only be
carried by car, but by backpack as well.
These tough TALONs make great search and rescue
recruits, too.
Whether responding to fires, emergencies, or search and
rescue missions, the TALON can stand the heat, seek the vic-
tims, and save the day. Initial site assessments are enabled safe-
ly and quickly with these speedy bots that can roll with the
speed of a human being at a full running gate.
TALONs go safely into confinements like holes in the
ground, walls, and burning buildings to determine the best
recourse for victims and property. In many cases, it has the
ability to also carry them out. These nearly unstoppable
heroes can even swim underwater to get to where they’re
needed most.
Other TALONs and Their Talents
SWAT Team TALONs Move to the Frontline in Protecting the Public!
Geer.qxd 4/5/2005 11:41 AM Page 49
max traveling velocity of 5.2 mph. At a
cost of around $230,000.00 per unit,
that’s not too pricey (as government
spending goes).
The military is going lighter and
more powerful. It’s going meaner as
well as leaner, employing the Small
Mobile Weapons Systems (SMWS).
These TALONS and the SWORD are the
ground patrol answer to what we’ve
seen in the way of UAVs at work in Iraq
and Afghanistan.
The SWORDS are expected
to be on the ground, in action,
and in charge in coming months
(if not by the publication of this
article).
SWORDS are precision per-
fect marksmen that fearlessly
advance on the enemy, knowing
nothing of retreat unless their
operators decide to move them
in a different direction.
SWORDS are light and easi-
ly carried from combat site to
combat site, and their compara-
bly miniscule statures make
them hard targets for unfriendly
fire. SWORDS can go most any-
where a soldier can, with as
much speed.
SWORDS can explore caves
and territory where the enemy
may be lying in wait for our
fighting men and women. This mobile
warrior is increasing in capacity and
function while decreasing in cost.
SWORDS need little care and no train-
ing (but their operators do).
Though hundreds of billions of dol-
lars are being poured into a project
called the Future Combat Systems proj-
ect (FCS), the SWORD doesn’t fall
under its umbrella, according to
Cynthia Black of Foster-Miller.
Foster-Miller, Robots,
and Nanotechnology
Foster-Miller is a nanotechnology
firm as well as a robotics vendor. Small
robots are just one of their many areas
of expertise. With reference to SWORDS,
however, the rate of improvement and
miniaturization of various technologies
affects the speed at which they develop
and grow (or shrink).
I know Moore’s Law in relation to
the size and speed of computer chips and
their rate of improvement over previous
models (technology). Basically, Moore’s
Law (coined by Gordon Moore who
formed Intel) has reliably stated that the
number of microcomponents that can be
placed in a microchip at the lowest man-
ufacturing cost doubles every 18 months.
Computer chips are certainly a fac-
tor in smaller, smarter, and deadlier
SWORDs and combat robots. Closer to
the point, nanotechnology is getting
smaller, cheaper, and more functional
at a rate constrained by little more than
the amount of funding applied to it.
Case in point, SWORDS are now
manufacturable at little more than half
the cost of the production of the first
models. In so far as smallness is consid-
ered as an advantage, they can certain-
ly go much smaller as they grow more
intelligent, precise, and overpowering.
Though the company wouldn’t dis-
cuss specific materials that go into
SWORDs, Foster-Miller is a leader in
advanced materials discovery. You can
be sure that it’s hardly mere steel that
enables these virtually unstoppable
bots to charge on in the face of attacks
that would end a flesh and blood
combatant’s military career. SV
This Operator Control Unit (OCU) is the SWORD’s
wireless remote control fitted with a hard-shell
case. Notice the antenna, numerous controls for
driving and manipulating the SWORD combat
robot, and the multiple split screens for viewing
everything the robot’s cameras pick up.
1. Foster-Miller, SWORD vendor
www.foster-miller.com/
2. SWORD (a.k.a., Weaponized Talon)
data sheet
www.foster-miller.com/literature/
documents/Weaponized_Talon.pdf
3. Other Foster-Miller robotics
technologies
www.foster-miller.com/t_r_military/
relatedprojects.htm
Resources
50 SERVO 05.2005
Circle #63 on the Reader Service Card.
Geer.qxd 4/5/2005 11:42 AM Page 50
SERVO 05.2005 51
Last month, I left off with the CNC machine mostly assembled but not
moving under any type of control. This month, I’ll talk about the steps
needed to cut out a simple part. This will include the electronics needed to
interface the steppers to the computer and the software to drive them.
by Lester “Ringo” Davis
T
he cutting tool you decide to use will depend on
how fast you want to cut, how tough the material is
that you want to cut (i.e., plastic or metal), and how
much you want to spend. Several options are a Dremel
tool, a RotoZip tool, or a Porter Cable motor. I’m start-
ing off with a Dremel because it is the easiest, cheapest,
and available everywhere. I made a couple brackets to
hold the Dremel as shown in Figure 1. The top hole was
cut to fit exactly, and the bottom hole was slightly larg-
er to allow the tool to be easily inserted. The bracket is
then tightened to hold the tool securely.
When it comes to interfacing steppers, there are
a lot of options. You can buy controller boards from
many sites on the Web, you can build your own board
using a stepper motor controller chip, or you can build
one out of various parts. Since the purpose of build-
ing this CNC machine was to do it all myself, I decid-
ed to go for the last option and build the board out of
various parts. While I was doing some research on the
Web, I found a forum on CNCZone.com, which turned
out to be a great source of info on boards, as well as
what software to start with.
Since I’m a fan of Eagle (www.Cadsoftusa.com)
for board schematics and layout, I looked for boards
that have already been designed. I found one and
downloaded the file. The file is called OSuni-3(317).sch,
and if you find the designer, thank him for me.
A picture of the completed board is shown in
Figure 2, while the schematic is shown in Figure 3. As
you can see, the schematic is not very complicated.
The printer port takes step and direction signals from
the PC and uses a little logic and some flip flops to turn
on the transistors for the steppers. I’m using Uni-polar
stepper motors, which means that the current only trav-
els in one direction. As a result, I only need four transis-
tors for each stepper. Bi-polar steppers change the
direction of the current in a push-pull fashion. This gives
them more torque but makes them a little more compli-
cated to control. One thing to mention is that the four
transistors are turned on in a sequence. If the wires
from the steppers are in the incorrect order, the step-
FIGURE 1. Closeup of machine cutting.
Davis2.qxd 4/5/2005 9:46 AM Page 51
pers will not turn but just dance back and forth instead. It
takes a little experimentation to get the order correct. I fig-
ured out the order by using a signal generator set to send
out a pulse of about four hertz. I tried different combina-
tions until the stepper started to spin. The board also has
jumpers to allow the direction to be inverted in case the
software you use does not allow this.
I’m using a five-volt, 30-amp power supply purchased
from a local supplier. This is overkill on the amperage side
of things, since each stepper only needs about two amps.
Better safe than sorry.
At this point, the steppers are spinning and the parts
of the CNC machine are moving like they should, so it is
time to try to do something useful.
On the software side of the project, there are lots of
options. There are three different pieces of the software
puzzle that must be put together to get everything to work.
On the highest level, there is the CAD program. This is a
drawing program that you use to draw the parts you want
to cut out. Then there is the CAM program that takes the
CAD drawing and generates the path the tool will take while
cutting. The CAM software generates a list of instructions
called G-Code. The lowest level of software is the G-Code
interpreter. This reads the list of instructions and sends out
the correct pulses to the stepper controller board. You could
actually only use the interpreter and write G-Code by hand,
but that would not be fun or easy.
I looked around for software I could demo to test the
machine, and there is plenty of stuff out there. Experiment
A Hobby CNC Milling Machine
52 SERVO 05.2005
FIGURE 2. Stepper interface board.
+V S1-2
GND S1-1
Power
+ C6
10uf
C2
.1uf
IC2
LM317
INOUT
ADJ
I
K
R
2
6
3
.
1
K
R
2
7
C1
.1uf
C3
.1uf
C8
.1uf
C7
10uf
VDD
IC1P IC7P IC5P IC8P IC3P IC4P IC6P
7











1
4
G
N
D






V
C
C
7











1
4




V
S
S







V
D
D
7











1
4




V
S
S







V
D
D
7











1
4




V
S
S







V
D
D
7











1
4




V
S
S







V
D
D
7











1
4




V
S
S







V
D
D
7











1
4




V
S
S







V
D
D
GND
5V
GND
GND
3
3
0
R
3
L
E
D
1
P
W
R
120K
R30
P
R
O
B
E
R29
10K
Q13
2N3904
L
E
D
2
P
W
R
GND
Logic Probe
R28
330
VDD
LPT
14
15
16
17
18
19
20
21
22
23
24
25
1
2
3
4
5
6
7
8
9
10
11
12
13
GND
R17
R18
R19
1k
R22
1k
R21
1k
R20
1k
R25
1k
R24
1k
R23
1k
1k
1k
VDD
GND
Limit Switches
1
2
3
4
5
6
7
8
9
10
JP4
ZSTEP
ZDIR
YSTEP
YDIR
XSTEP
X
D
IR
YSTEP
YDIR
D
2
D
5
XSTEP
XDIR
VDD
I
k
R
1
0
10k
R5
VDD
1
k
R
1
1
10k
R6
C11
220p
GND
1
74HC14N
2
IC1D
IC1E
3 4
74HC14N
VDD
JP3
R
4
4
7
k
IC3D
11
4030N
IC3C
10
4030N
GND
Dir
1
2
12
13
8
9
e
e
e
e
5
6
1
2
IC3B
4
4030N
IC3A
3
4030N
GND
GND
6
5
3
4
8
9
11
10
IC8A
S
D
CLK
R
Q
Q\
4013N
IC8B
CLK
D
S
R
Q
Q\
4013N
12
13
2
1
S7-2
Q12
IRFZ44
S7-1
Q11
IRFZ44
X Axis
Q10
IRFZ44
S6-2
Q9
IRFZ44
S6-1
GND
S3-2
Q4
IRFZ44
S3-1
Q3
IRFZ44
Y Axis
S2-2
Q2
IRFZ44
S2-1
Q1
IRFZ44
GND
12
13
2
1
Q
Q\
CLK
R
D
S
IC5A
4013N
IC5B
CLK
D
S Q
Q\ R
4013N
GND
10
11
9
8
GND
4
3
5
6
IC4B
4
4030N
e
5
6
1
2
e
IC4A
3
4030N
VDD
R
1
4
7
k
12
13
8
9
IC4D
11
4030N
IC4C
10
4030N
e
e
GND
Dir
2
1
JP1
C4
220p
GND
IC1B
10
74HC14N
11
C5
220p
GND
10k
R7
VDD
1
k
R
1
2
VDD
1
k
R
1
3
10k
R8
VDD
ZDIR
1
k
R
1
4
10k
R9
GND
220p
C10
5
GND
220p
C9
13
IC1A
12
74HC14N
IC1F
6
74HC14N
VDD
R
2
4
7
k
12
13
8
9
JP2
1
2
Dir
GND
IC6D
11
4030N
IC6C
10
4030N
e
e
5
6
e
IC6B
4
4030N
GND
6
5
3
4
IC7A
CLK
R
D
S Q
Q\
4013N
1
2
Q8
IRFZ44
S5-2
Q7
IRFZ44
S5-1
Z Axis
Q6
IRFZ44
S4-2
S4-1
Q5
IRFZ44
GND
13
12
Q\
Q
CLK
R
D
S
IC7B
4013N
GND
10
11
9
8
IC6A
3
4030N
1
2
e
IC1C
8
74HC14N
9
C12
220p
GND
10k
R16
VDD
1
k
R
1
5
ZSTEP
FIGURE 3. Stepper interface schematic.
A larger, printable, PDF copy of this schematic can be
found on our website at www.servomagazine.com
Davis2.qxd 4/7/2005 8:43 AM Page 52
and see what you like best. I settled on
Mach2 from www.artofcnc.ca/prod
uct.html as the G-Code interpreter and
Bobcad from www.bobcad.com/ for the
CAD/CAM solution. BobCad has both CAD
and CAM in one package which is conven-
ient. It will also import files form other CAD
packages as well, like Autocad, so it will
work with whatever CAD software you like.
I started with Mach2. After installa-
tion of the software, it is imperative that
you reboot for everything to work proper-
ly. The first thing you must do is go into
the configure menu and set the correct
port pins. This is where you tell the soft-
ware which printer port pin is assigned to
X-step, X-direction, and the same pins for
the Y and Z directions. You also need to
tell the software how many steps per unit
your machine has. This means how many
pulses do you send out to move, and this
can be configured in inches or metric
units (mm).
My machine uses steppers that have 200 steps per rev-
olution and a lead screw that has 10 turns per inch. This
means that it takes 2,000 steps to move each axis one
inch, or one step to move each axis 0.0005 inches. Not too
bad for a homemade machine. If you set this up incorrect-
ly, the parts you cut out will be the wrong size, either too
big or too small.
The last step is to set the rate at which the stepper will
move. The way I tested this was to pick a speed, then “jog”
the machine to see if it moves correctly. You can jog yours
by using the arrow keys on the keyboard
and the page up/down buttons. Pressing
the left arrow, for example, should move the
cutting head to the left. If the head moves
the opposite direction, then you can go into
configure and reverse the motor directions.
If the motors make noise but don’t move or
move sporadically, then you may have the
rate set too high. Lower it and try again.
I ran into a problem here. As I said pre-
viously, I’m using a five-volt supply because
my motors are rated at five volts. Because of
this, I have to use a very slow feed rate in
order to not miss any steps. The solution to
this problem is to use a higher voltage on the
steppers, which would allow the steppers to
move faster, then the feed rate can be
increased. The problem with this is that the
motors will get hot if the voltage is too high.
There are a couple solutions to this problem,
as well. One is to use a “chopper” board that
pulses the voltage to the steppers, and the
other is to use large wattage-ballast resistors in line with the
motors. The chopper is definitely the more elegant solution
and the one I’ll be switching to in the future.
Once you have everything set up and working, you can
drive the cutting head around with the jog command and
cut simple shapes like squares. But that is not what we set
out to do.
Start up BobCad, draw out some shapes, and gener-
ate some G-Codes. I don’t have room here to go into detail,
but you can quickly figure out how to draw lines, arcs, cir-
PART 2
SERVO 05.2005 53
FIGURE 4. BobCad screenshot.
FIGURE 5. Mach2 screenshot.
Davis2.qxd 4/5/2005 9:50 AM Page 53
cles, and whatever else you need. After you draw some-
thing, you can select a part of the drawing and click the
icon to generate the G-Code. You will see a list of the code
generated, and there is an example of the BobCad screen
in Figure 4. After the G-Code is generated in Bobcad, you
can then load it into Mach2 and start the cutting process.
I wanted to make sure the part came out correctly, so
instead of using something I just drew, I used a drawing
from an existing product.
I contacted Jason from www.RoboticsConnection.com
and he gave me a file for a part used on his R1 robots. I
imported the G-Code into Mach 2 and could see the tool path
on the screen. A screenshot is shown in Figure 5.
This is neat because you can see if the tool is going to
cut exactly what you want. I decided to try out the
machine by cutting a piece of expanded PVC. I first mount-
ed a piece of high-density fiberboard to the machine as a
backing board and then the PVC on top of that. The rea-
son for this is so, when the cutter goes through the mate-
rial, it does not cut into the machine. I jogged the cutter to
the center of my material and used the “zero axis” button
to set everything at zero. Then I started the program and
watched the magic happen.
The material I used was fairly thin, so it bounced a little.
I held it down while it cut to smooth it out. I would not rec-
ommend doing this, as the cutter could easily slice a finger,
but I really wanted to get a good first cut (see Figure 6). The
cutting was slow because of my five-volt supply, but after a
few minutes the process was done. The part came out really
nice for a first try, and you can see where it cut into the back-
ing board in Figure 7. The final part is shown in Figure 8.
So that is the complete story of my first CNC part.
There are several things I still need to do. I need to get a
higher voltage supply and a chopper controller board, so I
can use a higher feed rate to get things cut quicker. I also
need to decide how I will fasten down the material and
backing board to the machine for future parts.
For this first experiment, you can see that I used the
old standby, duct tape. I think, in the future, the backing
material will bolt onto the machine, and the material to be
cut will clamp onto the backing board.
A light built into the machine and a blower or vacuum
will also make life easier. For making prototype parts,
engraving, or hobby stuff, this machine will work great. It
is probably not stiff enough for production runs, but then
again, it is made of plastic.
The schematics for the stepper controller are available
on the SERVO website (www.servomagazine.com) in
both Eagle and PDF formats.
Good luck and have fun. SV
A Hobby CNC Milling Machine
FIGURE 6. Cutting the part. FIGURE 7. After the cuts. FIGURE 8. The finished part.
Desktop CNC Solutions
Step and direction servo drives, 5amp 30vdc
Globe pmdc servo motors with encoders
DeskCNC controller and software, (MS-Windows)
CNC Component kits and assembled systems
Surface scanning probe and Power supply kits
vector
XT
3D CAD/CAM
DeskCNC
IMService
P. O. Box 1 42, New Hudson, MI 481 65
Voice: 888-451-1670
or: 248-486-3600
imsrv.com
54 SERVO 05.2005
Davis2.qxd 4/5/2005 9:51 AM Page 54
www.garage-technologies.com
Building Blocks
for Robotics
• unique smart servos
• controllers & software
• sensors
Complete kits starting at $70
• 3 Tools in 1 – Lathe, Mill Drill
• Ve rs a t i l e – Ma c h i ne Me t a l s, Plastic, Mo re
• P re c i s e – Built to tolera nces up to
0.0005 inc h
• CNC Compatible – Mo dels ma nu fa c t u re d
to easily adapt CNC systems
• E A SY to Us e – Full Ins t r uc t ions &
L i f e t i me Tech Support
And ONLY the Smithy is...
• G UA R A N T E E D to Pay for Itself or
Your Mo ney Back!
Get Your FREE FACT KIT!
Put a COMPLETE
MACHINE
SHOP
on Your
Bench To p !
Machine It Yourself &
S a v e . . . G u a r a n t e e d !
Tired of PAYING for Machining?
Now 7
Models!
Call To d a y
1 - 8 0 0 - 4 7 6 - 4 8 4 9
Ask for operator SER
Ask for our FREE 96 page catalog
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....
ORDER TOLL FREE
1 - 8 0 0 - 8 2 6 - 5 4 3 2
THOUSANDS OF ELECTRONIC
PA RT S A N D S U P P L I E S
Robotics Showcase Robotics Showcase
SERVO 05.2005 55







ooofmZgla[k[ge
ÝÛ <YkqÛafklYddYlagf
ÝÛ Dg\]dkÛ[gehYlaZd]Ûoal`Û=mlYZY•Û
>NJ•Û?al][Û¬Û?gZZa[gÛk]jngkÛ
Yf\ÛeYfqÛJgdYjZgla[kÛeglgjk
ÝÛ Lk]kÛklYf\Yj\Ûo`]]dk
ÝÛ ;]Y\Ûj][cgfaf_•Ûg\ge]ljq•ÛklYddÛ
\]l][lagf•Û[dgk]\¤dgghÛ[gfljgd
N`]]dNYl[`]j
KD
8lÛCYkl›ÛCgoÛ[gklÛ
]f[g\]jkÛ^gjÛ
eglgjkÛ¬Ûk]jngk›
KD
ShowcaseMay05.qxd 4/5/2005 11:28 AM Page 55
A
s a devout reader of SERVO, you are acutely aware that
robots and robotics are big news, but they are only now
entering the mainstream public’s radar screen. Yes, iRobot’s
Roomba Robotic Floorvac remote vacuum cleaning system
and the WowWee Ltd Robosapien scored big in Christmas
2004 sales (one mil-
lion and 1.5 million
units sold, respec-
tively), but it is the
compact Boe-Bot
that will win the heart and minds of students, hobbyists, and
high-tech tinkerers.
One area where these robotic newbies might have a
problem is in getting some sort of “familiar” visual feed-
back from the Boe-Bot. As many of us know all too well, a
flashing light emitting diode (LED) ain’t going to hack it.
More specifically, beginning users need a display that can
visually convey some of the robot’s internal “brain” informa-
tion in a meaningful and verbose manner. Unfortunately,
this type of display has typically been rather costly and
beyond the means of most
beginners; especially after
spending nearly $200.00 for
a robot.
Yes, wiring and program-
ming a liquid crystal display
(LCD) unit is possible (see
SERVO, January and February
2005; “Rubberbands and
Bailing Wire,” by Jack
Buffington). This type of
advanced circuit construction
is generally impractical for
beginning robot builders,
however. Likewise, there is a
significant time investment
that is necessary for adding
this type of project to a Boe-
56 SERVO 05.2005
How to Add an LCD Display to
Boe-Bot for Less Than $20.00!
PURE MARKETING GENIUS —
That’s how we should view
selling the Boe-Bot
TM
through
RadioShack
®
stores (Parallax, Inc.;
www.parallax.com). Never before
has such a powerful and program-
mable robot been so universally
accessible to anyone with an interest
in robotics. Likewise, this marketing
venture has opened robotics up to a
whole new audience. And this new
group of fledgling robot owners can
breathe new life into robotics.
by Dave Prochnow
FIGURE 1. A solderless breadboard,
two picture frame hangers, and four
4-40 x 1/2-inch machine screws are all
that you need for mounting the
LCDBug on your Boe-Bot.
FIGURE 2. Attach the angle hangers to the front
standoff screws of the Boe-Bot.
Prochnow.qxd 4/5/2005 10:49 AM Page 56
Bot. What a beginner really needs is a low-cost, alphanu-
meric LCD unit that can be readily “plugged” into the
Boe-Bot’s breadboard so it works … the first time. No
debugging, no soldering, no programming; just plug it in
and display.
There is one other important factor that must character-
ize this LCD unit. It has to be inexpensive. While the Parallax
LCD Terminal Application Module (#29121) can be installed
on the Boe-Bot, the $39.00 price tag is a little too hefty for
those users who are looking for a simple display (sans the ter-
minal capability). For about half the price of this AppMod,
Boe-Bot owners can find the ideal answer from BG Micro
(www.bgmicro.com).
Known as the LCDBug, this inexpensive two-line by eight-
character display is a terrific visual interface companion to the
Boe-Bot. Housed on a standard 20-pin IC socket header, the
LCDBug consumes five volts of power, utilizes an Atmel
ATtiny26 microcontroller for providing the LCD firmware, and
requires only one serial output pin from the Boe-Bot.
Therefore, with just a simple three-pin connection and a cou-
ple of lines of PBASIC, virtually anyone can have a great robot
display for less than $20.00.
There is another LCD unit with a similar insect-like
name that initially looks like a worthy competitor to the
LCDBug. The AVR Butterfly from Atmel Corporation
(www.atmel.com) does contain some features that are
similar to those of the LCDBug (see “Bug versus Butterfly”
sidebar), but it has two extremely significant differences.
First, the AVR Butterfly does not come equipped with a
standard socket header that can be readily inserted into
the Boe-Bot Board of Education
®
(BOE) breadboard. A
beginning robot owner would either have to solder a
series of jumper wires and headers to the upper surface of
the AVR Butterfly or purchase a prebuilt carrier board
(e.g., ECROS Technology Butterfly Carrier for $18.95;
www.ecrostech.com/Products/Butterfly/Intro.htm).
Second, and more worrisome, accessing the AVR Butterfly
through PBASIC would be a tough, if not impossible
challenge for a beginner. Therefore, the LCDBug is a
practical visual interface for the Boe-Bot, as well as a
terrific bargain.
Whether you’re a budding Boe-Bot builder or a sea-
soned robot hacker, adding the LCDBug to your favorite
robot design is remarkably easy. Sure, you could just slap the
“Bug” down on the Boe-Bot’s breadboard, but then you
would have a tough time chasing after your autonomous
creation, trying to spy its visual display. A better method is
to mount the LCDBug on an elevated breadboard “billboard”
that can be easily read from a more relaxed vantage point.
So let’s make a breadboard billboard, install the LCDBug,
and write some PBASIC for enabling us to read the Boe-Bot’s
thoughts.
Step 1. Build Your Billboard. While you don’t have to erect
a breadboard billboard for holding the LCDBug, it is a lot
easier to read an upright display than a prone one.
Remarkably, if you already have a spare breadboard IC sock-
et laying around, the cost of the mounting hardware can be
less than $2.00. Otherwise, expect to spend about $10.00
for a RadioShack-brand breadboard (#276-175) and mount-
ing hardware. In keeping with the beginner spirit of this
project, all of the required mounting hardware can be
found at a home improvement center like Lowe’s (e.g., 4-40
FIGURE 3. Mount the breadboard to the angle hangers.
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
STEER WINNING ROBOTS
WITHOUT SERVOS!
Order at
(888) 929-5055
SERVO 05.2005 57
Prochnow.qxd 4/5/2005 10:53 AM Page 57
x 1/2-inch machine screws and nuts) and hobby centers
like Hobby Lobby (e.g., small sawtooth picture hangers
with nails).
Step 2. Bend It But Don’t Break It. The small sawtooth pic-
ture hangers are used for holding the breadboard upright.
Begin by bending the two hangers into 90-degree angles. A
pair of needle-nose pliers makes this job a snap. You will also
have to ream out the holes on the ends of each hanger for
accommodating a 4-40 machine screw. A handheld,
portable, battery-powered drill with a 7/64-inch drill bit can
be used for enlarging these holes.
Step 3. Bolt ‘er Down. Remove the two pan-head screws
from the standoffs along the front (i.e., the edge nearest
the breadboard) of the Boe-Bot. Hold one of the angle
hangers that you fabricated in Step 2 over the mounting
hole in the BOE and forward standoff. Next, slip one of
the removed pan-head screws through the reamed hole of
the hanger and reattach the BOE to the standoff. Repeat
this same procedure for the other forward standoff. You
can refer to page 100 of the Robotics with the Boe-Bot
manual (included with the kit) for additional information
for reattaching the BOE to the front-end standoffs. Finally,
attach the breadboard billboard to the angle hangers with
the 4-40 machine screws and nuts. We added a second
pair of machine screws and nuts to the two remaining
empty mounting holes on the breadboard for visual
esthetics.
Step 4. Mount Your ‘Bug. Determine the location of Pin 1 of
the LCDBug by studying your pin-out diagram. Install the
LCDBug on the breadboard billboard with Pin 1 oriented
toward the lower left corner and seat all of its pins firmly into
each socket. Remember, do not press on the LCD screen
during this process.
Step 5. You’ve Got Your Connections. You will need three
jumper wires for connecting the LCDBug to the Boe-Bot.
First, make sure that the three-position power switch on the
Boe-Bot is off (i.e., Position 0). Now attach one jumper from
the power socket header (Vdd) on the BOE to Pin 5 (you can
also use Pin 15 or both Pins 5 and 15) of the LCDBug. Next,
connect another jumper from the BOE ground header (Vss)
to Pin 6 (you can also use pins 16 or both Pins 6 and 16) on
FIGURE 4. Only three wires are needed for
connecting the LCDBug to the Boe-Bot.
FIGURE 5. Running the sample distance program with the variable’s
output displayed on the LCDBug.
58 SERVO 05.2005
Circle #47 on the Reader Service Card.
Prochnow.qxd 4/7/2005 12:06 PM Page 58
the LCDBug.
Step 6. Serialize, Seriously. The final connection between the
Boe-Bot and the LCDBug is for a serial data input line. This
connection corresponds to one of the BASIC Stamp I/O pins.
Since our Boe-Bot is already using several of these lines for
navigation inputs, we connected the LCDBug to I/O Pin P7.
Any pin that you have open will work just fine, however.
Just run a jumper wire from Pin 9 of the LCDBug and connect
it to I/O Pin P7 (or, your alternately selected I/O pin) of the
Boe-Bot.
Step 7. One Line Wonder. Once you’ve completed all of the
hardware connections for the LCDBug, only one PBASIC com-
mand is needed to drive output to the LCD. Use SEROUT for
sending text to the LCDBug. For example:
SEROUT 7, 84, [“SERVO”]
where,
SEROUT = PBASIC command for serial output
7 = Tpin; the I/O pin we used in
= Step 6
84 = Baudmode; baud rate for
= LCDBug; 9600, 8-bit, no-
= parity, true
[“SERVO”] = OutputData; the text for display
= on the LCDBug
Step 8. You Snooze or You Lose. During power-up initial-
ization (or following a Clear Screen command), the
LCDBug clears the screen, sets the default cursor style
(i.e., blinking underline), and positions the cursor in the
upper left corner. This initialization can result in a slight
After a close inspection of the LCDBug’s underside,
two names figure very prominently in the design and
assembly of this display unit. The most visible of these
two names is Hantronix. Anyone who has experimented
with LCDs knows that Hantronix is a major manufacturer
of display modules (e.g., HDM08216H-3 is the module
used with the LCDBug; you can find ample technical doc-
umentation on the Hantronix website at www.hantronix
.com/2_2.html). The other name, Dale Wheat, is a little
more difficult to figure out. Thankfully, Mr. Wheat has his
URL printed on the ‘Bug’s underside. It turns out that
Dale Wheat is the inventive mind behind the LCDBug.
Please visit his website (www.dalewheat.com) for more
information about the LCDBug, as well as some of his
other projects.
The Minds Behind the LCDBug
SERVO 05.2005 59
Circle #59 on the Reader Service Card.
Prochnow.qxd 4/5/2005 10:56 AM Page 59
delay before any text can be displayed on the LCD.
Therefore, a short pause (or PBASIC NAP command)
should be executed in your code before sending SEROUT
data. For example:
‘ {$STAMP BS2}
‘ {$PBASIC 2.5}
NAP 5 ‘ Sleep mode
SEROUT 7, 84, [12] ‘ Clear Screen
SEROUT 7, 84, [28] ‘ Show Revision
PAUSE 1000 ‘ Pause Program
SEROUT 7, 84, [12] ‘ Clear Screen
SEROUT 7, 84, [“SERVO”, 10, 13, “Magazine”]‘ Display 2
‘ lines of text
You can include this subroutine at the beginning of all
of your Boe-Bot programs. In fact, this subroutine is a
great replacement for the Start/Reset Indicator Circuit
program described in Robotics with the Boe-Bot,
“Activity #3.”
Step 9. Sever the Tether. Okay, let’s do something practi-
cal with the LCDBug. In this demonstration, rather than
printing distance traveled values on a tethered computer
via DEBUG, we will use the LCDBug for displaying these
readings.
Similarly, in your own programs, you can replace DEBUG
commands with a series of SEROUT commands. This simple
replacement will provide Boe-Bot with a remote message sys-
tem for displaying sensor readings, status reports, and
program variable values — all without the need for a tethered
computer.
‘ {$STAMP BS2}
‘ {$PBASIC 2.5}
counter VAR Byte
distance VAR Word
NAP 5 ‘ Sleep mode
SEROUT 7, 84, [12] ‘ Clear Screen
SEROUT 7, 84, [28] ‘ Show Revision
PAUSE 1000 ‘ Pause Program
SEROUT 7, 84, [12] ‘ Clear Screen
SEROUT 7, 84, [“SERVO”, 10, 13, “Magazine”]‘ Display 2
‘ lines of text
FOR counter = 1 TO 205
PULSOUT 13, 850
PULSOUT 12, 650
PAUSE 20
distance = (counter/41)*23
SEROUT 7, 84, [12]
SEROUT 7, 84, [DEC distance, “ cm”]
NEXT
END
Having mastered the hardware and software aspects of
displaying short informative messages onboard the Boe-Bot, you
can now make the LCDBug a permanent fixture in all of your
future Parallax robot experiments. SV
60 SERVO 05.2005
Feature LCDBug AVR Butterfly
LCD 8 x 2 6 x 1
Interface TTL RS-232/USI
Processor ATtiny26 ATmega169
Memory Flash - 2K DataFlash - 4Mbit
Speed 8MHz 32KHz
Power +5V +3V
Sensors None 2
Price $19.95 $19.95
TABLE 1. The LCDBug versus the AVR Butterfly.
If you’re an avid robot builder and you don’t know
about the Atmel AVR Butterfly, then you’re missing out on
one of the great bargains in microcontroller develop-
ment tools. For less than 20 bucks, you get a powerful
Atmel ATmega169 processor, a discrete one-line, six-char-
acter LCD display, a “joystick” input control, light and tem-
perature sensors, a piezo speaker, and a three-volt but-
ton-cell-battery power source. Oh, and did we say that
you can type your name into the Butterfly, clip in on your
shirt, and wear it like a high-tech name tag? The AVR
Butterfly can be purchased from Digi-Key (www.
digikey.com).
You can review the significant features of the LCDBug
and the AVR Butterfly with our side-by-side comparison
in Table 1.
Bug versus Butterfly
Dave Prochnow is a frequent contributor to Nuts &
Volts and SERVO Magazine, as well as the author of 25
nonfiction books including the best selling
Experiments with EPROMs. Dave also won the 2001
Maggie Award for the best “how-to” article in a
consumer magazine. He is currently assembling an
enormous selection of robot tips, programs, and hacks
into his forthcoming book, The Official Robosapien
Hacker’s Guide (TAB Electronics, 2005).
About the Author
Prochnow.qxd 4/5/2005 10:58 AM Page 60
SUBSCRIBE NOW!
12 issues for $24.95
www.servomagazine.com or
call toll free 1-877-525-2539
ServoHouseNov03Ad.qxd 4/7/2005 12:37 PM Page 61
We accept VISA, MC, AMEX, and DISCOVER
Prices do not include shipping and
may be subject to change.
The SERVO Bookstore
M
in
d
C
a
n
d
y
F
o
r T
o
d
a
y
’s
R
o
b
o
tic
is
t
Electronics Demystified
by Stan Gibilisco
Now anyone with an
interest in electronics
can master it by reading
this book. In Electronics
Demystified, best-selling
science and math writer
Stan Gibilisco provides
an effective and pain-
less way to understand
the electronics that
power so much of modern life. With
Electronics Demystified, you master the sub-
ject one simple step at a time — at your own
speed. This unique self-teaching guide offers
problems at the end of each chapter, a
section to pinpoint weaknesses, and a 70-
question final exam to reinforce the entire
book. If you want to build or refresh your
understanding of electronics, here’s a fast
and entertaining self-teaching course that’s
completely current. $19.95
Electronic Circuits for the
Evil Genius
by Dave Cutcher
Cutcher's 57 lessons
build on each other and
add up to projects that
are fun and practical.
The reader gains valu-
able experience in cir-
cuit construction and
design and in learning to
test, modify, and
observe results. Bonus
website www.books.mcgraw-hill
com/authors/cutcher provides anima-
tions, answers to worksheet problems, links
to other resources, WAV files to be used as
frequency generators, and freeware to apply
your PC as an oscilloscope $24.95
Electronic Gadgets for the
Evil Genius
by Robert Iannini
The do-it-yourself
hobbyist market —
particularly in the area
of electronics — is
hotter than ever. This
book gives the “evil
genius” loads of
projects to delve into,
from an ultrasonic
microphone to a body
heat detector, all the way to a Star Wars
Light Saber. This book makes creating these
devices fun, inexpensive, and easy. $24.95
62 SERVO 05.2005
ROBOT DNA SERIES
Three Volume Pack
Everything you need to program your
robot controller:
• Microcontrollers in Robots
• Software Development
• The Microchip PICmicro Microcontroller
• Microcontroller Connections
• Designing the Robot System
• Going Forward
Everything you need to build your own
robot drive train:
• The Basics of Robot Locomotion
• Motor Types: An Overview
• Using DC Motors
• Using RC Servo Motors
• Using Stepper Motors
• Motor Mounting
• Motor Control
• Electronics Interfacing
• Wheels and Treads
• Locomotion for Multipods
All the data you need to build your own
robot base:
• Mechanical Construction
• Electrical Construction
• Operating Power
• Robot Designs
• Constructing a Two-Wheeled Rover Robot
• Selecting the Right Materials
• Glossary of Terms
• Tables, Formulas, and Constants
Subscribers: $21.95 each book
Non-subscribers: $24.95 each book
OOP Demystified
by James Keogh / Mario Giannini
Learn object-oriented
programming in no time
with help from this easy-
to-understand guide, ideal
for novice and expert
programmers alike.
Discover why objects are
so successful as the
model for this type of
programming and how objects are classified.
Distinguish between how people see the
world and how computers “see” it. Learn
about attributes and methods, inheritance,
polymorphism, real-world and case model-
ing, object-oriented programming languages,
and much more. Each chapter ends with a
quiz, culminating in a final exam at the end
of the book to test your knowledge. $19.95
Build Your Own Electronics
Workshop
by Thomas Petruzzellis
The Electronics
Workshop was written
to assist the newcomer
to the field of practical
electronics through the
creation of a personal
electronics workbench.
This is a place specially
designed so that read-
ers can go there to
work on an electronic project, such as test-
ing components, troubleshooting a device,
or building a new project. This book
includes invaluable information, such as
whether to buy or build test equipment,
how to solder, how to make circuit boards,
how to begin to troubleshoot, how to test
components and systems, and how to build
your own test equipment, complete with
appendix and resources, etc. This is THE
book for anyone entering the field or hobby
of electronics. $29.95
Build Your Own Humanoid
Robots
by Karl Williams
Build Your Own
Humanoid Robots
provides step-by-step
directions for six exciting
projects — each costing
less than $300.00.
Together, they form the
essential ingredients for
making your own
humanoid robot. $24.95
JunkBots, Bugbots, and Bots on
Wheels: Building Simple Robots
With BEAM Technology
by Dave Hrynkiw / Mark W. Tilden
From the publishers of
BattleBots: The Official
Guide comes this do-it-
yourself guide to BEAM
(Biology, Electronics,
Aesthetics, Mechanics)
robots. They're cheap,
simple, and can be built
by beginners in just a few
hours, with help from this expert guide
complete with full-color photos. Get ready
for some dumpster-diving! $24.99
N N
E E
W
!
W
!
BookstoreMay05.qxd 4/5/2005 11:33 AM Page 62
Check out our online bookstore at
www.servomagazine.com for a complete
listing of all the books that are available.
To order call 1-800-783-4624 or go to our website at
www.servomagazine.com
PIC Microcontroller Project Book
by John Iovine
The PIC microcontroller
is enormously popular
both in the US and
abroad. The first edition
of this book was a
tremendous success
because of that.
However, in the four
years that have passed
since the book was first
published, the electronics hobbyist market
has become more sophisticated. Many
users of the PIC are now comfortable paying
the $250.00 price for the Professional
version of the PIC Basic (the regular version
sells for $100.00). This new edition is fully
updated and revised to include detailed
directions on using both versions of the
microcontroller, with no-nonsense
recommendations on which one serves
better in different situations.$29.95
Robotics Demystified
by Edwin Wise
There's no easier, faster,
or more practical way to
learn the really tough
subjects. McGraw-Hill's
Demystified titles are
the most efficient,
intriguingly written
brush-ups you can find.
Organized as self-
teaching guides, they
come complete with key points, background
information, questions for each chapter, and
even final exams. You'll be able to learn more
in less time, evaluate your strengths and
weaknesses, and reinforce your knowledge
and confidence. $19.95
CNC Robotics
by Geoff Williams
Now, for the first time,
you can get complete
directions for building a
CNC workshop bot for a
total cost of around
$1,500.00. CNC Robotics
gives you step-by-step,
illustrated directions for
designing, constructing, and testing a fully
functional CNC robot that saves you 80 percent
of the price of an off-the-shelf bot and can
be customized to suit your purposes exactly,
because you designed it. $34.95
Robot Builder's Sourcebook
by Gordon McComb
Fascinated by the world
of robotics, but don’t
know how to tap into the
incredible amount of
information available on
the subject? Clueless as to
locating specific
information on robotics?
Want the names, addresses,
phone numbers, and websites of companies
that can supply the exact part, plan, kit,
building material, programming language,
operating system, computer system, or
publication you’ve been searching for? Turn
to the Robot Builder’s Sourcebook — a
unique clearinghouse of information that will
open 2,500+ new doors and spark almost as
many new ideas. $24.95
Digital Electronics Demystified
by Myke Predko
The field of teaching
digital electronics has
not changed significant-
ly in the past 20 years.
Many of the same
books that first became
available in the late
1970s and early 1980s
are still being used as
basic texts. In the 20-
plus years since these were written, the rules
have not changed, but they do not provide
strong links to modern electronics, including
CMOS logic, Programmable Logic Devices,
and microprocessor/microcontroller interfac-
ing. Courses teaching introductory digital
electronics will fill in the missing areas of
information for students, but neither the
instructors nor students have resources to
explain modern technology and interfaces.
One assumption made by all the standard
texts is that experimenting with digital elec-
tronics cannot be done easily — in the pro-
posed book, “digital guru” Myke Predko will
show how readers can set up their own
apparatus for experimenting with digital
electronics for less than $10.00. $19.95
SERVO 05.2005 63
Robot Mechanisms and
Mechanical Devices Illustrated
by Paul Sandin
Both hobbyists and
professionals will treasure
this unique and distinctive
sourcebook — the most
thorough — and thoroughly
explained — compendium
of robot mechanisms and
devices ever assembled.
Written and illustrated
specifically for people fascinated with
mobile robots, Robot Mechanisms and
Mechanical Devices Illustrated offers a
one-stop source of everything needed for the
mechanical design of state-of-the-art mobile
‘bots. $39.95
Robot Building for Dummies
by Roger Arrick / Nancy Stevenson
Ready to enter the robot
world? This book is your
passport! It walks you
through building your
very own little metal
assistant from a kit, dress-
ing it up, giving it a brain,
programming it to do
things, even making it
talk. Along the way, you’ll
gather some tidbits about robot history,
enthusiasts’ groups, and more. $21.99
Robot Builder's Bonanza
by Gordon McComb
Robot Builder’s Bonanza
is a major revision of the
bestselling bible of
amateur robot building —
packed with the latest in
servo motor technology,
microcontrolled robots,
remote control, LEGO
Mindstorms Kits, and
other commercial kits. It gives electronics
hobbyists fully illustrated plans for 11
complete robots, as well as all-new coverage
of Robotix-based robots, LEGO Technic-
based robots, Functionoids with LEGO
Mindstorms, and location and motorized
systems with servo motors. $24.95
Open-Source Robotics and
Process Control Cookbook
by Lewin Edwards
In this comprehensive
guide, Lewin Edwards
demonstrates efficient and
low-cost open-source tech-
niques, covering end-to-end
robotic/process control sys-
tems, using Linux as the
development platform (and
also as the embedded operating system).
Specifically, the book targets the develop-
ment of real-time physical system controls,
using Atmel AVR microcontrollers and com-
municating with Linux-based PCs for over-
monitoring. It also covers open-source tools
for other controllers. Code examples are
given to provide concrete illustrations of
tasks described in the text. The accompany-
ing CD-ROM contains all the code used in the
design examples, as well as useful open-
source tools for robotics and process control
system design $49.95
N N
E E
W
!
W
!
BookstoreMay05.qxd 4/5/2005 11:35 AM Page 63
64 SERVO 05.2005
P
ower is the thing that makes your
robots move. Transmitting that
power from a motor to a wheel,
leg, or track is the job of power
transmission components. Among the
most common power transmission
components for robots are gears,
sprockets and chains, timing belts,
and bearings.
In this month’s installment of
Robotics Resources, we’ll take a look at
these and several other useful parts
used in power transmissions and where
to find them.
Understanding Gears
Gears are used for two purposes:
to transfer power or motion from one
mechanism to another and to reduce
or increase the speed of the motion
between two linked mechanisms. The
simplest gear systems use just two
gears: a drive gear and a driven (or out-
put) gear. More sophisticated gear
systems, referred to as gear trains, gear
boxes, or transmissions, may contain
dozens or even hundreds of gears.
Motors with attached gearboxes are
said to be gearbox motors.
Gears are specified not only by
their physical size, but also by the num-
ber of teeth around their circumfer-
ence. Spur gears are most common
and are used when the drive and driv-
en shafts are parallel. Bevel gears have
teeth on the surface of the circle,
rather than the edge. They are used
to transmit power to perpendicular
shafts. Miter gears serve a similar func-
tion but are designed so that no reduc-
tion takes place.
Spur, bevel, and miter gears are
reversible — the gear train can be
turned from either the drive or the
driven end. Conversely, worm- and
lead-screw gears transmit power
perpendicularly and are not usually
reversible. The lead screw resembles a
threaded rod.
Rack gears are like spur gears
unrolled into a flat rod. They are prima-
rily intended to transmit rotational
motion to linear motion.
When gears are used to reduce the
output speed of a mechanism — say a
motor — the torque at the output is
increased. Gears are basically a form of
lever; power can be increased by
changing the ratio of the lever over the
fulcrum. Substituting the fulcrum in a
gear system is the number of teeth on
each gear.
Gear reduction is accomplished by
changing the ratio of teeth of two or
more mating gears: a two-gear system
with a 100-tooth gear and a 50-tooth
gear is said to have a 2:1 reduction.
With such a system, output speed is
reduced by 50 percent and torque is
roughly doubled.
Common Gear Terms
and Specifications
Here are some common gear
terms and specifications to keep you
warm at night.
• Pitch — The size of the gear teeth is
expressed as pitch, which is roughly cal-
culated by counting the number of
teeth on the gear and dividing it by the
diameter of the gear. Common pitches
are 12 (large), 24, 32, 48, and 64.
Odd-size pitches exist of course, as do
metric sizes.
• Pressure Angle — The degree of
slope of the face of each tooth is called
the pressure angle. The most common
pressure angle is 20 degrees, although
some gears, particularly high-quality
worms and racks, have a 14.5-degree
pressure angle.
• Tooth Geometry — The orientation of
the teeth on the gear can differ. The
teeth on most spur gears are perpendi-
cular to the edges of the gear. But the
teeth can also be angled, in which case
it is called a helical gear. There are a
number of other unusual tooth geome-
tries in use, including double-teeth and
herringbone.
Where to Find Gears
Of course, you can always buy
gears from Gears R Us. (Okay, most
go by far more mundane names like
Boston Gear, Small Parts, W.M. Berg,
and Stock Drive.) You’ll get just what
you’re looking for from these
sources, but it’ll cost you. The
average machined one-inch-diameter
aluminum gear can cost $20.00 to
$30.00.
As long as your requirements
aren’t too unusual, you may be able to
Getting Geared Up!
Tune in each month for a heads-up on
where to get all of your “robotics
resources” for the best prices!
RoboResources.qxd 4/5/2005 9:55 AM Page 64
locate the gears you want from other
products and sources.
• Toy Construction Sets — Don’t laugh!
Toys from LEGO and Erector come with
gears you can use in your robotics proj-
ects. Most are on the large size and are
made of plastic.
• Hobby and Specialty Retailers —
Next time you’re at the hobby store,
look for replacement gear sets for
servos and drive motors for R/C cars
and airplanes. Some are plastic, others
are metal (usually either aluminum or
brass).
Typically, you’ll have to buy the
whole set of replacement gears for
whatever motor or servo the set is for,
but in other cases, you can purchase
just one gear at a time. Some online
retailers, such as ServoCity.com and
Jameco.com, sell gears specifically for
hobby applications (like robots). The
prices are reasonable.
• Surplus Catalogs — New gears can
be expensive, but surplus gears can be
quite affordable. You can often find
new gears, plastic or metal, for about
10 cents on the dollar. The only prob-
lem: selection can be limited, and it can
be hard to match gear sizes and pitch-
es even when buying gears from the
same outlet.
• Rechargeable Electric Screwdrivers
— Inside are numerous gears, typical-
ly in a “planetary” configuration, used
to produce their very high-speed
reductions. Before raiding the screw-
driver for just the gears, consider
using the motor, too. The motor and
gearing system of a typical electric
screwdriver makes for a fine robot
drive system.
• Hacked Toys — Discarded and dis-
counted toys make for good gear
sources. These include friction and bat-
tery-powered toy cars, “dozer” toys,
and even some action figures. These
gears tend to be small and made of
plastic.
• Old Kitchen Appliances — Go to
thrift stores and garage sales and look
for old food mixers, electric knives,
even electric can openers. Unlike toys,
kitchen appliances commonly use
metal gears, or at the least, very strong
plastic gears.
More Power
Transmission
Components
Gears aren’t the only power
transmission components you’ll
encounter. There are literally hun-
dreds of others, but the following
comprise the most commonly used
and the most critical.
Timing Belts
Also called synchronization belts.
Typical timing belts for small mecha-
nisms range from 1/8- to 5/18-inch in
width and sizes from just a few inches
in diameter to several feet in diameter.
Material is usually neoprene, with
metal or fiberglass reinforcement. Belts
are rated by the pitch between “nubs,”
or “cogs,” which are located on the
inside of the belt.
Timing belts are used with match-
ing timing belt pulleys, which come
with either ball-bearing shafts (used for
idler wheels) or with press-on or set-
screw shafts for attaching to motors
and other devices.
V-belts
V-belts have a taper V shape and
are used to transfer motion and
power from a motor to an output
when synchronization of that motion
is not critical (because the belt could
slip). V-belts, which are often made
with metal- or fiberglass-reinforced
rubber, are used with V-grooved
pulleys.
By changing the diameter of the
pulleys, it’s possible to alter the speed
and torque of the output shaft in rela-
tion to the drive shaft. The same
physics that apply to gears and gear
sizes apply to V-belt pulleys, as well.
Endless Round Belts
Endless round belts are used to
transfer low-torque motion. The belt
looks like an overgrown O-ring and, in
fact, is often manufactured in the same
manner.
Other endless round belts are
made by fusing the ends of rounded
rubber (usually neoprene). Some belt
makers provide splicing kits so you can
make custom belts of any length.
Grooved pulleys are used with round
HobbyEngineering HobbyEngineering HobbyEngineering HobbyEngineering
The technology builder's source for kits, components, supplies, tools, books and education.
Robot Kits For All Skill Levels
Motors, Frame Components
and Scratch Builder Supplies.
ICs, Transistors, Project Kits
BEAM Kits and Components
Books and
Educational K
Most orders ship the day received! World-wide shipping. Convenient payment options.
Order by Internet, phone, fax or mail.
www.HobbyEngineering.com
1-866-ROBOT-50
1-866-762-6850
1-650-552-9925
1-650-259-9590 (fax)
sales@HobbyEngineering.com
180 El Camino Real
Millbrae, CA 94030
Visit our store near SFO!
SERVO 05.2005 65
RoboResources.qxd 4/5/2005 9:57 AM Page 65
HobbyEngineering HobbyEngineering HobbyEngineering HobbyEngineering
The technology builder's source for kits, components, supplies, tools, books and education.
Robot Kits For All Skill Levels
Motors, Frame Components
and Scratch Builder Supplies.
ICs, Transistors, Project Kits
BEAM Kits and Components
Books and
Educational K
Most orders ship the day received! World-wide shipping. Convenient payment options.
Order by Internet, phone, fax or mail.
www.HobbyEngineering.com
1-866-ROBOT-50
1-866-762-6850
1-650-552-9925
1-650-259-9590 (fax)
sales@HobbyEngineering.com
180 El Camino Real
Millbrae, CA 94030
Visit our store near SFO!
belts. With V-belt pulleys, the diameter
of the ground belt pulley can be altered
to change the torque and speed of the
output.
Ladder Chain
Ladder chain resembles the links
of a ladder and is used for fairly low-
torque and slow-speed operations.
Movement of a robotic arm or shoul-
der is a good application for ladder
chain. With most chains, links can be
removed and added using a pair of
pliers. Special toothed sprockets,
engineered to match the pitch
(distance from link-to-link) of the chain,
are used.
Roller Chain
Roller chain is exactly the same
kind used with bicycles, but for most
small-scale machinery, the chain isn’t as
big. Roller chain is available in minia-
ture sizes down to 0.1227-inch pitch
(distance between the links). More
common is the #25 roller chain which
has a 0.250-inch pitch.
For reference, most bicycle chain
is #50, or 0.50-inch pitch. Sprockets
with matching pitches are used on the
drive and driven components. Roller
chain comes in metal or plastic; plastic
chain is easier to work with, and links
can be added or removed. Many
types of metal chains are pre-fabricat-
ed using hydraulic presses and require
the use of “master links” to make
a loop.
Idlers
Idlers (also called idler pulleys or
idler wheels) take up slack in belt- and
chain-driven mechanisms. The idler is
placed along the length of the belt or
chain and is positioned so that any
slack is pulled away from the belt or
chain loop.
Not only does this allow more lati-
tude in design, it also quiets the mech-
anism. The bores of the idlers are fit-
ted with appropriate bearings or bush-
ings.
Couplers
Couplers come in two styles: rigid
and flexible, and are used to directly
connect two shafts together. A com-
mon application is to use a coupler to
connect the drive shaft of a motor
with the axle of a wheel. Connectors
can be rigid or flexible as well. Rigid
couplers are best used when the
torque of the motor is low, as it
would be in a small tabletop robot.
Flexible couplers are advised for
higher torque applications, as they
are more “forgiving” of errors in
alignment.
Rigid couplers can be made using
metal or plastic tubing, selected for
its inside diameter. You can purchase
suitable tubing at a hobby or hard-
ware store. Cut the tubing to length,
then drill two small holes at both
ends for set screws. Use a tap to
thread the hole for the size of
set screws you wish to use — 4/40
is a good all-around size for most
applications.
Steel tubing provides the most
strength but is harder to cut, drill, and
tap. If the thickness of the tubing is
sufficient, aluminum will work well for
most low-torque applications. Brass
and bronze should be avoided
because these metals are too soft. For
very low-torque jobs, plastic or even
rubber tubing will work. Select the
rubber tubing so that it is just slightly
smaller than the motor shaft and axle
you are using, and press it on for a
good fit.
There are many types of rigid and
flexible couplers commercially avail-
able, and cost varies from under a dol-
lar to well over $50.00, depending on
materials and sizes. Common flexible
couplers include helical, universal joint
(similar to the U-joint in the drive shafts
of older cars), and three-piece jaw
(more about the latter in a bit). The
couplers attach to the shafts either
with a press fit, by a clamping action,
by set screws, or by a keyway. Press fit
and clamp are common on smaller cou-
plers for low-torque applications; set
screws and keyways are used on larger
couplers.
Three-piece jaw couplers, like
those made by Lovejoy, consist of two
metal or plastic pieces that fit over the
shafts. These are the “jaws.”
A third piece, which is called the
spider, fits between the jaws and acts
as a flexible cushion. One advantage of
three-piece couplers is that you can
readily “mix and match” shaft sizes
because each piece of the jaw is sold
separately.
For example, you can purchase
one jaw for a 1/4-inch shaft and
another for a 3/8-inch shaft. Both
66 SERVO 05.2005
RoboResources.qxd 4/5/2005 9:58 AM Page 66
jaws must have the same outside
diameter.
Bearings
Bearings are used to reduce the
friction of a spinning component,
such as a wheel or idler, around a
shaft. Several bearing constructions
exist, with ball bearings being the
most common. The bearing is com-
posed of two concentric rings;
between each ring is a row of ball
bearings. The rings and the ball bear-
ings are held in place by a mechanical
flange of some type. Bearings can be
mounted directly to a device. This
requires precision machining and a
press to securely insert the bearing
into place.
Another form of bearing uses nar-
row pieces of metal rod, called nee-
dles, and works in a similar manner.
Pillow blocks are available that allow
bearings to be readily mounted on any
frame or device.
Bushings
Bushings and bearings serve the
same general purpose, except a bush-
ing has no moving parts. (Note: Some
people also call these bearings or dry
bearings, but I prefer to use the term
bushing in order to differentiate
them.) The bushing is made of metal
or plastic and is engineered to be self-
lubricating.
An example is Oilite, a self-lubricat-
ed bronze metal commonly found in
industrial bushings. Several kinds of
plastics, including Teflon, exhibit a self-
lubricating property. Bushings are used
instead of bearings to reduce cost,
size, and weight and are adequate
when friction between the moving
parts can be kept relatively low.
Bushings, and not the more expensive
bearings, are used in the output gear
of the less expensive R/C servos, for
example.
Flexible Linkages
Flexible linkages allow mechanical
power or movement to be transferred
from one place to another, using some
form of bendable material. Examples
are:
• Pulleys and belts — The pulleys are
like wheels, and the belts ride over
the wheels. Most pulleys incorporate
a sleeve or rim to keep the belt in
place.
• Sprockets and chains — Sprockets are
also wheels but incorporate teeth
around their circumference in order to
mesh with a chain.
• Cable — A flexible cable, made of
plastic or metal, transfers power/move-
ment by spinning within some protec-
tive sheath. The speedometer cables
on older cars are a good example of
how these work.
Except for cables, flexible linkages
can function in a similar manner to
gears, including reducing or increasing
speed and torque. This is accomplished
by using different sprocket or pulley
diameters.
A benefit of using pulleys/belts
or sprockets/chain is you don’t need
to be as concerned with absolute
alignment of the mechanical parts of
your robot. When using gears, it is
necessary to mount them with high
precision.
Sources
Check out these sources for power
transmission parts, though not all of
the companies listed here sell directly
to consumers. However, you may be
able to locate their wares through a
local distributor. A number of the
websites provide helpful design
information. Be sure to check out the
free technical literature that these
manufacturers provide.
Bearing Belt Chain
www.bearing.com
Local and online retailer of bear-
ings (linear, roller, taper, pillow, etc.),
belts (including V and timing), sprock-
ets, and chains. Large inventory.
Bearing Headquarters Co.
www.bearingheadquarters.com
Industrial bearings (all types),
couplings, clutches, belt drives and
rollers, gears, conveyor rolls and chain,
sprocket, and chain. See also Headco
Industries, www.headco.com
Belt Corporation of America
www.beltcorp.com
Belt Corporation of America offers
FIGURE 1. Bearings and more at Boca Bearing.
SERVO 05.2005 67
RoboResources.qxd 4/5/2005 9:59 AM Page 67
just that — belts — and not the kind you
wear. BCA offers timing belts, woven
endless belts (can be useful to con-
struct robot tank treads), natural rub-
ber and neoprene stretch belts, and
endless round belts.
Boca Bearing
www.bocabearings.com
Boca specializes in small and minia-
ture bearings for such applications as
radio control vehicles, inline skates,
power tools, small appliances, fishing
reels and, of course, robotics. Bearings
are listed by size, type, and general
application.
Check out their engineering
section, with nearly a dozen helpful
technical backgrounders on using
bearings.
Boston Gear
www.bostongear.com
Boston Gear offers gears, yes, but
also bearings, transmissions, clutches,
pneumatics, and many assorted other
power transmission and actuation
products. The company also offers
free literature, maintenance manuals,
and operating instructions for their
products.
BRECOflex Co.
www.brecoflex.com
BRECOflex is a manufacturer of
belts: timing belts, profiled belts, flat
belts, pulleys, belt tensioners, and slid-
er beds.
Drives, Inc.
www.drivesinc.com
Drives, Inc., makes and sells roller
chain and “attachment products,” as
well as chain for conveyors. The chain
is available in sizes from #35 (slightly
smaller than bicycle chain) on up to
A2060, which has a pitch of 1-1/2 inch-
es. So-called attachments include
mechanical clips that seat into the
chain — ideal for making heavy-duty
tracked robots.
Dura-Belt, Inc.
www.durabelt.com
Dura-Belt, Inc. is a maker and
seller of round urethane endless belts
(O-rings), quick-disconnected twisted
belts, flat belts (in different thickness-
es and widths), groove sleeves for
round belts, idlers, and belt splicing
kits.
Gates Rubber Co.
www.gates.com
Gates Rubber Co. is a major suppli-
er of gears, timing belts, and power
transmissions for both industry and
automotive applications. The compa-
ny’s products are available through
68 SERVO 05.2005
FIGURE 2. Gates Corp. at www.gates.com
FIGURE 3. Power transmission components at Manufacturer’s Supply.
RoboResources.qxd 4/5/2005 10:01 AM Page 68
distributors.
Helical Products Co.
www.heli-cal.com
Helical flexible couplings. Many dif-
ferent sizes, styles, and materials.
Huco Engineering Industries Ltd.
www.huco.com
Huco Engineering Industries is a
manufacturer of flexible couplers.
Products include three-part couplers
with replaceable wear elements, one-
piece couplers, and plastic universal
joints.
igus GMBH
www.igus.de
igus GMBH is a maker of polymer
(plastic) bearings, chain, linear slides,
and other mechanicals. Web page is in
many languages, including English and
German.
JJC & Associates
www.jjcassociates.com
JJC & Associates offers custom and
standard drive components — belts,
timing belts, pulleys, gears, plastic
power drive components, collars and
clamps, and rollers.
Lovejoy, Inc.
www.lovejoy-inc.com
Lovejoy manufactures a line of
affordable flexible couplers. These are
designed to connect a motor drive
with some driven device, like a pump
or a wheel. Because they
are flexible, the coupler
allows the shafts of the driv-
er and the drivee to be
slightly out of whack from
one another, and yet they
won’t tear each other apart.
One of the more common
Lovejoy connectors in
use for robotics is the jaw
coupling.
Manufacturer’s
Supply, Inc.
www.mfgsupply.com
Manufacturer’s Supply,
Inc. offers chain saw, motor-
cycle, and engine parts.
Includes wheels, chain, bearings, axles,
snowmobile treads, and a lot more.
Check out the Go-Kart page at
www.GoKartParts.com
Minarik Corporation
www.minarikcorp.com
Miniarik Corporation offers a full
line of mechanical (bearings, shafts,
gears, chain, etc.) and electronics parts
(PWM drives, sensors), online ordering,
and many local warehouses through-
out the US.
Nordex, Inc.
www.nordex.com
Gears, miniature instrument bear-
ings, shafts, Geneva mechanisms, fas-
teners, ball (linear and rotary) slides,
brakes, clutches, couplings, assemblies,
enclosed gear trains, and many
other related precision components are
available.
NSK
www.nsk.com
NSK offers power transmission
bearings, bushings, gears, sprockets,
and more are available. Extensive tech-
nical details are provided on the
website, including online engineering
calculators.
Power Transmission.com
www.powertransmission.com
PowerTransmission.com is an
information site that helps you find
suppliers of gears, motors, bearings,
SERVO 05.2005 69
The following three major parts and
supplies companies offer many types of
power transmission products. Plan to spend
some time touring their websites. All three
offer on-line ordering.
Grainger
www.grainger.com
McMaster-Carr
www.mcmaster.com
MSC Industrial Direct
www.mscdirect.com
EVEN MORE POWER
TRANSMISSION SOURCES
RoboResources.qxd 4/5/2005 10:03 AM Page 69
clutches, couplings, speed reducers,
and other components that transmit
mechanical power. Most suppliers
have websites where you can compare
products.
Putnam Precision Molding
www.putnamprecision
molding.com
Putnam Precision Molding manu-
factures and sells the Plastock line of
mechanical-drive components. Its prod-
ucts include: timing belts and pulleys,
chain sprockets, roller chain, and spur
gears.
Quality Transmission
Components
www.qtcgears.com
Quality Transmission offers medi-
um and coarse metric pitch small gears
and other power transmission goodies
are available. They are a division of
Stock Drive Products (see www.sdp-
si.com).
Reid Supply Co.
www.reidtool.com
Reid Supply Co. is an all-purpose
industrial supply resource. They carry
thousands of items, including bear-
ings, gears, linear shafts, lead screws
and nuts, ball screws and ball nuts,
multi-directional rollers (omniwheels),
ball transfers and ball casters, light- to
heavy-duty casters, machine framing,
fasteners of all kinds, and much
more.
Seitz Corp.
www.seitzcorp.com
They offer plastic gears, gears, and
motion-control mechanicals.
Serv-o-Link
www.servolink.com
Serv-o-Link is the source for power
transmissions with precision plastic
gears, chain, and sprocket drives. The
products are injection molded, so
they’re less expensive than machined
gears made from Delrin or metal, yet
they are precise enough for many
robotic applications.
Small Parts, Inc.
www.smallparts.com
Small Parts is a robot-builder’s
dream, selling most every conceivable
power transmission part, from gears to
sprockets, chain to belts, and bearings
to bushings. Product is available in a
variety of materials, including brass,
steel, and aluminum, as well as nylon
and Delrin.
Stock Drive Products
www.sdp-si.com
If Stock Drive doesn’t have it,
it probably doesn’t exist. SDP is a
manufacturer and seller of power
transmission products: gears, bearings,
bushings, shafts, sprockets, chain, and
dozens of other categories. They
specialize in the smaller scale stuff that
is most useful in amateur robotics.
Vaughn Belting
www.vaughnbelting.com
Vaughn Belting is a local distribu-
tor of rubber, nylon, steel, and plastic
timing belts, conveyor belts, and other
belts used in industry.
W.M. Berg
www.wmberg.com
W.M. Berg, Inc., manufactures
and distributes precision mechanical
components, including gears, rotary
bearings, pulleys, belts, hardware and
fasteners, linear bearings and slides,
couplings, flexible ladder chain (which
is useful as miniature robot tracks),
and roller chain (both plastic and
metal).
Wholesale Bearing & Drive
Supply
www.wbds.com
Wholesale Bearing & Drive Supply
features online sales of bearings
and many other power transmission
components. SV
70 SERVO 05.2005
FIGURE 4. Reid Supply Company is an all-purpose supply resource.
Gordon McComb is the author
of the best-selling Robot Builder’s
Bonanza, as well as Robot Builder’s
Sourcebook and Constructing Robot
Bases, all from Tab/McGraw-Hill. In
addition to writing books, he oper-
ates a small manufacturing company
dedicated to low-cost amateur
robotics. You’re welcome to visit at
www.budgetrobotics.com He can
also be reached at robots@robot
oid.com
ABOUT THE AUTHOR
RoboResources.qxd 4/5/2005 10:04 AM Page 70
SURVEILLANCE OPTICS ELECTRONICS
ORDERS. 800.810.4070
Tech 603.668.2499
fax 603.644.7825
WWW.RESUNLTD4U.COM
WE W WE W WE W WE W WE WANT TO BUY ANT TO BUY ANT TO BUY ANT TO BUY ANT TO BUY
ESOTERIC and ESOTERIC and ESOTERIC and ESOTERIC and ESOTERIC and
UNUSU UNUSU UNUSU UNUSU UNUSUAL MA AL MA AL MA AL MA AL MATERIAL TERIAL TERIAL TERIAL TERIAL
SONY EX-VIEW CCD for the best “ASTRONOMICAL”
PERFORMANCE available in an affordable camera!
With 600 Lines Resolution. NEW! 0.00005 Lux,
The most sensitive, uncooled, 1/2" CCD camera available.
Black and white, state of the Art
Video, Our GMV-EX-6K, Takes the
Prize. For covert, military & scientific
applications, this is it. Unbelievable
0.00005Lux @ f0.8 performance is
enhanced through low speed
electronic shuttering, digital frame
integration and advanced DSP. Auto sensitivity mode starts as it becomes dark.
24 hour surveillance is possible with the optional f1.2 auto iris lens shown
below. Seven Gain/Shutter modes are user selectable. Normal, X4, X8, X16,
X24, X32, X64 X128. Frame rates of 60, 15, 8, 4, 3, 2,1 and 0.5 per second.
Auto/off BLC, S/N >52dB, Mirror on/off, Gain on/
off, auto electronic shutter 1/60 to 1/120,000 sec.,
Alum. housing, dual 1/4x20 mtg. Specs: 1/2" CCD,
768(H) X 494(V), with 380K pixels, 12VDC
±1V@200mA, S-VIDEO on 4pin DIN connector.
Std. video out on BNC. Size: 51mm x 51mm
x115mm long. Regulated power supply incl. All
functions externally controlled. C-mount lens not
included. We have the best price available for
the 12V1E-EX CAMERA. VERY LIMITED QUANTITY
AVAILABLE. DON'T BE FOOLED by 1/3", NON - EXVIEW, LOOK ALIKES!
GMV-EX6K...$449 Super, 6mm, f1.2 Manual Iris Lens...$69
DC MOTOR drives FLEXIBLE SHAFT with LEAD SCREW and "NUT"
New, 18" L flex shaft enclosed in a 3/8"D protective sheath.
One end "Plugs" into the motors right angle drive which
outputs the flex rotation by turning of a 1/2" diam. x 7"L, 10 TPI
lead screw upon which rides a 1" x1" 2"L "nut /carriage" with
two 1/4 x 20 threaded holes spaced 1" apart on the long axis.
Flex shafts have a 0.14" x 0.14" square drive end. You receive
one motor/shaft set. They were originally designed to move power seats. Heavy duty.
. FLEX-DRIVE KIT.......$24 2 for $40
HEAVY DUTY, HIGH TORQUE,
METAL CONTRUCTION.
These are brand new, very rugged,
right angle drive, gearmotors
originally intended for an automotive
application. They are very substantial,
weighing over 2 pounds each! They offer a 0.9"
diameter x 0.3"H, 9 tooth steel gear drive, located
centered between three 0.32" diameter cast
aluminum "spider" mounting points on a diameter of
3". Overall size: 1.9"W x 7.1"L x 4"H (including the gear)
with std. automotive style 2 pin connector. Motor will
operate with strong torque with as little as 3VDC, Hand
twisting torque at 12VDC. Current is 3.2A no load and about 6A
loaded. RPM of 84/minute. Reversible. Heavy duty platic coupler
included. WINMTR248...........$20ea. 4 for $69
REVERSIBLE, HIGH TORQUE,
AC GEARMOTOR, ORIENTAL MOTOR,
MODEL, 2RK6GN/2GN15KA
A super nice, matched, 1450 RPM,
1/125HP motor & 15:1 gearbox
provide 100rpm at the 0.3" diam. x
1.1"L out-put shaft. Shaft rota-tion is
the same as the motor shaft.
Instantly reversible capacitor start
motor. (Cap. supplied) operates
from 115VAC @ 0.19A. Torque is
4.4Lb in. Regular $135 each. Limited
quantity. Overall size is: 2.4" X 2.4" x
4.25"Long. Weight 1.5lbs.
OM-2GN15K......$20 or 3 for $49
RESOURCES RESOURCES RESOURCES RESOURCES RESOURCES
UN-L UN-L UN-L UN-L UN-LTD. TD. TD. TD. TD.
BOSCH, DRILL MOTOR and GEAR DRIVE ASSEMBLY
with CUSTOM SURFACE MOUNTING BRACKET!
These beauties have all the torque you could want....
Brand new in mfgrs boxes, These assemblies normally provide the
rotary motion for a quality Bosch 12V
drill/driver. The assembly consists of
a 17000RPM drive motor and a 14:1
planetary gear head with variable
clutch. The motor operates from 3 to
12VDC. Measured data in table.
A unique, custom, glass filled plastic cradle mount is included for easy
surface mounting. Overall size is 7.4"L x 2.4" diam. (3.3"W in the cradle)
Threaded output shaft is 0.048"diam. Fifteen torque setting plus locked.
We have a limited supply of these fantastic robotic drive motors. Order
now, avoid disappointment. Mtr # 2606200917, Drive # 2607022890
DRILL DRIVE.......$39set, Motor & Cradle 2 sets for $69
V (in) I (nl) Mtr RPM Out RPM
3 3.5A 3400 242
6 5.0A 8000 571
9 5.7A 12500 893
12 6.0A 17200 1228
V (in) I (nl) Out RPM
3 1.1A 133
6 1.4A 295
9 1.6A 468
12 1.8A 642
TWO LITTLE GEMS, MINI and MICRO, REVERSIBLE, HIGH
TORQUE, DC GEARMOTORS. End effector or beam robot.
These precision motors were removed from new
optical assemblies. They were intended
to provide focus and aperture
control for a large zoom lens.
The mini model (shown left)
is from SAYAMA, # 43060300,
size is 0.78"Diam. X 2.5"L with a
1.6"W mounting flange. Shaft is 0.155"
Diam. The micro model (shown right)
is from NAMIKI, PN 1D, size is o.47"
Diam X 1.875"L with a 0.078"D shaft.
A nice torque limiting drive gear is
attached to each motor. (Can be
easily removed) Motor specs are
shown in tables below.
SAYAMA MINI......$15ea.
SPECIAL......4 for...$49
NAMIKI MICRO...$20ea.
SPECIAL......2 for...$35
GEAR RATIOS
MINI MICRO
300:1 150:1
V (in) I (nl) Out RPM
3 32mA 6
5 34mA 11
7 34mA 16
9 35mA 24
12 35mA 33
V (in) I (nl) Out RPM
3 4.0mA 22
5 4.4mA 36
7 5.0mA 60
9 5.3mA 78
12 6.0mA 104
MINI CCD CAM is SUPER RUGGED.
Top quality, black and white, mini CCD
camera at a super price. Packaged in a
super rugged cast aluminum housing
that fits like a glove! ( Not flimsy sheet
metal ) Removeable mounting bracket
included as well as an 8", plug in cable
with BNC video & DC power jack for, no
sweat hook up. Why fool around with an
open P.C. board? Now you can have the
GM210 for the same price as a simple board camera • 1/3" •
420 Lines • 0.3 Lux • AGC • Auto Shutter • Power, 12V
@100mA • 270k pixels • Standard 4 mm, 78
0
FOV lens •
Focus from 10mm to infinity • NTSC video • 2 ounces • Size:
1.8" Square x 1.3" deep, including lens. Limited quantity.
SPECIAL, GM-210...................$45ea.
LIKE THIS STUFF? SEE MORE
ON-LINE at OUR WEB STORE.
2005 our 14th Year!
ENCODERS MAXI FUSE BLOCK
Specifications Specifications Specifications Specifications Specifications
Parameter Parameter Parameter Parameter Parameter
Max Scan Angle
Non-linearity (max)
Offset Drift (max)
Gain Drift (max)
Operating Temperature
Optimal mirror size
Bandwidth (typ)
Small Step Response (typ)
Full Step Response (typ)
Units Units Units Units Units
degrees,optical
% over ±20° optical
µ radians/°C
ppm/°C
°C
mm, clear aperture
Hz
µS
ms
M2 M2 M2 M2 M2
±30°
0.1
30/10
100/20
0-50
9-20
>2000
<400
<2
LASER SCANNER, GSI LUMONICS, M SERIES,
CLOSED LOOP, MOVING MAGNET MOTOR
with capacitive position sensor. Speed & Accuracy!
Brand new, GSI Model: 3008522 mirror scanner.
M-series optical scanners are the first in GSI product
to use moving magnet technology. This robust
design combines the sub-millisecond speed with
the micro-radian accuracy second generation
capacitive position detector. Excellent drift, noise,
linearity and dynamic performance optimized to
position mirrors between 9 and 20mm clear
aperture. M2 scanners deliver the performance
needed in most of today’s beam and image
steering applications.
GSI SCANNER.............$149ea. LIMITED QUANTITY
V (in) I (nl) RPM
3 2.7A 16
6 3.1A 39
9 3.3A 63
12 3.5A 88
V (in) I (nl) RPM Amps
3 900mA 26 Loaded
6 1.0A 57 5A
9 1.1A 89
12 1.2A 117
CAR DRIVE FP....$20ea. 2 for $35
RA DRIVE with SHAFT......$24ea.
SPECIAL....................2 for $39
POWERFUL, "KIDs CAR" DRIVE MOTOR.
MASSIVE GEAR REDUCTION for BIG TORQUE.
New, right angle drive system intended for use in a childs motorized
vehicle. A powerful 12VDC motor drives the attached gearbox to
provide final drive through a 1.75" diam. splined
drive shaft. The 2.7" diam.male mating hub,
i nc l uded. (black piece in photo). This
terminates in a 3.9" diam. flange eith
notches for bolts. There is also a
0.43"Di am through hole in the center of
the hub. Nice for a large platform.
BOSCH, REVERSIBLE, HIGH
TORQUE, DC GEARMOTOR,
With 2.4"LONG STEEL SHAFT.
These are brand new, very rugged, right angle
drive, gear motors originally intended for an
automotive application. They are very substantial,
weighing over 2 pounds each! They offer a 0.44"
diam. x 2.4"L steel drive shaft located centered
between three 0.45" diameter cast aluminum "spider"
threaded mounting points. Each offset 120
o
and on a
diameter of 2.75". Overall size: 5"H x 7.5"L x 2.7"W
Motor will operates with wrist
twisting torque. As little as
3VDC lights it up, nominal is
12VDC. Draws about 4.5 A
under load. All metal construction.
Also it is of course, reversible.
NEW, ULTRA MINI, LIPSTICK CAMERA,
SONY SUPER HAD CCD, SUPER 0.01 Lux SENS.
and IT FITS ON A DIME! WOW!
Sleek black anodized, aluminum housing, no larger than a dime!
O-Ring sealed & weatherproof.
(not for underwater
use) Adjustable tilt /
swivel mounting
bracket. Specifications: 1/3" SONY SUPER HAD CCD,
400 Lines Resolution, SUPER 0.01 Lux sensitivity, AGC, Auto Shutter,
(1/60 to 1/100,000) Power from regulated 12VDC @100mA, Super
3.6mm, 90
0
FOV real glass lens, NTSC video. Extra IR SENSITIVE.
Size: 0.735"D X 2.15"L 50mm, 36" cable with BNC video & DC
barrel jack. Weight: 65g Superior quality at an affordable price.
Limited qty. Regulated power adapter available for $6.95ea.
SPECIAL, GM-L250.............$59ea.
VIDEO TIME and DATE GENERATOR, NEW!
This simple device solves the problem of time stamping &
identifying any video. Camera ID up to 20 characters, ID &
Time on/off, ID at top center of screen & time on the
bottom. Format: YR/MO/DAY and HR/MIN/SEC/ 24hour Std.
RCA video in & out. 9VDC, AC adpter incl. Three button operation. Rugged case.
Size: 3.5"L x 2.6"W x 1.25" H. SPECIAL..........$55ea.
SERVO 05.2005 71
Circle #34 on the Reader Service Card.
Full Page.qxd 4/7/2005 2:11 PM Page 71
Astro Flight
www.astroflight.com
Harbor Master 6 to 8 30 35 0.010 2.5 kHz Yes No
DuraTrax
www.duratrax.com
ESC200 Micro 4.8 to 7.2 3 20 proprietary 13.8 kHz Yes No
I-Speed 16T Mild-Modified Reversible ESC 7.2 to 8.4 192* 660* 0.0046 1 kHz Yes Yes
Futaba
www.futaba-rc.com
MC230CR 7.2 to 8.4 30 90 0.0035 1.5 kHz Yes Yes
MC330CR 7.2 to 8.4 70* 200* 0.001 1.5 kHz Yes Yes
IFI Robotics
www.ifirobotics.com
Victor 883 6 to 30 60 200 0.007 2 kHz Instant Yes
Victor 884 6 to 15 40 64 0.012 120 Hz Instant Yes
Kyosho
www.kyosho.com
Perfex KA-6 7.2 to 8.4 32 280* 0.006 1 kHz Yes Yes
LRP Electronic
www.lrp-electronic.de
LRP Runner Plus Reverse 4.8 to 8.4 20 80 0.017 1.3 kHz Yes Yes
Mtroniks
www.mtroniks.net
Sonik4 Marine 15 4.8 to 12 15 15 0.007 1 kHz Instant Yes
Sonik3 Eco 20 4.8 to 9.6 15 50 0.007 2 kHz Yes Yes
Robot Power
www.robot-power.com
Scorpion Mini 4.8 to 18 2.5 6 proprietary proprietary Instant No
Team Novak
www.teamnovak.com
Spy Micro Reversible 4.8 to 8.4 2 12 0.019 1 kHz Yes Yes
Super Duty XR High Voltage 7.2 to16.8 180* 400* 0.0011 proprietary Yes Yes
XRS Sport 4.8 to 8.4 40* 40* 0.0055 1 kHz Yes Yes
Vantec
www.vantec.com
RET411P 4.8 to 26 12 30 proprietary proprietary Instant No
RET713P 4.8 to 26 33 85 proprietary proprietary Instant No
72 SERVO 05.2005
SUPPLIER
M
o
d
u
l
e
V
o
l
t
a
g
e

R
a
n
g
e
P
e
a
k

C
u
r
r
e
n
t

(
a
m
p
s
)
M
a
x
i
m
u
m

C
o
n
t
i
n
u
o
u
s
C
u
r
r
e
n
t

(
a
m
p
s
)
I
n
t
e
r
n
a
l

(
F
E
T
)
R
e
s
i
s
t
a
n
c
e

(
o
h
m
s
)
P
W
M

F
r
e
q
u
e
n
c
y
B
r
a
k
e
F
o
r
w
a
r
d
/
R
e
v
e
r
s
e
T
i
m
e

D
e
l
a
y
reversible r/c-style
electronic speed controllers (escs)
BrainMatrix.qxd 4/5/2005 10:16 AM Page 72
Upcoming topics include SBCs and H-bridges, sensors, kits, and actuators. If you’re a manufacturer of one of these items, please send your
product information to: BrainMatrix@servomagazine.com Disclaimer: Pete Miles and the publishers strive to present the most accurate
data possible in this comparison chart. Neither is responsible for errors or omissions. In the spirit of this information reference, we encourage
readers to check with manufacturers for the latest product specs and pricing before proceeding with a design. In addition, readers should not
interpret the printing order as any form of preference; products may be listed randomly or alphabetically by either company or product name.
by Pete Miles
1.0 No No 1.2 x 1.6 x 0.2 1.06 $99.95
1.0 Yes Yes 1.02 x 1.02 x 0.63 0.88 $79.99
1.0 Yes Yes 1.48 x 1.34 x 0.57 2.19 $49.99
Yes Yes Yes 1.07 x 1.31 x 0.5 1.55 $49.99
Yes Yes Yes 1.07 x 1.31 x 0.5 1.59 $49.99
No No No 2.2 x 2.7 x 2.1 4.0 $149.95
No No No 2.2 x 2.7 x 2.1 4.0 $114.95
1.0 Yes No 2.0 x 2.1 x 0.63 3.7 $109.99
0.6 Yes No 1.57 x 1.57 x 0.59 1.94 $49.99
1.2 Yes No 1.38 x 1.42 x 0.55 1.94 $39.99
1.0 Yes No 1.38 x 1.42 x 0.55 1.94 $39.99
0.1 No No 1.25 x 0.5 x 0.4 0.19 $34.99
1.0 Yes Yes 1.12 x 0.95 x 0.48 0.51 $99.00
3.0 Yes Yes 1.75 x 2.17 x 0.85 4.03 $265.00
1.0 Yes Yes 1.31 x 1.10 x 0.53 1.27 $85.00
No No No 1.8 x 1.97 x 0.82 2.0 $74.95
No No No 1.8 x 1.97 x 0.82 2.5 $159.95
SERVO 05.2005 73
P
r
o
g
r
a
m
m
a
b
l
e
L
i
s
t

P
r
i
c
e
W
e
i
g
h
t

(
o
u
n
c
e
s
)
S
i
z
e

(
i
n
c
h
e
s
)
P
o
w
e
r

S
w
i
t
c
h
B
E
C

C
u
r
r
e
n
t
(
a
m
p
s
)
1. Pay special attention to the current rating
on all ESCs that are specifically designed for
R/C cars. Their continuous and peak current
ratings are more theoretical than actually
achievable. They make very good motor
controllers for most robots. They are small,
easy to hook up, interface to, and control.
They are relatively inexpensive when com-
pared to other electronic speed controllers.
2. Continuous current is based on operating
with this current draw for a minimum of
three minutes. The robot controllers usually
operate with this current indefinitely;
whereas the R/C-car-style controllers have
this rating for three to five minutes.
3. Another important thing to look for is the
forward-to-reverse time delay. Most ESCs
have a small time delay (usually between
0.3 to 0.7 seconds) after commanding the
controller to change from forward to reverse
directions and before the reverse kicks in.
Most robots won’t notice this, but those
robots that require sudden motor direction
control — such as those used in sumo or
combat robot applications — the time delay
will make your robot act like it is very
sluggish to respond to your commands. In the
table shown here, Instant Forward/Reverse
time delay means that the robot has instant
direction control reaction. A “Yes” for the
time delay means there there is a time delay
present when changing directions.
* Special Notes
BrainMatrix.qxd 4/5/2005 10:17 AM Page 73
Q
.What defines a robot, and where did the word
come from?
— Tina Ayling
via Internet
A
.Let me first answer the second part of your ques-
tion. It is widely believed that the word originated
from the Czech word robota, which means inden-
tured servant or slave. The first known use of the word
“robot” is from a 1920s short play written by a Czech
playwright Karel Capek, entitled “R.U.R.,” which stands for
“Rossum’s Universal Robots.” In this play, the robots
eventually turn on their masters, which has become a
major theme in most movies that have robots as one of the
main characters.
There are many definitioins of what a robot is.
Webster’s New World Dictionary defines a robot as, “any
anthropomorphic mechanical being built to do routine man-
ual work for human beings or a mechanical device operating
automatically, especially by remote control, to perform in a
seemingly human way.” The Robot Institute of America
defines a robot as, “a reprogrammable, multifunctional
manipulator designed to move material, parts, tools, or
specialized devices through variable programmed motions
for the performance of a variety of tasks.”
I personally believe that there are two types of robots,
simple and complex. A simple robot is anything that is man-
made and designed to accomplish a set of tasks. A complex
robot is a simple robot that has some level of intelligence/
features that enables it to react to its changing environment
so it can accomplish its tasks.
Quite a variety of definitions for the same word, and it
only diverges from there depending on who you talk to.
There are far too many people that believe that if it is not
autonomous, it is not a robot. They believe that remote-con-
trolled vehicles are not robots because they are only
doing what the human operator is telling it. But
isn’t an autonomous robot the same thing? It was
programmed by a human being to do what the
human wants it to do and react to stimuli in such a
way that the human programmer wanted it to
react. The autonomous robot is doing exactly what
the human designer wanted it to do but at a later
time from when it was created. A remote-con-
trolled vehicle just responds quicker because of the
direct human reaction. But then again, the rovers
on Mars react to human commands hours after
they were given.
Regardless of what people think, if you
designed and built it, whether it is mechanical, elec-
trical, or virtual, and it is designed to accomplish
some task for you, it is a robot. Remember the ori-
gins of the word robota, which loosely translates to
servant. If your man-made creation is accomplishing
some task for you, it is serving you, thus it is
a robot.
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
Our resident expert on all things
robotic is merely an Email away.
roboto@servomagazine.com
74 SERVO 05.2005
+5V
INPUT
OPEN: INPUT = 5V
CLOSED: INPUT = 0V
10 kΩ
R1
10 kΩ
R1
INPUT
+5V
OPEN: INPUT = 0V
CLOSED: INPUT = 5V
PULL-UP RESISTOR
CONFIGURATION
PULL-DOWN RESISTOR
CONFIGURATION
Figure 1. Pull-up and pull-down resistor configurations used to
ensure the input states are at known values.
MrRoboto.qxd 4/5/2005 10:07 AM Page 74
Q
.I have been having a lot of fun making ant-weight
robots and competing with them. I usually use the
electronics from old RadioShack remote-control cars
in my robots. One of the problems I have noticed is that
when I point the antenna right at my robot, it starts to
act crazy. It is not a big deal, but do you have any idea why
this happens?
— David Flanigan
Los Angles, CA
A
.Actually, this problem is quite common, and can be
seen in transmitters — anywhere from the inexpensive
ones from RadioShack to the top-of-the-line units from
Futaba. Basically, the energy pattern that leaves an antenna
looks something like a donut with the antenna passing
through the center of it, where the radio waves are leaving
the surface of the antenna radially (perpendicularly). There
is very little to almost no energy leaving the antenna from
its tip.
When you point the antenna at your robot, there is
almost no radio energy that reaches your robot that is direct-
ly from the antenna. Most of the radio energy is transmitted
away from your robot. The signals that your robot eventually
does receive will be reflected signals off of the ground and
other structures. These signals are weaker than the original
signals; the receiver may not respond to them or it may
receive more than one reflected signal (bouncing off of more
than one wall). This may cause the robot to get out of phase
with itself, thus causing it to respond erratically to the origi-
nal signal.
When working with any radio-controlled robot, make
sure that you hold your antenna parallel with the antenna
that is on your robot. This will ensure that the maximum
amount of radio energy gets to the receiver’s antenna. One
way to prove this is to take your robot to a large field, where
there are no trees or buildings to reflect the radio waves back
to your robot. Then see how far away you can get from the
robot and still control it when the antenna is pointed direct-
ly at the robot and when the antenna is oriented parallel to
the robot.
Q
.I am wondering if you can help me figure out why
my robot occasionally thinks it is hitting a wall when
there is nothing there. I am using eight lever switch-
es that tell the robot to move away from whatever it bumps
into. I have the switches directly wired between the battery
and a BASIC Stamp. I have been wondering if this might be
related to static electricity, because it usually happens when
it is running on the carpet.
— Louis Sharp
Culver City, CA
A
.Without seeing the robot myself and based on the
description you gave me, I am going to assume that
the problem may be related to not using a pull-up or
pull-down resistor with your switches.
When the robot is touching an obstacle, the switch is
closed and five volts are applied directly to the BASIC
Stamp. The Stamp will interpret this as the switch being
closed and respond accordingly. The interesting thing
occurs when the robot is not touching the obstacle and the
switch is open. Many people assume that the Stamp’s input
will be reading zero volts, but this is not always the case.
The only thing you know for sure is that the original
five volts are not being applied to the Stamp’s input. In
reality though, there is no current, but the voltage can be
anything.
You said that you notice this problem more often when
the robot is running on the carpet. That gives me an indica-
tion that a small charge may be developing on the switch
that will begin to look like a voltage, and when it reaches a
certain minimum threshold, the Stamp will assume that the
switch has closed. A BASIC Stamp will assume any voltage
about 1.5 volts as being a Logic 1. All digital logic circuits
have to respond to these types of situations.
What people do to ensure that the voltage is zero when
the switch is open is to add a pull-down resistor to the
switch. Figure 1 shows a simple schematic for both pull-up
and pull-down resistors. The 10-kilohm resistors are known
SERVO 05.2005 75
Figure 2. Memsic 2125 accelerometer module.
T
2
T
1
Figure 3. Memsic 2125 pulse output.
MrRoboto.qxd 4/6/2005 3:06 PM Page 75
as the pull-up and pull-down resistors. In the pull-down con-
figuration, when the switch is closed, the input sees five
volts as expected. When the switch is open, the input is
forced to zero volts, because it is connected directly to
ground through the resistor. It is not allowed to float to any
voltage level.
The term pull-down comes from the voltage being pulled
down to zero volts when the switch is open. In the pull-up
configuration, when the switch is open, the input sees five
volts. When the switch clos-
es, the input sees zero
volts. Hence, the pull-up
term comes from the fact
that the voltage is pulled up
to five volts when the
switch is open. These two
configurations ensure that
the input voltage states are
always known. Hopefully
this will help solve your
problem.
Q
.I would like to be
able to determine
just how much my
robot is tilting when it is
going up hills. Some friends have suggested that I use
the ADXL210 accelerometers from Analog Devices, but their
geometries are impossible to work with. Do you, by any
chance, have some other suggestions and can you show me
how to use them?
—James Boarding
New York, NY
A
.The ADXL210 accelerometers from Analog Devices
(www.analog.com) are fine accelerometers and
are fairly popular, but their small size, geometry, and
lack of pins do make them fairly difficult to work with on reg-
ular breadboards. My suggestion would be that you take a
look at the Memsic 2125 accelerometer from Parallax
(www.parallax.com). This accelerometer is placed on a
convenient six-pin DIP package so they are easy to interface
in your projects. Figure 2 shows a photo of one of these
sensors.
This sensor has two axis of measurements oriented
90 degrees apart. By mounting the sensor vertically, you will
be able to measure your robot’s tilt by using an arctangent
function.
All that is required to use the sensor is to measure the
pulse width from the two axes and then convert that infor-
mation into acceleration (see the formula below). Figure 3
shows the output from both axes. T1 is the measured pulse
width, and T2 is the pulse period. These sensors are calibrat-
ed so that T2 is equal to 10 ms at 25 degrees C. If you want,
you can measure the period also.
T
1
a
axis
=
8
(
- 0.5
)
T
2
Take a look at Figure 4. It shows a simple schematic for
hooking one of these sensors to a BASIC Stamp, and the
source code shown below is a simple program that illustrates
how to use the sensor and output its results to a debug
window.
Y-OUT (TO P1 ON STAMP)
T-OUT
MEMSIC 2125
+5V
Y-AXIS
X-OUT (TO P0 ON STAMP)
X
-
A
X
I
S
4
3
2
1
5
6
Figure 4. Memsic 2125 accelerometer test setup.
76 SERVO 05.2005
Circle #122 on the Reader Service Card.
MrRoboto.qxd 4/5/2005 10:09 AM Page 76
‘ {$STAMP BS2p}
‘ {$PBASIC 2.5}
‘ This program will calculate a title angle for the
‘ Memsic 2125 accelerometer.

‘ This program is based on the sample program provided
‘ with the accelerometer.
Xin PIN 0 ‘X-axis input from Memsic 2125
‘(X-out, pin 6)
Yin PIN 1 ‘Y-axis input from Memsic 2125
‘(Y-out, pin 2)
Xaxis VAR Word ‘X-axis pulse measurement
Yaxis VAR Word ‘Y-axis pulse measurement
Xtemp VAR Word ‘temp variable for X-axis
‘calculations
Ytemp VAR Word ‘temp variable for Y-axis
‘calculations
brads VAR Word ‘Binary radians 0-255 brads in
‘1 revolution
degrees VAR Word ‘Tilt angle
Init: ‘Open DEBUG window open
PAUSE 250
DEBUG “Memsic 2125 Rotation”, CR
Main: ‘Main program loop
DO
PULSIN Xin, 1, Xtemp ‘Read X-Axis pulse width
PULSIN Yin, 1, Ytemp ‘Read Y-Axis pulse width
‘Convert to 1/1000 g since Stamps are limited to 16
‘bit math
‘When using BS2 and BS2e use the following formula
‘ Xaxis = 8*Xtemp/5-4000
‘ Yaxis = 8*Ytemp/5-4000
‘When using BS2p use the following formulas
Xaxis = 3*Xtemp/5-4000
Yaxis = 3*Ytemp/5-4000
brads = (Yaxis/16) ATN (Xaxis/16) ‘Calculate the
‘B-Radian angle
degrees = brads*180/128 ‘Convert to
‘degrees
Xtemp = ABS(Xaxis) ‘Convert any negative numbers to
‘positive
Ytemp = ABS(Yaxis) ‘numbers to simplify the integer
‘math.
DEBUG CRSRXY, 0, 2 ‘Display the results in a Debug
‘Window.
DEBUG “Axis A(g)”, CR,
“X “, (Xaxis.BIT15 * 13 + “ “),
DEC Xtemp/1000, “.”, DEC3 Xtemp//1000, “ g”,
CR,
“Y “, (Yaxis.BIT15 * 13 + “ “),
DEC Ytemp / 1000, “.”, DEC3 Ytemp//1000,
“ g”, CR, CR,
“Tilt = “, DEC3 brads, “.”, DEC1 brads//1000,
“ Brads”, CR,
“ “, DEC3 degrees, “.”, DEC1 degrees//
1000, “ Degrees”
LOOP
END
This sensor only provides one tilt angle. By using two
of these sensors, you can determine forward/backward
tilt and sideways tilt. To do this, place two sensors where
both x-axes are parallel and point toward the front of
the robot.
On one sensor, the y-axis will lie flat on the base of the
robot, pointing to the left, and the other sensor will have
the y-axis pointing upwards, 90 degrees from the other
y-axis. The axis that is pointing up will now be known as the
z-axis. The pitch angle (forward/backward) will now be the
angle between the z-axis and the x-axis, and the roll angle
will be the angle between the z-axis and the y-axis on
the robot.
With about 10 lines of code, you will know all of the
angular orientations of your robot. Now keep in mind that
these sensors are accelerometers; the angles will be skewed
if the robot is accelerating or hitting bumps. You are
probably going to need to do some time-averaging of the
measurements so that these momentary accelerations/
bumps can be filtered out of the final results. SV
WWW.SOZBOTS.COM
These awesome kits are the latest craze in Japan.
Robot has 17 motors for fluid movements.
Programed and Controlled via PC.
Upgradable to Bluetooth wireless.
N
e
w
BROUGHT TO YOU BY
SERVO 05.2005 77
Circle #136 on the Reader Service Card.
MrRoboto.qxd 4/5/2005 10:10 AM Page 77
78 SERVO 05.2005
I've been asked for some tips for new robot clubs
planning their first contest. Well, I aim to please. Here are a
few pointers.
Take a look at what other clubs are doing. It's much
easier to adopt or adapt a proven contest format than
invent something totally new.
Start simple. A simple contest in which a lot of
members can participate and complete is better than an
overly-complex contest that no one is able to complete. You
can always add a more complex contest later.
One model of gradually increasing complexity is provid-
ed by the Dallas Personal Robotics Group. They start with
"Quick-Trip," which involves the simplest navigation problem
of moving from point A to point B and back again. The chal-
lenges involved in such basic navigation skills come as a
surprise to many first time robot builders. After completing
Quick-Trip, DPRG robots graduate to T-Time which involves
a T-shaped course with three points: A, B, and C.
From there, the addition of a gripper allows robots to enter
"Can-Can," in which they must locate and retrieve soda cans.
Where do you go from there? How about the Seattle
Robotics Society Robo-Magellan. It requires all the skills
developed in the above contests but also relies heavily on
vision processing, obstacle avoidance, and waypoint
navigation. Several robot groups have started holding
Robo-Magellan contests and they are proving to be very
challenging. If you can complete this one, you're probably
ready to move on to the DARPA Grand Challenge.
One last suggestion for anyone working on new contest
ideas: make the goals as general as possible. Contests with
very specific goals and complex rules result in robots that
can only do one thing well. It's better to use general goals
and minimal rules to guide the robot builder toward a more
creative and general-purpose robot that may be useful in the
real world.
— R. Steven Rainwater
For last-minute updates and changes, you can always find
the most recent version of the Robot Competition FAQ at
Robots.net: http://robots.net/rcfaq.html
M Ma ay y 2 20 00 05 5
6 Alcabot
University of Alcala, Madrid, Spain
Includes several events related to the Eurobot
program.
www.depeca.uah.es/alcabot
6 TEAMS (Technology Education Alliance with
Middle Schools)
Applied Physics Lab, Johns Hopkins University,
Laurel, MD
TEAMS looks like a new group trying to get in on
the FIRST/BEST action. Like those more familiar
events, TEAMS consists of mentors helping groups
of students build robots that compete against each
other. So far, it looks like TEAMS participation is
limited to Maryland.
www.theodysseyschool.org/~teams
11 Micro-Rato
University of Aveiro, Aveiro, Portugal
Micro-rats are similar to the more familiar micro-
mouse, just a bit larger.
http://microrato.ua.pt
14 Historical Electronics Museum Robot Festival
Historical Electronics Museum, Linthicum, MD
This local event is new to the robot competition
list but it's actually their sixth year to hold the
Robot Festival. They have a wide range of events
including: Sumo, Fire-fighting robots, FIRST, LEGO
Mindstorms, and even some "robot" combat for
those who like to see radio-controlled vehicles crash
into each other.
www.robotfest.com
14 LVBOTS CHALLENGE
Rancho High School, Las Vegas, NV
Events include line following, line maze solving, and
mini Sumo.
www.lvbots.org
14 Western Canadian Robot Games
Southern Alberta Institute of Technology, Alberta,
Canada
This will be the 15th annual event for one of the
longest running robotics competitions in North
America.
www.robotgames.net/robot_society.htm
Send updates, new listings, corrections, complaints, and suggestions to: steve@ncc.com or FAX 972-404-0269
Events.qxd 4/6/2005 1:53 PM Page 78
Flashing the Lights
I
always tell students that I
became interested in electron-
ics to learn how to flash lights.
Something about the on and off
flashing of lights just got my
attention. So, over the course of
the past 20-odd years, I have
worked on numerous projects that
had their fair share of flashing
lights, from multiplexed seven-seg-
ment displays, scrolling-text mes-
sages on dot-matrix LED displays,
and even a 4,000-watt display that
contained 384 25-watt, 120-volt
AC light bulbs, all controlled with
only three wires. Of course, along the
way, I picked up a few other tricks.
How did I do it? I built lots of cir-
cuits and created clouds of smoke
when things went wrong. I read lots
and lots of magazine articles and
books, and I took plenty of things
apart (without being able to get them
back together when I was younger).
When I became interested in elec-
tronics there was no Internet, so it was
harder to locate a circuit similar to
what you needed. I built a large num-
ber of RadioShack electronic kits. As a
teenager, I read Popular Electronics,
Radio Electronics, BYTE magazine, and
even QST, a ham radio magazine that
had interesting schematics in it. I
looked at the schematics and read the
descriptions of how they worked.
Lucky for me, my scoutmaster was
an electrical engineer (and also a math
teacher), and he introduced me to ana-
log and digital electronics, and exposed
me to my first programming language,
APL. He had also designed and built his
own telephone answering machine (rel-
atively new back in those days). It was
a 19-inch, rack-mount chassis brimming
with time-delay relays. I regret losing
the schematic he gave me, but I sure
studied it while I had it.
I have learned a great deal about
how to design circuits by examining
other people’s designs. It is the elec-
tronic equivalent of a crossword puz-
zle, where the blanks are answers to
such questions as, “Why is that compo-
nent used,” and “What is the purpose
of that signal?”
All through my adult life, I have
had the good luck to work with people
who were positive, hard-working, and
enthusiastic about their jobs. These
individuals shared their time and talent
with me, teaching me about new
things, challenging me, working with
me to develop new applications or
investigate existing devices. These
individuals were my professors, my
colleagues, business associates, and
even friends.
My first office mate when I was a
new faculty member was Michael
Coppola. He was the same age as me
and had already been at the college for
three years. During my first semester,
Michael and I taught two sections of
the same electronics course, where we
covered DC and AC amplifier design
and analysis, frequency response,
and active filters.
I learned a great deal that
semester by simply meeting with
Michael for five minutes between
classes (he taught the first class, I
taught the second), where he
would describe what he did dur-
ing his lecture. I would go and do
the same lecture myself and meet
with him again afterwards to
review. Michael figured out things
that stumped me and showed me
more about analyzing amplifiers
than my four-year professors had.
During our free time, we took an
interest in the National Semiconductor
Digitalker chip and spent weeks investi-
gating how it worked. At one point, we
hooked up a chart recorder to the
audio output and slowed the
Digitalker’s clock speed down consider-
ably. We captured the audio waveform
on the chart recorder and studied it.
We learned there was a mirror symme-
try in the waveform, which was a sur-
prising discovery. Michael and I did
many other experiments with audio
and digital circuitry, and had a great
deal of fun doing them.
One professor, in particular,
changed my life forever by inspiring me
to become a teacher and to write my
first book. This was Alan Dixon, my first
electronics professor. Alan allowed me
to take his digital electronics course (a
senior-level course) before I even
entered his department. This was
rather nice of him, considering I was
flunking out of college and wasting
away in a different degree program
that did not interest me while earning
lots of Ds and Fs.
Alan allowed me to take his digital
course without any prerequisites,
by James Antonakos
SERVO 05.2005 79
Appetizer.qxd 4/6/2005 1:46 PM Page 79
because I told him I had built my own
8080-based S-100 computer in my
basement. Those of you old enough to
know what I just said will understand
that Alan’s course on 8080 assembly
language and digital electronics was
right up my alley. After earning an A
that semester, I finally had something
no other college course had given me:
confidence. Two years later, I graduat-
ed from Alan’s department and head-
ed to RIT to work on my BSEE. Right
before I left, I said to Alan, “Hey, do
you want to write a book?”
Now, 21 years later, I am a profes-
sor, teaching in Alan’s old department,
having written books on many dif-
ferent technical subjects. I was
lucky to have Alan while I was a
student and then to be able to
work with him later as a colleague.
Alan contributed heavily to my
training as a faculty member. If I
gained anything from my years
of working by his side, it was that
you should think big and make it
interesting.
My teenage world of video
games included games like “Space
Invaders,” “Asteroids,” “Donkey
Kong,” and “Tempest.” Like any
good geek, I sent away for the
schematics of the game, having con-
vinced the supply company I was an
authorized service technician. I studied
those game schematics for hours,
learning many things about processor
interfacing, video generation, and
sound processing. There was some-
thing exciting about looking at the cir-
cuit board for a new video game, as
they were as large as baking sheets
back then and crammed with a couple
hundred integrated circuits.
Now, it can all be done on the PC
with clever software and built-in sound
and video. But back then, I managed to
find work at three different video game
arcades, fixing pinball machines and
video games. Even though I got fired
for allowing my friends to play for free,
it was fun being around all that elec-
tronic technology.
At some point, it became apparent
to me that the light flashing could be
accomplished through a dedicated
hardware circuit or through a simple
hardware interface and a computer
program.
Assembly language, Basic, C, and
other languages became part of my
toolbox, as I began to use software to
control my hardware. I also realized
that the core of my fixation with flash-
ing lights was something much simpler,
and that is my need to know how
things work. I just like to know.
Lots of times, when I see some
interesting electronic gizmo, I try to
design and build one myself (after
peeking under the hood, if I can). This
interest in reverse engineering and cre-
ating things that do not exist extended
itself into the areas of speech synthesis,
data compression, error detection and
correction, computer networking,
image processing, and many other
areas that fascinate me.
TEXAS ART ROBOTS
H A N D M A D E I N T E L L I G E N C E
WWW. ARTBOTS. COM
UNIQUE LIMITED EDITIONS
INTELLIGENT & AUTONOMOUS
HAND CRAFTED
Electronic Parts & Supplies
Since 1967
The Most Intelligent
Servos on the Planet
For Animatronics and Robotics
Positioning and Continuous Rotation Models
www.i-Servo.com




For the finest in robots, parts, and services,
go to www.servomagazine.com and
click on Robo-Links to hotlink to
these great companies.
80 SERVO 05.2005
Appetizer.qxd 4/7/2005 11:40 AM Page 80
Once, during a student trip to the
Boston Museum of Science, I saw a
human reaction time circuit. I thought
it was interesting, so I went back to my
college and built one with a student.
Students still play with it every day as it
is mounted in the hallway on our floor
right next to the water fountain.
I spent over 15 years working part-
time on a Ph.D. in computer science (I
am not finished yet), taking courses,
performing research, learning more
about computers than I ever imagined,
and being exposed to many things not
in the orbit of an electrical engineer.
I put in this time voluntarily, as my
job does not require it. I did it for the
fun of it, because I was interested in
the new material. I used my new
knowledge from my Ph.D. courses to
add content to several of my college
courses, and wrote several books with
it, as well.
In addition to Alan Dixon (whom I
wrote my first book with) is my other
co-author, Kenneth Mansfield. Ken and
I have challenged each other greatly
over the years, beginning as student
lab partners, working on our two-year
degrees, and continuing to this day as
professors in the same department.
My interest in flashing lights has
evolved to the point where the flashing
is controlled over the Internet by a
TCP/IP application and a small embed-
ded Web server module. Ken found the
Web server modules and ordered a few
to play with (he likes to experiment
with new gizmos, too). We interfaced a
single seven-segment display to the
module, and Ken wrote a simple
TCP/IP application to flash numbers on
the display.
Ken and I trade program revisions
back and forth, making the Internet-
based flashing circuit do some new
trick each time. Right now, we have it
programmed to flash the IP address of
Ken’s game server to both of our hous-
es every few minutes. As I wrote this
article, the display flashed silently
above me several times.
If I am successful at designing and
building something, the results are, at
least, partially due to the fact that I like
challenges and do not like to quit work-
ing on a problem until I solve it. Alan
Dixon challenged me constantly, both
as a student and fellow faculty mem-
ber. He would get a twinkle in his eye
when we were discussing something
new, and he would say, “That is proba-
bly too hard for you, Jamie,” or “I’ll bet
you can’t do that, Jamie.” Naturally, I
had to work night and day building a
new circuit or writing a new program
to show him I could do it.
A sample of some of my designs
can be found at http://web.suny
broome.edu/~antonakos_j/projects/
You will notice that there are plen-
ty of lights involved in the projects and
almost all of them are built by or with
students. Most of the projects allow
you to see the electronic innards that
make them work.
Have I been a freak all my life? A
hopeless electronic and computer
geek? I think so, from a very early age.
I remember making a small box and
calling it the “head” of my new robot.
I was five years old. A television car-
toon called “8th Man,” and another
called “Gigantor” (TV from the 1960s),
got me really interested in robots as a
child. Of course, the inside of the robot
was more interesting than the outside,
so that led to the investigation of
electronic brains.
Can you imagine how lucky I felt
when I scored a tour at a local IBM
facility and actually touched and
programmed an IBM 360? Pure geek,
but firmly on course for a future in
electronics.
After 28 years of evolution, post
high school, what am I now, ? An elec-
trical engineer? A computer scientist?
A professor? A designer? A program-
mer? I think I am all of these things,
and more, because I also like to hike,
read, watch sci-fi movies, play with my
children and friends, and talk to my
wife about things above my head.
Will I continue trying to come up
with new ways to flash the lights? You
bet I will. I owe my way of life to my
pursuit of flashing lights and all the
wonder behind why we choose to
make them flash. SV
Advertiser Index
Abacom Technologies .........................31
All Electronics Corp. ............................55
AnyChip ................................................16
AREXX Engineering ..............................21
BitScope ................................................17
Cook’s Institute .....................................76
CrustCrawler ...........................................7
Electronic Goldmine ............................50
Enigma Industries .................................55
Garage Technologies ...........................55
HiTec ......................................................59
Hobby Engineering ..............................65
IMService ..............................................54
Jameco ............................................47, 83
Labjack ..................................................35
Lemon Studios .....................................35
Lynxmotion, Inc. ...................................69
Madell Technology ..............................23
Net Media ...............................................2
NUBOTICS .............................................55
Parallax, Inc. ...........................Back Cover
PCB123/PCBexpress ...............................3
PCB Fab Express ...................................58
Pololu Robotics & Electronics .............39
R4 Systems, Inc......................................33
RadioShack .............................................9
Resources Un-Ltd. .................................71
Robotics Group, Inc..............................25
RobotShop ...........................................66
Smithy.....................................................55
Solutions Cubed....................................27
Sozbots..................................................77
Technological Arts ...............................41
Tetsujin 2005..........................................11
Vantec ...................................................57
Zagros Robotics ...................................55
SERVO 05.2005 81
James Antonakos is a Professor in
the Departments of Electrical
Engineering Technology and Computer
Studies at Broome Community College.
You may reach him at antonakos_j@sun
ybroome.edu or visit his website at
www.sunybroome.edu/
~
antonakos_j
AUTHOR BIO
Appetizer.qxd 4/6/2005 1:47 PM Page 81
82 SERVO 05.2005
I
n 1984, Lou Gostinger, marketing
director for Tomy Corporation, called
me about a new line of robots that his
company was developing. They had
marketed several “robot” toys prior to
that but were now interested in pro-
moting a real robot that adults would
find interesting and useful.
They had a series of unique toys,
such as a robot owl called “Hootbot”
and a rather cute dog robot called
“Spotbot” that really didn’t do a lot.
Later came the “Verbot” talking robot
that began to pique the interests of
serious robot experimenters. The
Omnibot arrived on the scene in 1984.
At a price of $250.00, it was their first
attempt at a serious home robot.
During the conversation, I could
sense that Lou wanted our Robotics
Society of Southern California group to
see and evaluate their latest and best,
the Omnibot 2000. (Remember when
the year 2000 was the future?) He
brought several to one of our meet-
ings. It was an instant hit with the
members, but in later conversations,
we all agreed that the attraction was
for its ability to be hacked rather than
for its out-of-the-box usefulness. One
of our members quickly did some
measurements and determined that a
small 6502 processor board would
neatly fit into the base.
We didn’t have to wait long before
Tomy brought out an experimenter’s
base called Homer.
The $495.00 Omnibot 2000 was a
great improvement over the original
Omnibot. It stood quite a bit taller and
seemed closer to a more useful person-
al robot than the previous models. The
best part — as far as we experimenters
felt — was its three-axis arm (only the
right arm was motorized) that could
grasp a soda can and pour it into a
cup. If you had attached the motorized
tray to the robot’s front, the tray could
move several cups in an oval pattern.
This was all accomplished by
remote control, but hackers soon had
the arm under control of a John Bell
6502 microprocessor board and pro-
grams that could be stored on the built-
in tape deck.
Tomy Koygo Co., the Japanese par-
ent of Tomy, was trying to pull away
from the “toy” image of its robot prod-
ucts with another robot called
“Hearoid” from a Tomy offshoot com-
pany called TTC, Tomy Technical
Corporation. This cute little robot made
its debut in mid 1985 and was similar
to the original Omnibot. The $395.00
Hearoid could be controlled by the
user’s voice and also had a grasping
hand, a removable carrying tray, and a
built-in tape deck. Voice controls could
operate all the movements, lights, and
tape deck.
One of the most interesting prod-
ucts to me was the Homer robot proj-
ect base. At about the size of a fat
bathroom scale, the $150.00 base was
an experimenter’s ideal platform. With
six driven wheels, an ultrasonic con-
troller (remember when TV controllers
were ultrasonic and not IR?) that could
make it go forward and reverse, turn
right or left, and even “return to
home.” I saw what I think were proto-
types but never saw them in produc-
tion. TTC also had a B&W TV camera
attachment that could be used on the
Homer or Hearoid at $350.00.
Sometime around 1986, I got a
call from Mary Woodworth of Tomy,
asking if our robotics group would be
interested in buying off some of their
stock of robots, as they were no
longer selling that well. I could hardly
get the word “yes” out of my mouth,
as saliva was dripping onto the phone.
At their Wilmington warehouse, I
managed to stuff six Hearoids, two
Omnibot 2000s, some miscellaneous
robots, and robot parts into my car
without sounding too greedy. Hey, I’m
sure she saw right through me when
they only cost me $5.00 each, plus
several free broken 2000 motorized
arms. Others of our group bought all
they could haul home. I managed to
use several of mine as “action props”
in the movie Automatic and as still
props in I Robot.
I’ve seen the Tomy robots on eBay
and all over the Internet. I highly rec-
ommend them as an easily hackable
robot, as well as an amazing toy of
yesteryear. SV
THEN AND NOW
by Tom Carroll
Tomy Omnibots
ThenAndNow.qxd 4/6/2005 1:57 PM Page 82
Be sure to visit our new website at
www.Jameco.com/nvd
Jameco Electronics
—where electronics is still fun!
Great Products. Awesome Prices.
1.800.831.4242
Remember when...
Remember when...
...electronics stores were stocked to the rafters
with every component imaginable and there was ALWAYS
a knowledgeable person there to help you?
Think those days are gone?
Well they’re not!
You just need Jameco!
Call for a FREE 256-page catalog today.
We have the electronic components and knowledgeable
Technical Support people who can help bring back the fun
in your electronics hobbies, inventions, and DIY projects.
Circle #37 on the Reader Service Card.
Circle #36 on the Reader Service Card.
CoverInside.qxd 4/5/2005 7:55 PM Page 2
Circle #40 on the Reader Service Card.
V
o
l
.

3

N
o
.

5
S
E
R
V
O
M
A
G
A
Z
I
N
E
R
O
B
O
T
S

T
O

T
H
E

R
E
S
C
U
E
M
A
Y

2
0
0
5
0 4 74470 58285
05>
U.S. $5.50 CANADA $9.25
Cover.qxd 4/7/2005 2:24 PM Page 84