You are on page 1of 84

V

o
l
.

5

N
o
.

9
S
E
R
V
O
M
A
G
A
Z
I
N
E
V
E
X
A
U
T
O
M
O
T
I
V
E

B
A
S
H
B
A
L
L

C
A
N

N
E
T
W
O
R
K
I
N
G

R
O
B
O
C
U
P

M
-
B
O
T
S
e
p
t
e
m
b
e
r

2
0
0
7
Cover.qxd 8/8/2007 9:33 PM Page 84
Order 24 hours a day, 7 days a week
www.Jameco.com
Or call 800-831-4242 anytime
Jameco Electronics. *According to their web sites on July 23, 2007. Trademarks are the property of their respective owners.
OTHER JAMECO ADVANTAGES:
I More major passive, interconnect and electro-
mechanical brands than other distributors.
I 99% of catalog products ship the same day.
I Lowest prices guaranteed, or we pay 10%.
I Major brand names and generic equivalents
for even greater cost savings.
5
10
15
20
25
Were semi nuts
Weve got semis on the brain. Jameco offers more major brands of semiconductors than anyone
almost twice as many as these catalog distributors.* Its another Jameco advantage.
Mouser

Newark

Allied

Jameco

Atmel Semiconductor Altera Analog Devices Altera


Avago Technologies Analog Devices Atmel Semiconductor Analog Devices
Cypress Semiconductor Avago Technologies Avago Technologies Atmel Semiconductor
Diodes, Inc. Cypress Semiconductor Freescale Semiconductor Avago Technologies
Fairchild Semiconductor Fairchild Semiconductor Infineon Technologies Cypress Semiconductor
Freescale Semiconductor Freescale Semiconductor Integrated Devices Diodes, Inc.
Intersil Integrated Devices Intel Corporation Fairchild Semiconductor
Lattice Semiconductor Intel Corporation Intersil Freescale Semiconductor
Lite-On Semiconductor Intersil Lattice Semiconductor Infineon Technologies
NEC Corporation Lattice Semiconductor Maxim Integrated Devices
Sharp Microelectronics Maxim National Semiconductor Intel Corporation
ST Microelectronics National Semiconductor NXP (formerly Philips) Intersil
Texas Instruments ST Microelectronics ST Microelectronics Lattice Semiconductor
Texas Instruments Texas Instruments Linear Technology
Lite-On Semiconductor
Maxim
Micron Technology
Microsemi
National Semiconductor
NEC Corporation
NXP (formerly Philips)
Renesas Technology
Sharp Microelectronics
ST Microelectronics
Texas Instruments
Toshiba
Free shipping
on these and
79 other brands.
Call for details.
CoverInside.qxd 8/8/2007 7:50 PM Page 2
First-class customer service...
You have provided polite, detailed support when have
needed it, have been more than accommodating when it comes
to purchasing assistance as well as providing me with lightning
Iast email responses, prompt delivery and have met and greatly
exceeded my expectation Irom a retailer in every regard
Robert 0ordon University, Aberdeen
0R0ER 0NLNE:
WWW.A0TVE-R0B0T5.00M - TEL: + I0J171 23 27
Robonova-1
H0KUY0 PB5-03JN
nIrared range nder Ior
indoor environments
AUTH0R5E0 H0KUY0 0EALER
H0KUY0 UR0-0LX state oI
the art laser range nder
5ensor Mounting Hardware
Robot chassis, parts
& accessories
Easy 5tep 3000, advanced
stepper motor drive and
control system
Micromouse chassis
Entry level controller
suited to small robotics
and control applications
Full Page.qxd 8/8/2007 7:54 PM Page 3
4 SERVO 09.2007
35 BASHBALL!
by Steve Judd
BotBash returns with a new game,
a radically updated Active Arena,
and a dif ferent approach to extreme
robotic sports.
38 RoboCup 2007
by Dennis Hong, Karl Muecke,
Robert Mayo, Jesse Hurdus,
and Brad Pullins
DARwIns first soccer tournament.
44 Build an Inexpensive
Solar Trickle Charger
From Junk
by Alan Federman
Harness the rays from the sun to
power your outdoor bots.
46 Beginners Guide to
Programming
by Michael Simpson
Lesson 3: Branch, LookUp, LookDown,
and LCD commands.
51 M-BOT
by Ron Hackett
Part 1: Begin construction on this
intelligent, autonomous robot
controlled only by an eight-pin
processor.
55 CAN Networking
Southern Style
by Fred Eady
Put some CAN application code
together and control an LED
before adding additional motor
driver hardware.
62 RoboGames 2007
by Peter Smith
Recap of this years event.
Features & Projects
SERVO Magazine (ISSN 1546-0592/CDN Pub Agree
#40702530) is published monthly for $24.95 per year by T &
L Publications, Inc., 430 Princeland Court, Corona, CA 92879.
PERIODICALS POSTAGE PAID AT CORONA, CA AND AT
ADDITIONAL ENTRY MAILING OFFICES. POSTMASTER:
Send address changes to SERVO Magazine, P.O.
Box 15277, North Hollywood, CA 91615 or
Station A, P.O. Box 54, Windsor ON N9A 6J5; cpcreturns@
servomagazine.com
PAGE 62
TOC Sep07.qxd 8/8/2007 3:47 PM Page 4
09.2007
VOL. 5 NO. 9
SERVO 09.2007 5
ENTER WITH CAUTION!
26 The Combat Zone
Columns
08
Robytes by Jeff Eckert
Stimulating Robot Tidbits
10
GeerHead by David Geer
AUVSI UV Sampling
14
Dif ferent Bits
by Heather Dewey-Hagborg
Neural Networks for the PIC Microcontroller
Part 2 Backpropagation
20
Ask Mr. Roboto by Pete Miles
Your Problems Solved Here
67
Twin Tweaks
by Bryce and Evan Woolley
Robot vs. Wild
72
Robotics Resources
by Gordon McComb
Juicing Up Your Bot With the Best
Rechargeable Batteries
79
Appetizer by Dan Danknick
Time to Innovate
80
Then and Now by Tom Carroll
People of Robotics
Departments
06 Mind/Iron
07 Bio-Feedback
22 New Products
24 Events Calendar
34 Robotics Showcase
50 Robo-Links
76 SERVO Store
82 Advertisers Index
PAGE 38 PAGE 51
TOC Sep07.qxd 8/8/2007 3:47 PM Page 5
Published Monthly By
T & L Publications, Inc.
430 Princeland Court
Corona, CA 92879-1300
(951) 371-8497
FAX (951) 371-3052
Product Order Line 1-800-783-4624
www.servomagazine.com
Subscriptions
Inside US 1-877-525-2539
Outside US 1-818-487-4545
P.O. Box 15277
North Hollywood, CA 91615
PUBLISHER
Larry Lemieux
publisher@servomagazine.com
ASSOCIATE PUBLISHER/
VP OF SALES/MARKETING
Robin Lemieux
display@servomagazine.com
EDITOR
Bryan Bergeron
techedit-servo@yahoo.com
CONTRIBUTING EDITORS
Jeff Eckert Tom Carroll
Gordon McComb David Geer
Pete Miles R. Steven Rainwater
Michael Simpson Kevin Berry
Fred Eady Dennis Hong
Karl Muecke Robert Mayo
Jesse Hurdus Brad Pullins
Steve Judd Peter Smith
Alan Federman Ron Hackett
Dan Danknick Chris Olin
Ray Billings Jay Johnson
Bryce Woolley Evan Woolley
Heather Dewey-Hagborg
CIRCULATION DIRECTOR
Tracy Kerley
subscribe@servomagazine.com
MARKETING COORDINATOR
Brian Kirkpatrick
WEB CONTENT/STORE
Michael Kaudze
sales@servomagazine.com
PRODUCTION/GRAPHICS
Shannon Lemieux
Michele Durant
ADMINISTRATIVE ASSISTANT
Debbie Stauffacher
Copyright 2007 by
T & L Publications, Inc.
All Rights Reserved
All advertising is subject to publishers 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.
Academic vs. Commercial Robotics
I had the fortune of participating in
the 7th IEEE International Symposium on
Computational Intelligence in Robotics
and Automation (CIRA) conference, held
this summer in Jacksonville, FL. Academic
researchers from Asia, Africa, Europe, and
the Americas presented their work on
topics ranging from robot manipulators
and cooperative robotics, to robot vision.
As expected, the event was a
concentrated refresher on the leading
edge of robotics research. An unexpected
take-away from my conversations with the
researchers at the conference was the
differences between academic and
commercial robotics, and the merit of
each perspective.
The most obvious differences are a
result of the reward systems applied to
each group. Academic roboticists are
rewarded for tackling intellectually
challenging problems that can result in
academic publications, with little or no
regard for short-term commercial
significance. As a result, academic
roboticists tend to focused on niche areas
that they can explore and perhaps claim
for their own whether its a novel
algorithm, manipulator design, or robot
configuration. Intellectual property,
which provides leverage for academic
promotion and securing government- and
industry-sponsored grants, is guarded
until publication. I liken the academic
model to an inverted funnel, in which
researchers drill down on an intellectually
stimulating and novel domain, and only
later broaden their approach to consider
the broader applications of their work,
including commercialization.
Commercial roboticists, in contrast,
are entrepreneurs. They are rewarded by
the marketplace for recognizing and
understanding a problem and then
identifying a commercially viable technical
solution. Their approach can be modeled
as a funnel in that broad issues are
considered first, and then choices are
narrowed by issues such as intellectual
property protection, cost of manufacture,
competition, availability of distribution
channels, support requirements, liability,
and likelihood of follow-on products that
will insure growth of a company.
Commercial roboticists tend to
focus on problem areas that are dull,
dangerous, and dirty and know that
superior technology is necessary but
insufficient for commercial success.
Intellectual property is either kept as
trade secrets or protected with patents,
trademarks, and copyrights.
Despite these and other
differences, academic and commercial
robotics are intertwined in a symbiotic
relationship. The best marketing
strategy and business model will
eventually fail if the underlying
technology doesnt adequately solve the
buyers problems. Conversely, academic
researchers increasingly rely on funding
from private firms and corporations to
supplement their typically limited
academic funding.
Academic departments are also
aware of the pressure to develop robotic
applications that eventually see the light
of day, as opposed to a short-lived
appearance on the Web or as a
reference in an academic journal.
Academic programs in robotics are
judged in part on the placement success
of their graduates in industry, which
adds pressure on programs to produce
graduates with knowledge and skills
applicable to commercial products.
The take-away for you is that, as an
independent robotics innovator, you can
Mind / Iron
by Bryan Bergeron, Editor
Mind/Iron Continued
6 SERVO 09.2007
Mind-FeedSep07.qxd 8/8/2007 6:52 PM Page 6
Dear SERVO:
I read Pete Miles reply in the July
SERVO about the problems of using
infrared beacons in the house and wanting
to offer another approach.
I use RobotBASIC to develop a
complete house navigation simulation
using infrared beacons. It works
perfectly, mainly because I used a very
different approach. (Note: If you are not
familiar with RobotBASIC, please see my
article in the June issue).
The assumption in the simulation was
that I had 10 or so beacons (each with a
unique ID code) that could be turned on by
remote control (BlueTooth, for example).
The program used a computer
science data structure called a graph that
essentially provided a map of the house.
When the robot was requested from any
given room, the program checked the map
and turned on the beacons one at a time,
in the proper order, allowing the robot to
move (using the shortest path) from
where it was to where it wanted to go.
The simulation involved a complex
floor plan and demonstrated how simple
navigation can be if only some
manufacturer would provide a beacon
detector, and several beacons (that perhaps
look like smoke detectors) each with their
own ID code that could be set with DIP
switches. Since beacons could be placed
throughout the house (probably primarily
over doorways) they do not need to be
extremely powerful ... typically, they would
only need to be detectable from 15-20
feet. In the rare cases where that was not
enough, two beacons could be used to get
through a room or a hallway.
The point is, I believe infrared
beacons can provide an extremely
easy-to-use, economical way for hobbyists
to navagate a complex environment. My
simulation would even go around objects
found to be blocking the path and then
resume movement toward the beacon.
Of course, most microcontroller-based
robots would not have the memory or math
ability to deal with the graph data but the
new version of RobotBASIC (2.0) provides a
built-in protocol that allows all the standard
simulation commands to control a real robot
over a wireless link. This means even small
robots now have the ability to be controlled
by a complete, powerful language giving new
life to the goal of AI in small machines.
Hmmm ... looks like I rambled some,
but I am very proud of the capablities of
RobotBASIC and I think it opens many
doors to more intelligent control that
have been overlooked because of previous
limitations imposed by the required use of
simple microcontrollers.
John Blankenship
Dear SERVO:
This correction refers to Tom Carrolls
article on robotic arms. The following
statements are incorrect: the advantage
of using R/C servos is the positional
feedback; potentiometric feedback, as in
R/C servos allow the controlling computer
to know where each joint is positioned.
There are no feedback mechanisms
built into any standard servo today, with
the exception of the AX-12+ and a few
specialized servos used in Biped type-robots.
Alex Dirks, CrustCrawler
benefit from aspects of both
commercial and academic approaches.
Before beginning your next robotics
project, consider how youd approach
design and development from a
commercial and then academic
perspective. Certainly, you want to
learn something from everything you
do, but if youre looking at making
your innovation applicable to a larger
audience, then you have to consider
the business issues in component
selection, design, potential sales
volume, and follow-on products.
When considering component
selection, it helps to imagine that
youre building, say, 5,000 robots.
Suddenly, a few cents for a component
or the cost of an added square
centimeter of pc board or aluminum
chassis makes a big difference in overall
cost. Sensors and other components
that are just good enough for your
application may not be pushing the
technology envelope, but customers
wont care if the robots work as
advertised. Conversely, a new
microprocessor might be more
expensive to install initially, but
incorporating it in your design will give
you a chance to learn about the device,
and may provide a growth path for
add-ons. The bottom line is that, with a
combined approach, your robotics
innovations can be both technologically
and financially sound. SV
SERVO 09.2007 7
Mind-FeedSep07.qxd 8/8/2007 6:52 PM Page 7
8 SERVO 09.2007
Research Seeks Human-Like
Movement
Robots are not generally known
for smooth movement and gentle
touch, but Oussama Khatib, a
computer science professor at
Stanford (www.stanford.edu) and a
participant in the Honda Humanoid
Robot Project, is trying to fix that.
Conducting a study of several
college students and a visiting Chinese
tai chi master, the professor noticed
that humans instinctively move so as
to minimize effort and discomfort
(such as how students throw their
beer cans and pizza boxes on the floor
rather than getting up and walking
over to the trash can). So, rather than
generating a slew of complicated
trajectory-computation algorithms, he
is taking an approach based on simply
minimizing the energy the robot uses
for a particular task.
Smooth movements should use
less energy than jerky ones, so
the concept sounds valid (as long
as the robot doesnt decide to just
switch himself off). So far, StanBot
is a prototype that exists only as
a computer simulation. But in a year
or so, Khatib hopes to incorporate
his concepts into one of Hondas
ASIMO units. Eventually, with this
type of programming, it should be
able to iron clothes and pick up the
trash for us.
Machine Has Adaptable Gait
Last year, RunBot developed at
the University of Gttingen (www.
bccn-goettingen.de), the University
of Glasgow (www.gla.ac.uk), and
the University of Stirling (www.stir.
ac.uk) gained renown for becoming
the worlds fastest two-legged robot
(relative to its size). It moves along at
3.5 leg lengths per second, which
translates into 0.8 m/s or roughly
1.8 mph. The trick is that it walks
using just a few sensors and detects
only when a foot touches the ground
and when a leg swings forward,
mimicking the way control reflexes
work in humans.
Originally, RunBot just trotted
around in a circle, on a flat surface.
(A couple amusing mpeg videos
are accessible at www.cn.stir.ac.uk/
~tgeng/research.html) Now the 30
cm device has been fitted with an
infrared eye that detects a slope in
its path and automatically adjusts it
gait. Like a human, it leans forward
slightly to adjust for an uphill grade
and takes shorter steps. In its first
attempt to climb a hill, it fell over
backwards, but the control circuits
managed to learn from the experience
and did well after that.
Upgraded UAV Deployed
On a more menacing note, the US
Air Force Air Combat Command
(www.acc.af.mil) recently announced
that a new UAV, the MQ-1 Reaper (as
in grim), is ready for deployment in
Afghanistan soon. Larger (3,700 lbs,
66 foot wingspan) and more powerful
than the better known MQ-1 Predator,
it can fly at 300 mph, reach altitudes
of 50,000 feet, and carry payloads up
to 3,750 lbs.
The $69.1 million craft is designed
to attack time-sensitive targets and hit
them primarily with gravity bombs, but
it can also be fitted with Hellfire mis-
siles and some other things that could
spoil your day. A secondary mission is
to perform intelligence, surveillance,
and reconnaissance duties, using
sensors to send real-time data to com-
manders and intelligence specialists.
The MQ-9 isnt truly robotic at this
point, as it requires a crew of two
Oussama Khatib and a mechanical
pal. Photo courtesy of
Stanford University.
RunBot has been upgraded to deal
with sloped paths. Photo courtesy
of Bernstein Center for
Computational Neuroscience.
The MQ-9 Reaper UAV is ready
for action. Photo courtesy of USAF
Air Combat Command.
by Jeff Eckert
Robytes.qxd 8/7/2007 3:53 PM Page 8
(pilot and sensor operator). But at
least they sit at a remotely located
ground control station.
Eurobot Passes Tests
Under development since 2003 by
the European Space Agency (ESA,
www.esa.int), the multijointed
(seven joints plus one end effector
and camera per arm), three-armed
Eurobot has undergone operational
testing in the Neutral Buoyancy Facility
of the European Astronaut Centre
in Cologne.
In the trials, the wet model
which is similar in size and
configuration to the planned space
flight model was checked for its
ability to move and manipulate
objects, provide coordinated multi-
arm movement, and recognize
obscured targets. By all accounts, the
tests went very well.
According to Philippe
Schoonejans, the Eurobot project
manager, Not only has it been
demonstrated that Eurobot can
walk around an orbital station
autonomously and safely, using no
more than the existing EVA handrails,
it is also becoming clear that Eurobot
can really help the astronauts. And
in the next phase, we also plan
to demonstrate its use on a
planetary surface ...
Tuabot Aids Breeding
Research
Meanwhile, down in laid-back
New Zealands Stephens Island, a
robotic lizard is helping to preserve
the tuatara species by pretending
to be an available bachelor. The
creatures have been around for 200
million years, so it would seem
that they have this breeding thing
under control. Nevertheless, Victoria
University (www.vuw.ac.nz) post-
doctoral student Jennifer Moore
(actually a Michigan native) wants to
understand how males establish
dominance and attract females. Enter
Robo-Ollie, made from a cast of a
recently departed real lizard known
as Oliver.
The rubber-skinned creature runs
off a nickel-cadmium battery and tries
to imitate the aggressive behavior
typical of male tuataras. Ollie cant
actually walk around, but he can
move his head. He didnt do all that
well in initial trials, as he just bobbed
his head, which turned out to be
a female signal. He was then
reprogrammed to open his mouth and
gape, which apparently irritates other
males to no end. Among real tuatura,
this degenerates into puffing (which
Ollie hasnt learned yet) and all-out
warfare in which the reptiles often
lose their tails.
About 75 percent of the males
turn out to be lonely losers, and the
other 25 percent get to produce all of
the young. As one might expect, the
winners tend to be the largest
individuals, some of which can be
90 years old. Moore suspects that
smell could play a role in the mating
process, so research continues. SV
Robyt es
Eurobot is lowered into the Neutral
Buoyancy Facility for operational
concept testing. Photo courtesy of ESA.
A robotic version of this tuatara will
mimic the real thing to help researchers.
Photo courtesy of Ohio University
Research (www.research.ohiou.edu).
SERVO 09.2007 9
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!
Robytes.qxd 8/7/2007 3:54 PM Page 9
10 SERVO 09.2007
The 2007 Unmanned
Vehicle Show
The Unmanned Systems North
America arguably hosts the largest
robot, drone, and UV hardware
showcase and information exchange
in one place at one time. This
years extravaganza transformed the
Washington Convention Center in DC,
August 6th through the 9th. The event,
growing year after year for 35 years,
was the biggest thus far, according to
an AUVSI media release.
This years event sponsored by
Honeywell, Northrop Grumman, AAI
Corp., the Air Force Research Lab at
Tyndall AFB, EADS North America, the
Israel Aerospace Industries LTD,
NovAtel, and SpaceAge Control
hosted more than 200,000 square feet
of research and military robot vehicles.
The UVs conquered the Convention
Center, making it their own for four
days of presentations, speeches, techni-
cal sessions, and up-close examinations.
Airborne, water-treading, and
land-roving robots shared the stage
with representatives from the Army
Special Ops, Naval Meteorology
and Oceanography Command, The
Defense Science and Technology
Agency in Singapore, and other offices,
commands, and branches.
Details, Details
An audience of some 4,000 inter-
ested observers the world over flocked
to Washington to get a gander at the
latest trends in UVs. Visitors included
members of academia, representatives
of foreign governments, and industry
leaders and decision makers, according
to AUVSI.
Attendees were filled to the
brim with new technology briefings
and operational reports and live
UV exhibits. They were offered a
glimpse into the future in the form
of a live operation show at Webster
Field near Patuxent River Naval
Air Station in St. Inigoes, MD where
UVs trampled the ground, took flight,
and flaunted their larger-than-life
capabilities.
From Beyond the
Shadows, it Sees!
UVs making a showing at the
2007 AUVSI event (present in 2006, as
well) included AAI Corporations
Contact the author at geercom@alltel.net by David Geer
AUVSI UV Sampling
The Association for Unmanned Vehicle Systems International (AUVSI) the largest non-profit
globally that is dedicated to unmanned systems hosted its annual Symposium in August
2007. AUVSI members trek the world making their way to this event, packing their UV wares
and showing them for government organizations, industry, and academia.
AUVSI Symposium 2006 show room with UVs on display.
Geerhead.qxd 8/7/2007 3:56 PM Page 10
GEERHEAD
Shadow 200 Tactical Unmanned
Aircraft Systems (TUAS) an
intelligence, surveillance, and recon-
naissance UAV.
During its average six hour journey,
the 11 foot plane (14 foot wing
span) collects target data via its
EO/IR (Electro-Optical/Infrared Remote
Sensing) payload. The EO/IR data is
transmitted back to a US Army brigade
tactical operations center (ground
control) within 125 kilometers range
via wireless technology.
The UAV takes flight from a
hydraulic launcher and trailer. The
TUAS has been in active duty in Iraq
since 2003.
Yes, its a Hauling
MULE
Lockheed Martins Multifunction
Utility, Logistics, and Equipment
(MULE) robotic vehicle uses a 6 x 6
independently articulated suspension
and in-hub wheel motors for each of six
wheels. The MULE is the most mobile
vehicle in otherwise impassable terrain,
largely due to its unduplicated suspen-
sion system and independent wheel
configuration.
The MULE vehicle is a hefty (2-1/2
ton) Unmanned Ground Vehicle (UGV)
designed to aid foot soldiers so they
dont have to carry heavy packs and
artillery on their backs.
The MULE will include a mobile
carriage atop a single chassis, an
autonomous navigation system, a
remote control unit, and three varia-
tions on the payload configuration,
depending on each MULEs application
and mission.
The Autonomous Navigation
System (ANS) gives the MULE the capa-
bility to follow other MULEs in a pack
or to move in a partially autonomous
fashion with the guidance of the
remote control unit.
The MULE can be transferred
by air in a sling beneath a rotorcraft
(helicopter).
The MULE is configurable in a
number of ways including a line-
of-sight, gun mount assault
configuration, an anti-tank version, and
a countermine version.
The assault configuration will
include a rapid-fire suppressive
weapon mount. This Armed Robotic
Vehicle (ARV)-Assault-Light (ARV-A-L)
configuration MULE uses an integrated
weapons and reconnaissance, surveil-
lance, and target acquisition (RSTA)
package to support the dismounted
infantrys efforts to locate and destroy
enemy platforms and positions.
The countermine MULE configura-
tion will provide the capability to find,
mark, and neutralize anti-tank mines
using a mine detection package.
The MULE can carry (obviously,
SERVO 09.2007 11
The Lockheed Martin MULE Unmanned Ground Vehicle appeared at
the AUVSI Symposium 2006 with sensors mounted atop.
(The 2007 photos were not available at press time.)
The Shadow is AAI Corps UAV with sensing for intelligence, surveillance,
and recon missions. The shadow (blue) is seen aboard a field hydraulic
launching unit, which sends it airborne.
Geerhead.qxd 8/7/2007 3:57 PM Page 11
12 SERVO 09.2007
given the acronym) equipment and
supply payloads sufficient for two
squads of infantry men and women. It
can carry up to 2,400 lbs of rucksacks
and equipment for foot soldiers
and follow those soldiers into the most
difficult terrain.
The MULE can also transport
evac and rescue operations; it is
extendable via reconfigurable side rails
to support a number of other mounts
and applications.
Heavens on Fire?
The Fire Scout UAV from Northrop
Grumman is an unmanned intelligence
and targeting helicopter with missile
weapons mounts.
Payloads include an EO/IR/LD
(electro-optical/infrared/laser designa-
tor) BRITE Star II sensing, a UHF/VHF
radio communications relay, a COBRA
mine detector, and an airborne com-
munications package. The BRITE Star II
system which offers optics, infrared,
and laser rangefinder sensing comes
with the basic model Fire Scout.
The flying heli-robot can be
launched and flown up to 110 nautical
miles from the launch site. The UAV is
controlled by tactical control system
(TCS) software from land or sea-going
vessels. The Fire Scout can remain
airborne for eight-hour missions. The
UAV is equipped with a four-blade
rotor system and state-of-the-art airfoil
blades, which help it to achieve its
longer flights.
The UAV is the first airborne robot
to land vertically on a sea-borne vessel
without a human pilot onboard.
The UAV can also use its Vertical
Take Off and Landing Tactical
Unmanned Aerial Vehicle (VTUAV)
technology to help extend communica-
tions range and capabilities. It does
this in tandem with ground control
stations, other air vehicles, data links,
remote data terminals, and tactical
communications hardware, according
to a source from Northrop Grumman.
Basically, it helps create a communica-
tions relay between these systems and
the robotic air vehicles using them in a
way not dissimilar to nodes that extend
the signal on a wireless network.
A VTUAV system will consist of
air vehicles, ground control stations
(GCSs), modular mission payloads
(MMPs), data links, remote data
terminals (RDTs), launch and recovery
equipment, and tactical communica-
tions equipment.
GEERHEAD
The Northrop Grumman Fire Scout appears with four-blade rotors,
weapons mounts, and sensor module.
The American Dynamics BattleHog
UAV on display at the 2006 AUVSI with
nose, wings, wheels and landing gear,
sensors (black), and special high torque
aerial lift for flight enclosed in the
center of the vehicle.
The BattleHog100x has a Turbine
Powerplant in the rear center of the
main trunk or shaft of the vehicle.
Forward from that is the HTAL vertical
lift and control system. Each wing, left
and right, houses fuel tanks and service
access for maintenance.
The main housing holds the center
fuel tank. Each wing has a payload
pylon for rocket launchers. Ruggedized
avionics, front and center, help fly
the plane. A modular mission payload
bay forward from that house the
sensing module.
BATTLE HOG!
Geerhead.qxd 8/7/2007 3:57 PM Page 12
Calling Hogs Into
Battle
The BattleHog100x Advanced
VTOL (Vertical Take-off and Landing)
Fixed-Wing UAS (Unmanned Aircraft
System) from American Dynamics
Corporation appeared at the 2006
AUVSI symposium.
The land or sea operations UV
flight system is an all-operations
platform for intelligence gathering,
area surveillance, recon, and targeting
(ISR&T) field missions, making it
attractive to all military cores. When
speaking of the system, were talking
about three BattleHog UAVs plus
ground control and data link communi-
cations technologies.
The BattleHog gets lift and even
navigation from its patented High
Torque Aerial Lift (HTAL) technology.
Through the HTAL, the BattleHog
can go straight up like a helicopter,
hover in a stationary position, and fly
horizontally (in fixed wing flight).
The craft can be fitted with
AGM-114K Hellfire missiles, Hydra-70
rockets, and an M134 Minigun
(7.62 mm shells).
The basic payloads include
EO/IR/LD sensing modules. The
BattleHog can also be outfitted with a
miniSAR (Synthetic Aperture Radar)
system, and environmental sensors
such as biological, chemical, and
meteorological apparatus. Payloads
can be reconfigured in the field
between operations.
BattleHog communications tech-
nologies include a CDL STANAG 7085
line-of-sight data link for forward
link (uplink) command and control,
telemetry, flight imagery data, and
payload image transmission return link
(a SATCOM satellite communications
data link is optional to ensure
communications beyond line-of-sight).
Why are so many companies
suddenly building unmanned vehicles?
Simple: congress has mandated that
one third of all military vehicles be
robotic by 2015. Not only is that
good for soldiers but it is certainly
good for established and emergent
defense contractors! SV
GEERHEAD
The AUVSI website
www.auvsi.org
AUVSI Symposium site
http://symposium.auvsi.org
Northrop Grumman site
www.northropgrumman.com
Lockheed Martin site
www.lockheedmartin.com
AAI Corp site
www.aaicorp.com
American Dynamics Corp site
www.americandynamics.us
RESOURCES
SERVO 09.2007 13
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
Geerhead.qxd 8/7/2007 3:58 PM Page 13
14 SERVO 09.2007
T
o do this, we will examine
gradient descent learning
using the delta rule and will
teach a three layer network using
a technique called backpropagation.
And finally, we will implement
this program on a PIC16F877A
microcontroller with a serial connec-
tion and LEDs.
Linear Separation
The perceptron we programmed
last time is capable of learning a variety
of different classification tasks but is
ultimately limited due to its linear
activation function. The easiest way to
visualize this is to imagine input pairs
as points in two-dimensional space. For
example, the inputs to a logical AND
gate could be plotted as the x,y sets:
(1,1), (1,0), (0,1), (0,0). We want the
neuron to classify these points based
on whether they are true or false
according to AND logic. If we plot the
four points, we see that we can easily
draw a single line across the graph
between the points that should output
true and the points that should output
false (Figure 1). This means the prob-
lem has a linearly separable solution;
we can draw one straight line between
classifications in the solution space.
The XOR logic function is a
classic example of a problem which
is not linearly separable and, which
consequently, the perceptron is
incapable of solving. An XOR gate
has the following truth table:
X Y Output
1 1 0
1 0 1
0 1 1
0 0 0
by Heather Dewey-Hagborg
In Julys column, we looked at perceptrons the first and simplest incarnation of a neural
network algorithm. We discussed artificial neurons and their constituent parts: inputs, bias,
weights, activation, threshold, and output. We implemented a simple neuron on a
PIC16F877A microcontroller programmed in CCS C which was capable of learning the AND
logic function through gradual weight adjustment. This month, we will build upon this
knowledge to create a multi-neuron learning system called a feedforward neural network.
DIFFERENT
BITS
DIFFERENT
BITS
NEURAL NETWORKS FOR THE PIC MICROCONTROLLER
PART 2 BACKPROPAGATION
FIGURE 1. Linear separation of
the AND function.
FIGURE 2. The XOR function is linearly
inseparable.
DifferentBits.qxd 8/7/2007 12:06 PM Page 14
In Figure 2, you can see that it is
impossible to draw a single line
separating the true from the false
output classifications for this problem.
In order to solve the XOR function, we
need multiple layers of neurons, and
in order to teach multiple layers of
neurons, we need backpropagation.
Gradient Descent
Learning
Before we delve into backpropa-
gation, we are going to look
at two techniques which have
allowed neural networks to develop
finely-tuned error measurement:
continuous activation functions and
the delta rule. Together these
techniques allow for an intelligent
learning technique called gradient
descent learning.
With our perceptron, we used a
linear, hard-limiting activation function.
This means that we picked a strict
threshold and decided every output
above the threshold would output high
and every output below the threshold
would output low. With multi-layered
neural networks, we are going to
use a form of sigmoidal (s-shaped),
non-linear activation called the logistic
function:
activation = 1.0 / (1.0 +
exp( - input sum))
In other words, each individual
neuron is activated to 1 / 1 + the
exponential function of the negative
sum of all its inputs. For example, lets
look at a neuron with two input
weights: w0 with a value of .3 and w1
with a value of .65. If both weights are
connected to input values of 1,
the neuron activation will be computed
as follows:
input sum = (input0 * weight0) +
(input1 * weight1)
input sum = (1 * .3) + (1 * .65) = .95
activation = 1.0 / (1.0 + exp ( - .95))
activation = 0.721
If both inputs were activated to
values of 0 instead of 1, the activation
equations would look like this:
input sum = (0 * .3) + (0 * .65) = 0
activation = 1.0 / (1.0 + exp ( 0 ))
= 0.5
As you can see, the logistic
activation function normalizes values
around a center point of 0.5.
Now that we have a continuous
learning function, we can think of
neural network error as a curve in
two-dimensional space and use the
delta rule to minimize error during
each learning iteration. We dont
need to get too far into the mathe-
matical details here, just imagine
that the error curve is made up of
points from every possible configura-
tion of network weights, and gradient
descent is the slope of different
portions of this curve. With each
learning iteration, we want to
minimize our error by changing
individual neuron weights in the most
beneficial direction, and we can do
this by using the delta rule.
Simply stated, the delta rule choos-
es the direction of traversal on the
error curve which most rapidly reduces
our error. The delta rule formula is:
change in weight =
learning constant * (desired output
actual output) * f(x) * (1-f(x))
where f(x) is the logistic activation
function described above.
Feedforward
Now that we have an activation
function and a learning function, we
are ready to assemble our network. In
order to solve the XOR problem, we
need two inputs, one output, and four
hidden neurons plus one bias neuron
on both the input and hidden layers.
The network representation is shown
in Figure 3.
From the diagram, you can see
how network layers of nodes and
connections easily translate into arrays
of activation and weight values in our
C program.
These networks are called
feedforward because activation flows
through in a forward direction from
inputs to hidden and finally output.
Feedforward networks can have any
number of inputs, outputs, and hidden
neurons, but for the XOR example, this
is all we need.
We calculate the output of the
network by feeding activation from
input to output. For example, if we
start with input 0 = 1 and input 1 = 0,
we would begin by calculating the
activations of each hidden neuron as
we did above, but this time we will
include bias neurons:
hidden neuron 0
input sum = (input 0 * weight 0) +
(input 1 * weight 1) +
(bias 0 * weight 8)
activation = 1.0 / (1.0 + exp
( - input sum))
We add up our final output activa-
tion in the same way:
output activation
input sum = (hidden 0 * weight 0)
+ (hidden 1 * weight 1) + (hidden
2 * weight 2) + (hidden 3 * weight
3) + (bias 1 * weight 4)
activation = 1.0 / (1.0 + exp
( - input sum))
Propagate Back
Once we know our output
activation, we can compare it to our
desired output and adjust the weights
of the network toward this output.
Continuing our XOR example, if we
input (1, 0) we would like an output
of 1. If we get an output of .43, we
need to adjust the individual weights
to make this happen. We dont want
to adjust them too much though or
we will make it impossible to get
an output of 0 when we have an
input of (1,1), so we proceed to
tweak the weights ever so slightly
using the delta rule.
We begin by adjusting the weights
connected to the output neuron based
SERVO 09.2007 15
DIFFERENT BITS
DifferentBits.qxd 8/7/2007 12:06 PM Page 15
DIFFERENT BITS
16 SERVO 09.2007
on how far off the output was from
what we wanted. Then we propagate
this error back to the hidden neurons
and adjust the weights between the
inputs and hidden neurons based on
how much each hidden connection
was responsible for the incorrect
answer.
Lets walk through one example
from each layer, and then we will
see what this looks like in terms of
microcontroller C code.
Our first calculation is called delta
output (delta just means change in
math-speak):
delta output = output activation *
(1.0 output activation) * (desired
output output activation)
Next, we calculate delta weight
for each weight connected to the
output neuron:
delta weight = hidden activation
* delta output
Finally, we adjust the value of
the weight in question:
output weight = output weight +
(learning constant * delta weight)
We do this for each weight
connected to the output neuron. Then
we have to adjust the weights of the
connections between the input and
hidden neurons. This is a little bit
trickier because it is more difficult to
figure out how much each weight is to
blame for our error.
For each hidden neuron, we calcu-
late an error sum based on the delta
output we computed earlier, and the
weight of that neurons connection to
the output neuron:
error sum = output weight *
delta output
Next, we compute a delta hidden
for each hidden neuron just like our
delta output above:
delta hidden = (hidden activation
* ( 1.0 hidden activation))
* error sum
Finally, for each connection
feeding into the hidden neuron, we
calculate a delta weight and adjust that
connections weight value:
delta weight = input value
* delta hidden
hidden weight = hidden weight +
(learning constant * delta weight)
Microcontroller
Implementation
a. Circuit
That is really all there is to it.
Constant tweaking over a few
thousand iterations and you have
evolved yourself an XOR gate! The
CCS (Custom Computer Services;
www.ccsinfo.com) C implementation
is pretty straightforward and similar
to the perceptron implementation
from last time. The trickiest part is
keeping all the array indexes straight
and having a clear picture of the
network layout.
FIGURE 3. XOR feedforward
neural network architecture.
DifferentBits.qxd 8/7/2007 12:07 PM Page 16
Figure 4 explains how the various
array indexes map back to the network
architecture from Figure 3. I will briefly
explain the circuit layout and the code
flow, as well as parts of the program
that might be confusing.
Wire up the PIC chip and MAX233
chip (see the July column for more
detailed instructions and illustrations).
Five of the LEDs are going to form a
level meter showing us intuitively
how well the neural network is
learning. I used different color LEDS
and ordered them top to bottom from
hottest to cool (red, orange, yellow,
green, white).
The other three LEDs show us the
status of the inputs and output of our
aspiring XOR gate. I used two white
LEDs for the inputs and a green LED for
the output.
Connect the cathode (-) of each
LED through a 220 ohm resistor to
ground and connect the anodes (+) to
the following microcontroller pins:
Pin LED
D2 Error meter red
D3 Error meter orange
C4 Error meter yellow
C5 Error meter green
D4 Error meter white
B3 Input 0 white
B4 Input 1 white
B5 Output green
When you are finished, your bread-
board should look like Figure 5.
b. Code
The code is broken down into
five functions plus main (download a
copy from the SERVO Magazine web-
site at www.servomagazine.com):
get_activation receives a neurons
input sum and returns the activation
value passed through the logistic
function.
output_error receives the current
root mean square error and sets
the LEDs in the error level meter
accordingly.
output receives the current input
values and sets the input and
output LEDs.
FIGURE 4. Array maps.
FIGURE 5.
Breadboard
setup.
DIFFERENT BITS
SERVO 09.2007 17
DifferentBits.qxd 8/7/2007 12:07 PM Page 17
feedforward receives the current
input values and calculates each
neurons current activation.
train receives the current input values
and the desired output value. It calls
feedforward to activate the network
and get the output_activation. It then
measures the actual output against the
desired output and backpropagates
the error, adjusting each weight value
accordingly.
main initializes the microcontroller
settings and performs a couple quick
tests to ensure that the serial port
and LEDs are working. It initializes
random hidden and output weights
and iterates through a training loop
8,000 times or until the root mean
square error is less than 0.35 (it
usually takes about 400 iterations).
Every 50 iterations, it prints the count
and current error value. When the
loop completes, it prints how many
iterations it took, the final error value,
and loops once through an LED
display sequence demonstrating what
it has learned.
After programming, you should
see the following behavior from
your circuit:
1) The LEDS perform their startup blink
and the hi! message prints out the
serial port.
2) Initial weight values print out the
serial port, I/O lights blink and the top
LED on the error meter lights up.
3) Every 50 iterations, a count and
error measurement print out the
serial port.
4) The error level starts to fall lower;
the level meter changes accordingly.
5) After 400-8,000 iterations, the
network has learned the XOR
function (have patience!). The last
LED in the error level meter lights
up and the program performs its
ending dance.
Final Thoughts
This is a simple circuit to display
neural network principles, but the
same ideas and basic code apply to
more complex problem sets.
Experiment with the code and circuit
and try to create your own input/
output mappings. Think about what
you would like to teach a robot to
learn, and how you could modify this
code so that your circuit could learn
from experience and feedback from its
environment. Have fun! SV
Breadboard
PIC16F877A microcontroller and
programmer
20 MHz ceramic resonator with
built-in capacitors (or equivalent)
Eight 220 ohm resistors (or similar)
One 10K resistor
Eight light emitting diodes (LEDs)
One pushbutton (for reset)
RS-232 level shifter (MAX233 or
similar)
1 F capacitor (if using MAX233)
Serial cable with receive pin
available for breadboard use
BILL OF MATERIALS
FIGURE 6. Error level meter.
FIGURE 7. Input/
output display.
DIFFERENT BITS
18 SERVO 09.2007
DifferentBits.qxd 8/7/2007 12:08 PM Page 18
SERVO 09.2007 19
Full Page.qxd 8/8/2007 8:03 PM Page 19
20 SERVO 09.2007
Q
. The other day, I stumbled
across a mini Sumo kit from
Solarbotics called a Sumovore.
I was wondering if this is a good robot
kit for beginners. It looks really cool.
Jackie Butler
Dallas, TX
A
. You cant go wrong with the
Sumovore kit from Solarbotics
(www.solarbotics.com). This is
an excellent robot kit. Many people
think that BEAM (Biology, Electronics,
Aesthetics, and Mechanics) robots are
too dumb to make an effective robot,
especially a mini Sumo robot. I would
have to say they are dead wrong. This
robot can track another robot better
than any of the other mini Sumo
kits currently available on the market,
in my opinion.
Though the basic kit is not
programmable, it will stay on the mini
Sumo ring all day long, and will search
out and push any opponent on the
ring. This basic kit will produce a very
competitive robot for mini Sumo
contests. It is a little lighter than the
maximum weight for most events, but
a few lead weights can easily fix that.
If you want to program the
Sumovore robot, Solarbotics sells add-
on boards for the BASIC Stamp, Atmel
Mega8L, and PIC16F877 microcon-
trollers. With these microcontrollers,
you will be able to add just about any
motion control feature you want.
Keep in mind, this is a kit that
requires a lot of soldering. Depending
on your soldering skills, it could take
from a couple hours to a full day to
assemble. If you are not comfortable
with soldering, get some help. By the
time you are done assembling this kit,
you will be an expert at soldering.
Q
. I found an old pistol grip
soldering iron in a junk pile at
school. It gets really hot and
melts solder fast, but it is really hard to
use to solder electronic parts. The tip
can be taken off with a screwdriver.
Are there any tips that come to a
smaller point for this soldering iron?
Adam Salie
A
. There is probably a reason that
that soldering iron was in
the junk pile. These pistol grip
soldering irons do put out a lot of
heat, but they are not very good at
soldering modern electronic circuits. In
the old days when vacuum tubes
were common, they were great
tools since many of the electronic
components were soldered wire-to-
wire, component-to-component, and
on the phenolic circuit boards, the
component spacing was far and wide.
These soldering irons do work well
at soldering large diameter wires
together, and it will even solder small
brass parts together (if you use
soldering flux). It is a good tool to have
around in case you need a lot of heat.
But for circuit boards? It is too bulky,
and the soldering iron tip is too big
to solder a single integrated circuit
leg/trace.
Yes, the tips are replaceable,
but not with the fine tips needed for
routine soldering of circuits. I would
recommend that you get a basic
pencil style soldering iron that is at
least 25 watts in power and has a
replaceable fine tip for soldering your
electronic circuits.
Q
. A friend of mine gave me a
huge box of old electronic
components, like resistors,
capacitors, transistors, ICs, switches,
LED displays, etc. Some of the
RadioShack receipts in the box are
from 1976. So my question is, do elec-
tronic components go bad with age?
Bob Cook
A
. From my experience, electronic
parts generally dont go bad
when they are sitting on the
shelf not doing anything. Your biggest
problem will probably be some corro-
sion on the lead coated component
leads/wires. I personally have compo-
nents that are over 30 years old, and
they still work like a charm, and I use
them all the time. Mix and match
the old with the new. You might find it
difficult to find a data sheet for some
parts that have long become obsolete,
however.
With the electronic world moving
towards 3.3 volt electronics, those
older components may become
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
MrRoboto.qxd 8/7/2007 3:51 PM Page 20
valuable. I know a guy that collects
vacuum tubes and builds custom
vacuum tube amplifiers for peoples
radios and musical instruments. He
swears that the sound from vacuum
tube amps is better than what you can
get from modern digital equipment.
Q
. Where is a good place to buy
cheap electric gear motors?
Mike Coleman
A
. There are a lot of good places to
buy cheap electric gear motors,
like surplus houses and eBay. I
generally dont want to recommend
these places since inventory changes
without notice (i.e., the next time you
want the same motor, you may never
find it again), and quality is unknown
until you have it. Im not saying these are
bad places to get parts (since many of
the readers of SERVO Magazine buy
from these resources and appear to be
very happy with them). I prefer to recom-
mend places where you know you will
always be able to get the same parts.
With that said, Lynxmotion
(www.lynxmotion.com), Jameco
Electronics (www.jameco.com),
Solarbotics (www.solarbotics.com),
and the Robot Store (www.robot
store.com) are very good places to get
low cost motors. If you want some
really powerful motors, check out NPC
Robotics (www.npcrobotics.com).
Q
. I am curious to hear your
opinion on timing belt drives
vs. sprockets and chains for a
middleweight combat robot. Right
now, I am in the information-gathering
phase so I can build a winning robot.
Lynn Hickman
A
. Timing belts (or otherwise
known as synchronous belts) and
sprockets and chains will work
just fine for your robot. Performance
wise, you really are not going to notice
a difference between the two systems,
unless you under-size them. Timing belt
systems are lighter and quieter than
sprockets and chains, are not as readily
available as sprockets and chains and
are usually a little more expensive.
Finally, they usually require a little
more precision in the overall robotdrive
train construction. If you use a belt
tensioning pulley, then the precision
requirements are removed. Chain and
sprocket systems can tolerate a looser fit
and still function fully without slipping.
Choosing one drive system over
another drive system is really more of a
preference than anything else. Though
in your area of design, where weight is
paramount, the lightness of timing
belts may be well warranted.
Sprockets and chains and timing
belts and pulley components can be
obtained at Stock Drive Products
(www.sdp-si.com). They have
documents on their website that
explain how to properly size your
components and how to calculate the
center-to-center distances between the
different drive shafts. SV
SERVO 09.2007 21
HE8EJIFH;<;H>?J;9)0'
The results of an informal poll taken recently at the First
Annual World Domination Symposium are now in. Robots
prefer Hitec servos 3:1 over other servo brands. They know the wide
selection of Hitec analog and digital servos provide them with the power and depend-
ability needed to eventually take over the World. Make your robot happy, use Hitec servos.
12115 Paine Street | Poway | California | 92064 | 858-748-6948 | www.hitecrcd.com
>_j[Y
Ej^[h8hWdZ
.EW2OBOT3ERVOS
HSR-5980SG
Speed: 0.14 sec
Torque: 417 oz/in
Steel Gears
HSR-5498SG
Speed: 0.19 sec
Torque: 187 oz/in
Steel Gears
HSR-5990TG
Speed: 0.14 sec
Torque: 417 oz/in
Titanium
ALL SPECFCATONS AT 7.4 VOLTS
MrRoboto.qxd 8/7/2007 3:51 PM Page 21
No Bamboo Required
T
he animal kingdom has
been brought to life with
Robopanda from Wowwee
Robotics. Robopanda is
a fun-loving and curious
robotic friend who is
animated, talkative, playful,
and 100% interactive.
You can interact with
Robopanda in a natural way
by touching or activating
his many sensors located
throughout his body.
Standing approximately 19 inches tall, Robopanda is
equipped with lifelike behaviors and motions like that of a
genuine panda. Robopanda comes with activity and story
cartridges and is equipped with internal dual-axis
accelerometer tilt sensors. If left unattended for a couple
minutes, Robopanda will go into Sleep Mode. Robopanda
also features volume control and safety touch sensors.
Simply insert six C batteries (not included) and four AA
batteries (not included) and Robopanda is fully functional.
Robopanda (ages eight and up) comes equipped with
two activity and story cartridges and will be available
this fall for an approximate retail value of $169.99.
Additional cartridges are sold separately and will be
available soon.
For further information, please contact:
Sabertooth 2X25
S
abertooth 2X25 is
Dimension Engineerings
new high power dual 25A
motor controller. It accepts
battery voltages from 6V to
24V and will handle peak
currents of 50A per motor for several seconds. When
paired with suitable high current motors and batteries,
Sabertooth 2X25 is capable of driving around robots
weighing several hundred pounds.
The Sabertooth 2X25 allows you to control two
motors with analog voltage, radio control, and serial
modes, making it suitable for a wide variety of projects. A
built-in 5V BEC can provide power to an R/C receiver and
a selectable lithium mode will allow you to safely use R/C
LiPo battery packs.
As with Dimension Engineerings other motor drivers,
the products options are set with DIP switches and wiring
connections are made with screw terminals, making it
easy to reconfigure and move from project to project.
Sabertooths custom-designed synchronous
regenerative H-bridge topology returns the motors stored
inductive energy to the battery in every switching cycle.
This technique results in motors running cooler and
extends battery life. It also provides more responsive
control allowing you to make instant stops and reverses.
A heatsink comes preinstalled and the unit has
electronic thermal and overcurrent protection for
maximum durability.
The product retails for $124.99 at Dimension
Engineerings website, as well as other fine robotics stores.
For further information, please contact:
TReX Dual-Motor Controller
P
ololu introduces its new TReX Dual-
Motor Controller a versatile
DC motor controller suited for
mixed autonomous and radio
control of small- and medium-
sized robots. Three independent
interfaces are offered: radio control
(RC) servo pulse interface; analog voltage;
and asynchronous serial. The serial interface
can switch instantly with one of the other two interfaces,
allowing mixed autonomous and remote control.
For example, a robot could be configured to run
autonomously most of the time, but a human operator
could override the autonomous function if the robot gets
stuck or into a dangerous situation. If the serial
mode is selected as the primary interface, high-resolution
measurements of all five RC inputs are made available to
the autonomous robot controller, allowing for complex
New Products
CONSUMER ROBOTS
MOTOR CONTROLLERS
Website: www.dimension
engineering.com
Dimension Engineering
N
N
E
E
W
W
P
P
R
R
O
O
D
D
U
U
C
C
T
T
S
S
22 SERVO 09.2007
Website: www.wowwee.com
WowWee Robotics
Sep07NewProd.qxd 8/8/2007 10:12 AM Page 22
and unlimited mixing of operator control and sensor input.
The TReX motor controller operates from 6V to 16V,
and the two primary outputs provide bidirectional control
with peak currents of 30A and continuous currents of
13A, while a unidirectional auxiliary output delivers over
15A (continuous). A fourth control channel for invertible
robots allows improved control if the robot does get
turned up-side down, and the fifth control channel
determines which interface controls the motors. The unit
measures approximately 1.9 x 1.9 x 0.8, and it is
available in fully assembled or kit form starting at $99.95
at www.pololu.com/products/pololu/0777/.
For further information, please contact:
RobotBASIC
R
obotBASIC is a powerful computer language that
allows you to learn how to program a robot utilizing a
simulation that includes bumpers and infrared sensors for
avoiding collisions, ranging sensors to detect distant
objects, and ground sensors that can detect lines on
the floor and drop-offs such as stairways. It also has an
electronic compass, a GPS system, and a camera that
can detect the colors seen by the robot and navigational
beacons mounted within the simulated environment.
Since all the sensors are integrated into the language,
users can concentrate their efforts on learning to program
the robot to do interesting things instead of spending time
downloading code, adjusting sensors, charging batteries,
and other things that keep most hobbyists from doing
what they really want to do program intelligence into
their machine.
In the new release (2.0), RobotBASIC provides
support for real-world control via parallel and serial ports,
USB, and a built-in robot protocol for BlueTooth. The new
protocol is easy to use yet flexible enough to allow you
to build the target robot using a wide variety of motors,
sensors, and other hardware.
Visit the RobotBASIC website to download a
free copy. (This is NOT a crippled copy or one that
will time-out.)
For further information, please contact:
SOFTWARE
Website: www.RobotBASIC.com
RobotBASIC
New Products
6000 S. Eastern Ave., Ste. 12-D
Las Vegas, NV 89119
Tel: 8777POLOLU or 7022626648
Fax: 7022626894
Email: www@pololu.com
Website: www.pololu.com
Pololu
Corporation
SERVO 09.2007 23
MaximumRobotics.com
1-800-979-9130
Wiring Robot Controller
Atmel ATMega 128
128k Memory
43 Digital I/O Pins
8 Analog Inputs
8 External Interupts
6 PWM Channels
2 Serial Ports including Bi-Directional USB
The Wiring Programming Language
The Wiring language provides a simplified subset of
C or C++ that hides more advanced concepts like
classes, objects, pointers (while still making them
accessible for advanced users). You get the power
of C or C++ with the ease of a language like Basic.
Programs execute at full C++ speed on the board.
$69.95
Robot Controllers
ARC1.1 Robot Controller
Atmel ATMega16
1k SRAM, 16k Flash
Dual 1.1 amp motor drives
Supports motors up to 25V
Dual quadrature encoder support
Programming cable included with kit
No additional hardware needed
Works with BASCOM and AvrDude programming software
Ideal for controlling your small robot. With a Microcontroller
and onboard motor controllers, you get all the electronics
that you need (except sensors) on one board.
Kit $37.95 / Assembled $41.95
Programmable Robot Kits
INEX MicroCamp Mega8
Atmel ATMega8
Dual DC motor drivers
2 Buttons, 2 LEDs
Serial port
5-Analog ports for sensors
+5V switching power supply
No soldering required
Supports In-system Programming via ISP connector
with included PX-400 Serial Programmer
Includes eveything you need to build a simple mobile
robot. Add your own additional sensors for even
more complex robots.
$59.95
MicroBric Viper
Screw-together Assembly
BasicAtom Microcontroller
2 motor modules
Bump sensor modules
Switch Modules
IR Remote & Receiver Module
With microbric, you can build complex electronic
devices with little or no prior electronics knowledge.
As no soldering is involved and the parts are fully
reusable, you can build and rebuild programmable
robots as many times as you like.
$89.95
Also Available:
Electronic Components
Servos
Motors
Hardware
Wheels & Tires
and More!
More New Products on the way!
Sep07NewProd.qxd 8/8/2007 10:12 AM Page 23
Know of any robot competitions Ive missed? Is your
local school or robot group planning a contest? Send an
email to steve@ncc.com and tell me about it. Be sure to
include the date and location of your contest. If you have a
website with contest info, send along the URL as well, so we
can tell everyone else about it.
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
R. Steven Rainwater
S Se ep pt te em mb be er r
3 DragonCon Robot Battles
Atlanta, GA
Remote-control vehicles destroy each other at a
well-known Atlanta Science Fiction convention.
www.dragoncon.org
15 BotTrot 4Bottle Race
Robot Magazine and the Robot Dreams website
have combined forces to create a robot contest
that you can enter from home. Build the course,
record a video of your robot completing it, and
submit the video by the contest date. The rules
are minimal so almost any robot can enter whether
it has wheels, legs, or tracks; whether it's
autonomous or remote-control.
www.botmag.com/articles/06-10-07_4bottle_
robot_race.shtml
18-21 US-European Micro Air Vehicle Competition
Toulouse, France
Tiny autonomous flying robots compete against each
other indoors and outdoors. The indoor mission con-
sists of flying into a 3.6 meter square room through
a window and identifying two targets while avoiding
randomly placed coat hangers. The outdoor mission
requires the robots to fly through obstacles and over
two 1.2 x 1.5 meter placards within a 1 km radius.
www.mav07.org
21-23 Robothon
Seattle Center, Seattle, WA
Lots of events including Robo-Magellan,
Micromouse, line-following, line maze solving, the
Walking Robot Contest, mini Sumo, and 3 kg Sumo.
www.robothon.org
O Oc c t to ob be er r
12-13 Cal Games
Woodside High School, Woodside, CA
This years event will be a recreation of the FIRST
Robotics 2007 Rack and Roll contest.
www.wrrf.org/Events/index.php
17-20 Russian Olympiad of Robots
Moscow, Russia
Russian robots compete in Sumo, fire-fighting,
line-following, and RoboCup events. There is also a
cross-country robot race and remote-controlled
vehicle combat to keep things interesting.
http://intronics.bogorodsk.ru
19-21 Elevator:2010 Climber Competition
Event Center, Greater Salt Lake City, UT
Autonomous climber robots must ascend a scale
model of a space elevator using power beamed
from the base.
www.elevator2010.org
21 Chibotica
Donald E. Stephens Convention Center, Rosemont, IL
Chibotica returns with even more events: maze
solving, line-following, mini Sumo, Robo-One, a robot
talent show, and remote-controlled vehicle combat.
www.chibots.org
26-28 Critter Crunch
Hyatt Regency Tech Center, Denver, CO
Held in conjunction with MileHiCon. See robot
combat by the folks who invented robot combat
competitions.
www.milehicon.org
26-28 Korea Intelligent Robot Contest
Pohang Indoor Gymnasium, Pohang City, Korea
Several events are planned for autonomous robots
including Micromouse, MIROzSOT games, and
intelligent robot demonstrations.
http://irc.piro.re.kr
Send updates, new listings, corrections, complaints, and suggestions to: steve@ncc.com or FAX 972-404-0269
24 SERVO 09.2007
Events.qxd 8/8/2007 10:09 AM Page 24
Full Page.qxd 8/8/2007 8:08 PM Page 25
Featured This Month
Participation
26 Table Saw Safety
by Kevin Berry
27 Club Corner by Chris Olin
Feature
27 Battery Pack Construction
by Ray Billings
Technical Knowledge
30 *******Aided Design
by Kevin Berry
Events
30 Results Jun 11th - Jul 15th
33 Upcoming Sept & Oct
Software Review
32 ExpressSCH v5.6
by Jay Johnson
W
hether you are
roughing out a
design using wooden
mockups, cutting plas-
tics, or even working
metal, most builders
wind up using a table
saw. Even if you meticu-
lously follow all safety
rules , this is still one
dangerous piece of
equipment. Besides all the
standard rules you learned in
shop class, you need to follow
some specialized ones when
using this beast.
One discussion I hear a lot
is the gloves/no gloves
debate. Most feel that gloves
limit your feeling for whats
happening, are likely to snag
and pull your hand INTO
the blade, and dont
provide any protection
anyway. I must confess, I
wear gloves when cutting
metal that has sharp edges
or burrs, and when cutting
really splintery wood. I make sure
to have safety guards in place, use
push sticks if possible, THINK
about where my hands will go if
snagged or slipped, and then
think again if I could do without
them. Metal gets really hot on a
table saw, especially if using a
composite blade, so I often wind
up wearing them.
Another tip you might not get
in shop class: clean out the
sawdust before cutting metal! I
have burned up (literally, not
electrically) two table saws when
sparks set them on fire due to
built-up wood residue.
26 SERVO 09.2007
PARTICIPATI N
Table Saw Safety
by Kevin Berry
CombatZone.qxd 8/8/2007 3:50 PM Page 26
SERVO 09.2007 27
Club Corner: Ohio Robotics Club Hosts Insect Event
by Chris Olin
T
he Ohio Robotics Club (ORC) in
association with the Robot
Fighting League (RFL), Hobbytown
USA, Microbotparts, and Dimension
Engineering held ORCs fourth
robotic combat event in the
Cleveland, OH area.
The event House of Robotic
Destruction, Spring 2007 (HORD)
drew 14 robot teams with a total of
27 robots from the 150 g (Flea
Weight), 1 lb (Ant Weight), and 3 lb
(Beetle Weight) classes. This event
featured many teams from Ohio,
Pennsylvania, and Michigan. In
addition, Team Hockey Runner
Robotics flew in with five robots
from Brentwood, TN; and Team
Apocalypse came all the way from
Mahwah, NJ to enter their one robot.
The event was held in the parking lot
of the Strongsville Hobbytown USA,
which is owned by Steve Broz.
Action started with
five flea weight robots
fighting a fierce round
robin tournament. Mr.
Bigglesworth and Buzzing
Flea tied for first place.
Meanwhile in Ant
Weight action, 11 robots
battled through a double
elimination bracket. Dr.
Super Brains Lab
Assistant rose to the top
winning five straight
matches. Cupbot came in a close
second and Criminal Mastermind
took third place.
Rounding out the event were 11
Beetle Weight robots fighting a
pitched battle through a double
elimination bracket. One Fierce
Javelin came back from the loser
bracket to claim first prize. Can of
Nuns came in second losing only to
Javelin and The Box finished in third.
Prizes were provided for the top
two finishers in each weight class
by microbotparts.com and Dimen
sionEngineering.com.
Look for future ORC event dates
at www.ohiorobotclub.org. SV
A
ll remote controlled vehicles
require some form of onboard
power. There are various methods of
providing that power, but for combat
robots the needs are fairly specific.
You need:
1) The appropriate voltage to operate
the motors and/or accessories
that you use.
2) Enough amperage to power all
systems at once.
3) Sufficient capacity to last throughout
an entire match, with some reserve.
4) To fit within the size and weight
constraints available.
5) Possession the physical strength to
withstand the shock loads of combat.
Another game I play with myself
(and my helpers, often stray children)
is where will it go? When the saw
kicks back or bites too well, and the
cut object goes flying (and it will!), I
like to know that only solidly immov-
able, undentable things are in the
way. Second choice is a wide open
space, like across the yard.
A special problem is when the
safety guard has to come off, like
when cutting a dado (groove). This
increases the chances of a kickback
or runaway, and exposes the blade.
Even when by myself, I run through
my checklist out loud. Where will
my hand go when I slip? Where
will it go when it gets tossed?
What happens at the end of the cut
when it falls off the table?
If you Google images of table
saw injury you might see why Im
such a fanatic about this topic. If you
look at my hands, youll KNOW why!
(I have eight fingers, two thumbs; all
original factory attachments without
surgical intervention). SV
Left to right: Evan Gandola, North Omlsted,
OH, driver of Criminal Mastermind; David
Winek, Brentwood, TN, driver of Cupbot;
Chris Olin, Perry Township, OH, driver of
Dr. Super Brains Lab Assistant.
BATTERY PACK
CONSRUCTI N
by Ray Billings
FIGURE 1
CombatZone.qxd 8/8/2007 3:50 PM Page 27
28 SERVO 09.2007
Obviously, some thought has to
go into your power needs! By far, the
most common method used in
combat robots is multi-cell packs of
Nickel Cadmium or Nickel Metal
Hydride batteries. You can purchase
ready made NiCd and NiMH packs
from a few different sources, but as
in most things, not all packs are
created equal.
Sometimes due to an unusual
shape needed to fit your design, or
an unusual voltage requirement, an
off-the-shelf pack may not fit your
needs. Whether its to fit an unusual
shape, or to save some money by
doing it yourself, you may want to
create your own packs.
The first requirement is to decide
on which particular cell you are
going to use. This is not as easy as
it sounds, as there are literally
hundreds of cells on the market, with
vast differences in performance.
Typically, you want a cell with at
least a 10C discharge rate. This
means that for a 3,000 mAh rated
cell, you should be able to draw at
least ten times that 30 amps
without causing damage.
Avoid cells that enthusiastically
claim high discharge rates without
supplying numbers to verify what
they mean by high. Also, there are
many cells on the market that were
designed to be used in power tools,
and come with tabs pre-welded to
one end (or both ends) of the cell.
Although the tabs may have
been adequate in making power tool
packs, they will not be adequate in a
combat pack. The tab itself is usually
very thin, and cannot handle the
amperage a combat pack has to
supply. And, they have a tendency to
pop off during combat, which is bad.
If you do come across cells that you
want to use that have tabs already
on them, you can carefully remove
them before assembly.
For this article, I am building
some packs from 3,500 mAh NiMH
sub-c cells. These are 10C discharge
rated cells, without tabs, and were
reasonably priced at about $50 for a
set of 20 cells. To be sure, there are
much better cells out there than
these, but for the price I felt they
would work well for my needs.
Other supplies needed for pack
construction are battery bars or braid
for making connections, some form
of high strength glue (I prefer the
glue used in tennis shoe repair,
although I have seen some builders
use two-sided tape), wire leads,
shrink wrap, and cell spacers, if
desired. Many of the specific pack
construction materials were pur-
chased from www.battlepack.com.
You will need a fairly high wattage
soldering setup to solder quickly
without damaging the cells. Pictured
are a 260 watt gun, a 500 watt iron
for major work, and a heat gun for
shrinking the wrap on the pack.
Pack construction can be
completed with or without the
separation rings. These keep the cells
from contacting each other, and
allow air flow for cooling. Although I
normally prefer to use them, they do
FIGURE 2
FIGURE 3
FIGURE 4
FIGURE 5
FIGURE 6
FIGURE 7 FIGURE 8 FIGURE 9
CombatZone.qxd 8/8/2007 3:51 PM Page 28
SERVO 09.2007 29
make the pack physically larger and
because I need these to fit into a
smaller area, I wont be using them.
First, glue the cells together in
the arrangement that you need. I will
be making 24 volt packs in the
standard 4 x 5 (20 cells total) config-
uration. Here the cells are glued side
by side with the polarity of the cells
opposite of the adjacent cells.
Once you have all the cells glued
together in a flat configuration, let
the glue set before proceeding.
Glue four rows of five cells
together into a block, again mindful
of keeping the polarity of all cells
opposite of adjacent cells. I use rub-
ber bands to hold the packs together
until the glue sets.
Create a small puddle of solder
in the center of each cell. Make sure
to let them cool afterwards!
(Continuing to solder on the cell
while it is hot can damage them.)
The solder puddle should be
centered and approximately one
quarter the diameter of the cell.
I prefer using flexible braid
instead of bars for pack construction.
It tends to hold up better to hard
impacts, and is easier to solder than
solid bars. You can find braided
grounding cable from many online
surplus places for reasonable prices.
Here, I have cut the braid into pieces
for connectors. About 1.25 inches or
so are good for the sub C sized cells
they need to be long enough to
go from the center of one cell to
the center of the next cell. As with
the cells, tin the connecting braid
with solder.
Lay the braid across the cells you
want to connect, and heat the solder
so that the puddle on the cell com-
pletely melts into the braid. Be care-
ful not to hold the gun or iron on the
cell for too long, as you can damage
the cell. This is why a high wattage
gun is essential: massive heat trans-
fer lets you perform this step quickly.
The completed solder joint
should look like one entirely melted
puddle on each end of the braid.
Notice in the photographs the
pattern of connectors for the bottom
of a standard 24V pack.
You can also see the top view of
the same pack. Be mindful of the
pattern of connectors during
construction. You will need to con-
nect all cells in series for the pack.
Note the two cells on the left with no
connector. This will be where the
wire leads are soldered on.
Gauge your wire leads appropri-
ately for the discharge amperage of
the packs. I am using 10 gauge
silicone jacketed wire for these.
The shrink wrap that is used on
the outside of the pack is easy to
puncture, and some protection from
abrasion on the connectors is a good
idea. You can use thin foam padding
(many commercial packs are made
this way) or, in my case, I have found
that 10 mil pipe tape (found at Home
Depot) works well and is inexpensive.
Cut the shrink wrap so that it
overhangs the pack about 1/2 inch
FIGURE 10 FIGURE 11 FIGURE 12
FIGURE 13
FIGURE 14
FIGURE 15
FIGURE 16
FIGURE 17
CombatZone.qxd 8/8/2007 3:52 PM Page 29
30 SERVO 09.2007
US Events
R
OBOlympics/RoboGames 2007
was presented by ComBots in
San Francisco, CA, on 6/15/2007.
Results are as follows:
Super Heavyweights 1st: Ziggy,
CM Robotics; 2nd: The Judge,
Mechanicus; 3rd: Vladiator, Moon.
Heavyweights 1st: Sewer Snake,
PlumbCrazy; 2nd: Last Rites,
Hardcore Robotics; 3rd: Original
Sin, Pirhana.
Middleweights 1st: Touro,
RioBotz; 2nd: Pipe Wrench,
PlumbCrazy; 3rd: SubZero,
Hammertime.
Lightweights 1st: Touro Light,
RioBotz; 2nd: K2, Velocity; 3rd: Texas
Heat, CM Robotics.
Featherweights 1st: Totally
Offensive, Mad Overlord; 2nd:
Proteus, Titan; 3rd: Whammo,
Sandman.
Hobbyweights 1st: Surgical
Strike, Rolling Thunder; 2nd:
AlphaQ Jr., RoboTrauma; 3rd: Bullet,
Target Practice.
Beetleweights 1st: Dark
Pummeler, Dark Forces; 2nd: Itsa?,
Bad Bot; 3rd: Gutter Monkey, Death
By Monkeys.
Antweights 1st: Dark Pounder,
Dark Forces; 2nd: Dark Blade, Dark
Forces; 3rd: Revert.
Auto Antweights 1st: Thinkling,
Tentacle Combat Robotics; 2nd:
Spider, Terror Turtle; 3rd: Chopper,
Terror Turtle.
Fairyweights 1st: Micro Drive,
Misfit; 2nd: Dark Bullit, Dark Forces;
3rd: Skeet Skeet, Ghetto Logic.
H
ouse Of Slackers II was present-
ed by Team Slackers in Glen
Rock, NJ, on 6/30/2007. Results
are as follows:
Antweights 1st: Box #5, Danger
Zone; 2nd: Yelo, Pinq; 3rd: Entropy,
Danger Zone.
Beetles 1st: D12, Headbangers;
2nd: Aggravator, Dreadfully Wicked
Robotics.
Hobbies 1st: Upchuck, Dreadfully
Wicked Robotics; 2nd: Battle Brick,
Interloper; 3rd: Evader, RC Cars.
O
sceola Robot Battles was
presented by Daytona Area
Robot Tournament in Kissimmee, FL,
on 7/14/2007. The event was held
at JR Hobbies.
Results were
not available at
press time.
Australian Events
B
attleShed 2007, Barrage In The
Garage, was held on 7/7/2007
in New South Wales. Results are
as follows: 1st:
Reboot, Rotwang;
2nd: YaMum;
3rd: Bender,
Rotwang. SV
EVENTS
RESULTS June 11th - July 15th
or so on each end. This will give
enough room so that it will fit
perfectly after heat shrinking. Take
your time with the heat gun over-
heating will cause the wrap to crack.
Properly shrunk to the pack, the
shrink will be tight and curve slightly
around the ends.
Four packs, combat ready! New
cells, especially NiMH, may require
several charge-discharge cycles
before reaching full capacity. SV
T
e technology of the Third
Millennium runs, frankly, rather
computer heavy. As a user rather
than a programmer, I tend to resort
to other forms of Aided Design
than the Computer style. In the
lingo of todays bot making, the C
in CAD means cardboard to me.
Bandied about are also WAD
(wood), PAD (posterboard ), FAD
(foamboard), and even BVD (brain
visualized, not underwear).
******* Aided Design
TECHNICAL KN WLEDGE
by Kevin Berry
CombatZone.qxd 8/8/2007 3:54 PM Page 30
SERVO 09.2007 31
I tend to start with
sketches on Microsoft
PowerPoint. If things look
complex, Ill model with
cardboard or wood, then
proceed to aluminum or
sheet metal before cutting
expensive titanium or com-
posites. My beetleweight
Fir Darrig went through
many iterations. It started as a BVD
to Fabrication bot, with 1/8
aluminum free form bent in a vise.
Later, I transferred the shell to paper,
onto posterboard, then to sheet
metal. To bend the titanium, I made
a wood model which was also the
shoe for a homemade brake.
Ultimately, this process failed me
when I tried to cold bend the
titanium rather than applying heat,
resulting in a big crack. I wound up
running the sheet metal prototype
with titanium appliqu armor.
My next attempt at using wood
for a design medium came when
I attempted to rebuild my
Lightweight, Chupacabra, after
its shredding by Killerbotics 2EZ.
I ripped fir boards down to
1/2 square to simulate aluminum
tubing. With the help of drywall
screws, I modeled the frame around
the components such as motors
and batteries. The model went
to my sponsors welding shop,
where I learned another lesson
about modeling.
In an attempt to make a low
clearance bot, Id cut the pieces very
closely to the maximum possible
dimensions. Unfortunately, I failed to
indicate the critical dimensions to
the fabricator, so it came back
unusable for my parts. Slight
tolerance buildups, differences in
material dimensions, and frankly, just
some sloppy welding resulted in a
$200 frame I couldnt use. Lesson
learned: Build it yourself, or at least
be there when its built!
For the next two bots I built,
I skipped the modeling effort.
Our highly successful antweight,
Babe The Blue Bot, moved from
version III to version IV using a
direct BVD (actually a dinnertime
conversation from the kids, after
the spanking defeat of III) to a
3D PowerPoint visualization, to
fabrication. To size the pieces, I laid
all components out on the raw
baseplate material, drew around
them with a Sharpie, then cut. This
version worked very well, and it
went from concept to arena with
no modifications.
(L-R) Fir Darrig, wood form,
titanium blank partially bent.
Powerpoint 3-D
CAD of Babe IV.
Side view of wood form being
used as a bending brake shoe.
John Henry, parts mounted directly from
the rough layout.
Chupacaba: High fidelity wood models dont
necessarily mean an accurate result.
Frame built directly around the core bot,
no design needed.
Babe IV, after several fights. Quite a
good resemblance.
Berserk Robotics Archon went from high fidelity CAD directly to hardware.
CombatZone.qxd 8/8/2007 3:54 PM Page 31
32 SERVO 09.2007
So, when it came time for
a beetleweight version of Babe, I
went straight from BVD to layout
without bothering to even make a
PowerPoint version.
To see what else is being done
around the builder community, I
put out a call and received lots
of examples.
No one technique works for any
builder. Whether you are a high-end
CAD designer or a low-tech poster-
board and masking tape type, whats
important is to spend the right
balance of time between design,
modeling, and building. Too much of
any one wastes precious time.
A final closing thought. The
hardest step is between the virtual
bots in our heads and the hard bots
in the box. However it works best for
you, get out there and build! SV
T
his free and easy-to-use program is
perfect for whipping up a quick
electrical schematic. Whether you are
designing wiring for your own scratch-
built robot or hacking an off-the-shelf
electronic gizmo, this is a painless way
to produce an as-built diagram before
you start modifying or to completely
plan your next cunning device.
Ive found it very useful to create
as-built diagrams of as much of my
bots wiring as possible and keep a
copy with my toolkit when traveling
to an event. Repairing damage or
making modifications in a hurry is
definitely easier when you have an
as-built to refer to. This simple idea
can prevent a wiring mistake that
might toast your robot!
I downloaded the setup
program from the ExpressPCB web-
site, installed it on my PC, and built
my first simple circuit schematic in
less than 15 minutes (Figure 1). The
setup program actually installs two
applications: ExpressSCH for creat-
Team Mad Cows Morpheus is another CAD to fab bot.
Team Kick Me applies Cardboard Aided Design techniques on Kick-Me-Mo.
Finger Tech Robotics also uses cardboard
modeling on Swiss Chef.
Team V, in the April 07 issue of SERVO, showed their progression from paper to wood to metal.
FIGURE 1
SOFTWARE REVIEW ExpressSCH v5.6
by Jay Johnson
CombatZone.qxd 8/8/2007 3:56 PM Page 32
SERVO 09.2007 33
ing schematics and ExpressPCB for
creating printed circuit board dia-
grams that can be sent to ExpressPCB
for actual production of your custom-
designed printed circuit boards.
ExpressSCH includes the basic
drawing tools you would expect plus
an extensive library of pre-built
components. Once youve snapped a
component to a wire, the two parts
will stay snapped together as you
move either of them around the
diagram. One of the features I liked
best was the ability to create my own
custom components on-the-fly (like
the SPNO solenoid in Figure 1) and
save them to the library for future
re-use. I can also share these compo-
nents with other ExpressSCH users.
This program was actually created
as a pre-processor for creating
complex circuit board diagrams in
ExpressPCB, but I can see no reason
not to use it to satisfy my simpler need
for basic circuit and wiring schematics.
And if any of my projects evolve to
require a custom PCB, Ill already have
the tools I need!
There were a few features that
could be improved:
1) Component alignment tools. The
user can snap the components to a
grid, but this can be tedious.
2) Multiple Undo. The current
version limits the user to undoing a
single previous command.
3) Colorful components! In the current
version of ExpressSCH, to paraphrase
Henry Ford, The customer can have
any color component he wants, so
long as its black! Actually, the user
has some control over the general
color scheme, but all the components
and wires have to be the same color.
ExpressSCH is an easy-to-use tool
that ought to be in every robot-builders
toolkit and best of all, it is FREE! SV
Jay and Valerie Johnson are Big Bang Robotics and
have been designing, building, and fighting combat
robots since 2001.
US Events
R
obothon Robot Combat 2007
will be presented by Western
Allied Robotics in Seattle, WA on
9/22/2007 at the Seattle Center's
Center House. Classes will be 3 lb
and 12 lb bots, using a double
elimination or round robin format,
following RFL Rules. No ICE or open
flames. Entry Fee: $40 for first 12 lb
robot. $25 for First 3 lb robot.
Additional robots are half price. Entry
fee discount for helping with arena
setup and take-down. Special entry
fee considerations for builders who
are under 18. Arena: 12 x 12 with
18 x 18 pit surrounded by 2 high
wall making it very difficult to
accidentally drive into it. Visit www.
westernalliedrobotics.com.
F
ranklin Institute Robotic Conflict
will be presented by North East
Robotics Club in Philadelphia, PA on
10/ 10/ 2007.
The Franklin
Institute Science
Museum & NERC have teamed up to
host a 12 lb, 30 lb, and 30 lb
Sportmans class event. Matches will
take place in a 16 x 16 wooden
floored arena. Registration closes on
9/17. Visit www.nerc.us.
2
007 Halloween
Robot Terror
will be presented by
California Insect
Bots in Gilroy, CA on 10/27/2007.
This is open to Flea weights, Ant
weights, and Beetle weights. There
will also be a bot costume contest
thats right you have to put a
costume on your fighting bot. The
costume contest will take place during
a break in fighting and the audience
will decide the winner. There will be
prizes for the 1st, 2nd, and 3rd place
bot costume winners. Held at Gilroy
Hobby. Weigh-in starts at 10:00 AM
and fighting starts around Noon. The
entry fee will be $20 per fighting bot
with prizes for 1st , 2nd, and 3rd place
in each fighting weight class. For fight
rules, go to www.calbugs.com.
UK Events
R
obots Live! Hemel Hempstead,
9/1-2/2007. Event Location:
Sportspace Hemel Hempstead, Park
Road, Hemel Hempstead. Visit
www.robotslive.co.uk.
U
K Antweight Championships,
9/8/2007 in Luton Bedfordshire.
Event will host competitions in the
Flea (25-75g) division, Ant (75-150g),
and SuperAnt (150-250g) division.
Competition will be double elimination.
R
oaming Robots Winter Tour
Round 1 Doncaster,
9/15/2007 at The Dome, Doncaster
Leisure Park, Bawtry Road,
Doncaster, South Yorkshire. Visit
www.roamingrobots.co.uk.
R
oaming Robots Winter Tour
Round 2 Portsmouth, 10/6-
7/2007 at the Mountbatten Centre,
Alexandra Park, Twyford Avenue,
Portsmouth. Visit www.roaming
robots.co.uk. SV
EVENTS
UPCOMING September and October
Links
ExpressPCB www.expresspcb.com
Big Bang Robotics www.bigbang
robotics.com
CombatZone.qxd 8/8/2007 3:56 PM Page 33
IMService
P. O. Box 1 42, New Hudson, MI 481 65
Voice: 888-451-1670
or: 248-486-3600
imsrv. com
Servo CNC Routers
Starting at $1995
DeskCNC
Desktop CNC Solutions
12 x 12 x4 90 or 175 ipm
12 x 24 x 4 NEW 400 ipm
The
Power SchmartModule
will power up your
circuits with your choice
of -9, -12, +2.5, +3.3,
+5, +9, and +12 volts.
$15
Very Schmart!
www.schmartboard.com
The Escape
Robot`s built-in
microprocessor
enables it to
'think on its own.
(KSR4) $29.95
20 second voice recorder/playback
module. The electret microphone is on the
board. One button records, the other button is
momentarily pressed to replay the message.
(pre-assembled) (A96010) $6.60
5mm White
water clear
LED 3.5V
10,000 mcd
(AB287)
$0.56
The Velleman Personal Scope
is not a graphical multimeter
but a complete portable
oscilloscope at the size and
cost oI a good multimeter.
(HPS10)
The robot Irog moves Iorward
when it detects sound and
repeats: start (move Iorward) -~
stop -~ leIt turn -~ stop -~ right
turn -~ stop. (KSR2) $19.95
S
o
l
d
e
r
i
n
g

r
e
q
u
i
r
e
d
Thousands
m
ore item
s on
our w
eb site!
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
34 SERVO 09.2007
Robotics Showcase Robotics Showcase
ShowcaseSep07.qxd 8/8/2007 7:11 PM Page 34
What the Heck is
BashBall?
BashBall combines the visceral
excitement of one-on-one robot
combat with the strategy of team play
in a fast-paced ball game requiring
speed, skill, and brute force.
Two teams of remotely-operated
robots vie for points by scoring goals,
ejecting opponents from the arena,
disabling opponents, or all three in any
combination. BashBall is played in an
enclosed arena with transparent walls
featuring pneumatically operated pits,
flame jets, and death blossom
pistons that pop up from the floor.
Scoring goals in this environment is not
easy, and every match is sure to feature
plenty of exciting action!
Why Invent Another
Robotic Sport?
Since the introduction of fighting
robots in 1994 at the original Robot
Wars in San Francisco, CA, combat
among remote controlled robots has
followed the same basic format:
one-on-one combat on a flat floor.
There have been some variations along
the way, but in the end the winner is
usually decided by single combat, with
the results based on damage caused.
The natural evolution of fighting
robots following this format has
produced two dominant designs: very
destructive robots with kinetic energy
(KE) weapons, and low, wedgy
bricks designed to survive these
weapons. With few exceptions,
robot fights today follow one of the
following scenarios:
Two highly destructive KE robots
clash briefly in a hail of shrapnel,
reducing both to ineffective pushy bots
for the remainder of the tournament.
A low, wedgy brick wedges a highly
destructive KE robot around the arena
for three minutes.
Two low, wedgy bricks wedge each
other around the arena for three minutes.
A novel design is reduced to a pile of
scrap metal by a KE weapon in the first
60 seconds (often less).
A novel design is dominated by a
low, wedgy brick for three minutes.
There are exceptions and variations
of course, but the general direction is
clear if you dont want to make a KE
weapon or a low, heavily armored brick,
you can expect to have two losses and
go home, often with your robot in
shards. While this format continues to
appeal to some builders, there are many
others who want something different.
As with other fields of endeavor, in
robotic sports you get what you meas-
ure. To have a different outcome, you
BASHBALL!
BotBash returns with a new game, a radically
updated Active Arena, and a different approach
to extreme robotic sports.
by Steve Judd
MARCA in San Diego, CA, 2003.
SERVO 09.2007 35
Judd.qxd 8/8/2007 9:41 AM Page 35
36 SERVO 09.2007
need to change the game. BashBall is a
new game combining elements of
robot fighting, an exciting and dynamic
playing field, and strategic team play in
a fast-paced, fun ball game. Robots can
and will be damaged or disabled on the
playing field, but the game is not about
damage, its about scoring points.
Earlier, experimental versions of
BashBall were played at Botbash events
in 2002, 2003, and 2004. The current
version draws on lessons learned at
those events. Video of the 2004 version
of the game is available on YouTube at
www.youtube.com/watch?v=yJCAZ
Cx_iKw. Additional videos can be
found at the Botbash Channel at
www.youtube.com/botbash.
BashBall 2007
The Arena
BashBall is played in the Mobile
Automated Robot Combat Arena
(MARCA). First introduced in 2002, the
MARCA was designed to support new
forms of extreme robotic sports and be
highly mobile. The MARCA provides a
completely self-contained mobile
arena; mounted on a trailer, the 30 by
16 playing surface has hydraulically
operated wings that fold up for
travel. The outer arena screens hang
from a track for use and fit between
the folded floor sections for travel.
The arena consists of a 16 x 30
flat playing surface with a goal opening
at each end. The arena is surrounded by
rails, above which are angled sections
of metal mesh which allow the ball to
roll back onto the playing surface.
The arena is equipped with several
obstacles: a gap in the rail through
which robots can be ejected, pneumati-
cally operated pits, a pendulum sweep-
er wielding a spinning metal bar, flame
jets, and death blossom pneumatic
rams that pop up from the floor.
The Game
The object of the game is to
accumulate the highest possible score
during regulation play. In the case of a
tie, a sudden death overtime period
will be played with the first team to
score winning the match.
The game is played in four
quarters of five minutes each; with a
10 minute break between quarters and
a five-minute Sudden Death overtime,
if necessary.
The game begins with each teams
robots positioned behind the starting
line at their respective ends of the
arena. Play is started with the ball in
the ceiling-mounted center-court Tee.
The ball is released onto the arena floor
when a robot hits a release bar project-
ing from the bottom of the Tee.
The ball remains in play until a
goal is scored, the ball leaves the
arena, or the ball ends up in an
unplayable position.
Following a goal, the MARCA
automatically shoots the ball back into
the arena. The ball cannons are aimed
so that the ball will usually land back in
BASHBALL!
MARCA 2007 Floor Plan.
South Carolina State Fair, October 10-21, 2007. BotBash and Mechwars Robot
Combat will be presenting five shows a day in the MARCA at the fair. The balance
of the time is available for BashBall teams to come test their mettle. For further
information, contact info@botbash.com
The Botbash team is working on an event schedule for 2008, and will be
making announcements as the dates are finalized.
UPCOMING EVENTS
Judd.qxd 8/8/2007 9:42 AM Page 36
BASHBALL!
the Tee. It must then be released by a
robot hitting the release lever.
A team may not control the ball
for more than 20 seconds without
scoring a goal. If the shot clock expires,
the ball must be surrendered, within
five seconds. If the ball is not surren-
dered play is stopped and a face-off
occurs, similar to a face-off in hockey.
In the event that a robot is ejected
from the arena while carrying the ball,
a timeout will occur and the ball will be
placed in the Tee. Should a robot
become stranded or disabled while
carrying the ball and be unable to
release it, a timeout will occur and the
ball will be placed in the Tee.
There are four ways to score
points:
(5 points) ACE. Ball score with ball
on the serve, originating from ball Tee
(3 points) Ball score from play
(3 points) Throw opponent out of
arena (10 point bonus for ejecting
ALL opponents)
(1 point) Disable opponent
In addition, a team can win the
match during Sudden Death Overtime
by scoring with the ball.
Teams and Robots
A team will consist of from three
to five people and from three to five
robots. Robots must weigh at least 30
lbs but no more than 60 lbs. A team
may bring up to five robots total and
must select at least three, but no more
than four to play in each quarter. The
total weight of the robots selected
must not exceed 150 lbs. Robots must
be built according to the Robot
Fighting League Sportsman Class
rules, but can weigh up to 60 lbs rather
than the usual 30 lbs for that class.
Strategy
The game is designed to encour-
age team play, by rewarding teams
that can work as a group to score
goals. While beating up opponents can
be part of an effective strategy, a team
will need to score points while defend-
ing their own goal to be successful.
The Rules
Detailed rules for BashBall and
robot construction can be found at
http://botbash.architeuthis-dux.
org/botbash-ball-rules-2007.pdf or
http://botbash.architeuthis-dux.
org/Botbash-RFLTechRegs-2007-
06.pdf. SV
Botbash LLC, headquartered in
Tuscon, AZ, is one of the pioneers of
robotic sports. Originally formed in
1997 to present fighting robots at
a science fiction convention in
Phoenix, AZ, Botbash grew to be one
of the longest-lived robotic sports
organizations, celebrating its 10th
anniversary this year.
ABOUT BOTBASH
SERVO 09.2007 37
Judd.qxd 8/8/2007 1:48 PM Page 37
38 SERVO 09.2007
ROBOCUP 2007
ROBOCUP 2007
DARwIns First S ccer Tournament
Americas First Entry to the Humanoid
Division of RoboCup
by DennisHONG, KarlMUECKE, RobertMAYO, JesseHURDUS, and BradPULLINS
RoMeLa: Robotics & Mechanisms Laboratory, Virginia Tech
W
e are Virginia Techs RoboCup team SPRInt (Soccer Playing Robots with Intelligence) and we
just came back from RoboCup 2007.As you may remember, we were the only team that passed
the qualifications from the United Sates in the humanoid division in the RoboCup history and
our robot DARwIn (Dynamic Anthropomorphic Robot with Intelligence) was featured recently on the
cover of SERVO Magazine (Vol. 4, No. 12). A three-part technical series about its development was
featured, as well. Nearly 300 teams from 33 countries geared up to compete at RoboCup 2007 in Atlanta
at the Georgia Institute of Technology July 3-10 and DARwIn fought hard against other teams from all
around the world. We were not able to advance to the finals, but we had a strong showing at the event.
At least we were the audiences favorite (underdog) team especially with DARwIns acrobatic moves!
We played one of the most entertaining games in RoboCup history.This is our story.
FRIDAY (Day 0)
After a long drive from Blacksburg, we arrived at Atlanta (Georgia Tech) late at night. Among VTs RoboCup
team, only members Karl Muecke, Robert Mayo, Jesse Hurdus, Brad Pullins, and advisor Dr. Hong could attend the
competition due to a limited travel budget. We brought DARwIn 2A (goal keeper) and DARwIn 2B (striker) to be the
actual players for the competition, but we also brought DARwIn 1 just for exhibition. We pretty much stayed up all
night tweaking the walking gaits, calibrating the vision system, and putting the final touches to the robots. The campus
was filled with fellow robot enthusiasts from all around the world,
and you could feel the excitement in the air. It was going to be a very
interesting week.
Autonomous
humanoid robot
DARwIn 2B playing
soccer in the lab.
Members of
TEAM: SPRInt
from Virginia
Tech.
Hong.qxd 8/8/2007 9:25 AM Page 38
SERVO 09.2007 39
SATURDAY (Day 1)
The main competition venue was at the CRC
(Campus Recreation Center) at Georgia Tech, and
today we were able to enter the soccer field for
the first time. Surprisingly, the actual soccer field
carpet texture was drastically different from what
we had been using for testing, thus the dynamic
walking gait algorithms we had developed were
not able to handle it in a stable manner. Also, the
lighting condition was so different from what
we had been using, our IEEE1394 cameras were
having a difficult time seeing the field and the
ball. We stayed at the CRC until it closed at 10 PM,
trying to adjust things to make them work right.
It looked like there was still lots of work to do to
perfect DARwIns soccer playing skills. Though
DARwIn performed well in our lab in a controlled
environment, we realized the importance of
making the system robust enough to handle different environments.
SUNDAY (Day 2)
Today we met many of the other
robots and teams. We were the only
US team in the humanoid division, and
there were many teams from Japan
and Germany, in particular. Seeing all
the other robots was quite a humbling
experience as they were all very impres-
sive. Some of the robots especially
those from Technische Universitaet
Darmstadt looked like they had an
actual personality. Their agility,
autonomous behaviors, intelligence,
and even the soccer playing skills were
very impressive. It looked like it would
be quite a challenge for us to bring
home the trophy, but we were ready to
try our best as first time rookies.
MONDAY (Day 3)
Today was the last practice
day before the actual competi-
tion tomorrow. Dr. Hong has
been getting a lot of email and
phone calls from the many fans
from VT and other universities
cheering for us. It looks like we
have a big following after our
cult status YouTube video on the
Internet (www.youtube.com/
watch?v=klBjbDVftJw) and the
articles in SERVO and Julys issue
of Popular Science magazine.
Though we have tweaked most of the system to work well, we discovered that
one of the computers (the one in DARwIn 2B) suddenly stopped working! This
presented a big problem as our first competition was the next day at 2 PM. It
was going to be another long night ahead. Dr. Hong took us to a nice
restaurant for a good meal since we had been living on fast food to save time
for working. (He was more worried about our health than that of the robots.)
We took DARwIn 1 to the
restaurant with us and he
was quite popular there.
After a quick nap, we went
back to the dorm and took
over the lounge area to set
up our workshop and testing
field. Dr. Hong stayed up all
night with us, helping out on
the last minute troubleshoot-
ing. Hopefully, we had fixed
everything so DARwIn could
play a good game against the
other robots the next day.
CRC at Georgia Techs campus.
DARwIn had too much to drink ...
Taking a break after
a very long day of
testing and debugging.
DARwIn 1 is having a
good time with us.
Hong.qxd 8/8/2007 9:26 AM Page 39
40 SERVO 09.2007
TUESDAY (Day 4)
GAME 1
Today marked our very first game! We went up
against Team TKU from TanKang University, a RoboCup
veteran since 2000. The situation for DARwIn didnt look
too good because we had been struggling to fix the
problem of DARwIn 2Bs PC/104 computer all night, but
could not find why it was not communicating with the
rate gyros and motors through its serial port. After much
discussion, we decided to swap the computers between
DARwIn 2B and DARwIn 2A, thus having the non-
functioning DARwIn 2A as the goal keeper (essentially
making it a brick in front of the goal), hoping that it
would simply block the shots from our opponents by just
sitting there. After a long and difficult surgery, we
finally made DARwIn 2B, functional again. Due to the
difference in texture of the playing field carpet, we were not able to use our analytically generated, awesome gaits, but
rather manually recorded some hand-tweaked gaits on the spot so that it could at least walk on the field and play the
game. The new walking gait was not as fast or impressive as what we had before, but it hopefully would do the job. (At
least it looked like we had the strongest kick in the entire humanoid league!)
Thirty minutes before the start of the game, we realized that the lighting conditions on the actual field differed
again from what we used to calibrate the computer vision cameras and that DARwIn could not see the ball! Last-minute
tweaking did not help much but the game had to begin.
What a disaster!
The robots were in position. You could feel the tension in
the air. Striker 2B was having a difficult time locating the ball and
when it did, it dribbled it towards the goal and it missed. It
didnt really kick the ball, but pushed it with its toe instead
because it couldnt accurately see the location of the ball and
didnt know when to give the full kick. The robots from TKU took
small but quick steps, intercepting the ball and kicking it towards
our goal. Unfortunately, our goalkeeper though it had an
impressive pose was essentially a sitting duck and could not
block the ball. Score 1:0. You could actually see from its body
language that 2B was struggling to recognize its surroundings
and the ball. The light was reflecting off from every direction,
confusing him.
The second half started and striker 2B got tripped by the
Team TKU robot and fell face forward. You could see and hear the impact it took from the fall. Even with the protective
guards on its chest, the inertial force from the mass of the cameras mounted on the head caused them to shift. The pan
and tilt motors used to orient the camera did not work anymore! While striker 2B was trying to get up, Team TKU scored
another goal. DARwIn 2B tried to run back to block the kick, but fell forward again, and completely lost its head (camera).
DARwIn was now playing blind! DARwIn was walking around in circles, headless, trying to understand why everything was
pitch black. The game ended,
with a score of 2:0. With all
that went wrong, at least we
were lucky that only two goals
were scored.
After the game, we tried to
fix the pan and tilt unit, but
decided to just bolt the camera
directly to the chest. DARwIn 2B
no longer had a neck and would
need to move its upper body to
look around. It was sad to see
DARwIn fall and break its neck,
but it could have been worse.
The huge
RoboCup event at CRC.
Strategy meeting before the game.
DARwIn 2As impressive pose
(but does not move ...).
A 4 AM repair job in the dorm.
Hong.qxd 8/8/2007 9:27 AM Page 40
SERVO 09.2007 41
WEDNESDAY (Day 5)
GAME 2
Murphys Law ... All that could go wrong, does. After fixing the camera, the computer problem that disabled 2A
previously, happens to 2B, as well. The computer turns on, but the IRQ settings get corrupted and the CMOS hangs. Both
DARwIns are vegetables! Our next match against team FUmanoid from Freie Universitaet from Berlin was about to start,
but neither of our robots would power up. We requested a two minute timeout at the start of the game, and somehow
managed to boot up the 2Bs computer. DARwIn tried to
search for the ball on the field, but without its pan and tilt
head it took a lot of time to locate the ball. It finally did and
proceeded to dash toward the ball, but somehow ripped
out its own power cable and shut down, catastrophically
collapsing in the middle of the field.
Unfortunately, we had to withdraw, with the score
automatically set to 10:0. Our entire team was in shock and
very disappointed. Team moral was zero. We had high
hopes for this game, even believing we could win, but the
electrical and computing hardware were just not cooperat-
ing. We had five hours before the next game; just enough
time to figure out how to resurrect our robots.
GAME 3
Praying for a miracle, team member Karl somehow got
the computer to boot up, just 10 minutes before the game.
The computer seemed to be working fine, but none of its
motors were moving, so DARwIn cant stand up! Seven
minutes before the start of the game, team member Jessie
discovers that a RS-485 cable is missing inside DARwIns
body which is causing the malfunction. Everything was so
last minute and hectic, we forgot to install this crucial cable
when putting the robot back together! Six minutes before
the game, team member Robert runs out the stadium, back
to the dorm room to get the soldering equipment and wires.
Robert literally strips the wires, making the cable as he runs
back to the CRC. The game had already started without a
functioning robot, but Robert miraculously finished the
cable and team member Jesse opened up DARwIns chest
and placed it into the tiny gap between the circuit boards.
Team member Brad booted up the computer and threw
DARwIn on the field, who proceeded to get up and start to
play soccer! A huge cheer came from the audience!
The goalkeeper 2A threw its body to block a kick from
Team B-Humans striker. Our striker 2B dribbled the ball and
pushed it towards the goal but was blocked by Team B-Human. Team B-Humans robot walked next to 2B and 2B pushed
it away, making it fall down next to the ball. Then 2B kicked Team B-Humans robot in the head, instead of the ball next
to it. That brought a big laugh from the audience. (It was probably the most entertaining game in RoboCup history.) The
referees were surprised to see our robots rise up from the dead, and actually play an impressive game. With all that went
wrong, it was truly a miracle!
The audience cheered for the
underdog (that would be us) and
though we lost with a score of 1:0,
we were the true winners of this
game. Fast thinking, great team-
work, skillful hands, and leadership
made the impossible happen.
Though we lost, we celebrated our
first successful game with a late
lunch and started preparing for the
next day of battle.
Getting ready for the next battle.
DARwIn surrounded
by opponents.
He pushes the
others and kicks
their heads like
a bully!
DARwIn 2B bullying the
opponents by pushing and
kicking them they fall like
bowling pins. Bad robot,
DARwIn, bad robot!
After the teams first
successful match.
Hong.qxd 8/8/2007 9:28 AM Page 41
42 SERVO 09.2007
THURSDAY (Day 6)
GAME 4
After spending lots of time fixing electronics and
tweaking sensors, we were confident going into game 4
against Team JEAP from Osaka University, Japan. Their
workbench was located right next to ours, so we
were closely observing their robots, which were quite
impressive especially their software. They used a
modified, off-the-shelf robot hardware which
performance-wise was not too impressive, but made
a very stable mechanical hardware platform. We pride
ourselves with our custom design of DARwIn, but had to
admit that the autonomous soccer playing software we
had developed was quite basic at this stage, but still good
enough to play an impressive game.
The game started with both the striker 2B and the
goalkeeper 2A proudly standing on the playing field,
ready for action. After a few seconds delay, 2B searched
for the ball and located it. There was a big cheer from the
rather large crowd that had gathered around us. 2B
dashed to the ball, but overshot it. It adjusted its position
by side stepping, which looked quite impressive. The real
secret weapon of DARwIn is its very impressive, powerful
kick. It can shoot the ball from one end of the playing
field to the other, with impressive speed and power. Team
JEAP was still searching for the ball and their goal keeper
was out for minor adjustments. We had a wide-open
goal! As 2B adjusted its position to aim for the goal, the
crowd went crazy. The powerful DARwIns left kick dug
into the ground and DARwIn fell down. (Apparently, the
mechanical calibration was a bit off.)
Meanwhile, the goal keeper 2A (with its still malfunc-
tioning computer) is performing some amusing acrobatic
motions including summersaults and backflips. Since 2A couldnt really see with its broken camera, we
decided to pre-program it to perform these types of random motions, hoping it would block the ball in case
the opponents got a chance to kick it towards our goal. It turned out that 2A was the real crowd pleaser,
with its almost comical maneuvers.
Striker 2B was constantly trying to search, dash to, aim, and kick the ball, but every time it tried to kick
the ball, its left foot dug into the ground and it fell over. During the match, this happened four times. There
were multiple battle scars on 2B from its
falls a bent forearm link, a loose
camera cable which blinded it for a few
minutes, broken protection guard posts,
and a few nuts that fell off but most of
them were fixed during halftime. We
couldnt figure out why the left foot kept
digging into the ground, though.
The game ended with a tie score of
0:0. It was one of the most tense and
exciting games we had, and 2Bs
performance was spectacular in spite of
its problems with the kick.
GAME 5
Since we were not advancing to the
semi-finals, our match against Team
Hephaestus from Tsinghua University
Jesses last minute
programming adjustments
before the game against
Team JEAP from Osaka
University.
An action-
packed game
with DARwIn
2As acrobatic
moves!
After an intense game day,
heading back to the dorm
for more repair
work.
Hong.qxd 8/8/2007 9:28 AM Page 42
would be our last game for
RoboCup 2007. They had impressive
looking robots with fast and stable
gaits, but from what we had seen
during practice runs, their robots
kicks were weak and inaccurate.
Since this would be our last game
for the year and we had not
successfully scored a single point
yet (though we scored a few goals
during practice runs and had some
really good games), our goal for
this game was to score at least one
goal. We adjusted the program to
focus on offense and just kick the ball with all its power whenever it had a chance.
Game 5 started and both teams robots dashed to the ball, trying to dribble it towards the opponents
goal. They kept on bumping into each other and would fall down. Both teams robots had to be manually
set back up, then they would dash to the ball again, collide, and then fall over. It looked more like a
head-butting match than a game of soccer. At one point, the ball was near the corner of our goal and both
teams dashed to it. Team Hephaestus robot was a tad bit faster, and reached the ball first. It readjusted its
position to aim toward our goal. DARwIn was 10 cm behind the ball and tried to block it, but it was too
late. Team Hephaestuss robot tapped the ball ever so gently, and it rolled into our goal. Score is 0:1 as the
first half ended.
As the second half starts, Team Hephaestus robots agressively attack and get to the ball first, kicking
it towards our goal. There were several close moments, but luckily their kicks were weak, so the ball either
didnt reach the goal or missed the goal due to the low accuracy. DARwIn just couldnt seem to get to the
ball before the opponents, but at least DARwIn was behaving as we have programmed it to. It saw the ball
correctly, located the goal correctly, kicked the ball strongly (though it fell down afterwards), and even
followed the strategies we had taught it. We were like proud parents watching their kids soccer game. We
all applauded as the whistle signaling the end of the game blew. Final score 1:0.
Professor Oscar von Stryk from Technische Universitaet Darmstadt watched the game with us and said
we had done a fantastic job for a rookie team. No single team in RoboCup history has advanced to the semi
finals in their first year. We miraculously resurrected both dead robots at the last minute, bravely attempted
risky strategies to improve its play, cleverly entertained the audience with the malfunctioning DARwIn 2As
acrobatic motions, and diligently fixed and tweaked the robots all night with little sleep. To us, we were true
winners, and were still proud to represent Virginia Tech and the US!
FINAL STATS
When we first decided to start a RoboCup team, we really did not know what to expect. Though we
were not able to win, it was an excellent experience working on this project. We learned a lot and made a
lot of friends from all around the world. We shared our passion for robotics and ideas to improve each
others robots.
We would like to thank all of our team members, especially those who could not make it to Atlanta, our
fellow lab mates at RoMeLa who were such a big help, our sponsors, our fans from all around
the world with their encouraging emails, and our advisor, Dr. Hong, for his passion for robotics and his
constant support.
We shall return next year! With the next generation robot DARwIn 3 we will be a formidable
opponent and a force to be
reckoned with. As DARwIn
says, Ill be back! SV
Like a proud
father with his
son on his lap.
DARwIn 2A
attempting its
famous left
kick (before it
fell down).
Our team
advisor
Dr. Hong.
TEAM: SPRInt (from left: Professor Dennig Hong, Jesse
Hurdes, Robert Mayo, Karl Muecke, Brad Pullins) and
Professor Oscar von Stryk from Technische
Universitaet Darmstadt.
SERVO 09.2007 43
To learn more about
TEAM: SPRInt and the
humanoid robot DARwIn,
check out:
www.me.vt.edu/Romela
www.me.vt.edu/Robocup
FOR YOUR INFO
Hong.qxd 8/8/2007 9:29 AM Page 43
44 SERVO 09.2007
L
ots of my robots run outdoors in bright sunshine, so it
would help if they could harness those rays. Hey folks, its
raining soup, so get yourself a pail! Custom store-built
chargers are expensive and you may not get the exact voltage
match to your particular battery setup. For example, a good
charge rate for a 12V lead acid battery is about 14.6 volts. The
solar cell I had put out 24-27 volts. Buying an adjustable regulator
is expensive, plus you have to worry about designing a complicat-
ed circuit to make sure the battery isnt over or under charged.
Fortunately, there is an easy trick called floating the ground
that can make an inexpensive 12V regulator put out exactly the
voltage you need. Twelve volt regulators are very common for
example, the 7812 type which is probably hanging out in some
of your busted PC power supplies. It can be easily salvaged or
purchased for a couple of bucks. The other item youll need are
four power diodes. Both are staples at RadioShack.
Refer to the diagram in Figure 1. Depending on the size of the
Build an Inexpensive
From Junk
Solar Trickle Charger
by Alan Federman
Federman.qxd 8/8/2007 7:20 PM Page 44
solar cell, this circuit
isnt going to supply a
lot of current, so you
probably dont have to
worry about using a
heatsink for the
voltage regulator. The
positive output from
the solar cell is con-
nected to the Vin of
the voltage regulator.
The Vout from the
voltage regulator will
get sent to the anode of
the battery. The ground
(or case) of the voltage regulator is sent
to the cathode of the battery. The four
diodes are wired in series. The ground or
negative side of the diodes hook up to
the ground side of the solar cell.
How the Circuit
Works
If the diodes were removed or
bypassed, the voltage out would be
about 12 volts. A diode is a semicon-
ductor. If the diode was a perfect
semiconductor, it would have
infinite conductivity in one direction,
and infinite resistance in the other.
Alas, the world we live in isnt per-
fect, and neither is the diode. Each
diode has a 0.6 volt breakdown voltage
that needs to be overcome. So, each
diode adds this 0.6 volt to the potential
of the ground. Since we are raising the
potential, in slang, we are floating the
ground and forcing the output of the
regulator to increase by 2.4 volts, giving
us the 14.6 V we need! SV
SERVO 09.2007 45
FIGURE 1. Circuit
diagram.
FIGURE 2. Circuit elements
resting on solar panel.
FIGURE 3. Using the
system to trickle
charge a battery.
Federman.qxd 8/8/2007 7:20 PM Page 45
46 SERVO 09.2007
Beginners Guide to
Programming: Lesson 3
Beginners Guide to
Programming: Lesson 3
T
his is the final lesson in the
Beginners Guide to Programming.
It is important that you read
and understand last months Lesson 2
before you proceed with this one. We
are going to cover the Branch, LookUp,
LookDown, and LCD commands.
Once you complete this lesson,
you should have enough of an under-
standing of the Basic programming
language to venture forth and explore
the world of microcontrollers.
Branch Command
Lets say that you want to perform
a set of actions based on a number
between 1 and 5. One way to do this is
with an If statement as shown in Figure
1. If you single step through the code,
you will notice that each condition is
tested until a match is made. Even
after a match is made, we continue to
test until the end of the program is
reached. This is not a very efficient way
to perform this kind of action.
The Branch command will allow you
to branch to a particular location in the
code based on an index value. Take a
look at the code in Figure 2. The Branch
command uses the first argument as an
index to point to one of the labels that
you have provided. You supply a list of
labels that align with the index. In this
case, we used the labels do0, do1, do2,
do3, do4, and do5. You might ask your-
self why we had to use the do0 label.
The Branch command is zero-based and
the first label that you provide is the
label that is jumped to if the index is 0.
The next is 1, and then 2, and so on.
Now, you might wonder what
happens if the index falls outside the
range of the provided jump labels. For
instance, what would happen if the
index value was 10? The Branch
command is designed to fall through to
the very next command if no label has
been provided for the given index. The
code in Figure 3 has been modified to
handle numbers outside the range of
the provided jump labels.
The Branch command is quite valu-
able, and when programming microcon-
trollers you will find it very efficient. Only
a single condition test is made, no mat-
ter how many jump labels are provided.
Using a little math, you can manipulate
the index so that larger values may be
used with only a few jump locations.
Later, I will show you how to do some
fancy jumping using the LookDown and
Branch commands together.
In older versions of the Basic
language, the Branch command was
called OnGoto.
Setting Simulator
to Intermediate
From this point on, you need to
have the Athena Simulator Mode set to
Intermediate. You do this by selecting
Intermediate from the Mode menu as
shown in Figure 4.
by Michael Simpson
FIGURE 1
FIGURE 2 FIGURE 3
Simpson3.qxd 8/8/2007 10:14 AM Page 46
SERVO 09.2007 47
Beginners Guide to Programming: Lesson 3
Once the mode is set,
make sure you save your set-
tings as shown in Figure 5.
LookUp
Command
The LookUp command
will allow you to create a
lookup table. For instance,
lets say you need to return a
particular value based on a number
between 0 and 10. Looking at Figure 6,
you can see that the first argument is the
result variable in which you wish to place
the looked up value. The next argument
is the actual index in the range of 0-255.
You then supply a list of lookup values.
Each of these values maps to the index.
For instance, the first lookup value maps
to 0 and the next to 1, and so on.
If a lookup value is not found for
the index supplied, the original value
will not be changed.
Command
Syntax Help
You can get full syntax help for any of
the Athena commands by hitting F8 on
any Edit Form. All the available commands
for the current difficulty mode will be
displayed on the left as shown in Figure 7.
When you select one of the commands,
the syntax, description, and a code
example will be displayed on the bottom.
The Paste button will paste the actual
command shown in the Usage field into
your code at the current cursor position.
LookDown
Command
The LookDown command works
about the same as the LookUp command
in the way that you supply the argu-
ments; however, it takes a second argu-
ment and performs a search against all
the table entries. When it finds a match,
it returns the index of the item found.
In the example shown in Figure 8, the
seventh element is matched so a value
of 6 is returned. Remember that the
command is zero-based, so the first ele-
ment will return
a zero and the
second will return
one, and so on.
The real power
of the LookDown
command is when
it is used with other commands, like the
Branch command as shown in Figure 9.
By using the LookDown command first,
we can create an index off of any
range of numbers. The index can then
be used to perform a jump using the
Branch command.
LCD Commands
Many microcontrollers and
compilers have support for Character
LCDs and the Athena is no exception.
First, in order to see the results of your
LCD commands, you need to activate
the LCD in the simulator. This is
done by selecting the Show LCD option
in the Watch menu on the chip
FIGURE 4 FIGURE 5
FIGURE 6 FIGURE 7
Simpson3.qxd 8/8/2007 10:14 AM Page 47
simulation form as shown in Figure 10.
Once selected, a 16 x 2 character
LCD will pop up as shown in Figure 11.
This LCD is a very close simulation of
a 16 x 2 LCD using a Hitachi 44780
controller. The memory mapping and
control characters are all supported.
To use the LCD commands, you
must first use the LCDinit command.
This properly initializes the LCD. Once
initialized, you have three commands
that can be used to send data to the LCD:
LCDchar
Sends a single character to the LCD
LCDcontrol
Sends a special control
code to the LCD
1 Clear the Display
2 Home the Display
12 Cursor Off
14 Cursor On, No Blink
15 Cursor On, Blink
16 Shift Cursor Left
20 Shift Cursor Right
24 Shift Display Left
28 Shift Display Right
LCDwrite
Sends a string of characters to the LCD
To send a simple message to the
LCD, you use the LCDwrite command
as shown in Figure 12. This will display
the message shown in Figure 13.
We can scroll the LCD display to the
right then back to the left by utilizing a
couple control codes. Load and run the
code in Figure 14 to see the effect.
ArrayGet and
ArraySet Commands
In more advanced
dialects of the Basic lan-
guage, you have
access to variable
arrays. While the
Athena Simulator
does not have
access to such vari-
ables, it does have a
couple of com-
mands that will let
you access declared
variables as a group.
When you create variables in your
code, they are stored in contiguous
locations in memory. When you use
the Dim command to create the
variables a, b, c, d, and e, they are each
stored in memory, one after another.
The ArrayGet and ArraySet commands
take advantage of this and let you
access the variables by using only the
first variable as a reference.
The code in Figure 15 is using the
ArraySet Command to set the variables
a, b, c, d, and e to a value of 55. The
first argument is the reference variable.
This is the first variable in the list that
you wish to manipulate. The second
argument is the index. If the value of
this index is 0, then the variable a will
be accessed. If the value is 1, then the
variable b is accessed, and so on.
The ArrayGet works much the
same way as the ArraySet command.
Instead of passing a value to set, we
pass a variable that will hold the result
of the indexed variable.
Programming a
Real Athena
This month, we complete our final
lesson. The next logical step is to
actually program a microcontroller. The
Athena line of microcontrollers was
created for the sole purpose of getting
you started programming a microcon-
troller. The Athena microcon-
troller shown in Figure 17 is a
perfect device to start with.
Kronos Robotics sells them
for $6.95 each. The Perseus
Beginners Guide to Programming: Lesson 3
48 SERVO 09.2007
FIGURE 9
FIGURE 8
FIGURE 10
FIGURE 11
FIGURE 12
FIGURE 13
Simpson3.qxd 8/8/2007 10:15 AM Page 48
microcontroller is the smallest, but it
packs quite a bit of power in that tiny
package. It has analog inputs and runs
at twice the speed of the Athena. The
Nemesis is the flagship of the Athena
line and allows you to perform inline
assembly language, so its a perfect
way to take the next step in program-
ming. All three chips use the Basic lan-
guage featured in Lessons 1, 2, and 3.
In order to program the chips, you
need an RS-232 driver in order to
interface the chip to your PC. There are
application notes on the Kronos
Robotics website at www.kronos
robotics.com that show you how to
build one from scratch. You can also
purchase an EZRS232 driver shown in
Figure 18 for under $10.
You have the choice of using the
chips on a breadboard or prototype
board or you can use one of the many
carrier boards available from Kronos
Robotics. The smaller carriers (like the
ones shown in Figure 19) are great
for small, dedicated robot projects. The
Athena WorkBoard Deluxe shown in
Figure 20 can be used with any of
these chips and includes a breadboard,
program interface, and power supply.
If you do decide to program an
actual microcontroller, you
can start by running through
the lessons I presented, or
you can follow the tutorial
included with the compiler
download. Make sure you
visit the Kronos Robotics
website for various tutorials
and application notes. You
will find that we have not even
scratched the surface of all the available
commands; many are designed to
interface with other devices or sensors.
Summary
Final Lesson Questions
1) Create a program using the Branch
command that will take a value from 0 to
3 and convert that to 0, 21, 22, and 23,
respectively, into a variable named res.
2) Create a program using the LookUp
command that will take a value from
0 to 3 and convert that to 0, 21, 22,
and 23, respectively, into a variable
named res.
3) What shortcut key is used to activate
command lists built into the edit form?
4) If you want to use the Branch com-
mand to execute various code segments
Beginners Guide to Programming: Lesson 3
SERVO 09.2007 49
FIGURE 14 FIGURE 15 FIGURE 16
FIGURE 17
FIGURE 18
FIGURE 19
FIGURE 20
Simpson3.qxd 8/8/2007 10:16 AM Page 49
based on noncontiguous values, what
other command can be used to help?
5) Create a program using both the
LookDown and Branch commands that
executes a segment of code based on
the values 100, 20, 50, 75, and 90.
6) What command must be issued
before you can start using an LCD?
7) What command is used to clear the
LCD display?
8) Create a program that flashes
your name on an LCD.
Remember, you can pick up a free
copy of the Athena compiler/simulator
at www.kronosrobotics.com. The
program installs a complete manual
and several sample programs. SV
Beginners Guide to Programming: Lesson 3
Electronic Parts & Supplies
Since 1967
Standard Features:
CAN, SPI, SCI
RS232
10-bit A-to-D
32K or 128K Flash
PWM
Input Captures
Output Compares
3V/5V Operation
Plug in th
e
p
o
w
e
r
o
f
9
S
1
2
!
Adapt9S12C
H
e
l
p
i
n
g

y
o
u

A
d
a
p
t

t
o

n
e
w

t
e
c
h
n
o
l
o
g
y
www.technologicalarts.com
C Stamp Controller
LOW COST - High Pin Count
48-Pin Module with Analog
High Speed, Large Memory
Professional SW Dev. Tools
Easy to Connect Accessories
Free Expert Technical Support
www.c-stamp.com
Toll-Free: 1 (800) 985-AWIT
IMService
P. O. Box 1 42, New Hudson, MI 481 65
Phone: 888-451-1670
or: 248-486-3600
imsrv. com
Desktop CNC
Solutions
For the finest in robots,
parts, and services, go to
www.servomagazine.com
and click on Robo-Links.
50 SERVO 09.2007
Answers are on page 79
Simpson3.qxd 8/8/2007 4:53 PM Page 50
I
f you read
Robots Little
Helper back in the
October 06 issue of SERVO
Magazine, you may remember that
I suggested that it should be possible to
design an intelligent, autonomous
robot using a PICAXE microcontroller
as its only processing power. For
readers who didnt see that article, the
PICAXE-08M is an eight-pin microcon-
troller that has five I/O pins,
costs less than $4, and can be
easily programmed in Basic.
Its definitely the simplest and
least expensive way to get
started with microcontrollers
and robotics.
Readers who are
accustomed to building bots
with 24-pin (or even larger)
processors may be a little
skeptical about the idea of an
intelligent, autonomous robot
controlled only by an eight-pin
processor, but thats exactly
what we are going to do in
this article, so read on!
If you are new to PICAXE
programming, visit the
Revolution Education, Ltd.
website at (www.rev-ed.
co.uk/picaxe) for complete
documentation. To get
started, download their free
Programming Editor software
and the PICAXE manual (Parts
1, 2, and 3). Also take a look
at my Robots Little
Helper article for a detailed
introduction to PICAXE-08M
programming.
The robot
we are going to
construct (see Figure 1)
which I have dubbed M-bot in honor of
the PICAXE-08M is completely
autonomous (able to explore its
environment while avoiding the
inevitable obstacles), as well as intelli-
gent (exhibits phototropic behaviors).
M-bots chassis is breadboard-based,
which makes it very easy to experiment
with any circuit modifications and/or
improvements.
Once you have thoroughly
explored the possibilities and limita-
tions of the PICAXE-08M as the sole
on-board processor, it would be a
simple matter to redesign your bot
around a larger and more powerful
processor for example, the new 14M
(11 I/O pins), or the 18X (14 I/O pins)
or even the 28X (21 I/O pins). M-bots
M-BOT
M-BOT
PART 1
by Ron Hackett
ITEM DESCRIPTION PART NO. SUPPLIER
DC motors and gearbox Tamiya #70168 double gearbox www.Pololu.com
Wheels (2) Tamiya #7010 truck tire set www.Pololu.com
Ball caster Tamiya #70144 ball caster www.Pololu.com
Base (bottom) Custom laser-cut (or DIY) www.JRHackett.net
Base (top) Custom laser-cut (or DIY) www.JRHackett.net
#6-32 threaded rod (or 1-1/2 inch standoffs) Hardware store
#4-40 bolts (4) RadioShack #64-3011 www.radioshack.com
#4-40 nuts (4) RadioShack #64-3018 www.radioshack.com
9V battery RadioShack #23-875 www.radioshack.com
9V battery Connector RadioShack #270-324 www.radioshack.com
9V battery Holder RadioShack #270-326 www.radioshack.com
AA battery (4) RadioShack #23-873 www.radioshack.com
AAbattery pack holder RadioShack #270-383 www.radioshack.com
SPST toggle switch RadioShack #275-612 www.radioshack.com
SPST toggle switch RadioShack #275-324 www.radioshack.com
Breadboards (2) Pololu #0351 Breadboard www.Pololu.com
Jumper wires Pololu #0354 Jumper Wire Kit www.Pololu.com
C1 100 F (35V) elect. cap RadioShack #272-1028 www.radioshack.com
C2 10 F (35V) elect. cap RadioShack #272-1025 www.radioshack.com
IRin1, 2 IR detector Panasonic #PNA4620M www.JRHackett.net
IR-LED1, 2 IR LED Various www.JRHackett.net
LDR Light dependent resistor RadioShack #276-1657 (assorted) www.radioshack.com
R1 Resistor, 4.7K, 1/4 watt RadioShack #271-1330 www.radioshack.com
R2 Resistor, 22K, 1/4 watt RadioShack #271-1339 www.radioshack.com
R3 Resistor, 10K, 1/4 watt RadioShack #271-1335 www.radioshack.com
R4 Resistor, 220, 1/4 watt RadioShack #271-1313 www.radioshack.com
R5 Resistor, 470, 1/4 watt RadioShack #271-1317 www.radioshack.com
U1 PICAXE microcontroller PICAXE-08M www.JRHackett.net
U2 Quad NAND-gate 74HC00 www.JRHackett.net
U3 Motor driver SN754410 www.JRHackett.net
U4 LM7805 voltage regulator RadioShack #276-1770 www.radioshack.com
FIGURE 2. M-bots Parts List
FIGURE 1
SERVO 09.2007 51
Hackett1.qxd 8/8/2007 10:01 AM Page 51
52 SERVO 09.2007
chassis includes ample breadboard
space to accommodate any of these
processors, so your bot can easily grow
in complexity and sophistication.
M-bots Design
In addition to demonstrating the
feasibility of constructing an intelligent,
autonomous robot with the 08M as its
only processing power, M-bots chassis
is intended to serve as the foundation
for a variety of modifications and
improvements you may wish to add.
For this reason, the chassis includes two
DC motors that will enable you to add
additional circuitry (such as PWM speed
control) later on. In order to provide for
these improvements, M-bots design
includes an SN754410 motor controller
chip. Although we will not implement it
in this article, the SN754410 is capable
of controlling two DC motors with full
PWM speed control.
Since the 08M only has five I/O
lines, we will also use a separate logic
gate chip (the 74HC00 quad NAND
gate) to assist with the I/O tasks. If you
are unfamiliar with logic gates, take a
look at Ray Marstons series on the sub-
ject beginning in the April 07 issue of
Nuts & Volts (www.nutsvolts.com).
His article focusing on NAND and OR
gates (N&V, June 07) is especially
relevant to M-bots circuitry.
Figure 2 presents M-bots com-
plete parts list with sources. Many of
the parts can easily be purchased from
other suppliers. For convenience, I have
included RadioShack part numbers for
many parts you may already have on
hand. Most of these parts would be
significantly less expensive if purchased
online. Also, I listed 6-32 threaded rod
as an alternative to the 1-1/2 inch
standoffs I used to connect M-bots
two bases because its readily available
at hardware or hobby stores, and
considerably less expensive.
Assembling the
Double Gearbox
M-bot uses the Tamiya double
gearbox DC motor set. This unit
provides three major advantages for
M-bot: its easy to put together and
mount to the lower base, it provides a
good amount of speed and torque
with a six-volt power supply (M-bot
uses four AA batteries for this
purpose); and it can be assembled at
any one of four different gear ratios.
A small robot like M-bot could
have just as easily been driven by two
small servo motors, but DC motors
were chosen because they can provide
greater speed and power than servo
motors, and they are much more
scalable that is, the same principles
will apply to your next creation, even if
its a four foot tall, 200 pound bot!
Be careful when you purchase the
Tamiya double gearbox Tamiya also
makes a twin-motor gearbox which
looks almost identical to the double
gearbox. The only obvious difference is
that the gears of the twin-motor gear-
box are all yellow, while those of the
double gearbox are yellow and blue. Be
sure to obtain the latter, which fits
M-bots base better, and provides a
reasonable level of speed, as well. Be
sure to assemble the double gearbox
according to Tamiyas directions for
Type C, which provides a 114.7:1
gear ratio. When I first assembled my
gearbox, I chose Type-B (38.2:1 gear
ratio), and M-bot darted off so quickly
I couldnt even catch up before he
smashed into a wall!
Once you have the gearbox assem-
bled, its a simple matter to briefly
touch the leads of the six-volt battery
pack to each motors terminals to
identify which terminal on each motor
should be +6 volts and which should be
ground to produce forward motion.
You may also want to use a magic
marker to label the motor terminals
accordingly. At this point, you can also
solder four eight-inch pieces of #22
solid wire to the motor terminals you
may want to color-code these wires to
match your labeling on the motors.
Building M-bots
Chassis
Now that you have assembled and
tested the gearbox, its time to assemble
M-bots complete chassis, which consists
of two six-inch diameter circular bases.
The upper base (as you can see in Figure
3) is actually a somewhat truncated
circle. If you would like to construct
your own bases, you can make them
from 1/8-inch plywood, hardboard
(masonite), or plastic by downloading
the two full-sized bitmap files
(basetop.bmp and basebottom.bmp)
that are available on the SERVO website
(www.servomagazine.com).
Print out each one and use it as
a template for constructing M-bots
chassis. Before you begin cutting, make
sure each template is exactly six
inches in diameter. If not, adjust the
magnification of your printout until
each base is correctly sized.
If you would rather avoid all the
drilling, sanding, etc., pre-cut chassis
sets (one top and one bottom base)
are available on my website (www.
JRHackett.net). These sets are profes-
sionally laser-cut (see www.Pololu.
com) from 1/8-inch smoke gray
translucent acrylic. The bases that I
designed are only presented as one
possibility; feel free to design your own
M-bot chassis, or use one you already
M-BOT
FIGURE 3. M-bots Chassis.
Hackett1.qxd 8/8/2007 10:02 AM Page 52
M-BOT
have on hand. You could also have
your own bases custom laser-cut by
Pololu. For the purpose of this article,
the only requirement is that the chassis
includes two small DC motors and
enough breadboard space to accom-
modate M-bots circuitry.
Use the photo in Figure 4 as a
guide in assembling the bottom base.
First, using small nuts and bolts (4-40
work well), attach the Double Gearbox
to the bottom base. Next, attach the
Tamiya ball caster to the (front) under-
side of the bottom base. Insert the bolts
in a downward direction to minimize
their protrusion on the top of the base.
If you are using a base of your own
design, you will need to add a spacer
between the base and the caster to
enable the base to sit in a level posi-
tion; a suitable spacer is included in my
laser-cut set. Finally, attach the two
battery packs using Velcro strips.
Place the batteries forward enough
so that the weight distribution keeps
M-bots front down.
Breadboards
M-bots breadboards are ordinary
400 point boards (3.25 inches by 2.125
inches) that are available from Pololu,
as well as many other vendors. If you
look closely at Figure 5 which is a
photo of M-bots top base with the
breadboard assembly attached you
will see that the breadboard area con-
sists of 2-1/2 breadboards. The one-half
breadboard at the bottom of Figure 5
provides some flexibility in connecting
M-bots circuitry to the power and
motor wires from the lower base.
To make a half-breadboard, simply
cut a breadboard right down its center-
line. No embedded metal parts run
underneath the indented centerline of
a breadboard, so its a simple matter to
cut one in half. You can use a hand-
saw, hacksaw, or band saw and then
clean up the cut by sanding it smooth.
Orient the 2-1/2 breadboards in the
same direction (so that they will proper-
ly interlock when you are finished), and
remove one double power rail from
each breadboard by slicing through the
double-backed tape on the bottom
directly underneath the junction of the
main board and the double power rail.
Be sure to remove the same double
power rail (for example, the left one) on
each board. Finally, join the boards to
form one unit, as shown in Figure 5.
Attach the breadboard assembly to
the upper base by removing the back-
ing from the tape on the bottom of the
breadboards and sticking them to the
top base as per Figure 5. Be sure not to
block the long, narrow slot that is cut in
the top base; the wires from the
bottom base will be routed through this
slot to the bottom of the breadboard
unit. The two double power rails that
you removed earlier can be attached as
shown in Figure 5, so that the power
and ground lines can be easily routed to
each of the breadboards.
Next, install the two SPST switches
in the 1/4 inch holes at the rear of the
top base. Orient the switches so that
on for each switch is in the forward
position. Finally, connect the two bases
using 1-1/2 inch standoffs or two inch
pieces of 6-32 threaded rod.
Chassis Wiring
Now that M-bots chassis is fully
assembled, we are ready to begin the
chassis wiring. If you are using the type
of battery holders specified in the Parts
List (Figure 2), they each accept
two-wire assemblies that snap onto
their connectors if not, adjust the
following to suit your parts.
First, solder the positive lead from
the six-volt battery pack to one
terminal of the switch on M-bots right
side. Similarly, solder the positive lead
from the nine-volt battery to one
terminal of the switch on M-bots left
side. Be sure to leave enough slack to
allow for changing the batteries if
necessary, extend the leads with
stranded hookup wire.
Next, solder a six inch piece of #22
solid wire to the other terminal of each
switch and route it up through the slot
on the top base. (You may actually
want to solder two leads to each
switch at this point, in case you later
decide to add additional circuitry to M-
bot in the large empty space in the rear
of the bottom base the extra power
connections could just be taped off
and tucked somewhere convenient for
possible use later.) Insert the end of the
wire from the nine-volt battery near the
SERVO 09.2007 53
FIGURE 4. Assembled
Bottom Base.
FIGURE 5. Assembled
Top Base.
Hackett1.qxd 8/8/2007 10:04 AM Page 53
left side of the bottom edge of M-bots
breadboard assembly. Leave a small
amount of slack in the wire in case you
want to reposition it later.
Follow the same procedure to
connect the positive lead from the
six-volt battery pack to the right side of
the bottom edge of the breadboard
assembly, again leaving a little slack.
Finally, connect the two ground
leads from the battery packs together;
solder them to a six inch piece of #22
solid wire and insulate the junction
with heat-shrink tubing. (Again, you
may want to add an additional ground
connection for possible future use with
additional bottom-base circuitry.) Strip
about 1/4 inch of insulation from the
other end of the solid wire, route it up
through the slot in the top base, and
insert it near the positive wire from
the nine-volt battery (on the left side of
the bottom edge of the breadboard
assembly).
Power Supply
M-bots power supply is
very simple (see Figures 6
and 7). We will be using the
LM7805 voltage regulator,
which is capable of supplying
a full amp or more with an adequate
heatsink. Because M-bots motors are
powered by their own battery pack, we
dont need the heatsink, but if you
modify M-bot to include considerable
additional circuitry, you may want to
add one later on.
With the left-side switch in the off
position, follow Figures 6 and 7 to assem-
ble the regulator circuit on the far left
side of the bottom one-half breadboard.
Figure 8 presents the LM7805 pinout
use it to properly orient the chip when
you insert it into the breadboard. When I
first constructed M-bot, I used an
LM78L05 regulator (100 mA maximum
output), which is still visible in Figure 7.
After testing M-bot for a while, the
LM78L05 was getting overly warm, so I
switched to the more powerful LM7805.
At that point, I somehow managed
to insert the LM7805 backwards!
Surprisingly, none of M-bots circuitry
was damaged, even though it took me a
while to figure out what I had done.
Once the power supply circuit is
assembled, turn on the left-side switch
and use a multimeter to check for a
stable +5 volts on the output pin of the
regulator. When you are sure the circuit
is functioning properly, turn the
switch off again, and use jumper
wires to connect the ground wire
from both battery packs to the
power rail ground on the left side
of the breadboard assembly. Then,
working around the perimeter
of the breadboard area, connect
all of the ground rails together.
Be sure not to form a complete
circle, which would create a ground
loop and potential power problems
just connect each ground rail to the
next until they are all connected. If you
are unfamiliar with the phenomena of
ground loops, Google for ground
loop to obtain a wealth of information.
Similarly, connect the positive out-
put of the regulator circuit to the +5 volt
rail on the left side of the breadboard
assembly, and then connect each +5 volt
rail around the perimeter (again without
forming a complete circle). At least at
first, you may want to include an LED
and current-limiting resistor between the
+5 volt and ground rails to indicate when
power is applied to the breadboards.
Finally, you may want to include
a couple of 0.01 F decoupling capaci-
tors between the +5 volt and ground
rails to minimize voltage transients. The
separate battery pack for the motor
supply should also help considerably in
this regard. When you have completed
the power supply and power rail
wiring, flip the left-side switch to the
on position and double-check that each
of the power rails properly supplies +5
volts and ground.
Intermezzo
At this point, we have completed
the chassis assembly and power supply
wiring for M-bots breadboard area.
Next month, we will take a detailed
look at M-bots circuitry. In addition,
we will present two simple software
routines that will enable M-bot to avoid
obstacles, and to respond to visible
light levels in its environment. Finally,
we will suggest a couple of possible
modifications and improvements you
might want to consider as you carry
out your own experiments with M-bot.
Readers who feel ready to explore
some of this on their
own may want to down-
load M-bots complete
schematic diagram from
the SERVO website to
get started with M-bots
construction. SV
54 SERVO 09.2007
FIGURE 6. Power Supply
Schematic.
FIGURE 7. Assembled
Power Supply.
FIGURE 8. LM7805 Pinout.
M-BOT
You can reach Ron via email
at Ron@JRHackett.net or visit his
website at www.JRHackett.net.
Contact the Author
Hackett1.qxd 8/8/2007 10:04 AM Page 54
L
ast time, we discussed the nature of the CAN (Controller
Area Network) protocol and assembled some very
simple PIC-based CAN hardware. To accomplish the
motor control task, well add a full-bridge PWM (Pulse Width
Modulation) motor driver in the form of an Allegro A3953SB
to one of our CAN nodes. Before we add the additional
motor driver hardware, for starters, lets put some CAN
application code together and control an LED. Well use the
HI-TECH PICC-18 C compiler for this project as I have found
that particular C Compiler code is very easy to port to other
programming languages.
Definitions in a CAN
Microchip has done a great deal of the CAN coding
for us. Our CAN application firmware will draw from a
CAN code module that Microchip freely supplies on their
website. All we have to do is include the files ecan.c and
ecan.h in our application source code. The inclusion of
the ecan files allows us to easily send and receive CAN
messages using canned functions embedded within
the ecan.c file. For instance, to receive a CAN message
we simply invoke the ECANReceiveMessage function in
this manner:
if(ECANReceiveMessage(&id, data, &dataLen, &canflags))
{
// Do our work here..
}
The arguments of the ECANReceiveMessage function
include our CAN ID (id), up to eight bytes of data (data), the
actual data length (dataLen), and CAN-message-related flag
data (canflags).
Sending a CAN message is just as easy. Instead of
parsing the arguments of the function as we must do in the
ECANReceiveMessage function, we stuff in the CAN ID,
data, and data length values and use the ECANSendMessage
function to push the CAN bits out onto the CAN bus. Once
all of the data we want to send has been loaded into the
correct memory slots, we invoke the ECANSendMessage
function like this:
while(!ECANSendMessage(id, data, dataLen,
ECAN_TX_STD_FRAME));
In our CAN application, we will always transmit a
standard CAN frame. Thus, ECAN_TX_STD_FRAME will
always be present in our ECANSendMessage function calls.
The ECANSendMessage function returns a completion value
and thats what were waiting for in the ECANSendMessage
statement I just revealed to you.
Before we can use the CAN send and receive functions,
in addition to including the ecan.c and ecan.h files, we must
declare the following variables:
unsigned long id;
char data[8];
char dataLen;
ECAN_RX_MSG_FLAGS canflags;
As you have already ascertained, the variables we
declared are used by the canned send and receive
CAN message functions. While were here, lets go ahead
and define our CAN node IDs and establish the nodes
logical addresses. Heres what that looks like for our
CAN nodeA:
#define myid 0x141
#define nodeA 0x41
#define nodeB 0x42
The only change we make to the addressing definitions
in our CAN nodeB is to alter the myid value to 0x142. Recall
that CAN node addressing is done within the contents of the
CAN message. Thus, nodeA is at logical address 0x41 and
nodeB has a CAN mailbox at address 0x42. Also, remember
that the lower the CAN ID, the higher its transmit priority.
Being a Southern boy from Tennessee, I grew up with lots of canned stuff. Lets see, there were
canned peaches, canned beans, canned corn, canned okra (my favorite), and canned apples, just to
name a few of the delicacies I enjoyed as a child. The really funny thing is that canning in my
hometown of Fayetteville wasnt (and isnt today) done with metal cans. Canning is done with Mason
Jars. This month, were going to enjoy a different kind of canned delight ... CANned motor control.
CAN Networking
Southern Style
by Fr ed Eady
SERVO 09.2007 55
Eady2.qxd 8/8/2007 9:46 AM Page 55
56 SERVO 09.2007
That puts nodeA at the advantage when both nodes
attempt to transmit at the same time. Thats nice to
know, but the CAN bus wont be that busy in this simple
CAN application.
Initially, were only going to control and monitor the
status of the LED on nodeB via nodeA. So, we must also
define the LED control commands that will be embedded
within the CAN message:
#define led_off 0xA0
#define led_on 0xA1
We now have definitions for all of the elements that we
must include in our CAN messages. All that is left to do
is establish the byte ordering within a transmitted CAN
message. Heres how our CAN messages will be formatted:
CAN ID = sending nodes CAN ID
data[0] = logical address of receiving CAN node
data[1] = LED command
If we turn all of our definitions into code, we end up
with a transmission sequence that looks like this:
dataLen = 0;
id = myid;
data[0] = nodeB;
++dataLen;
data[1] = led_on;
++dataLen;
while(!ECANSendMessage(id, data, dataLen,
ECAN_TX_STD_FRAME));
The transmission sequence code I have presented here is
sending a message to nodeB telling it to turn its on-board
LED on. Note that the dataLen variable value is calculated as
we add data elements to the message.
The standardization of our CAN message transmis-
sions also forms the foundation for our CAN message
receive parsing sequence. Our CAN receive message
firmware will always look for the logical CAN node address
in the data[0] position. If the receiving CAN node sees
that the incoming CAN node address is its own, it then
parses the data[1] memory slot for the LED command.
Nothing to it.
Application in a CAN
Lets look at the nodeA and nodeB CAN applications
from the viewpoint of nodeA. Interaction with nodeA is
done via nodeAs 57600 bps RS-232 port and Tera Term
Pro. Tera Term Pro is a personal computer terminal
emulator that you can get as a free download on the
Internet. In fact, both of our CAN nodes are fitted with
57600 bps RS-232 ports. That allows us to use the same
RS-232 driver code on both nodeA and nodeB. The RS-232
driver firmware on both of our CAN nodes is interrupt-
driven. Our application uses the C printf function, which
does not utilize the CAN nodes transmit interrupt handler
code. Thus, the interrupt activity on the pair of CAN nodes
RS-232 ports is only invoked by RS-232 receive activity. To
check for an incoming RS-232 character, we simply call
the CharInQueue function. If there are any characters in
the CAN nodes RS-232 buffer, the CharInQueue function
will return a logical TRUE. Retrieving a character
from the RS-232 receive buffer is accomplished by this
simple line of code:
bytein = recvchar();
Both of our CAN nodes are also equipped with a
firmware-implemented real-time clock. The clock is fed
by the PICs Timer3 and is interrupt-driven. The real-time
clock is behind the 1 Hz flash rate of the nodeA LED.
The nodeB CAN node has the same real-time clock
capability. However, we want to control the LED on
nodeB exclusively. To gain total control of the nodeB
LED, we must disable the nodeB real-time clock timer
(Timer3) or simply comment out the LED toggle statement
in the Timer 3 interrupt handler. Just in case we
need millisecond timing windows, both of our CAN
nodes also run their Timer2 clocks on a one millisecond
interrupt interval.
The very first task that nodeA executes is to clear
the Tera Term Pro terminal window. Note that in the
code I have provided for you that we are using VT-100
commands to place our characters in the Tera Term Pro
terminal window. Using VT-100 screen formatting
commands makes easy work of putting together a nice
looking menu. To clear the Tera Term Pro window, we
simply place a call to the cls function, which consists of
this line of code:
printf(%c[2J,esc);
The %c is replaced by the escape character
(0x1B). The escape character is defined in the CAN node
source code.
FIGURE 1. Upon
power-up, nodeB sends
a status message telling
nodeA that it has
turned off the nodeB
LED. The CAN receive
code running on nodeA
adds the bottom
two lines of status
information to the
original menu display.
FIGURE 2. Looks
like nodeB doesnt
have much to say.
However, this
simple message
says it all.
Eady2.qxd 8/8/2007 9:46 AM Page 56
Once the Tera Term Pro window is clear, nodeA posts the
operator menu. Note the liberal use of VT-100 commands in
the menu function shown here:
void menu(void)
{
printf(%c[2J,esc);
printf(%c[1;1H CAN DEMO MENU Ver 07.01.07,esc);
printf(%c[4;12H 1 LED ON,esc);
printf(%c[5;12H 0 LED OFF,esc);
}
The menu code you see here is embellished when
nodeB comes online. The result is shown in Figure 1.
When nodeB initially powers up, it turns off its LED and
sends a status message to nodeA. The nodeA CAN
firmware uses this code to parse and act on the nodeB
status message:
if(ECANReceiveMessage(&id, data, &dataLen, &canflags))
{
if(data[0] == nodeA)
{
if(data[1] == led_off)
printf(%c[7;5H NODE B REPORTS LED IS OFF,esc);
if(data[1] == led_on)
printf(%c[7;5H NODE B REPORTS LED IS ON ,esc);
}
printf(%c[8;5H NODE B ID = 0x%X,esc,id);
}
Note that the value contained within the received CAN
ID variable is actually the senders CAN ID. We can use
the incoming CAN ID information to our advantage if we
want to. As you can see in Figure 1, Ive chosen to display
the senders CAN ID in the Tera Term Pro window along
with the LED status message. Meanwhile, nodeB has
posted its own Tera Term Pro message to a PC connected
to its RS-232 port. The nodeB power-up message is shown
in Figure 2.
As the LED operator, we can send two messages
from nodeA to nodeB. We can turn on the nodeB LED
by entering a 1 in the Tera Term Pro terminal emulator
window. Conversely, we turn off the nodeB LED by enter-
ing a 0 (zero). The Tera Term Pro application sends our
ASCII character command to the nodeA RS-232 port. The
nodeA RS-232 driver picks up the incoming character and
places it into the nodeA RS-232 receive buffer. The nodeA
CAN firmware is constantly scanning the RS-232 buffer
for the presence of a character. Once a valid character
is received, the nodeA CAN firmware embarks on the
transmission of a standardized command message to
nodeB. Heres the whole command code transmission code
segment:
if(CharInQueue())
{
bytein = recvchar();
switch(bytein)
{
case 1:
dataLen = 0;
id = myid;
data[0] = nodeB;
++dataLen;
data[1] = led_on;
++dataLen;
while(!ECANSendMessage(id, data, dataLen,
ECAN_TX_STD_FRAME));
break;
case 0:
dataLen = 0;
id = myid;
data[0] = nodeB;
++dataLen;
data[1] = led_off;
++dataLen;
while(!ECANSendMessage(id, data, dataLen,
ECAN_TX_STD_FRAME));
break;
}
}
Lets walk through what happens when I enter a 1 in
the nodeA Tera Term Pro terminal emulator window. The
nodeA CAN driver firmware invokes the CharInQueue
function and determines that a character is waiting in the
nodeA RS-232 receive buffer. Ive entered a 1, which is a
valid command character. The nodeA CAN firmware parses
the ASCII 1 and assembles and transmits an LED ON CAN
command message to nodeB.
Meanwhile, nodeBs CAN firmware is scanning for
incoming CAN messages. Regardless of where the
incoming CAN message originated, nodeB will post an
incoming message status banner on its Tera Term Pro
window. Since we are in a controlled simulation, we know
that I sent a valid LED ON command message to nodeB. So,
the nodeB CAN firmware will pass the data[0] parse and
take the data[1] == led_on path in the nodeB CAN driver
code that follows:
SERVO 09.2007 57
FIGURE 3. There
should be nothing
here that you cant
trace back to in the
CAN source code.
Piece of cake.
FIGURE 4. Again, you
should have no trouble in
figuring out the who-done-
its here. We are doing
simple work here with an
LED. The same code
structures we are using
to control an LED can be
applied to other more
complex applications,
as well.
Eady2.qxd 8/8/2007 9:47 AM Page 57
58 SERVO 09.2007
if(ECANReceiveMessage(&id, data, &dataLen, &flags))
{
cls();
printf(\r\nNODE B);
printf(\r\nSENDERS ID = 0x%X,id);
printf(\r\nINCOMING DATA LENGTH = %X,dataLen);
printf(\r\nINCOMING DATA = %X %X,data[0],data[1]);
if(data[0] == nodeB)
{
if(data[1] == led_off)
{
printf(\r\nLED STATUS = OFF\r\n);
led_yel = off;
id = myid;
data[0] = nodeA;
while(!ECANSendMessage(id, data, dataLen,
ECAN_TX_STD_FRAME));
}
if(data[1] == led_on)
{
printf(\r\nLED STATUS = ON\r\n);
led_yel = on;
id = myid;
data[0] = nodeA;
while(!ECANSendMessage(id, data, dataLen,
ECAN_TX_STD_FRAME));
}
}
}
Before turning on its LED, nodeB will post the Tera Term
Pro window shown in Figure 3. After illuminating its LED,
nodeB reuses the data[1] value it received from nodeA,
logically addresses nodeA, and sends a CAN status message.
The status message from nodeB is parsed and the results are
posted in the nodeA Tera Term Pro window as shown in
Figure 4.
Lets turn the LED off again. Using my PC keyboard,
I enter a 0 (zero) in the nodeA Tera Term Pro terminal
emulator window. The nodeA CharInQueue function picks
up the incoming ASCII character and the nodeA CAN
firmware parses the 0 (zero) and takes the LED OFF path. A
CAN message is dispatched to nodeB commanding it to turn
off its on-board LED. Being a good soldier, nodeB processes
the nodeA LED OFF CAN message, posts the status message
in Figure 5 to its Tera Term Pro window, turns off its LED,
and sends a status message back to nodeA. The incoming
status message from nodeB is absorbed by the nodeA
CAN driver firmware and the nodeA menu is updated as
shown in Figure 6.
That was an illuminating experience! However, youre
reading a robotics magazine and you want to turn some
motor shafts. We CAN do that too!
A CANned Motor Driver
If you compare Schematic 1 to the original CAN node
schematic from last months installment, youll see that I
have assigned some I/O pins to service the A3953 motor
driver. The actual A3953 hardware design is shown in
Schematic 2. The A3953 circuit is simple enough to allow you
to lash it up on a perfboard. For our discussion, nodeB has
the A3953 responsibility and nodeA will again act as the
motor controller operator interface.
Most of the motor magic is done by the CAN driver
firmware. We can use everything we have learned and
written to use CAN to move the motor shaft. Ive supplied a
motor truth table in macro form in the code that follows:
//*******************************************************
// MOTOR DRIVER DEFINITIONS
//*******************************************************
#define mtr_cntl LATA
#define mtr_cntl_mask 0b00000000
#define mtr_rev_brk mtr_cntl &= mtr_cntl_mask; \
mtr_cntl |= 0x02;
#define mtr_rev mtr_cntl &= mtr_cntl_mask; \
mtr_cntl |= 0x04;
#define mtr_fwd_brk mtr_cntl &= mtr_cntl_mask; \
mtr_cntl |= 0x03;
#define mtr_fwd mtr_cntl &= mtr_cntl_mask; \
mtr_cntl |= 0x05;
The mtr_cntl_mask is there to allow you to mask off
other devices you may need to connect to the PICs PORTA
I/O pins. For instance, suppose you are controlling something
with I/O pin RA3. Placing a 1 in the bit 3 position of the
mtr_cntl_mask will preserve the output state of the RA3 I/O
pin when you switch between the various motor directions
and brakings. All of the motor control macros clear the
PORTA motor control pins before logically ORing in the
desired A3953 motor control bits.
Now that weve laid out how to move the motor shaft
and how to stop it, we must assign some CAN command
aliases to the motor states. I decided to simply extend the
command logic we used to implement the LED commands
(0xA0 and 0xA1). Heres what I came up with:
#define mforward 0xA2
#define mreverse 0xA3
#define mfowardbrk 0xA4
#define mreversebrk 0xA5
The next step is to code in the nodeB CAN command
interpretation routines. Guess what? We already know how
to do that. Do these new motor control parses look familiar?
FIGURE 5. Note
the recording and
posting of the LED
OFF command byte
(0xA0) in this
screenshot.
FIGURE 6. If you were
sitting here with me, you
would see the LED on
nodeB extinguish and the
Tera Term Pro window on
nodeA refresh to display
this status message below
the menu text.
Eady2.qxd 8/8/2007 9:47 AM Page 58
+
5
V
D
C
+
5
V
D
C
R
6
3
3
0
C
A
N
_
L
C
A
N
_
H
P
G
C
R
5
3
3
0
R
S
2
3
2

C
O
N
N
E
C
T
O
R
1 3 5 7 9
2 4 6 8
1
0
1 3 5 7 9
2 4 6 8 1
0
U
1
P
I
C
1
8
F
2
6
8
5
1 2 3 4 5 7
8 9 1
0
1
1
1
2
1
3
1
4
1
5
1
6
1
7
1
8
1
9
2
0
2
1
2
2
2
3
2
4
2
5
2
6
2
7
2
8
6
M
C
L
R
/
V
p
p
R
A
0
R
A
1
R
A
2
R
A
3
R
A
5
G
N
D
O
S
C
1
O
S
C
2
R
C
0
R
C
1
R
C
2
R
C
3
R
C
4
R
C
5
R
C
6
/
T
X
R
C
7
/
R
X
G
N
D
V
C
C
R
B
0
R
B
1
C
A
N
_
T
X
C
A
N
_
R
X
R
B
4
R
B
5
P
G
C
/
R
B
6
P
G
D
/
R
B
7
R
A
4
U
3
S
P
2
3
3
A
C
P
2 1 3
2
0
1
1
1
5
1
6
1
0
1
2
5 1
8
4 1
9
6 7
8
9
1
3
1
4
1
7
T
1
I
N
T
2
I
N
R
1
O
U
T
R
2
O
U
T
C
2
+
C
2
+
C
2
-
C
2
-
V
-
T
1
O
U
T
T
2
O
U
T
R
1
I
N
R
2
I
N
G
N
D
V
C
C
C
1
+
G
N
D
C
1
-
V
+
V
-
P
G
D
R
1
1
0
K
+
C
5
1
0
u
F
M
C
L
R
U
2
M
C
P
2
5
5
1
1 4
3
2 5
6 7
8
T
X
D
R
X
D
V
D
D
G
N
D
V
R
E
F
C
A
N
L
C
A
N
H
R
S
R
2
1
0
0
R
3
1
K
R
X
B
R
A
K
E
P
G
D
T
X
_
R
S
2
3
2
T
O

C
A
N

I
C
S
P

C
O
N
N
E
C
T
O
R
1 3 5 7 9
2 4 6 8 1
0
1 3 5 7 9
2 4 6 8
1
0
P
G
C
F
W
D
/
R
E
V
N
O
T
E
S
:
X

1

-

M
U
R
A
T
A

C
S
T
L
S
1
0
M
0
G
5
3
-
B
0
R
X
_
R
S
2
3
2
+
5
V
D
C
C
A
N
-
I
C
D
2

P
R
O
G
R
A
M
M
I
N
G

D
O
N
G
L
E
+
5
V
D
C
C
4
.
1
X
1
1
0
M
H
z
T
X
D
2
O
R
G
C
1
.
1
u
F
C
3
.
1
u
F
D
1
G
R
N
T
O

M
I
C
R
O
C
H
I
P

I
C
D
2

J
F
1
1
2
3
4
5
6
E
N
A
B
L
E
C
2
.
1
u
f
M
C
L
R
I
C
S
P

C
O
N
N
E
C
T
O
R
1 3 5 7 9
2 4 6 8
1
0
1 3 5 7 9
2 4 6 8 1
0
D
3
Y
E
L
T
X
_
R
S
2
3
2
T
X
R
X
R
X
_
R
S
2
3
2
R
4
1
2
0
R
7
3
3
0
SCHEMATIC 1
SERVO 09.2007 59
Eady2.qxd 8/8/2007 9:47 AM Page 59
60 SERVO 09.2007
if(data[1] == mforward)
{
printf(\r\nMOTOR FORWARD\r\n);
mtr_fwd;
id = myid;
data[0] = nodeA;
while(!ECANSendMessage(id, data, dataLen,
ECAN_TX_STD_FRAME));
}
if(data[1] == mreverse)
{
printf(\r\nMOTOR REVERSE\r\n);
mtr_rev;
id = myid;
data[0] = nodeA;
while(!ECANSendMessage(id, data, dataLen,
ECAN_TX_STD_FRAME));
}
if(data[1] == mforwardbrk)
{
printf(\r\nBREAK ON FORWARD\r\n);
mtr_fwd_brk;
id = myid;
data[0] = nodeA;
while(!ECANSendMessage(id, data, dataLen,
ECAN_TX_STD_FRAME));
}
if(data[1] == mreversebrk)
{
printf(\r\nBREAK ON REVERSE\r\n);
mtr_rev_brk;
id = myid;
data[0] = nodeA;
while(!ECANSendMessage(id, data, dataLen,
ECAN_TX_STD_FRAME));
}
That does it for nodeB. Lets turn our CAN coding
attention to nodeA.
For consistency, Ive added the same motor driver
macros and motor drive CAN commands to the nodeA CAN
source code. The next thing we must do is modify the nodeA
CAN message status display messages. Before all we had
to report was the state of a single LED. We now have
four motor states we need to add to the status message task
list. No sweat:
if(data[0] == nodeA)
{
if(data[1] == led_off)
printf(%c[10;5H NODE B REPORTS LED IS OFF,esc);
if(data[1] == led_on)
printf(%c[10;5H NODE B REPORTS LED IS ON,esc);
if(data[1] == mforward)
printf(%c[10;5H NODE B REPORTS MOTOR FORWARD,esc);
if(data[1] == mreverse)
printf(%c[10;5H NODE B REPORTS MOTOR REVERSE,esc);
if(data[1] == mforwardbrk)
printf(%c[10;5H NODE B REPORTS MOTOR BRAKE
FORWARD,esc);
if(data[1] == mreversebrk)
printf(%c[10;5H NODE B REPORTS MOTOR BRAKE
REVERSE,esc);
}
Well never see those new status messages if we dont
add some CAN commands to send to nodeB. It only takes a
bit of cut-and-paste work to put together the additional CAN
BRAKE
FWD/REV
ENABLE
+5VDC
+5VDC
+12VDC
+5VDC
+12VDC
R10
1.00
R8
10K
C10
.01uF
R7
10K
C6
680pF
MOTOR
C8
.1uF
U4
A3953
1
2
3
4
5
6
7
8 9
10
11 12
13
14
15
16
BRAKE
REF
RC
GND
GND
VCC
PHASE
ENB VLOAD
OUTA
SENSE GND
GND
MODE
OUTB
VLOAD
C9
.1uF
R9
30K
C7
.1uF
SCHEMATIC 2
FIGURE 7. This is our
newly modified motor
driver menu that
communicates with our
CAN nodeA. Every trick
we turned with the LED
control was put to work
again in the CAN motor
driver code.
FIGURE 8. 0xA2 is the
command byte that repre-
sents MOTOR FORWARD.
Recall that we assigned
0xA2 to the motor
forward macro in
our CAN driver code.
Eady2.qxd 8/8/2007 9:48 AM Page 60
motor command sequences. Most of my problem with
this code segment was coming up with an alias command
reference for the motor brake operations. I finally settled on
S for STOP and H for HALT as forward and reverse were
immediately intuitive:
case F:
dataLen = 0;
id = myid;
data[0] = nodeB;
++dataLen;
data[1] = mforward;
++dataLen;
while(!ECANSendMessage(id, data, dataLen,
ECAN_TX_STD_FRAME));
break;
case R:
dataLen = 0;
id = myid;
data[0] = nodeB;
++dataLen;
data[1] = mreverse;
++dataLen;
while(!ECANSendMessage(id, data, dataLen,
ECAN_TX_STD_FRAME));
break;
case S:
dataLen = 0;
id = myid;
data[0] = nodeB;
++dataLen;
data[1] = mforwardbrk;
++dataLen;
while(!ECANSendMessage(id, data, dataLen,
ECAN_TX_STD_FRAME));
break;
case H:
dataLen = 0;
id = myid;
data[0] = nodeB;
++dataLen;
data[1] = mreversebrk;
++dataLen;
while(!ECANSendMessage(id, data, dataLen,
ECAN_TX_STD_FRAME));
break;
That should do it for nodeA. Lets hook everything
together and perform a smoke test.
Using my HI-TECH PICC-18 C Compiler, I compiled the new
motor driver CAN application code for both nodes and loaded
them up with their respective hex files using a Microchip
MPLAB ICD2. I then connected nodeA to COM2 of my laptop.
I opened up a second Tera Term Pro session and connected the
nodeB RS-232 port to my laptops COM1. When I powered up
nodeA, I got the menu with my motor command additions on
the COM2 Tera Term Pro terminal emulator window. Powering
up nodeB sent the LED is off message and gave me the new
modified menu in a manner similar to Figure 1.
Since were on the march with our CAN application, I
decided to enter F as my first test command. I was very
pleased to see the result you see in Figure 7. In the
meantime, nodeB was doing its thing, as well. Figure 8 was
nodeBs response to the motor forward CAN message it
received from nodeA. Everything worked as designed. We
can now control both the nodeB LED and the A3953 motor
controller that nodeB is driving.
You CAN Do It
If the CAN bus is good enough for your Mercedes, its
good enough for your robot. I had a ton of fun rattling
around in the CAN and I think you will too. If you were in
the CAN with me last month, youve got enough CAN
knowledge under your belt to take the base CAN concepts Ive
presented and apply CAN to your own robotic application.
Im trying to round up some really slick miniature linear
actuators for our next meeting. If I get my hot little hands on
them before we talk again, well stick them in a CAN. SV
HI-TECH Software (www.htsoft.com) HI-TECH PICC-18
C Compiler
Allegro Microsystems (www.allegromicro.com)
Allegro A3953SB
Microchip (www.microchip.com) PIC18F2685; ECAN
Source Code Modules; MPLAB ICD2
SOURCES
SERVO 09.2007 61
Eady2.qxd 8/8/2007 9:49 AM Page 61
62 SERVO 09.2007
T
his years event was held June
13th through the 17th in San
Francisco, CA. The venue was
the Festival Pavilion at Fort Mason, a
beautifully restored former United
States Army facility, right on the shore
of the bay opposite Alcatraz island.
Some of a former inmates friends
are still around!). The piers and large
buildings which had seen major activity
during the Second World and the
Korean Wars would now house a
much more benign but still fiercely
competitive contest.
Fort Mason is a brisk walk (or short
drive!) from the hotels and restaurants
of Lombard Street so it is possible to
stay nearby and avoid the slow traffic
in San Franciscos narrow streets. If you
got to the venue early, there was no
problem in parking and it is also well
served by public transport.
RoboGames covers just about the
whole gamut of Robotic competition,
from Art Robots, through autonomous
fire fighting and soccer bots right up
to huge 340 lb combat robots fighting
it out in a steel and polycarbonate
arena. Full details of all the classes
and future events can be found at
www.robogames.net.
Wednesday and Thursday were
principally set up days. The large arena
for the combat robots was being
assembled (Figure 1), the various
sized soccer pitches laid out, and the
competitors going through safety
inspections and testing their robots
(and as usual, some still building).
Teams had traveled from all over
the world, with strong contingents
from Brazil, China, Taiwan, Japan,
Australia, Singapore, and the United
Kingdom, plus smaller numbers from
many other countries. The scene of the
combat pits on Thursday afternoon
(Figure 2) was typical of the activity in
all areas of the Pavilion.
The competitions really got going
on Friday. The big crowd pleaser was
as usual the combat robots but
there was plenty of interest in all the
different displays and contests.
The small combat bots (up to
Beetleweights) were fought in a small
(a bit too small perhaps?) separate
arena, while the Hobbyweights (12 lbs)
all the way up to the Super
Heavyweights (340 lbs) were in the big
arena (next year, they will have an even
bigger and better one!). Highlights
included Super Heavyweight The
Judge hitting the ceiling during a
memorable fight against the Uber-
Flipper Ziggy, Heavyweight Spinner
MegaByte reducing The Red Baron
to splinters (Figure 3) during a rumble,
and Middleweight Sub Zero throwing
the big spinner Mortician to the roof
and disemboweling it at the same time.
There was an almost endless series
of excellent fights with most of the
worlds top bots meeting each other
in titanic clashes. Large crowds filled
the bleachers and overflowed onto
every available vantage point,
especially when the big spinners were
in the arena.
The Brazilian Team RioBotz (www.
riobotz.com.br; Figure 4) did particu-
larly well, taking two first places. Their
enthusiasm and spirit win or lose
was outstanding. The sport is rapidly
growing in Brazil and if their current
bots are anything to go by, they will be
the team to beat next year.
The 12-lber Surgical Strike (Figure
5), that was featured in the Going
Brushless article in the July issue of
SERVO, won first place in its class. The
new motor was a big improvement and
most its matches ended in knockouts.
The Federation of International
Robosoccer Association (FIRA) (www.
fira.net) held its 12th FIRA RoboWorld
Cup at RoboGames. There are seven
different classes but the ones that
really caught my eye were the MIRoSot
11:11 and the similar 5:5.
There are 11 small robots (the size
of a 3 cube) on each side and they play
fully autonomous games of soccer. Each
bot has a unique color pattern on its
topside and an overhead video camera
is used to determine the position and
orientation of each bot. Each team uses
high powered computers to scan the
image, and control via a RC link its
bots in order to score goals (Figure 6).
Its amazing how well this all works. The
bots show remarkable agility, speed,
and precision, and make a fine demon-
stration of optical recognition, comput-
er power, and high speed RC links.
Robosoccer is dominated at present
by teams from Singapore, Korea,
Taiwan, and China with the sole excep-
tion of the KheperaSot class of fully
autonomous bots, where teams from
Germany took the first three places.
The results for this and other
classes that competed at RoboGames
can be found online at http://robo
RoboGames 2007
by Pet e Smi t h
The Guinness Book of World Records list RoboGames as the Worlds
largest open robot competition. I dont know if that is true, but its
certainly the largest and most diverse that I have ever attended.
Smith.qxd 8/8/2007 1:24 PM Page 62
SERVO 09.2007 63
FIGURE 1
FIGURE 2
FIGURE 3
FIGURE 4
FIGURE 5
FIGURE 6
FIGURE 7
FIGURE 8
Smith.qxd 8/8/2007 1:25 PM Page 63
64 SERVO 09.2007
FIGURE 9
FIGURE 10
FIGURE 11
FIGURE 12
FIGURE 13
FIGURE 14
FIGURE 15
FIGURE 16
Smith.qxd 8/8/2007 1:26 PM Page 64
games.net/2007.php.
Humanoid and Robo-One/Android
bots took part in many different
competitions. Some of these bots were
fully autonomous while others were
under radio control. An example of an
autonomous challenge was the
Humanoid Obstacle run where a
walking robot has to navigate its way
through a number of obstacles (Figure
7). This appeared to be a pretty tough
task with most having great difficulty in
completing it.
The bots in the Penalty Kick
(Figure 8) and Kung Fu are partially
radio controlled and were much more
agile. The mechanicals of these type of
robots are advancing rapidly, but the
sensors and on-board processing
power have a way to go to catch up.
The fire fighting robots were also
fun to watch (www.trincoll.edu/
events/robot/). The robot starts out
in a random location in a house-like
maze (Figure 9) and then has to find
and blow out a candle that is random-
ly positioned in another room. Extra
points can be gained for speed and if
further challenges like stairs are insert-
ed. Likewise, points are lost if the bot
touches a wall. The bots are fully
autonomous and use multiple sensors
and have a lot more space for the high
speed processors than their bipedal
counterparts.
A new offshoot from the combat
robots is Bot Hockey (www.bothock
ey.com). In this sport, two teams of
three radio controlled bots (Figure 10)
battle it out to score goals in a simple
arena (Figure 11). The games end up
very much like their NHL counterparts
with a lot of pushing and shoving and
an occasional violent slamming of the
opponents into the walls. The games
quickly drew crowds, who soon got
caught up in the fast paced action.
Former Battlebots heavyweight
Champion, Carlo Bertocchini, demon-
strated a couple of his new RoBoxers
(www.roboxers.com). These are 3/4
life-size Humanoid figures carried on a
radio controlled wheeled platform
(Figure 12). They can bend at the waist
and throw punches with either arm.
Sensors mounted on the robots body
and head record hits and the bot that
gets the most hits wins the round.
James Hyneman of the TV show
Mythbusters (seen here with Carlo,
Figure 13) controlled one of the bots in
a fight in the arena.
Audience reception was mixed as
it was difficult to tell when a hit was
scored, but the idea definitely has
potential.
There were other attractions at the
show including a number of Art bots
which featured a pretty scary looking
metal dinosaur (Figure 14), a giant
squid, and a well equipped (if somewhat
under-dressed) robot gunslinger! (Figure
15). Bar tender robots were in action up
on the mezzanine as was a robotic drum
set (my son who takes percussion at
school says it was pretty good) and an
eclectic collection of mechanisms and
displays with a robotic theme.
On the Pavilion floor, you could
meet R2D2, an Imperial Stormtrooper,
and a very cool robot called Hotshot
(Figure 16) who went around talking to
people. There must have been a person
operating it, but I never spotted
him/her.
I havent covered all the robots and
contests at the show as it would
take more than one visit to cover
everything, especially if you are
competing as well. The good things
were a broad range of robot types,
surely enough to cover all interests! A
great venue, lovely weather (mid 70s-
80s) and for me the biggest, best,
combat show in the USA.
Bad things? Well, the catering was
poor (luckily, there is a supermarket
just outside Fort Mason that did
reasonable carry out food); there was a
lack of information posted as to what
was going to happen when and where;
and finally, a badly handled (in my
opinion), last minute, change of rules
caused quite a bit of ill feeling with
some of the combat builders.
Overall, a great event and one that
with a little attention to detail will be
near perfect! SV
RoboGames 2007
SERVO 09.2007 65
340 lbs Canada Ziggy USA The Judge USA Vladiator
220 lbs USA Sewer Snake USA Last Rites USA Original Sin
120 lbs Brazil Touro USA Pipe Wench USA SubZero
60 lbs Brazil Touro Light USA K2 Canada Texas HEAT
30 lbs USA Totally Offensive USA Proteus USA Whammo
12 lbs USA Surgical Strike USA AlphaQ jr. USA Bullet
3 lbs USA Dark Pummeler USA Itsa? USA Gutter Monkey
1 lb USA Dark Pounder USA Dark Blade USA Revert
1 lb (Auto) USA Thinkling UK Spider UK Chopper
5.3 oz USA Micro Drive USA Dark Bullit Mexico Skeet Skeet
RESULTS FOR THE COMBAT ROBOTS:
Smith.qxd 8/8/2007 1:27 PM Page 65
Founding Sponsor
Gold Sponsors
Corporate Sponsors & Exhibitors
Breakfast Keynote Sponsors
Media Co-Sponsors
Analysts, Association
& Academic Co-Sponsors
Produced by:
The International Technical Design and Development Event
for the Personal, Service and Mobile Electronics Industry
October 25 - 26, 2007
San Jose McEnery Convention Ctr
San Jose, CA
Register by Sept. 14 and SAVE $200.
The RoboDevelopment Conference & Exposition is the industrys first
event focused on the technical design and development of commercial
robotic products.
This unique and unprecedented event will draw over 1,000 robotics industry
personnel from across the globe and will feature:
Comprehensive Conference Program covering the most critical industry topics
including Design, Development and Standards, Tools and Platforms, and
Enabling Technology
Over 40 leading industry speakers
Keynote presentations by Tandy Trower, General Manager, Microsoft Robotics
Group; Paolo Pirjanian, President and CEO, Evolution Robotics;
Lloyd Spencer, CEO, Coroware; and Dan Kara, President, Robotics Trends
A packed Expo Floor offering hands on access to the latest design and
development solutions for producing robots and robotic technology
Great networking opportunities, special events and much more
REGISTER TODAY AT
www.robodevelopment.com
or call 800-305-0634
www.robodevelopment.com Conference Sponsors include:
Full Page.qxd 8/8/2007 8:10 PM Page 66
he most epic of robotics contests
is looming in the near future.
Driverless vehicles racing through
unforgiving landscapes for millions of
dollars in prize money certainly fits the
description of an epic event, and with
the first Grand Challenge of racing
through the desert tackled by teams in
2004 and 2005, the folks at DARPA
have come up with an even more
devious challenge.
The Grand Challenge race of 2007
will pit the vehicles against an urban
landscape, complete with other cars on
the road! We bring up the Grand
Challenge not only because of its awe-
inspiring coolness, but also because of
the kits we will be presenting this
month a compass module for naviga-
tion and Vex Robotics Design System
expansion kits to make some serious
new vehicles. With these parts, we
should be able to experiment with some
different designs that might help our
Vex bots tackle a wide, wild new world.
Getting Our Bearings
In our last article, we worked with
a speech recognition circuit from
Images SI, and that wasnt the only kit
of theirs that we got our hands on.
One of their other kits is an electronic
compass, and we thought it would be
a great way to point us in the right
direction for autonomous navigation.
The electronic compass kit comes
with everything you need to make a
simple direction finder. Not much at all
is required, and maybe that is the
reason why the creators did not
feel compelled to give step-by-step
instructions for its assembly. In lieu
of instructions, several pictures are
included as guides. The PCB is also clear-
ly marked, and the manageable number
of parts makes construction of the
circuit a none-too-difficult undertaking.
We have several suggestions for
tinkerers looking to tackle the compass
module from Images SI. First off, solder
the battery cap wires before the
on-off switch. We did the oppo-
site, and we ended up having to
solder in the wires on the under-
side of the board. Another tip is
that the actual compass module
is quite difficult to set in place.
It has 12 wires (four groups of
three), and they need to be
slightly bent outwards to fit in
the holes in the PCB. Even with
a lot of dexterity and some
needle nosed pliers, this is a
very difficult task. We found an easy
solution, however, that only required
some wire cutters.
We left one of the groups of wires
at their original length, and then we
cut each next group of wires slightly
shorter than the last. This allowed us to
stagger the task of getting each wire in
its respective hole, making the entire
process much more manageable.
Our last tip for tinkerers is to be
aware of the LED placement on the
board. The solder pads for the LEDs are
much too close together, making a
normal placement of the LEDs basically
impossible. We tried a combination of
bending the LEDs on either ends out-
wards and then vertically staggering
the inner LEDs, and we at least ended
THIS MONTH:
Robot vs.Wild
FINISHED COMPASS.
SERVO 09.2007 67
TwinTweaks.qxd 8/8/2007 9:33 AM Page 67
68 SERVO 09.2007
Twin Tweaks ...
up with a configuration that allowed us
to fit all of the LEDs.
The compass module is powered
by a nine-volt battery, and when it is
turned on the four LEDs will light up in
different patterns to signify different
directions. This makes the compass
module an entertaining project in and
of itself, because it can be used with
only the pieces included in the kit (with
the exception of the battery, which you
have to get yourself).
The manual goes on to specify
several techniques to save power, and
it even has good instructions for an
interface circuit. The problem with
this is that the circuit itself is fairly
complicated, and tinkerers not willing
to buy the interface kit from Images SI
will have a lot of parts to round up. The
manual also includes several programs
for the PIC microcontroller, but since
we wanted to use it on the Vex robots,
that didnt really help us.
Instead of focusing on the interface
of the compass module, we decided to
move onto the Vex robots and simply
take the experience as a mere taste of
the challenge that Grand Challenge
teams face when outfitting their vehicles
with full sensory suites. These vehicles
need much more than just compasses,
because they also need to detect
obstacles and react to vastly complicat-
ed terrain. We shudder to think at the
interface circuits that they have to craft.
Auto-bot
The Vex Robotics Design System is
a great tool to learn about and experi-
ment with robotics, even with just the
basic starter set. This set, however,
does have some limitations. Most of
them can be overcome by good old-
fashioned ingenuity, but the Vex folks
have also put out a variety of expan-
sion kits to kick-start your imagination.
We got our hands on two such kits a
gear set and an omni wheel set. With
such additions, it seemed only natural
to create a versatile Vex vehicle capable
of tackling tons of tough terrain.
The gear set most notably includes
some worm gears (for lots of torque) and
a rack set. The rack set is the vital compo-
nent for a rack and pinion steering
system that was absent from the starter
kit. To complete the bill of materials
needed for automotive steering, the kit
also comes with beveled gears and a
pumpkin to make a differential. The omni
wheel sets come with two omni wheels
each. With the new parts, we were ready
to make some all-terrain Vex vehicles.
We did plan to make more than one
vehicle, for the very reason that omni
wheels and automotive steering dont
exactly mix. If one was to put omni
wheels on the front wheels of an auto-
motive vehicle, it would be kind-of like
driving the vehicle on ice. The wheels
would turn but the vehicle would keep
moving straight ahead because of the
rollers on the omni wheels. Since we
werent really interested in any ice
capades, we planned to use the omni
wheels on a vehicle for which they
would be advantageous tank drive.
We have had some personal experi-
ence with a situation where omni
wheels could certainly have been very
helpful in the FIRST Robotics competi-
tion. In 2003, our robot MO was a robot
with tank style drive, but we had some
trouble steering it. MO had a long
wheelbase and high friction rubber
wheels, which created a lot of
scrubbing and made steering
difficult. Omni wheels could
have eliminated the scrubbing
on the back wheels and had
MO turning on a dime rather
than turning like a super-tanker.
Gearing Up
Our omni wheel tank drive
robot was quite straightfor-
ward to build. We chose to go
with a long wheelbase for the
VEX AUTOMOTIVE! VEX AUTOMOTIVE IN PROGRESS ...
VEX OMNI WHEELS. VEX GEAR SET.
TwinTweaks.qxd 8/8/2007 9:34 AM Page 68
Robot vs. Wild
intimidation factor and also to showcase
the advantages of the omni wheels. For
the power transmission, we went with a
super simple, four wheel direct drive sys-
tem. Normally, we would like to include
some sort of gear reduction for more
torque, but a direct drive is so much
simpler, and the omni wheels make the
lower torque design plenty feasible.
One of the things that makes Vex
robots such great rapid prototyping
tools is that they are so easy to build
after putting together the drive train,
we just had to fasten the microcon-
troller, transmitter, and batteries to the
frame and we were ready to roll. We
determined that one last touch
was necessary to compete with the
coolness of the automotive drive
vehicle some carbon fiber plates to
define the front end.
The automotive drive vehicle was a
much greater challenge. The rack and
pinion steering was difficult to recreate
with only Vex parts, but the new bits in
the gear set gave us a solid start. The
great thing about building an automo-
tive bot was that it would utilize two of
the unique parts from the gear set: bits
for a differential and a rack.
We thought that the differential
would be a good place to start. The
pumpkin has room for three beveled
gears, but, if you want to utilize one
shaft so both wheels turn the same
direction, you can only employ two of
the three beveled gears. The pumpkin
is also designed to rotate, and we had
to constrain that degree of freedom for
our design. That object was easily
achieved by meshing the teeth around
the pumpkin with a gear that we fixed
to be stationary. The motor drove the
back wheels by connecting to one of
the beveled gears, and we had our
fixed diff drive train.
This design more closely resembles
a racing type of differential that is
referred to as a spool type rear end
since both wheels turn exactly the
same amount all the time. A real street
car differential has the ability
through more gears to allow each
rear wheel to turn at different speeds
when necessary. This can be achieved
with this kit by utilizing two axle shafts
and the three bevel gears while having
the whole pumpkin rotate. Since we
are all about high-performance, we
used the racing design.
Rack and Roller
The back wheels were the easy
part. To recreate rack and pinion
steering with Vex parts, we had to
build pivoting mounts for the wheels
that could be slightly rotated by the
linear motion of the rack via pivot
points and kingpins. We tackled it one
bite at a time, starting with mounts for
the wheels. Those went together fairly
easily, and then we were able to see
how the robot might sit given different
placements for the wheels. With the
biggest Vex wheels available, the robot
would sit nicely parallel to the ground
with the given height of our mounts.
We moved onto the rack when we
saw how things could come together.
Rack and pinion steering works by hav-
ing a fixed pinion (a gear) drive the rack
back and forth. For our rack to move
back and forth, we had to put together
a slider, and branching off of the slider
were the pivot arms. The wheel mounts
were structurally attached to the frame
of the bot with bits called kingpins
the shafts that the wheel mounts
would rotate around.
Getting everything to come
together was a challenging undertak-
ing, but we were actually able to build
the automotive steering robot com-
pletely out of Vex parts with the minor
exception of some Nylock nuts. We
downloaded a quick Easy C program to
the robot to make sure that the
controls were as we wanted them, and
we were ready to test our creations.
The tank drive vehicle performed as
we expected. When we tried to turn
while scrubbing the normal wheels, its
performance was lackluster, but scrub-
bing the omni wheels gave us a tight
turning radius worthy of a high perform-
ance vehicle. The robot was fairly peppy
by virtue of its four wheel drive, and
even without gear reduction it hopped
over obstacles like feet with ease.
The automotive steering vehicle
drove well enough, but it did have
some trouble making tight turns while
moving forward. In reverse, it turned
like a dream, but in the forward direc-
OMNI WHEEK TANK DRIVE ROBOT. OMNI WHEEK TANK IN PROGRESS.
VEX RACK. VEX DIFFERENTIAL.
SERVO 09.2007 69
TwinTweaks.qxd 8/8/2007 9:36 AM Page 69
70 SERVO 09.2007
tion the wheels would scrub in protest
at the prospect of too tight a radius.
We wondered what the problem was,
and the answer lay in the geometry.
One of the reasons that our auto-
motive Vex vehicle had a bit of trouble
turning was that we had difficulty
replicating the Ackermann geometry of
automotive steering with the Vex parts.
Ackermann steering geometry is a
specific arrangement of the steering
linkages in an automotive vehicle
that solves one of the big problems of
automotive steering the fact that the
two front wheels need to trace different
radii throughout the course of a turn.
The solution presented in
Ackermann steering geometry simply
stipulates that you should be able to
draw two straight lines between the
steering pivot points and the steering
kingpins that intersect at the center of
the rear axle. Because of the limita-
tions of using prefabricated Vex
parts, the steering geometry of our
Vex bot was a little less than ideal,
with the pivot points positioned
too far outboard on the robot.
Another problem stemming
from our less than ideal geometry
was the fact that the front
wheels of the robot were a
bit toed in. That means the
wheels pointed inwards instead
of straightforward. In real cars,
you actually want the wheels to
be a bit toed in, but it is a delicate
balance. Thankfully our pivot
arms had a bit of adjustment in them,
and we were able to sort out that
problem without a major redesign.
Apples and Rocks
In the end, our long wheelbase
tank drive vehicle greatly benefited
from the omni wheels and was a
breeze to drive despite its often
troublesome shape. This seems to beg
the question though if omni wheels
are most useful for tank drives with
long wheelbases, then why not just
always design the drive train to have a
short wheelbase?
That would certainly fix the prob-
lem, but the truth is that a short wheel-
base might not always be an option.
Maybe the robot needs to carry a long
payload, or maybe the robot needs
to navigate an area where a short
wheelbase would not be effective. And
maybe the cool factor of omni wheels
is just too good to pass up.
Our automotive robot drove well
enough, especially gliding through
wide turns. The scrubbing during tight
turns is something that could be taken
care of with a bit of tweaking, but even
without any further redesigns the
automotive vehicle was much more
difficult to design with the Vex parts. It
was also a bit more difficult to drive,
even if only because tank style is the
more familiar configuration that we
have encountered when driving robots.
This seems to bring up another
question if tank style drive trains are
generally easier to design, build, and
drive, then why were automobiles
designed in a more difficult fashion? It
might seem like a silly question to ask,
but if Henry Ford had made a tank
drive Model T, then that would most
likely be the norm.
So why did Henry Ford choose
what we now know as automotive
steering? A quick side note here
early automotive steering systems were
a reticulating ball type. Rack and pinion
steering came along later, and is now
the norm.
There are several good answers to
this question. One looks back to the
origins of the personal automobile. The
predecessor of the automobile was the
carriage, which was drawn by horses.
Indeed, the first automobiles were
often referred to as horseless carriages.
Carriages, wagons and the like were all
essentially front wheel drive vehicles,
with the horses or oxen or whatever
livestock acting as the power source in
lieu of a mechanical engine. What we
know today as automotive steering is
simply the mechanical progression
from the horse drawn carriage.
Also, automotive steering vehicles
are advantageous in their power
transmission technique. Tank style drive
trains require at least two motors to
drive the vehicle at least one for each
side. Our Vex tank required four motors,
and while this was simple because
we used direct drive, if we wanted to
implement a gear reduction to improve
torque, it would have significantly
increased the effort of construction sim-
VEX TANK ALL DONE!
Twin Tweaks ...
VEX OUT IN THE WILD!
TwinTweaks.qxd 8/8/2007 9:37 AM Page 70
ply from the number of parts required
to replicate the reduction four times.
Conversely, automotive drive trains
really require only one motor to drive the
wheels by virtue of the differential. The
rack and pinion steering may also require
a separate power source to drive the
steering, but this belt-driven pump does
not need to be nearly as beefy as the
motor to drive the entire vehicle. Tank
style drives require at least two motors
of equal strength to drive each side.
Robot vs. Wild vs.
Robot
Both of our robots would need
some major modifications to be ready
to tackle the rough terrain of the
wilderness. The tank, unfortunately,
would likely need to lose the omni
wheels the rollers that make the
wheels omni wheels would be too
prone to jamming after picking up sand
or dirt or other hazards of the wild.
The automotive bot was off to a
good start, but to go off-roading it
would definitely need to be sealed up to
protect things like gear trains from the
elements. That sounds like a lot of work,
so whats the use of experimenting with
these drive trains on Vex robots?
The answer is that even though
Vex robots are in a totally different
arena than the super sophisticated
robots that compete in the DARPA
Grand Challenge, they are still viable
platforms for experimentation. Even
though Vex robots are vastly simpler
than DARPA bots, the same basic
principles apply to both designs.
Power transmission through a
differential abides by the same
principles whether the pumpkin is
made out of green plastic or cast iron.
And even though integrating touch
sensors with Easy C on a Vex robot is
infinitely easier than putting Lidar on
an off-road vehicle, working with
sensors and programming in the Vex
medium is still great practice.
The Vex parts are limited by their
regularly spaced holes and other
constraints on prefabricated parts, but
adjustable grooves and a hacksaw can
give tinkerers a little wiggle room. The
gear and omni wheel expansion sets
dont come with instructions, but they
are easy to implement, and they really
do open up a whole new host of
possible designs with the kit.
While the roboteers working with
Vex are certainly closer to the novice end
of the spectrum and the Grand
Challenge competitors inhabit the expert
end, experts were novices once too. The
Vex Robotics Design System is a great
learning tool, and even though super
tough off-road vehicles and intelligent
autonomy arent very plausible, a solid
foundation in the basic principles behind
even the Grand Challenge winners is.
And a solid foundation is what is
needed for the roboteers that will build
the Grand Challenge vehicles of the
future. Who knows what grand
challenges the folks at DARPA will
come up with in the years ahead. SV
SERVO 09.2007 71
Robot vs. Wild
TwinTweaks.qxd 8/8/2007 9:38 AM Page 71
72 SERVO 09.2007
I
n the 1957 sci-fi classic Kronos, a
giant robot comes down to Earth to
suck up all its energy (I could come up
with a good mother-in-law joke here,
but Ill refrain just this once!). The more
energy thrown at it, the stronger the
mechanical menace becomes. It even
soaks up the energy of an atomic blast.
So far, no one has quite perfected
a Kronos-like machine that absorbs and
stores such copious amounts of ener-
gy, but its interesting that in the 50
years since the release of this famous
B-movie, modern science has made
some remarkable Kronos-like advances.
Consider, for example, the minia-
ture one-farad capacitor. We know that
the higher the capacitance, the more
energy that can be absorbed and
retained. It used to be that in order to
build an ultra-dense capacitor on the
other of a farad or even a tenth of a
farad the capacitor would have to be
absolutely enormous. But thanks to
some ingenious construction
techniques, a one-farad capacitor is no
larger than a sugar cube rather than a
house, and is used in such things as
momentary battery backups.
Then theres the solar cell, an old
invention that keeps getting better
every year. And not to mention promis-
ing technologies under current research
and development, such as fuel cells.
Yet, despite all the advances in
new power delivery and containment
techniques, our present-day Kronos
bots largely remain battery operated.
And more to the point, most amateur
robots use the same kind of dry
cell battery thats been commercially
available for decades. When the
battery wears out, you chuck it, and
pop in a new one.
Despite the obvious landfill prob-
lems of single-use batteries, theres
also the question of expense. For
power-hungry devices such as mobile
robots, changing out their carbon-zinc
or alkaline batteries every couple of
days can be an expensive proposition.
For any serious robotics work, you
need a rechargeable battery, and with
it, a recharger and an understanding of
the limitations of these remarkable
sources of refillable power.
A Brief Introduction
to Batteries
Before looking at just rechargeable
batteries, lets take a quick look at all
of the most common battery technolo-
gies currently in use for amateur
obotics. Note that there are literally
hundreds of battery compositions, but
most of these are special-purpose,
and not the kind of thing youll be
able to easily purchase. So well just
concentrate on the readily available
commercial ones:
Carbon-zinc batteries, or flashlight
cells, represent one of the oldest of
battery technologies. They are
designed for low-current applications,
such as powering an incandescent bulb
in a flashlight. When used in a high-
current project like a mobile robot,
carbon-zinc cells become depleted very
fast, so they represent an expensive
method of powering your machine.
They can be rejuvenated to bring
back some power, but battery makers
generally frown on the practice, and
there is a danger of overheating, which
can lead to rupture (gooey mess) and
even explosion.
Alkaline batteries offer several times
the current capacity of carbon-zinc,
and among the non-rechargeable
battery types are the most popular.
They also cost more. They are well
suited in robotics applications that
dont involve heavy current consump-
tion (such as powering electronics),
and theyre also good as a convenient
stop-gap method during the develop-
ment and testing phases.
Rechargeable alkaline batteries is the
mass-merchandizing answer to the
high cost of regular alkaline batteries
used in high-demand applications. And
yes, robotics is certainly one such
application. Rechargeable alkalines are
not quite as popular today as they once
were, but you can still find them and
their special-purpose recharger at many
retailers. The batteries can be
recharged dozens or hundreds of times
before discarding.
Nickel-cadmium (or NiCd) recharge-
able batteries are an old technology,
and unfortunately, one that has caused
considerable poisoning of the environ-
ment, as cadmium is very toxic. Over
the last 10 years or so, battery makers
have been weaning consumers off
nicads, favoring instead nickel-metal
hydride (see next page).
Juicing Up Your Bot With
the Best Rechargeable Batteries
Tune in each month for a heads-up on
where to get all of your robotics
resources for the best prices!
RoboResources.qxd 8/7/2007 12:00 PM Page 72
Nickel-metal hydride (NiMH)
rechargeable batteries not only offer
better performance than NiCds, they
arent considered quite as poisonous to
the environment as NiCd cells. Today,
they are the premier choice in
rechargeable batteries. They are a bit
more expensive than most other
battery types; prices have come down
recently. As with rechargeable
alkalines, NiMH cells require a recharg-
er made for them. As luck would have
it, most of the latest rechargers will
work with rechargeable alkalines,
NiCds, and NiMHs, so a single charger
may be all you need if you want to
experiment with different battery
types. It is important that you do not
use a standard NiCd recharger with
NiMH, or vice versa.
Lithium-ion (Li-ion) cells are frequent-
ly used in the rechargeable battery
packs for laptop computers and
high-end camcorders, and other
electronic devices. These batteries are
expensive and require specialized
rechargers in fact, if you dont use
the right recharger, you could end up
so severely overheating the battery
that it violently explodes, so be
careful! On the plus side, Li-ion cells are
surprisingly lightweight for the high
level of current output they provide.
Sealed lead-acid (SLA) batteries are
much like the battery in your car,
except that the electrolyte is in gel
form, rather than a sloshy liquid of
water and acid. SLAs are sealed to
prevent most leaks, but in reality, the
battery contains pores to allow oxygen
into the cells. SLA batteries are
rechargeable using simple circuits,
and are a good choice for very high
current demands.
Polymer batteries are among the
latest in rechargeable technology. They
are used for medium- to high-current
electronics applications like cellular
phones. These batteries use lithium as
a component, but they are not quite
the same as the Lithium and Li-ion cells
mentioned above. Polymer batteries
can be manufactured with thicknesses
as small as 1 mm wafers. In this
column, well lump Li-ion and polymer
Li-ion cells together, but just know
there are differences between the two,
and if plan on using either one, that
you use the absolute correct recharger
or recharging circuit, and that you
observe all operating specifications.
Common Battery
Cell Sizes
Not long ago, all household elec-
tronics used the same small assortment
of battery cells. These came in
standard sizes, most commonly AA, C,
D, and rectangular nine-volt (in the
old days, we called these transistor bat-
teries, because they were commonly
used in small pocket transistor radios).
Table 1 shows the most standard
cell sizes, from N to D. Of these, only
N, AAA, AA, C, D, and nine-volt are
commonly available at the local retail
store. You can locate the other
fractional sizes online at various
battery specialty outlets. They are
typically used to build up battery packs
of different sizes and shapes of NiCd or
NiMH batteries.
Note that while the dimensions
of common battery sizes are largely
standardized, the weight can vary,
depending on the construction and
contents of the battery. The weight
provided in the table is representative
only for a cross-section of battery
chemistry types.
And Now a
Word About
Battery Voltage
You already know that
different kinds of batteries
produce different voltages.
Even more, different battery
technologies produce differ-
ent voltages for any given
standard size. For example,
an AA alkaline cell produces
a nominal (normal, average)
1.5 volts; for NiCd or NiMH,
the same size cell produces
1.2 volts. To confuse matters
even more, most AA-size
Li-ion cells produce 3.7 volts.
Cell voltage is especially critical
when used to create a battery pack.
Depending on the battery technology,
the combined output of a standard
four-cell AA holder may produce 4.8, 6,
or 14.8 volts. Obviously, this can have a
noticeable effect on anything you
connect to the batteries. With higher
voltages, many kinds of motors run
faster, but also hotter. An electronic
circuit may burn out if it gets too
much voltage, or may not operate if
the voltage is too low.
Forgetting about Li-ion cells for the
moment, the most common issue with
battery cell voltage is using NiCd or
NiMH rechargeables in a circuit that
was meant for alkaline batteries.
Rather than the usual six volts obtained
when using alkaline or other non-
rechargeable cells, the circuit will get
only 4.8 volts when using rechargeable
batteries. In some instances, the 1.2
volt decrease is not critical. However, in
other circuits especially those
incorporating a five-volt linear regulator
the 4.8 volts is not sufficient to
power the device. Either the electronics
fail to operate completely or work only
sporadically.
The decrease in voltage also
affects motors. The higher voltage
means more current to the motor, so
the motor exhibits additional torque.
For non-stepping motors such as
standard permanent magnet motors
used in gear motors and R/C servos
the higher voltage makes the
SERVO 09.2007 73
Cell Size Diameter (mm) Height (mm) Weight (g)
N 12.0 30.0 5
AAA 10.5 44.5 12
1/3 AA 14.0 14.0 7
1/2 AA 14.0 17.0 14
2/3 AA 14.0 28.3 14
4/5 AA 14.0 42.2 23
AA 14.0 50.0 25
A 17.0 50.0 35
1/2 C 23.0 26.0 23
C 25.2 49.2 80
D 32.2 60.0 150
Nine-volt 25.7 x 17.4 48.2 45
TABLE 1
RoboResources.qxd 8/7/2007 12:01 PM Page 73
74 SERVO 09.2007
motor turn a little faster.
When using rechargeable cells in
circuits/motors that need the full volt-
age of the standard non-rechargeable
pack, the most common solution is to
add another cell. Though a bit harder
to find, you can locate five-cell holders
that when used with 1.2 volt-per-cell
batteries provide the full six volt
output you want. Similarly, if you are
creating your own battery packs by
soldering cells end-to-end, you can
simply add a fifth cell.
When adding cells, be sure the
recharger can compensate for the high-
er voltage. Most rechargers for NiCd
and NiMH batteries especially for the
hobby radio control market are quite
forgiving in the battery voltage they are
used with. If the recharger doesnt auto-
matically adjust for the proper voltage,
you may need to manually set the volt-
age, or recharge the cells separately.
Sources
Acme Model Engineering Co.
www.acmemodel.com
Battery holders for AAA, N, AA, C,
D, and nine-volt.
Advanced Battery Systems
www.advanced-battery.com
Advanced Battery Systems sells
sealed lead acid, NiCd, NiMH, lithium,
lithium-ion, lithium polymer, and
alkaline batteries; in all traditional
sizes and capacities. Also sold are
rechargers and battery packs (custom
and stock) for cell phones, laptops,
cordless phones, and other electronic
devices.
Batteries America
www.mrnicd-ehyostco.com
Batteries (including sealed lead
acid, NiCd, NiMH) and rechargers;
single-cell and packs.
Batteries Plus
www.batteriesplus.com
US nationwide battery retail chain
sells products for retail and commercial
applications. Check the website for a
store locator.
Battery City
www.batterycity.com
Consumer-packaged batteries:
NiCds, NiMH, camcorder, and other
specialty types.
Battery Mart
www.batterymart.com
Mail order batteries, large and
small, all types (including sealed lead
acid, motorcycle, NiCd, NiMH); charg-
ers. Online sales; local stores in
Winchester, VA and Martinsburg, WV.
See their section of Robot Batteries
a selection of sealed lead acid
batteries in sizes from single cells to
large 12 volt packs.
Battery Specialties
www.batteryspecialties.com
Resellers of alkaline, NiCd, sealed
lead acid, and lithium batteries; battery
holders.
Duracell
www.duracell.com
Duracell makes batteries. Billions
of dollars worth every year. Youll buy
them at your local store or through the
mail, but the website provides some
interesting semi-technical articles in the
Technical/OEM section.
eBatts.com
www.ebatts.com
Rechargeable batteries. In single
cells or packs for camcorders, laptops,
cordless phones, and cellular phones.
Edmond Wheelchair
Repair & Supply
www.edmond-wheelchair.com
Edmond Wheelchair Repair &
Supply carries wheelchair and scooter
parts, including motors, wheels, and
batteries.
Energy Sales
www.energy-sales.com
Energy Sales is a distributor of
name brand primary and rechargeable
batteries. Locations also in Oregon
and Washington.
EnerSys
www.enersysreservepower.com
Major battery maker, with many
types of batteries, including an exten-
sive line of sealed lead acid cells.
Available in single cells (usually two
volts per), and in packs up to 24 and
48 volts. The site does not offer direct
purchasing, but there is plenty of bat-
BATTERIES AT A GLANCE
Here are the most common consumer battery technologies
Battery Volts/Cell* Application Recharge**
Carbon-zinc 1.5 Low demand, flashlights No
Alkaline 1.5
Small appliance motors and
electric circuits
No
Rechargeable
Alkaline
1.5
Substitute for non-rechargeable
variety
Yes
NiCd 1.2
Medium and high current
demand, including motors
Yes
NiMH 1.2
High current demand, including
motors
Yes
Li-ion 3.7*
High current demand, including
motors
Yes
Lithium 3
Long life, very low current
demand
No
SLA 2.0 Very high current demand Yes
Polymer 3.8
Long life, medium current
demand for electronics
Yes
*Nominal volts per cell for typical batteries of that group. Higher voltages can be
obtained by combining cells. Voltage is typical.
**Many non-rechargeable batteries can be revitalized by zapping them with volts
for a few hours. However, such batteries are not fully recharged with this method, and
are re-discharged very quickly. Battery manufacturers usually frown on the practice,
as recharging non-rechargeable batteries may overheat them, causing ruptures or a
violent explosion.
RoboResources.qxd 8/7/2007 12:01 PM Page 74
tery spec sheets and technical papers.
EVdeals
www.evdeals.com
Electric motors for bikes and
scooters; 12 to 48 volt batteries;
battery chargers.
Eveready Batteries
www.eveready.com
From the people with the
Energizer Buggy, the website has some
interesting technical information about
batteries, including an overview of bat-
tery chemistry, charge and discharge
curves, and other engineering data.
House of Batteries
www.houseofbatteries.com
House of Batteries is a distributor
and online retailer of batteries, battery
packs, and chargers. Most name
brands are carried, in common con-
sumer and industrial sizes. Not all prod-
ucts are available for online ordering.
Only Batteries
www.onlybatteries.com
Like their name says, Only
Batteries only sells batteries. All types,
all sizes. Rechargeables are a specialty.
Maha Energy Corp.
www.mahaenergy.com
Rechargeables for consumer prod-
ucts, as well as individual cells for R/C
and other applications. PowerEx brand.
Mega Batteries
www.megabatteries.com
Mega Batteries is a superstore of
rechargeable batteries. Separate cells,
packs, and rechargers.
Planet Battery
www.planetbattery.com
Batteries and battery packs. Sells
sealed lead acid battery packs in
different voltages and capacities.
Power Sonic Corp.
www.power-sonic.com
Rechargeable batteries and
rechargers. Products include: sealed
lead-acid batteries, ranging from 0.5 to
100 Ah; nickel-cadmium and nickel-
metal hydride batteries; automatic
battery chargers. The website hosts
numerous spec sheets, data sheets,
and materials safety sheets on bat-
tery technologies and compositions.
Primecell
www.primecell.com
Primecell offers replacement and
service of rechargeable batteries. All
major brands.
Rechargeable Battery
Recyling Corp
www.rbrc.org
Informational. RBRC is dedicated
to helping you recycle (rather than
throw away) your old rechargeable
batteries.
Robotic Power Solutions
www.battlepack.com
Specializing in combat robot
parts, the company sells NiCd and
NiMH battery packs, chargers, and
cobalt AstroFlight gearmotors. Their
Battlepack Kits include batteries,
wires, support bars, heat-shrink tubing,
and padding foam.
Sanyo Energy
www.sanyobatteries.net
Industrial and consumer batteries:
NiCd, NiMH, lithium, and lithium-ion.
Product specifications and technical
white papers are provided at the site.
Star Batteries
www.starbatteries.com
NiCd and NiMH rechargeables,
and rechargers.
Tadiran U.S. Battery Division
www.tadiranbat.com
Providers of lithium batteries.
Product descriptions, spec sheets,
technical briefs.
The NiCd Lady Company
www.nicdlady.com
NiCd Lady sells NiCd, NiMH,
and sealed lead acid batteries, in all
sizes. Also carries rechargers and
battery packs for cell phones and
laptop computers.
Thomas Distributing
www.nimhbattery.com
Thomas Distributing carries
batteries (specializing in NiMH) and
battery holders. Very large selection.
Also provides semi-technical back-
grounders on battery technologies.
TNR Technical
www.batterystore.com
Batteries of all types and sizes;
major manufacturers. Alkaline, NiCd,
NiMH, sealed lead acid, lithium, and
lithium-ion. In separate cells or packs
(e.g., for camcorders, cordless phones,
and laptops). Many cells available in
round and rectangular/prismatic
packages, with size and weight
specifications provided in handy cross-
reference tables.
Ultralife Batteries
www.ulbi.com
Specializing in lithium batteries;
rechargeable and non-rechargeable.
Also offers polymer batteries in
standard and custom packs.
ZapWorld.com
www.zapworld.com
ZAPWorld sells motors, batteries,
and parts for small electric vehicles,
namely bikes, ground scooters, and
aquatic scooters (as well as some off
stuff, like personal hovercrafts). Use
the stuff for your own performance
robots. SV
SERVO 09.2007 75
A number of robotics-centric and
general surplus mail order companies also
offer rechargeable batteries as part of their
lineup. Many of these are regular SERVO and
Nuts & Volts advertisers, so be sure to give
them preference for your battery buying.
All Electronics www.allelectronics.com
Circuit Specialists www.web-tronics.com
Fair Radio Sales www.fairradio.com
HSC Electronic Supply www.halted.com
Lynxmotion www.lynxmotion.com
ADDITIONAL SOURCES
FOR ROBOTICS/BATTERIES
Gordon McComb can be reached via
email at robots@robotoid.com
CONTACT THE AUTHOR
RoboResources.qxd 8/7/2007 12:01 PM Page 75
Robot Builders Sourcebook
by Gordon McComb
Fascinated by the
world of robotics but
dont know how to
tap into the incredible
amount of informa-
tion available on the
subject? Clueless as
to locating specific
information on robot-
ics? 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
youve been searching for? Turn to Robot
Builders Sourcebook a unique clearing-
house of information that will open 2,500+
new doors and spark almost as many new
ideas. $24.95
76 SERVO 09.2007
123 Robotics Experiments
for the Evil Genius
by Myke Predko
If you enjoy tinkering
in your workshop and
have a fascination for
robotics, youll have
hours of fun working
through the 123
experiments found in
this innovative project
book. More than just
an enjoyable way to
spend time, these
exciting experiments also provide a solid
grounding in robotics, electronics, and
programming. Each experiment builds on
the skills acquired in those before it so
you develop a hands-on, nuts-and-bolts
understanding of robotics from the
ground up. $25.00
Linux Robotics
by D. Jay Newman
If you want your robot
to have more brains
than microcontrollers
can deliver if you
want a truly intelligent,
high-capability robot
everything you need
is right here. Linux
Robotics gives you
step-by-step directions
for "Zeppo," a super-smart, single-board-
powered robot that can be built by any
hobbyist. You also get complete instructions
for incorporating Linux single boards into
your own unique robotic designs. No pro-
gramming experience is required. This book
includes access to all the downloadable
programs you need, plus complete training
in doing original programming. $34.95
FIRST Robots: Aim High
by Vince Wilczynski / Stephanie
Slezycki
This book looks at
30 different robot
designs all based on
the same chassis,
and provides in-
depth information
on the inspiration
and the technology
that went into build-
ing each of them.
Each robot is fea-
tured in 6-8 pages providing readers with a
solid understanding of how the robot was
conceived and built. There are sketches,
interim drawings, and process shots for each
robot. $39.95
Mechanisms and Mechanical
Devices Sourcebook
by Neil Sclater / Nicholas Chironis
The fourth edition
of this invention-
inspiring engineering
resource covers the
past, present, and
future of mechanisms
and mechanical
devices. Youll find
drawings and
descriptions of more
than 2,000 compo-
nents that have
proven themselves over time and can
be incorporated into the very latest
mechanical, electromechanical, and mecha-
tronic products and systems. Overviews of
robotics, rapid prototyping, MEMS, and
nanotechnology, along with tutorial chapters
on the basics of mechanisms and motion
control, will bring you up-to-speed quickly
on these cutting-edge topics. $89.95
We accept VISA, MC, AMEX, and DISCOVER
Prices do not include shipping and
may be subject to change.
CNC Robotics
by Geoff Williams
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
that can be customized
to suit your purposes
exactly, because you designed it. Written
by an accomplished workshop bot
designer/builder, this book gives you
everything you need. $34.95
The SERVO Store
Insectronics
by Karl Williams
This complete project
book delivers all the step-
by-step plans you need
to construct your own
six-legged insect-like
robot that walks and
actually responds to its
environment. Using
inexpensive off-the-shelf
parts hobbyists can build a better bug
and at the same time have loads of fun
honing their knowledge of mechanical
construction, programming, microcontroller
use, and artificial intelligence. $19.95
Attention Subscribers ask about your discount on prices marked with an *
N N
E E
W
!
W
!
BookstoreSept07.qxd 8/8/2007 7:12 PM Page 76
SERVO 09.2007 77
Get your very own limited-edition SERVO Magazine T-shirt. Shirts come
in sizes S, M, L, and are available in either black or white.
All shirts are 100% preshrunk cotton.
SERVO
Magazine
T-Shirts
For men and women
S
U
M
M
E
R
S
U
M
M
E
R
S
P
E
C
I
S
P
E
C
I A
L A
L
$
1
2
.9
5
!
$
1
2
.9
5
!
From HomoSapien to RoboSapien Before R2D2 there was R1D1
Take This Stuff and Hack It!
by Dave Prochnow
Transform common
household items into real-
ly cool stuff. You don't
need to be an electronics
genius to get started turn-
ing everyday items into
high-performing wonders.
With how-to guru Dave
Prochnow's step-by-step
directions and fully illustrated plans, even
beginners can hack their way to a high-tech
home, cooler toys, and less yard work.
Certain to fire your imagination and start you
plotting new, original, and even more creative
wonders you can make from ordinary house-
hold items, Take This Stuff and Hack It! is the
perfect gift for your inner inventor. $27.95
Building Robots with LEGO
Mindstorms NXT
by Mario Ferrari, Guilio Ferrari
The Ultimate Tool for
MINDSTORMS
Maniacs, the new
MINDSTORMS kit has
been updated to
include a program-
ming brick, USB cable, RJ11-like cables,
motors, and sensors. This book updates the
robotics information to be compatible with
the new set and to show how sound, sight,
touch, and distance issues are now dealt
with. $39.95
N N
E E
W
!
W
!
J
U
N
-0
7
J
U
N
-0
7
BasicX and Robotics
by Chris Odom
This book is written
around the wheeled
robot called the
Mouse. The Mouse is
manufactured by
Robodyssey Systems.
This exciting company
based in Trenton, NJ
has created an entire
fleet of high-quality,
intelligently designed
robots to satisfy the
curiosity of the hobbyist as well as the
educational needs of the classroom. Unlike
many robotic toys, the Mouse does not
operate with a remote control (although
you can program it do so!). $44.95*
Robot Builders Bonanza
Third Edition
by Gordon McComb / Myke Predko
Everybodys favorite
amateur robotics book
is bolder and better
than ever and now
features the fields
grand master Myke
Predko as the new
author! Author duo
McComb and Predko
bring their expertise
to this fully-illustrated
robotics bible to enhance the already
incomparable content on how to build
and have a universe of fun with robots.
$27.95
NEED MORE
INFO?
Go where
SERVE
goes!
The online stor The online store @ e @
www www.ser .ser v vomagazine omagazine.com .com
To order call 1-800-783-4624
BookstoreSept07.qxd 8/8/2007 7:13 PM Page 77
To order call 1-800-783-4624
Or order online www.servomagazine.com
BACK ROOM SPECIALS
The Official Robosapien
Hacker's Guide
by Dave Prochnow
The Robosapien robot
was one of the most
popular hobbyist gifts
of the 2004 holiday
season, selling approxi-
mately 1.5 million units
at major retail outlets.
The brief manual
accompanying the
robot covered only
basic movements and maneuvers the
robot's real power and potential remain
undiscovered by most owners until now!
This timely book covers all the possible
design additions, programming possibilities,
and "hacks" not found any place else.
$24.95 Sale Price $18.71
Pub date: August 17, 2005
Concise Encyclopedia
of Robotics
by Stan Gibilisco
Written by anaward-winning electronics
author, the Concise
Encyclopedia of Robotics
delivers 400 up-to-date,
easy-to-read definitions
that make even complex
concepts understandable.
Over 150 illustrations
make the information
accessible at a glance and
extensive cross-referencing
and a comprehensive bibliography facilitate
further research.
$19.95 Sale Price $11.95
Pub date: November 12, 2002
SERVO'S CUSTOM
EMBROIDERED HAT
This is one good looking hat, with its stone
washed blue cap and bright yellow/gold
stitching. There's no better way to show
everyone that you're well endowed with a
bigger - than - average brain then by proudly
displaying your affiliation with SERVO
Magazine. $ 14.95*
H-racer-and-Hydrogen-station
Recently named as one of the Best Inventions of 2006 by Time Magazine, the H-racer is now the
best selling fuel cell product in the world. The H-racer is a micro-version of what engineers and
scientists have been dreaming about for real cars: combining hydrogen with oxygen to generate
a DC current to power an electric motor. Unlike a gas-powered car engine, the only byproducts
of this electrochemical process are electricity, heat, and pure water. With the H-racer, you can
witness the power of new energy technology in the palm of your hand. Horizon has created
this unique, patented miniature fuel-cell car and hydrogen refueling station. All you need to do
is add water. Only $115.00 plus S/H
78 SERVO 09.2007
Robotics Demystified
by Edwin Wise
YOU DON'T NEED ARTIFICIAL INTELLIGENCE
TO LEARN ROBOTICS!
Now anyone with an
interest in robotics can
gain a deeper under-
standing without for-
mal training, unlimited
time, or a genius IQ. In
Robotics Demystified,
expert robot builder
and author Edwin Wise
provides an effective and totally painless
way to learn about the technologies used
to build robots!
$19.95 Sale Price $13.95
Pub Date October 20, 2004
The Day the Earth
Stood Still
An alien (Klaatu) with his
mighty robot (Gort) land
their spacecraft on Cold
War-era Earth just after
the end of World War II.
They bring an important
message to the planet
that Klaatu wishes to tell
to representatives of all
nations. Directed by: Robert Wise
Actors: Michael Rennie, Patricia Neal
Run Time: 92 minutes $14.95
Forbidden Planet:
50th Anniversary Edition
A starship crew goes to
investigate the silence of a
planets colony only to
find two survivors and a
deadly secret that one of
them has. Dr. Morbius and
his daughter Altaira have
somehow survived a
hideous monster which
roams the planet.
Directed by: Fred M. Wilcox
Run Time: 98 minutes $26.95
Blade Runner
(The Directors Cut) (1982)
In a cyberpunk vision of
the future, man has devel-
oped the technology to
create replicants, human
clones used to serve in the
colonies outside Earth but
with fixed lifespans. In Los
Angeles, 2019, Deckard is a
Blade Runner, a cop who
specializes in terminating replicants.
Directed by: Ridley Scott
Rated: R Violence $19.95
NEW! THE SERVO STORE NOW OFFERS DVDS!
With this kit, you now can see and
feel the future of energy generation
in your own hands!
BookstoreSept07.qxd 8/8/2007 7:14 PM Page 78
W
hen we originally architected
SERVO Magazine four years ago,
there were bookend columns: Mind/Iron
formed the mooring from which the vari-
ous articles in the magazine could anchor
and Appetizer which would be an unstruc-
tured opinion piece that varied in content.
I have enjoyed seeing our vision grow into
a place where people throughout the
robotics industry could share their views
and enjoin readers to new ideas, while
spurring them to act. Im taking advan-
tage of that maturity to cover a number of
topics and I hope one speaks to you.
What are you working on these
days? It doesnt matter if youre a student
in the middle of rural eastern Texas (Ive
been out there and spoken to them) or a
well paid engineer working in a metropo-
lis. You should be working on something
in your spare time! Fifteen years ago, I
earned most of my patents at Canon R&D
in southern California. My Japanese boss
would end every company meeting with
the solemn exhortation Work hard! At
first, I was somewhat taken aback at such
a statement. But I soon learned that not
only was the phrase a call to future
success in a Japanese way of thinking,
but in the culture of the producer, it was
something to be savored. Hard work =
success = future reward. Hey, thats the
whole basis of capitalism as we enjoy it
here in the USA! And guess what? We
have all the tools readily at hand.
Consider this: The demand for
self-contained subsystems will always be
present in the robotics field. This is
because there is no singularly good
robotic solution to the myriad challenges.
I remember brightly walking into PARC to
interview Mark Yim about self-configuring
robotics. Four hours later I walked out,
discouraged. Mark had told me that the
conclusion of his research was that pur-
pose-specific robots would usually be
more successful and cheaper. Part of this
was due to a trait of human nature that
requires the collection of a minimum
amount of situational information before
action is taken. That high threshold,
explained Mark, was enough to rule out
truly general-purpose robots like the self
aligning cubes (read more in the August
2004 issue of SERVO). So what we are left
with are semi-intelligent subsystems for
sensing information or expressing output
tied to a central processor by a standard-
ized interface. Think of every USB periph-
eral you have that plugs into your desktop.
Same idea. (Google Mark Yim to see
what he is up to these days at U of PA.)
I see quite a few rsums at my day job
and I usually flip to the end for the good
stuff where applicants list the bits that
dont fit in the time retarded job experience
list. I want to know what sets this person
apart from everyone else that has put in
their time at a 9-5 gig. And quite honestly,
Ill be much more interested in the 3.0 GPA
undergrad that spent a summer building
dune buggies at a local off-road shop than a
grad student that lists a bunch of profs they
worked for. If Im staffing a project to
design a recon robot that can be tossed
through a second floor window without tak-
ing any damage, knowing that you always
heat treat chromolly steel after welding
trumps a Quicksort library written in Python.
Welcome to How The World Works.
SERVO is the robotic worlds version of
YouTube. Sure, they grabbed the catchy
Broadcast Yourself moniker, but we
preceded that with the open invitation to
publish and share your work with a huge
number of people just like yourself. Are you
working on something new and interesting?
Consider writing it up for publication. At the
very least you will get paid for it, while at
the most you might get some input and
become the next Sky Dayton of robotics!
One final thought, from a great
writer and philosopher: It is the innova-
tors who carry mankind forward.
Consider your strengths and play to
them, while attending to your weakness-
es. The opportunity to learn and
contribute has never been equaled in
human history. Dont miss out refuse
to idly watch, and go innovate! SV
Time to Innovate
by Dan Danknick
(dan@teamdelta.com)
SERVO 09.2007 79
Answers from
page 50
Appetizer.qxd 8/8/2007 10:57 AM Page 79
80 SERVO 09.2007
T
he end of this past June, I read
an interesting article in Control
Engineerings Weekly News Internet
newspaper about the annual
Engelberger Robotics Awards given to
those who are the leaders and innova-
tors in the field of robotics. Joseph F.
Engelberger the awards namesake
said of the 2007 award winners, This
years award recipients have made
outstanding contributions that have
increased the use of robotics worldwide.
Their innovations and perseverance have
led to the use of robots in new ways, in
educational curriculum, and have made
it possible for companies to gain a
foothold and prosper in the global
economy they compete in. These leaders
exhibit the pioneering spirit I envisioned
for the Engelberger Robotics Awards
and I am pleased to recognize this
distinguished group of honorees on
behalf of RIA (Robotic Industries
Association) and the Industry.
The winners this year were Ms.
Bala Krishnamurthy of Aeolean Inc.
(the first female to receive the award),
David Lavery of NASA, Harvey Castner
of Edison Welding Institute, and
Martin Hgele, a department head in
Germanys Fraunhofer Institute for
Manufacturing Engineering and
Automation. Each of the four recipients
was presented the award by RIA presi-
dent Trevor Jones and RIA executive
vice president Donald Vincent.
The RIAs Robots and Vision Show
again drew thousands of people in the
many robotics industries out to
suburban Chicago near OHare Airport
to see all the new products in robotics
displayed and attend the series of con-
ferences. While the awards are typically
given to those in the field of industrial
robotics, the RIA and other organiza-
tions are taking serious notice of the
advances in service robots and allied
applications such as David Laverys work
in telerobotics for NASA. Three of the
four recipients of the award this year
are not involved in industrial robotics.
I have followed these awards for
many years and actually attended one
a dozen years or so ago. Youve got to
be cutting edge to even be
nominated. Each winner receives a
$4,000 honorarium and a medal-
lion. Since the first Engelberger
Awards in 1977, the award has
been presented to 105 individuals
from 16 countries.
What does it take to be
recognized by the whole industry
as a mover and shaker in the field
of robotics? Designing a great
robot isnt the key anymore as this
field has grown to so many sub
fields and that is what makes it so
interesting to all of us. The applications
are numerous and there are so many
fields of science and engineering
involved to make robotics a possibility.
The RIA looks at leadership in the
industry as a strong point for potential
nomination, but advancing the field
through innovative applications is also
a flag for a good nominee. Advancing
robotics education and curriculum and
basic improvement of the technologies
involved makes a person stand out in
the field. They have left their mark on
robotics and the industry said Vincent.
RIA is pleased to recognize these four
international leaders with the presti-
gious Engelberger Robotics Awards.
Below are short bios of the four
award recipients. Look at the differ-
ences of each individual and how their
fields of expertise encompass such wide
areas of todays science of robotics.
Harvey Castner
Harvey Castner is Vice President of
the Government Programs Office at the
Edison Welding Institute in Columbus,
OH and the winner in the application
category. In the early 1980s, Castner
helped develop arc welding task
applications for the first-generation
industrial robots that were used in the
manufacture of agricultural products
and heavy equipment. He joined the
Edison Welding Institute in1986 and
now directs the Government Programs
Office at the Institute. He presently
serves as Director of the Navy Joining
Center (NJC) and is responsible for the
development and administration of
a
n
d
PEOPLE OF ROBOTICS
b y T o m C a r r o l l
Joe Engelberger.
Then&Now.qxd 8/8/2007 10:59 AM Page 80
R&D programs for the US Navy,
Department of Defense. Besides the
many aspects of welding, Castner is
also involved with automated guided
vehicle technologies.
Bala Krishnamurthy
For over 25 years, Bala
Krishnamurthy has been designing and
developing various programming
languages for Unimates various robot
lines. She is the winner in the technolo-
gy development category. From the
early 80s, Ms. Krishnamurthy was a pio-
neer in the field of electric and hydraulic
industrial robots. She was responsible
for adapting the Unimation VAL
language that was originally designed
for the later series PUMA electric robot
to the earlier hydraulic Unimate robot.
She also led the software design and
development for Unimations third
generation UNIVAL controller.
Following Joe Engelberger from
Unimation to his new company
HelpMate Robotics she led the team
from the mid 80s to the mid 90s that
developed the software that allowed
completely autonomous courier robots
to navigate throughout hospitals. In
1997, Krishnamurthy founded
Aeolean, Inc., a company specializing
in the design of custom software
solutions for high-tech applications and
is the companys CEO.
She has designed systems and
software for such products as a floor
cleaning robot, a communications
system on a multi-robot platform, and
next-generation robots for a European
manufacturer. Krishnamurthy is the
first female recipient of an Engelberger
Robotics Award.
David Lavery
David Lavery is the Program
Executive for Solar System Exploration
for NASA and is the winner in the
leadership category. For a dozen years,
Lavery led NASAs Telerobotics
Technology Development Program
with responsibility for content and
direction of robotics and planetary
exploration research efforts. His
leadership of the program was crucial
to the NASA flight programs, other
government robotics
projects, and this work
helped shape the entire
robotics industry.
The Mars Sojourner
rover; a free-flying robot
camera used on the
Space Shuttle; and the
two Dante robot volcano
explorers are some of his
accomplishments. He is
also a leader in the
National Robotics
Engineering Consortium
(NREC) that was formed to transfer
robot technologies developed by NASA
into the commercial robotics industry.
Lavery is currently responsible for
two future Mars exploration rover
missions in 2008 and 2009, the Mars
Advanced Technology Program, the
NASA Astrobiology Field Laboratory,
and the design and development
oversight of the next generation of
robotic Mars exploration spacecraft.
He is also involved with the NASA
Robotics Alliance Project (RAP) to
inspire K-12 students in robotics.
Martin Hgele
Martin Hgele has led the Robot
Systems Department at the Fraunhofer
Institute for Manufacturing Engineering
and Automation IPA in Stuttgart,
Germany for 14 years. Hgele read Joe
Engelbergers 1989 book, Robots in
Service, and went on to lead the
German study on the market potentials
and challenges of service robots.
One of the service robot designs
he spent the most time on was a robot
to assist the fueling of cars in an auto-
mated gas station. The overhead robot
automatically dropped down with the
gas nozzle, located and removed the
gas cap, and carefully filled the tank
according to the customers orders. He
also worked on several generations of
mobile robots developed as museum
docents, roving in shopping centers,
and for home applications.
These efforts led the way for the
future service robot applications. He
presently leads a large-scale European
initiative for the creation of a new
family of Small and Medium-sized
Enterprise (SME)-suitable robots. He is
the winner in the education category.
The Beginning
Lets jump back a bit to the
beginning of the robotics age. Were
not going back as far as Teslas robot
boat or even to Grey Walters tortoise,
but to the beginning of the industrial
robot age and Joe Engelberger. George
Devol was the innovator and original
patent holder of a programmed article
transfer system that later became the
Unimate robot.
Devol searched out many compa-
nies to fund his hair-brained scheme
and finally was sent to a Connecticut
company Manning, Maxwell, and
Moorehead where 31-year-old
Joseph Engelberger happened to be
the chief of engineering in the aircraft
products division. They later met at a
company cocktail party in 1956 and
the rest well say is the spark that set
off flames of the robotics industry.
Joseph Engelberger became
known as the Father of Robotics, not
only for his innovative implementation
of this new industrial technology, but
for keeping the spark alive and spread-
ing robotics throughout the industry.
Taking a step backwards, George Devol
is sometimes referred to as the
Grandfather of Robotics for passing
the spark to Joe.
Service Robots
Id like to step aside from a
discussion of the growing industrial
aspects of robotics and turn towards
the service side of robotics, the
direction that Joe Engelberger has
taken himself in his later years. This is
Marvin Minsky. Rodney Brooks.
SERVO 09.2007 81
Then&Now.qxd 8/8/2007 10:59 AM Page 81
the aspect of this science that most of
us who are interested in experimental
robotics are leaning towards.
Service robotics basically covers
virtually all other types of robots,
usually mobile or teleoperated robots.
These include personal robots in the
home, unmanned aerial vehicles,
undersea ROVs (remotely operated
vehicles), teleoperated surgical robots,
battlefield robots, hot cell robots,
AGVs (automated guided vehicles),
and the many other types such as
experimenters machines.
Marvin Minsky
Marvin Minsky is one of the first
leaders in robotics who inspired my
robotics work. As a Professor of
Electrical Engineering and Computer
Science at MIT, he also is a pioneer in
robotics and telepresence. With a deep
interest in AI, he built the first randomly
wired neural network learning machine
called SNARC (Stochastic Neural-Analog
Reinforcement Computer).
His interest in Turings early work
has led to theoretical and practical
advances in artificial intelligence and
cognitive psychology. A paper he wrote
in 1963 entitled Matter, Mind, and
Models was about the problem of
making self-aware machines.
He published a book entitled The
Society of Mind in 1988 in which 270
short ideas reflect the many parts that
make up the structure of the human
mind and how it works. His ideas have
been used by many AI researchers in
developing robot thought processes.
On the mechanical side of things,
he designed and built some of the first
visual scanners and mechanical hands
with tactile sensors. In 1956, he invent-
ed the optical Confocal Scanning
Microscope that allowed very high
resolution and image quality. His ideas
have benefited many of NASAs space
exploration projects. Minsky is one of
the leading pioneers and researchers in
robot intelligence.
Rodney Brooks
One cannot get very far in the
study of robotics without reading
about Rodney Allen Brooks. Born in
1954 in Adelaide, Australia, Brooks had
already made a name for himself in the
field of robotics when I first met him at
MIT in the mid 80s.
He received degrees in pure
mathematics from the Flinders
University of South Australia and a
Ph.D. in Computer Science from
Stanford University in 1981. His title at
MIT is Panasonic Professor of Robotics,
yet his influence on the science spreads
far beyond the halls of this institution.
Having also been the director of MITs
Computer Science and Artificial
Intelligence Laboratory, he is also on
the board of iRobot Corporation a
company he helped form along with
some of his brightest students.
Brooks has focused his work on
biologically inspired robotic architec-
tures. He is concerned with both the
engineering of intelligent robots to
operate in unstructured environments
and with understanding human intelli-
gence building humanoid robot mod-
els. He has published papers and books
on autonomous robots, planetary
exploration rovers, micro-robots, robot
assembly, humanoid robots, artificial
life, computer vision and path planning,
and numerous other titles and subjects.
In 1997, he even starred as himself
in an Errol Morris film entitled Fast,
Cheap, and Out of Control, based on
the title of one of his papers. If there
ever was a robotics pioneer and
researcher who had his fingers in all
aspects of robotics and truly made a
difference in the field, it is Rod Brooks.
There are so many people who have
made their names a household word in
the robotics community. Carnegie
Mellon University has produced a host
of world-class robotics researchers. Marc
Raibert of CMUs Leg Laboratory and his
famous one-legged robot is one. Red
Whittaker and his famous autonomous
Hummers that competed in DARPAs
Grand Challenges is another. Hans
Moravec of CMUs Robotics Institute
immigrated from Austria and has done
some great research in machine vision.
Raj Reddy from India was the founder of
CMUs Robotics Institute.
CMU and MIT are not the only
educational institutes that produce
world-class robotics researchers as
Stanford University and other schools
around the world have made their
mark, but these two seem to be on the
top of the list in this country.
It is my hope that one or more
readers of SERVO Magazine will join
the list of these elite researchers and
industry leaders. There are many more
steps, leaps, and bounds to be made in
robotics before we see robots in every
home and industry. It will be you, the
readers who will make that happen.
I only covered a tiny fraction of the
noteworthy people in this field there
are so many more out there. Maybe in
a 2020 article, on the People of
Robotics, your name will be there. SV
Active Robots .............................................3
All Electronics Corp. .........................34, 50
AP Circuits/e-pcb.com ............................13
AWIT ..........................................................50
CCS ............................................................50
CrustCrawler .............................................19
Electronics123 ..........................................34
EZ PCB .......................................................61
Futurlec .....................................................50
Hitec ..........................................................21
Hobby Engineering ....................................9
Images Co. ................................................50
IMService ............................................34, 50
Jameco Robot Store ............................2, 50
Lorax Works ........................................34, 50
Lynxmotion, Inc. .......................................25
Maxbotix ...................................................50
Maximum Robotics ............................23, 50
Net Media .................................................83
Parallax, Inc. ...............................Back Cover
PCB Pool ..............................................18, 50
Pololu Robotics & Electronics ..........45, 50
Robo Development 2007 .......................66
Robotis Co. Ltd. .......................................37
RobotShop, Inc. .................................44, 50
Schmartboard.....................................34, 71
Solarbotics/HVW .......................................7
Technological Arts ...................................50
Vantec .......................................................13
Advertiser Index
82 SERVO 09.2007
Then&Now.qxd 8/8/2007 10:59 AM Page 82
Order 24 hours a day, 7 days a week
www.Jameco.com
Or call 800-831-4242 anytime
Jameco Electronics. *According to their web sites on July 23, 2007. Trademarks are the property of their respective owners.
OTHER JAMECO ADVANTAGES:
I More major passive, interconnect and electro-
mechanical brands than other distributors.
I 99% of catalog products ship the same day.
I Lowest prices guaranteed, or we pay 10%.
I Major brand names and generic equivalents
for even greater cost savings.
5
10
15
20
25
Were semi nuts
Weve got semis on the brain. Jameco offers more major brands of semiconductors than anyone
almost twice as many as these catalog distributors.* Its another Jameco advantage.
Mouser

Newark

Allied

Jameco

Atmel Semiconductor Altera Analog Devices Altera


Avago Technologies Analog Devices Atmel Semiconductor Analog Devices
Cypress Semiconductor Avago Technologies Avago Technologies Atmel Semiconductor
Diodes, Inc. Cypress Semiconductor Freescale Semiconductor Avago Technologies
Fairchild Semiconductor Fairchild Semiconductor Infineon Technologies Cypress Semiconductor
Freescale Semiconductor Freescale Semiconductor Integrated Devices Diodes, Inc.
Intersil Integrated Devices Intel Corporation Fairchild Semiconductor
Lattice Semiconductor Intel Corporation Intersil Freescale Semiconductor
Lite-On Semiconductor Intersil Lattice Semiconductor Infineon Technologies
NEC Corporation Lattice Semiconductor Maxim Integrated Devices
Sharp Microelectronics Maxim National Semiconductor Intel Corporation
ST Microelectronics National Semiconductor NXP (formerly Philips) Intersil
Texas Instruments ST Microelectronics ST Microelectronics Lattice Semiconductor
Texas Instruments Texas Instruments Linear Technology
Lite-On Semiconductor
Maxim
Micron Technology
Microsemi
National Semiconductor
NEC Corporation
NXP (formerly Philips)
Renesas Technology
Sharp Microelectronics
ST Microelectronics
Texas Instruments
Toshiba
Free shipping
on these and
79 other brands.
Call for details.
CoverInside.qxd 8/8/2007 7:50 PM Page 2
V
o
l
.

5

N
o
.

9
S
E
R
V
O
M
A
G
A
Z
I
N
E
V
E
X
A
U
T
O
M
O
T
I
V
E

B
A
S
H
B
A
L
L

C
A
N

N
E
T
W
O
R
K
I
N
G

R
O
B
O
C
U
P

M
-
B
O
T
S
e
p
t
e
m
b
e
r

2
0
0
7
0 4 74470 58285
09>
U.S. $5.50 CANADA $7.00
Cover.qxd 8/8/2007 9:33 PM Page 84

You might also like