You are on page 1of 84

0 4 74470 58285

08>
U.S. $5.50 CANADA $7.00
V
o
l
.

6

N
o
.

8
S
E
R
V
O
M
A
G
A
Z
I
N
E
D
A
R
P
A

A
T

T
H
E

G
R
A
N
D

P
R
I
X

R
C

R
O
B
O
T
I
C
S

C
P
L
D

S
E
R
V
O

D
R
I
V
E
R

V
E
X

M
O
T
O
R

P
W
M
A
u
g
u
s
t

2
0
0
8
Cover.qxd 7/9/2008 1:54 PM Page 1
Let your geek shine.
Meet Pete Lewis, lead vocalist for the band
Storytyme. Pete recently created the RS1000,
a new personal monitor system for performing
musicians. It was SparkFuns tutorials, products
and PCB service that enabled him to take his idea
to market in less than a year.
The tools are out there. Find the resources you
need to let your geek shine too.
2008 SparkFun Electronics, Inc. All rights reserved.
Hear music from Storytyme at www.storytymeband.com, or check
out Petes RS1000 at www.rockonaudio.com.
Sharing Ingenuity
W W W. S P A R K F U N. C OM
Full Page.qxd 7/9/2008 9:57 AM Page 2
a) Science
b) Technology
c) Engineering
d) Mathematics
e) All of the above
Given a choice, middle and high school students prefer robotics among science courses.
And our Classroom Lab Kits make it easier than ever to bring VEX Robotics to your
school while making your budget go farther. With standards-based curriculum available
from Intelitek, Carnegie-Mellon and Autodesk, VEX is quickly becoming the robotics
platform of choice among schools internationally. We now offer local, regional, national
and international competitions for students to test their skill and express themselves.
Visit RobotEvents.com for event information. Only one choice is clear when considering
an educational robotics platform the VEX Robotics Design System.
Studies prove what
we at VEX

already knew...
Students love Robotics.
Classroom Lab Kit
bundles start at $549
A product of Innovation First. Copyright 2008. Innovation First, Inc.
Think. Vex. Amaze. Build. Create.
VI SI T WWW.VEXROBOTI CS.COM
Full Page.qxd 7/9/2008 10:18 AM Page 3
Features
28 BUILD REPORT:
Combat Robot: $1.25 a Pound
32 PARTS IS PARTS:
Power Switches
Events
30 Results and Upcoming Competitions
30 Event Report:
Mall of America Rotunda Rumble
Robot Profile
33 Touro
06 Mind/Iron
24 Events Calendar
26 New Products
44 Robotics Showcase
66 Robo-Links
73 SERVO Webstore
81 Advertisers Index
Columns
08
Robytes
by Jeff Eckert
Stimulating Robot Tidbits
10
GeerHead
by David Geer
MAARS Robots Taking Off for War
14
Twin Tweaks Special Edition
by Bryce and Evan Woolley
Rhyme of the Modern Submariner
20
Ask Mr. Roboto
by Dennis Clark
Your Problems Solved Here
62
Robotics Resources
by Gordon McComb
Robotics via Remote Control
67
BasicBoard Robotics
by William Smith
Moving From BS1 to PIC
76
Appetizer
by John Sosoka
The Greatest Playground of All
78
Then and Now
by Tom Carroll
Robots How Weve Built Them
Over the Years
PAGE 10
PAGE 14
4 SERVO 08.2008
THE COMBAT ZONE ...
D
e
p
a
r
t
m
e
n
t
s
TOC Aug08.qxd 7/9/2008 4:04 PM Page 4
08.2008
VOL. 6 NO. 8
SERVO 08.2008 5
36 The CPLD Servo Driver
by Fred Eady
Driving hobby servos is only one
of the tricks a CPLD can perform.
In addition to turning servo rotors,
you can also use a CPLD to replace a
number of discreet logic ICs in your
next robotic design.
46 Build a PWM Circuit to
Run a Vex Motor
by John Toebes
You dont just have to use NiCad
batteries to drive a Vex motor.
49 Look Ma, No Driver!
by Jason Bardis
Autonomous DARPA vehicles take
center stage (track!) at the
Long Beach Grand Prix.
55 Build the Ultimate Robot
by Michael Simpson
If youre not afraid to part with a
little cash, this series will give you
the choice of building either a six-
or three-wheeled robot with an
onboard PC.
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 ADDITION-
AL 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 46
PAGE 28
PAGE 36
Features & Projects
TOC Aug08.qxd 7/9/2008 5:14 PM Page 5
Published Monthly By
T & L Publications, Inc.
430 Princeland Court
Corona, CA 92879-1300
(951) 371-8497
FAX (951) 371-3052
Webstore Only 1-800-783-4624
www.servomagazine.com
Subscriptions
Toll Free 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
Dennis Clark R. Steven Rainwater
Fred Eady Kevin Berry
Bryce Woolley Evan Woolley
Jason Bardis John Toebes
Michael Simpson John Sosoka
Tim Wolter Aaron Nielsen
Chad New William Smith
CIRCULATION DIRECTOR
Tracy Kerley
subscribe@servomagazine.com
MARKETING COORDINATOR
WEBSTORE
Brian Kirkpatrick
sales@servomagazine.com
WEB CONTENT
Michael Kaudze
website@servomagazine.com
PRODUCTION/GRAPHICS
Shannon Lemieux
Joe Keungmanivong
ADMINISTRATIVE ASSISTANT
Debbie Stauffacher
Copyright 2008 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.
Next Level Robotics
To an outsider looking in at
amateur robotics, it often appears
that the field hasnt evolved much in
the past few years. Certainly, there
have been evolutionary gains.
Sensors are a little smaller and
smarter, and motors and controllers
are a little more powerful and
sophisticated. Furthermore, there
have been a few advances in
microcontrollers, such as the
development of the Parallax Propeller,
and more powerful field
programmable gate arrays or FPGAs.
Despite incremental advances in
the components we use to construct
robots, the fundamental capabilities
of carpet roamers, crawlers, and
arms havent changed much. The
leading edge of low-cost robotics is
often represented by toys carried by
the major retail outlets. So whats it
going to take to get amateur robotics
to the next level? That is, to a level
that not only matches the capabilities
illustrated by commercial and
academic robotics, but that at least
hints at the capabilities we ascribe to
robots depicted in Star Wars and
Transformers?
First, a reality check. Developing
a semi-autonomous Martian rover or
a robotic prosthetic arm for a soldier
injured in Iraq takes significant
financial resources and teams of
engineers, scientists, and machinists.
So what can you do, given the
current economic environment,
to move your robot designs to the
next level?
The most fertile area in robotics
yet to be fully exploited that is within
reach of every roboticist is software
development. For example, in the
area of robot vision, there is a need
to better recognize, track, and
differentiate objects, to read facial
expressions and gestures, and in
general to make robots more
socially adaptable. If your interest is
outdoor navigation, then there is a
world of software options to explore,
from GPS-based localization to
navigation with light and RF beacons.
Means of providing robots with
the ability to maneuver through
mazes and how to best avoid
ledges and low-traction areas have
yet to be perfected.
Connected to a PC, your robotic
arm or vehicle with appropriate
sensors can become just as
sophisticated as any rover developed
by NASA. Of course, you can work
on challenges completely within a
computer using simulations. And
thats an efficient, low-cost method.
However, at some point you have to
validate your work on a real robot.
One thing Ive learned over several
years of building robots is that
unless youre working on a specific
hardware specification, youll make
more progress in shorter time if you
leave the design of the hardware
platform to someone else and focus
on the overall functionality.
For example, why spend months
designing and building an arm when
you can buy a kit from Lynxmotion
(www.lynxmotion.com) or
CrustCrawler (www.crustcrawler.
com)? Even if you have to modify an
off-the-shelf arm, youll likely still save
time and money. Ive used various
versions of the CrustCrawler arm
Mind / Iron
by Bryan Bergeron, Editor
Mind/Iron Continued
6 SERVO 08.2008
Mind-Iron Aug08.qxd 7/9/2008 8:10 PM Page 6
SERVO 08.2008 7
Wearable Sensors
Conceived at
Harvard Robotics
Lab Measure
Hand Forces
FingerTPS Put
Comfortable Tactile Sensors
at Your Fingertips ... Literally
P
ressure Profile Systems, Inc. (PPS),
had just released their innovative
new wireless FingerTPS (Finger
Tactile Pressure Sensing) system for
immediate sale worldwide. FingerTPS
sensors are soft, flexible sensors worn
on the hand that transmit accurate,
repeatable tactile force data to a PC
via wireless Bluetooth connection.
FingerTPS tactile data with
integrated video provides a complete
representation of user interaction with
tools, sports equipment, new product
designs, and medical applications.
"The FingerTPS concept was
originally funded by DARPA research
grants to capture the forces of a
skilled surgeon for developing
virtual surgical simulation
systems. After a decade of
numerous iterations, we finally
have a system that is easy to
use," said Dr. Jae Son, CEO
of PPS.
The wireless FingerTPS
system was unveiled to the
public at the IVR Industrial
Virtual Reality Expo in Tokyo,
Japan this last June. "The
wireless capability and the
simple, one-touch calibration
were the most exciting features
among attending engineers and
researchers from hundreds of
leading firms," said David Ables,
CTO of PPS.
FingerTPS was recently
featured in programming on the
National Geographic Channel
and Fox Sports Net. Episodes of
"SportScience" and "FightScience"
called on PPS and industry
experts to scientifically explain
the performance of world-class
athletes including NFL Hall of
Fame receiver Jerry Rice, NBA
sharpshooter Jason Kapono,
and Mixed Martial Arts legend
Randy Coture.
"For elite athletes like Jerry
Rice or Jason Kapono, their
hands are their livelihood, and
they readily grasped how real-time
tactile data could help evaluate
and improve their performance,"
explained Ables.
FingerTPS systems start at a mere
$4,995 for a single-hand system with
two sensors that are available in
multiple sizes in specialized shapes
for fingers, thumbs, palms, and inner
phalanges. FingerTPS systems
also include a video camera for
synchronized video input, software,
and a reference sensor for easy,
one-touch calibration.
Pressure Profile Systems, Inc., was
founded in 1996 by two graduates
from the Harvard University Robotics
Lab. Government grants and industrial
sales have enabled PPS tactile sensing
technology development for medical
devices, industrial instruments, and
consumer electronics.
For more information, visit the PPS
website at ww.pressureprofile.com.
including their latest Smart robotic arm
as the basis for many projects that rely
on the processing power of a PC. Both
CrustCrawler and Lynxmotion offer
PC-based software to control their arms,
and third party software is available,
as well.
Similarly, you neednt start your
software designs from scratch or with a
huge budget. The entry-level versions of
the various Microsoft .Net compilers and
the MS Robotics Studio can be freely
downloaded. If youre not a Microsoft
fan, there are dozens of software
options, from MatLab and Simulink
(www.mathworks.com) to open-source
compilers. If possible, leverage whats
been done before and move to the next
level more quickly and easily. Just be sure
to return the favor and post your software
to the web and consider sharing your
experience with SERVO readers.
I dont want to discourage
mechanical engineers and engineers-in-
training from tackling new hardware
designs. If you have a machine shop at
your disposal and the skill to use those
tools, then dont hesitate. Everyone has
different goals and ideas of what they
want to get out of robotics. However, if
getting to the next level quickly on a
limited budget is your focus, then you
should at least consider focusing on the
brains as opposed to the brawn of
your robots. SV
FAST FAQs
What is the maximum pressure range
that PPS sensors can reach?
PPS industrial sensors can reach pressure
ranges of up to 2,000 psi. However, currently
PPS can only guarantee factory calibration at
pressures up to 700 psi.
What is the maximum speed of the
PPS sensors?
TactArray systems have an element-to-element
scan speed of up to 10 kHz. ConTacts systems
have a continuous analog output allowing any
sampling rate, but the sensors have a
throughput of approximately 2 kHz.
Of what materials are PPS
sensors made?
PPS sensors are made from conductive cloth
(conformable), Kapton (industrial), Lycra
(stretchable) or a combination of conductive
cloth and Kapton (hybrid).
What is the smallest element size
for PPS sensors?
Element sizes in TactArray sensor arrays can
be as small as 1mm x 2 mm, however, practical
resolution is actually much greater. PPS's
pressure-sensing technology allows accurate
pressure interpolation between sensing
elements. Single-element ConTacts sensors
have been built as small as 5 mm x 5 mm.
Are PPS sensors waterproof?
PPS sensors are NOT waterproof, however,
PPS can provide removable waterproof
sheaths to protect the sensors or
complete encapsulation for more
rugged environments.
Mind-Iron Aug08.qxd 7/9/2008 1:54 PM Page 7
8 SERVO 08.2008
New Hopperbot Sets Record
Mechanical jumpers are nothing
new, but one that was unveiled at
the IEEE International Conference on
Robotics and Automation appears to
have, um, leaped ahead of its com-
petitors in terms of jump distance.
The tiny, 7 g mechanical grasshopper
can jump 1.4 m, which is said to be
10 times farther relative to its size
than any other existing jumping
robot. The little bug was developed
at the Laboratory of Intelligent
Systems at the Ecole Polytechnique
Federale de Lausanne (EPFL, www.
epfl.ch), and, according to Prof. Dario
Floreano, This biomimetic form of
jumping is unique because it allows
microrobots to travel over many types
of rough terrain where no other walk-
ing or wheeled robot could go. These
tiny jumping robots could be fitted
with solar cells to recharge between
jumps and deployed in swarms for
extended exploration of remote areas
on Earth or on other planets.
The bot mimics the way fleas,
locusts, and other pests travel by
charging two torsion springs via a
small 0.6 g pager motor and a cam.
To optimize jump performance, the
legs can be adjusted for jumping
force, take-off angle, and force profile
during the acceleration phase. An
on-board battery allows it to make up
to 320 jumps at 3 second intervals.
Microbots Self Organize
Down on the MEMS level, Duke
University (www.duke.edu)
researchers have been training micro-
bots to maneuver separately, without
any obvious guidance, and assemble
themselves into organized structures.
The devices which are basically
shaped like a spatula can display
surprisingly flexible movements. In
one experiment, two of them were
taught to pirouette to Strauss music
on a tiny dance floor. In the
accompanying photo, four of them
numbered 1, 2, 4, and 5 (no. 3
was probably somewhere being
questioned by Mike Nifong), started
at the corners of a rectangle a bit
smaller than one square mm. Next,
two species (4 and 5) docked to form
the initial stable shape, after
which the others joined to form
the final assembly.
The devices measure about
60 x 250 x 10 m and draw
power from an electrified
surface. They take steps of only
10 to 20 nm but can make up
to 20,000 movements per
second. The only speculation
about practical applications
cited the ability to move around
the interiors of laboratory-on-
a-chip devices. But theyll
probably come up with something
more provocative.
Robofish in School
Most subaquatic robots
need to communicate with
human beings from time to
time, often via communication
satellites during operation. But
the University of Washington
(www.washington.edu) is
developing fin-propelled
Robofish that can skip the
middle man and work
cooperatively with each other
until their task is complete.
Kristi Morgansen, UW assistant
professor of aeronautics and
astronautics, recently ran them in a
school of three as their first major
test, in which they were programmed
to either swim all in one direction or
all in different directions. The latter
doesnt sound like much of an
accomplishment, being essentially
what would happen if you turned
three flies loose in your living room.
But bigger things are planned. The
researchers trained some live fish to
respond to a stimulus by swimming
into a feeding area. They discovered
that you only have to train about a
third of the fish to get the entire school
to act in unison. The fish that have a
strong idea tend to dominate over those
This mechanical grasshopper can leap 27
times its body size. Photo courtesy of EPFL.
Microassembly experiment recorded via optical
microscope. Image courtesy of Duke University.
Fin-propelled Robofish (shown with
a penny) is about the size of a 10 lb
tuna. Photo courtesy of the
University of Washington.
by Jeff Eckert
Robytes
Robytes.qxd 7/8/2008 10:25 AM Page 8
that dont, according to Morgansen.
That has implications for what will
happen in a group of vehicles. Can one
vehicle make the rest of the group do
something just based on its behavior?
Like the live fish, the robotic ones
communicate with each other, in this
case using low-frequency sonar. Test
results showed that although only about
half of the transmitted communications
actually get through, the Robofish
programming allowed them to accom-
plish their task anyway. The next step
will be to let them loose in the ocean,
where they will be programmed to
trail a remote-controlled toy shark.
Ultimately, they could be dispatched
to explore caves and ice-covered
waters, track whales, map regions of
pollution, or harass baby seals.
Walk Like a Man
Most bots walk in the rigid,
clunky movements that are typical of
industrial machinery, toy robots, and
people who buy their shoes at
Wal-Mart. This differs from the much
more fluid way humans generally
move, which basically consists of
falling forward in a controlled
manner. But, in pursuit of a PhD,
researcher Daan Hobbelen of the
Delft University of Technology (TU
Delft) has developed an advanced
robot, called Flame, that
demonstrates that a robot can be
human-like, energy-efficient, and
highly stable. The overall goal is to
provide insight into how people walk,
which ultimately can be applied
to helping people with mobility
problems via improved diagnosis and
rehab. Flame employs seven motors,
a balance organ, and some propri-
etary algorithms to ensure a high
level of stability. The robot can, for
example, apply the information
provided by its balance organ to place
its feet slightly farther apart to
prevent falling. According to
Hobbelen, Flames advanced ankles
have already provided motion scientists
with advanced insight into how the
complicated joint works. For details,
visit www.dbl.tudelft.nl.
TP-Bot Wins Award
LEGOs 2008 Earth Day Building
Challenge was to create a
MINDSTORMS NXT robot that could
be used to help maintain a healthy,
sustainable environment. The
Champions Award went to Dino
Martinos TP-Bot 2008, which helps
save energy and the environment via
the efficient dispensing of toilet
paper. The bot is compatible for use
by up to five different people
(presumably not all at once), and it
includes a scanner (to which users
present an access pass and a
four-digit secret code) and a paper
dispensing system. It even monitors
how much toilet paper is left on the
roll. Cant you feel the greenhouse
gases abating already? For info on
this and others in the winners circle,
visit mindstorms.lego.com/news/.
New Hall of Fame Inductees
In case you missed it, the 2008
inductees into the Carnegie Mellon
Robot Hall of Fame (www.robothallof
fame.org) are the Raibert Hopper,
NavLab5, LEGO Mindstorms, and Lt.
Cmdr. Data. The Hopper (shown in the
photo) was developed in 1983-84 for
experiments on active balance and
dynamics in legged locomotion. Named
for its developer, Marc Raibert, the
one-legged bot could hop in place or
run at a top speed of 2.2 m/sec (4.8
mph). Congrats to all. SV
Robyt es
Robot Flame walks like a human.
Photo courtesy of TU Delft.
SERVO 08.2008 9
The award-winning TP-Bot 2008.
Photo courtesy of LEGO.
The Raibert Hopper.
Photo courtesy of MIT.
Robytes.qxd 7/8/2008 10:25 AM Page 9
10 SERVO 08.2008
I
n 2005, I covered the SWORDS
(Special Weapons Observation
Reconnaissance Direct-action
System) maneuverable military robots,
which soldiers use as scouts and
remote weapons systems in the war in
Iraq. As reported, the SWORDS iteration
of the robotic sentry is compatible
with M16s, M240s, M249s, Barrett 50
calibers, 40 mm grenade launchers, or
M202 anti-tank rocket systems.
The SWORDS have many other
features including advanced sensing.
The robots use these technologies
to locate enemy combatants, IEDs
(Improvised Explosive Devices), and
other hazards.
The SWORDS are unmanned
ground vehicles (UGVs), which means
that threats to these vehicles in their
everyday line of work dont directly
threaten the soldiers who operate
them from a safe distance via a
remote control console.
Since the Defense Authorization
Bill for Unmanned Vehicles, the armed
forces have been pressed to convert the
vast majority of ground combat vehicles
to unmanned for this very reason.
The war and the need to keep
soldiers further out of risk has
brought us to the latest evolution of
the unmanned fighter. The newly
released MAARS (Modular Advanced
Armed Robotic System) is the
offspring of the SWORDS and
the first fully modular ground
robot system capable of providing
a measured response including
nonlethal, less lethal, and even
lethal stand-off capabilities, says
a June 4th media release from
QinetiQ, owner of Foster-Miller,
which produced the robots.
If youve heard references to
SWORDS 2.0, these are the
MAARS robots. Soldiers will be
able to supplement the three
existing SWORDS robots which
are deployed in Iraq with these
robots.
The Federal government and
QinetiQ have been working on
MAARS for 18 months to deliver
a robot system that is armed,
unmanned, and controlled by the
soldiers themselves, according to
the release.
MAARS will replace SWORDS as
the core platform for building out
these kinds of systems for battlefield
tactics. Because the new MAARS
platform is standardized and modular,
it will make it affordable for the
military to have more of the robots
and to repair them more readily.
QinetiQ worked closely with the
military to ensure that the MAARS
robot would enhance the war fighters
capability and lethality, extend his
situational awareness, and provide all
these capabilities across the spectrum
of combat, says Dr. William Ribich,
President of the Technology Solutions
Group, QinetiQ North America.
By extending the capabilities of
MAARS, soldiers can save their lives
and the lives of area non-combatants
more frequently.
MAARS Mayhem
Unlike SWORDS, MAARS gives
the human operator choices for
confrontation on the battlefield. For
nonlethal confrontation, a human
operator can project their voice or a
siren through mounted speakers to a
person or crowd, or emit a green
pulsing laser light that is visually
confusing, though harmless.
When a confrontation calls for
more, soldiers use MAARS to disperse
Contact the author at geercom@alltel.net by David Geer
MAARS Robots
Taking Of f for War
SWORDS Military Robots Graduating to 2.0, MAARS Status
Here is the new MAARS robot the larger
offspring to the SWORDS robot. Four
grenade launchers, machine gun, turret,
other equipment, and tracks visible.
Geerhead.qxd 7/8/2008 10:16 AM Page 10
40 mm less lethal grenade
ammunition, bean bags, smoke, star
clusters (illumination), tear gas,
pepper spray, and M240B medium
machine gun warning shots. This
type of confrontation is purposed
against the enemy with the
weapons/guns pointed upward as if
to fire warning shots. For lethal
firepower, MAARS weapons are
pointed directly at their targets, firing
40 mm high-explosive grenades or
400 rounds of 7.62 mm shells from
the M240B medium machine gun.
Where SWORDS came with
weapons optional, MAARS come with
four grenade launchers, a machine
gun, and less lethal defenses
attached.
The MAARS robot is remote
controlled to over a kilometer away
from the operator, putting a safety
buffer between the soldier-operator
and the point of immediate contact
with the aggressor. This increases
the soldiers ability to survey the war
zone, confront the aggressor from a
distance, and survive the battle.
MAARS Mechanics
Foster-Miller constructed the
robot on a uni-body frame/chassis
with a simple, plug-and-play design
for quick assembly with new
accessories and attachments that
may become available. The uni-body
construction makes access to the
battery and electronics
easy and efficient. The
MAARS has a larger
payload bay area
than SWORDS,
higher torque for
faster travel, and
improved braking
capability. The
robots remote
control system is
user-friendly,
intuitive, and digital
for quick uptake by
military personnel.
The new Digital
Control Unit (DCU)
the remote
control device the
Here is the mighty SWORD with cameras,
machine gun, ammo case, tracks, antennae,
and identifying US flag emblem.
This Operator Control Unit (OCU) is the
SWORDs wireless remote control,
fitted with a hard-shell case. Notice
the antenna, numerous controls for
driving and manipulating the SWORD
combat robot, and the multiple split
screens for viewing everything the
robots cameras pick up.
This drawing of the SWORDS robot identifies key parts
and systems, many of which are duplicated
or enhanced on the new MAARS robot.
The real ancestor of the MAARS robot is the TALON
robot for military, police, and emergency rescue. From these,
Foster-Miller developed the SWORDS bots. The SWORDS
originally topped out at 120 lbs., though they packed a
mighty punch through the Small Mobile Weapons Systems
(SMWS) they employed.
At about $230,000 per unit, SWORDS offered front and
rear cameras with night vision, thermal vision, and wide
angle views and zoom lenses. On its rugged tank tracks and
powered by a lithium ion battery, the SWORDS can run for
four hours with a maximum velocity of 5.2 mph.
Soldiers can carry parts from the disassembled SWORDS
in their backpacks, transporting it from combat site to
combat site.
WHERE IT ALL BEGAN
SERVO 08.2008 11
GEERHEAD
Geerhead.qxd 7/8/2008 10:17 AM Page 11
operator uses offers advanced
command and control capabilities and
greater situational awareness around
the robot. The system gathers a large
array of situational feedback from the
battlegrounds.
SWORDS laid the groundwork for
sensing battle hazards with heat, gas,
chemical, and radiation sensors. These
report to the soldier wirelessly so they
know when and where its safe to
tread or what precautions to take.
MAARS also uses Blue Force
Tracking, a satellite and GPS tracking
technology that informs soldiers on
the locations of friendly forces, enemy
forces, and neutral areas.
The MAARS robot comes with
all-terrain tracks in the military style of
the old tanks. With these, it can scale
stairs. It can also use wheels to travel
more quietly on other terrain, to be
stealthier.
Field personnel can equip the
robot with a robotic arm, numerous
weapons other than those described,
and a broad range of sensors. The
robotic manipulator arm can lift about
100 lbs. By replacing the gun turret
with the arm, soldiers can readily turn
the robotic war fighter into a device for
identifying and neutralizing explosives.
MAARS can also sense its
environment via its seven multi-mode
cameras. The operators can view
action the robot views in streaming
video. The robot uses day and night
thermal vision. The robot also gauges
its location and distances using a laser
range finder. The soldier-operators
know where they are pointing the
robots weapons in relation to the
robots surroundings, other people,
and themselves because of these
cameras. At about 350 lbs., the
complete MAARS system is the largest
member of the TALON robots, larger
than the SWORDS.
Foster-Miller has already shipped
its first MAARS robot to the US
military under a contract from the
Explosive Ordnance Disposal/Low-
Intensity Conflict (EOD/LIC) program,
which is part of the Combating
Terrorism Technical Support Office
(CTTSO). This is the same program
that acquired the SWORDS robots. SV
Order 24 hours a day, 7 days a week
www.Jameco.com
Or call 800-831-4242 anytime
Exclusively at Jameco
The Lowest Prices
Guaranteed!
3 Levels of Choice
3 Levels of Savings
Save 3% to 5%
Looking to save on
thousands of Name Brand
components? Jameco
offers these popular
products for 3% to 5%
below market price, and
we guarantee it!
Save 15%-25%
Save more when a
specific manufacturer is
not required. Major Brand
semis are sourced
from 5-6 specific major
manufacturers, plus we
also offer Jameco Brand
and Generic passives for
even greater savings.
Save 30% or more!
Looking for killer deals?
Jameco buyers often find
Factory Overruns from
some of the industrys
biggest names. That
means savings of 30%
and more to you!
Other Jameco Advantages:
We offer over 300 Major Manufacturers
99%of catalog products ship the same day.
Lowest prices guaranteed, or we pay 10%.
SEMICONDUCTORS PASSIVES INTERCONNECTS ELECTROMECHANICAL POWER
12 SERVO 08.2008
GEERHEAD
Demo video MAARS robot
www.foster-miller.com/images/
Videos/MAARS_test.avi
Fox interview about Talon
(including MAARS) robots
www.myfoxboston.com/myfox/pages
/ContentDetail?contentId=6692317#
Talon_on_Fox
Foster-Miller, SWORD vendor
www.foster-miller.com
Foster-Miller robotics technologies
www.foster-miller.com/t_r_military/
relatedprojects.htm
Foster-Miller projects
www.foster-miller.com/lemming.htm
RESOURCES
Geerhead.qxd 7/8/2008 10:17 AM Page 12
SERVO 08.2008 13
Full Page.qxd 7/9/2008 10:22 AM Page 13
14 SERVO 08.2008
his month, we have the honor of
presenting the ROV-In-A-Box Kit
from !nventivity. ROV stands for
Remotely Operated Vehicle, and while
this can refer to a tethered vehicle that
tackles any sort of terrain, it very often
refers to an underwater vehicle, as was
the case with this kit. After covering
the AUVSI underwater robotics
competition in 2006, we knew that
there were competitions out there
that catered to these aquatic bots,
and we thought a competition would
be a much more exciting way of
testing the robot than surreptitiously
dunking it in the community pool. The
AUVSI competition, however, was
solely for autonomous robots, and a
remotely operated vehicle wouldnt
exactly fit into that category. After a
bit of searching, we stumbled upon
the MATE Competition an under-
water ROV competition sponsored by
the Marine Advanced Technology
Education Center. Whats more is that
the international championship was
sponsored by the Scripps Institute of
Oceanography at our very own
University of California, San Diego.
Several engineering student
organizations at UCSD are involved in
a number of design competitions, but
there was not yet a team for the MATE
event. We had the kit, the opportunity,
and the onus of the home turf advan-
tage, so we really felt that the MATE
Competition was an opportunity that
we couldnt pass up. All we had to do
now was get a team together.
Oceans Eleven and
Then Some
Evan is lucky enough to be a
part of UCSDs Tau Beta Pi chapter,
California Psi. Tau Beta Pi is the
engineering honor society and UCSDs
chapter pursues excellence in engi-
neering through outreach, academic,
and social programs. Conspicuously
missing from TBPs repertoire, though,
was a robotics team. Why a robotics
team? Because robotics is an inter-
disciplinary field that demands the
effort of engineers from every field of
study, and a robotics team would be
made up of the same cross sections of
engineers as Tau Beta Pi. By virtue of
his position as Publicity Officer, Evan
was able to organize meetings for a
robot team and soon a group of
talented engineering students had
coalesced around our ROV in a box,
and we were eager to take on the
challenge of MATE.
The ROV-in-a-box seemed like a
SPECIAL EDITION:
SPECIAL EDITION:
Rhyme of the
Modern
Submariner
THE ROV-IN-A-BOX IN THE BOX. COLTER (L) AND BRIAN (R) WORKING
ON THE FRAME.
TwinTweaks.qxd 7/8/2008 10:42 AM Page 14
great way to tackle the
challenges of the MATE
Competition. The event
demands that teams complete
three underwater missions that
are part of a scenario inspired
by mid-oceanic ridge research.
The first mission was to free an
OBS trapped mercilessly on the
ocean floor. An OBS is an
Ocean Bottom Seismometer,
and in the game scenario, it
was placed in order to gather
information on ocean floor
seismic events like underwater
eruptions and earthquakes. The good
news is that the OBS did indeed
gather the hoped for information, but
the bad news is that the OBS became
trapped in a fierce lava flow in the
process. Our first mission should we
choose to accept it would be to
free the OBS from the lava flow.
Its basically like an episode of the
Thunderbirds, but instead of sending
puppets to save the day, well be
sending in our ROV.
After freeing the helpless OBS
from the ocean floor, the second
mission was to collect three samples
of the lava flow for analysis. The final
mission was to take a temperature
reading from a hydrothermal vent.
For the competition, the OBS is
represented by a PVC box skeleton;
the lava is represented by eight, two
pound soft dive weights; and the
hydrothermal vent is another PVC
structure spewing hot water. The mis-
sions will be discussed in more detail
later, because first and foremost we
wanted to have a working platform.
The ROV-in-a-box would give us a
functional ROV that could be expanded
upon to complete the missions. We
wanted to finish our basic ROV before
worrying about the details of the
missions, and with that in mind, we
popped open the instruction manual
to the first step.
The Life Aquatic Meets
the Life Robotic
Now that we had a team of
mechanical engineers, structural
engineers, computer science
engineers, and many more, it was
time to pop open the ROV.
When we first opened it, we were
reminded of our experiences at the
beginning of every FIRST build season
we were faced with a somewhat
intimidating box of loose parts.
Motors, wire, PVC, and switches
abounded, and the project might have
seemed a bit overwhelming had it not
been for the handy instruction manual.
The ROV-In-A-Box K it comes with a
comprehensive manual that gives easy
to read, step-by-step instructions that
are illustrated by clear pictures.
The first thing that the manual
walks you through is the construction
of the frame for the ROV. The PVC
bits are all nicely cut and ready to go,
but the kit does not include PVC
cement or primer. Thats nothing a
preemptive trip to the hardware store
wont fix, and the beginning of each
step in the manual conveniently lists
any additional parts required for the
step not already included in the kit.
Thankfully, this list is usually very
short, and most of the entries
are simple tools that any
self-respecting tinkerer should
have at the ready.
The PVC frame goes
together very easily, and its a
nice thing to do first because
it already gives you a sense of
the scale of the ROV. The bot
was a bit smaller than we had
initially guessed, but theres
nothing wrong with that
just ask the Thunderbirds.
The next step involves the
initial wiring of the motors to
the tether. The tether for the
ROV is primarily made up of speaker
wires, and their 50 foot length was the
perfect size for the MATE Competition.
The ROV kit comes with three motors
from Mayfair Marine: two for the right
and left thrusters, and one for the lift
thruster. The motors come with easy
to install couplers for small plastic
propellers. A soldering iron and the
associated paraphernalia is one of
those things not included in the kit,
but once again these are essentials
for every robot project that roboticists
should have in their arsenal.
After preparing the motors, the
next step is to prepare the CCD camera
and LED cluster used for lighting. The
unforgiving work environment faced
by the ROV requires some extra
MOUNTED MOTORS.
SERVO 08.2008 15
Rhyme of the Modern Submariner
TAU BATES AT WORK.
ROV-IN-A-BOX MOTORS.
TwinTweaks.qxd 7/8/2008 10:42 AM Page 15
16 SERVO 08.2008
Twin Tweaks ...
attention that land bound bots find
unnecessary waterproofing. The
manual suggests casting the lights
and camera in resin and gives detailed
instructions on how to do just that,
but our CCD camera and LED cluster
came already cast in the kit. We didnt
mind the assistance, and we set about
tackling the next steps.
The ROV-in-a-box is a humble
robot equipped with only the
essentials: three motors, the camera,
and the lights. Mounting these
essentials to the frame is also done
with PVC bits. After just a few quick
cuts, the ROV was starting to look like
a real robot, but the real test was still
ahead wiring it all up.
We have to say that up until the
wiring of the control box, we were
consistently impressed with the
quality of the parts included in
the kit and the clarity of the
instructions that helped to put
it all together. Perhaps this
initial awesomeness created a
harsher contrast than was
warranted when it came to
wiring the robot, but we have
to say at times it became
downright inelegant. For the
most part, the control box
was fine each thruster was
controlled with a double pole
double throw (DPDT) switch,
the main power was controlled with a
single pole single throw (SPST) rocker
switch, and the kit even came with
labels for all of the switches to denote
which motor they controlled. All of
the switches even went into a nifty
control box that looked downright
sleek, and all of this was quite nice.
The problem, we suppose, was in
the wires.
We have nothing against heavy
gauge wires. They are great for when
you are pulling a lot of amps and their
beefiness makes them generally easier
to solder than super thin wires. When
you have more than three 16 gauge
wires going to one leg of a switch in
a crowded control box, then size can
become a problem. This might not
seem so difficult if you are properly
prepared you can twist the ends of
the wires together and save time and
energy by soldering once where you
would have had to solder many times.
The manual, however, goes through the
connections one wire at a time, and
after the fourth wire going to the same
switch leg, you begin to wonder if youre
soldering a control box or a clown car.
The large gauge wires are also stiffer
and when it came time to close the
control box, it was not exactly fun.
The problem with the wires
could have been minimized if the
instructions had warned about the
overpopulated legs beforehand, but
instead they go through connection
by connection and by the time you
realize theres going to be a problem,
its already too late. Some of the TBP
team members were learning how to
solder on the ROV control box, and
these complications gave them the
opportunity to learn how to desolder.
For all of the grief that the size
of the wires gave us, the actual
electronics of the ROV were elegantly
straightforward. The relatively simple
wiring even made it easy for us to
track down an electrical problem
using a multimeter. Our ROV only
seemed to work intermittently, and
the rocker switch did not seem to
control the main power. When we
had first installed the fuse, we had
not done it correctly; but with the
addition of a spring, everything was
in top shape. Even with the ROV
effectively finished, the manual
continues to be useful. The manual
includes an electrical schematic for
the robot and an exhaustively
comprehensive parts list that details
the cost and vendor for every item in
the kit. We would like to give some
well earned kudos to the authors of
the manual, because they really did a
top notch job. Congrats!
Overcoming
Hydrophobia
The ROV-in-a-box is an elegantly
simple machine. Everything went
together so easily that it seemed that
there had to be more to it. There was
actually more to it waterproofing. In
truth, though, there was not that much
waterproofing to be done. The resin
castings kept the camera and lights
safe, and the motors were designed
for underwater applications (perhaps
pumping, as the 500 GPH label might
fanatically suggest). The only critical
ROV CAMERA AND LIGHT.
TSUKASA (L) AND ERIC (R) WORK
ON THE TETHER.
ROV CONTROL BOX.
TwinTweaks.qxd 7/8/2008 10:43 AM Page 16
Rhyme of the Modern Submariner
points for waterproofing were the
electrical connections, of which there
were not too many. There were four
connections between the camera, light,
and tether, and six connections between
the motors and the tether. The kit pro-
vided ample materials for waterproofing
in the way of epoxy and self-vulcanizing
rubber tape. A couple layers of each
did the trick, even though the tape was
not exciting as we had anticipated
given the name apparently the
vulcanization is pretty low key.
Our previous description may have
made the construction of the ROV
seem like a breeze but, in fact, it took
several weeks of meetings. So when it
finally came time to test the bot, it
was very climactic. Our first tests were
to see if the motors all functioned
properly, and they spun the propellers
so quickly that we were eager to see
how zippy the bot would be in the
water. It was also exciting to see the
light turn on, but we had to find a
monitor so we would check the
camera. We didnt have any extra
monitors sitting around, so eventually
we hooked it up to the television in
our dorm room (the ROV comes with
an RCA plug for output to a monitor).
The camera was downright
impressive. It was black and white, but
the resolution was excellent and the
LED cluster provided perfect lighting.
We have worked on other robots with
cameras like the POB robot, but the
acuity of the ROV would impress any
optometrist.
Adventures With a
Laundry Cart
Everything on the ROV worked
like a charm on the safety of dry
ground, and despite these encourag-
ing signs we have to admit that we
were a little apprehensive about
putting it in the water. At first, we
wanted to test the robot in one of
UCSDs on-campus pools, but it
turned out to be a hassle to
reserve the time and space. Plan B
was pretty much what you might
expect. If we couldnt test the
ROV in a pool, wed go with the
next best thing a laundry cart.
It might sound like a wacky
idea, but the residential life office
of our beloved Warren College
has large plastic laundry carts for
students to cart stuff around in
(probably laundry, most of the
time). It was a bit awkward to
make the request to our college
residential life if we could use a
laundry cart to fill up with water
and test a robot in it, but thank-
fully they are very accommodating
of our robot related idiosyncrasies
and gave us the go ahead to give
our ROV some swimming lessons.
The small scale of the ROV made
testing in the laundry cart a lot less
awkward than it might sound. Before
taking the plunge, we equipped the
bot with an ROVs equivalent of
floaties floral Styrofoam that was
included in the kit.
Our moment of truth turned out
to be a moment of triumph, because
the ROV worked in the water so well
that it seemed like a fish out of
water before. We had to adjust the
buoyancy with some rebar for ballast
and more Styrofoam for balance, but
after just a few tries we had an ROV
sitting serenely in the water with
neutral buoyancy. The kit also includes
Styrofoam bits to adjust the buoyancy
of the tether, which led us to
conclude that the folks at !nventivity
really did think of everything.
Southern California
Fly-Of f
Until now, the MATE Competition
had been only a far-off goal, but
shortly after our laundry cart
adventure we had to meet a deadline
that had the potential of disqualifying
us from the competition. Our team
was registered for the international
championship, and the MATE
organization required that all teams
registered for the championship
prove they have a working robot
beforehand. To do so, we had
to attend the closest regional
competition to undergo a simple safety
inspection and to show that our ROV
could ascend, descend, and move
forward, backwards, left, and right.
The closest regional for our team
was actually at UCSD, held at the
Canyonview West Pool in our very
own Warren College. We showed up
to the regional with confidence the
robot certainly wasnt finished, but
after our laundry cart test we were
sure it could handle the qualifying test.
Our little ROV had no problem
passing the test, and it was exciting to
give the little bot a chance to run free
in a big pool. It was also exciting to
SERVO 08.2008 17
BRYCE AND EVAN SHOW THE LIGHT AND CAMERA.
LEARNING TO SWIM. LAUNDRY CART ADVENTURE!
TwinTweaks.qxd 7/8/2008 10:43 AM Page 17
Twin Tweaks ...
18 SERVO 08.2008
see the other teams there. Some were
there to qualify like us, but others
were there to compete in the regional.
The MATE Competition has two
competition classes: the Ranger class
for high school teams; and the
Explorer class for university teams and
qualified high schools. The Southern
California Regional was actually a
Ranger class competition, and we
were categorically impressed by the
sophisticated robots built by the
teams. The missions for the Ranger
class were slightly different than those
for the Explorer class, but it was still
exciting to see the creative ideas that
teams came up with to pick up the
crabs that their missions demanded.
As for the other Explorer teams, it
seemed that our little ROV was certainly
the smallest of the bunch. But once
again we wouldnt let that discourage
us remember the Thunderbirds. Other
teams had sophisticated control stations
stocked with monitors and video
game controllers, and there were plen-
ty of colorful ROVs that prowled the
pool with ease. We looked forward to
getting to know more about our
competition at the International
Championship, but before that we
had our own ROV to finish.
So Long and Thanks
for All the Fish
The Southern California Regional
was an exciting competition that
inspired us to do our best
to add the mechanisms
and sensors necessary to
transform the ROV-in-a-box
into a truly competitive
robot. To finish, we needed
more motors, a tempera-
ture sensor, and some
other miscellaneous
materials, but unfortunately
the kit would no longer be
of help the only parts
left in the kit were some
extra Styrofoam bits and
some battery connectors
that we had to ignore in favor of the
lug connectors demanded by the
competition. The ROV-in-a-box was
actually inspired by an ROV competi-
tion the National Underwater
Robotics Challenge, held in Chandler,
AZ. The pool next door was a lot
closer than Arizona, so unfortunately
we couldnt make it out to NURC. It
was at least nice to know that our
little ROV-in-a-box had a competitive
streak. !nventivity also shows some
great community involvement by being
an active supporter of NURC, the
MATE Organization, and even
FIRST Robotics.
UCSDs Tau Beta Pi members also
have a competitive streak, and after
finishing the ROV-in-a-box they were
eager to go off script. We would all get
our chance to be creative, because we
had to design and build mechanisms
capable of freeing the OBS, retrieving the
dive weights, and taking the temperature
reading. But theres so much more to
come than additional mechanisms
total redesigns, technical reports,
scavenging from other robots, and the
climactic International Championship
all await in the exciting conclusion in
the next Twin Tweaks! SV
SOUTHERN CALIFORNIA REGIONAL. LETTING THE ROV ROAM.
Recommended Websites
www.nventivity.com
!nventivity Homepage
www.marinetech.org/rov_competition
MATE Competition
h2orobots.org
NURC
tbp.ucsd.edu
Tau Beta Pi, California Psi
TwinTweaks.qxd 7/8/2008 10:44 AM Page 18
Full Page.qxd 7/9/2008 10:23 AM Page 19
20 SERVO 08.2008
Q
. Our club is making a club robot based on the
Atmel ATMEGA168. About half of the members
use either Mac OS X or Linux, not Windows. What
can we use to program our robots that isnt Windows only?
A
. Many fellow robot makers out there know that I am
a Mac fan and go out of my way to do just what you
are asking about. Sometimes there is no choice and
for that, I have a Windows laptop. BUT, in this case you
do indeed have an option: avr-gcc. Avr-gcc is gcc, the
open source C and C++ compiler of choice for many
environments, customized for AVR programming. This
environment can be used on Windows (usually Winavr),
Linux, and the Mac OS. In this column, Im going to detail
where to find the parts, how to install them, and how to
configure it all to program your robots. These packages
usually want OS X 10.3.9 minimum; I recommend 10.4
(Tiger) to play in. (Mostly because that is what I used
that and Leopard so I know that it works.)
Setting up a Mac to program
AVR microControllers
There are three pieces of the puzzle that you will
need to get:
1) Macpack AVR: This is avr-gcc and has all kinds of utilities
and goodies. Top on
the list is avrdude,
one of the most
popular AVR
programmer
programs. You can
find this Mac-friendly
install package here:
www.obdev.at/
products/avrmac
pack/download-de.
html get the most
recent version. It will come in a dmg package.
2) Eclipse Europa for C/C++ programming. This is a Java-
based IDE that can be customized for just about anything.
Like gcc, it too is open source based. You can find the latest
here: www.eclipse.org/downloads/. Get the one for
C/C++ development. This will be a gzipd tarball (in the
UNIX parlance) that your computer will know about.
3) AVR plug-in for Eclipse. This customizes the Eclipse IDE
for use with the AVR toolchain. You can find it here:
http://avr-eclipse.sourceforge.net/. I got the plug-in
directly from the web page; they tell of a way to get it from
Eclipse too, but call me cautious, I went for the sure thing.
Installing Macpack AVR
To install Macpack AVR, simply double-click on the
downloaded file; in my case, it was called AVRMacPack-
20080514.dmg. It will mount a drive called AVRMacPack
on your desktop; in there, youll find a readme file and an
install package. Read the former and double-click on the
latter to install avr-gcc (see Figure 1).
The installer is very nicely done and, of course, you
must enter your admin password since this is going to be
installed in UNIX system directories. In this case, in
/usr/local/AVRMacPack. You are now delving into the realm
of command line interfaces, so take a deep breath and look
in your Applications/Utilities folder and find Terminal.
Install it on your dock; youre going to be using it a bunch
now. Avr-gcc, via AVR MacPack, has the version 3 and
version 4 compilers. Lots of the new work is being done in
version 4, but some like to use version 3. I recommend that
you just issue this command on the command line in your
terminal avr-gcc-select 4 and use the latest. Figure 2
shows how this dialog might look. Remember, all of this is
free, so you wont get much hand-holding as you do with a
full-fledged IDE, but were not done setting up. Lets wait
until we get Eclipse and the AVR plug-in installed before we
play with avr-gcc any more.
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
Dennis Clark
Our resident expert on all things
robotic is merely an email away.
roboto@servomagazine.com
Figure 1. Macpack AVR install volume.
MrRoboto.qxd 7/8/2008 10:08 AM Page 20
Installing Eclipse Europa
When you have downloaded the Eclipse install
package, youll see that it isnt the friendly type of
Macintosh installer. It is a gnu zipped tarball. Not to
worry, your Mac can handle this package easily. Move
the install file to your Applications directory and double-
click on it. After you double-click the install file, a couple
of windows will pop up and then go away. When those
are all done, you will have an Eclipse directory in your
Applications directory. Inside there you will find the
Eclipse program. You will want to have easy access to
this program if you do a lot with robotics, so drag the
Eclipse icon on to your dock next to your Terminal icon.
Installing the Eclipse AVR Plug-in
We have two ways we can install the AVR plug-in.
One is to take the file that weve just downloaded and
unzip it in the Eclipse directory by moving the file to the
Eclipse directory and double-clicking on it. This is the direct,
brute force method. If you have Eclipse running, then
restart it after you unzip the file.
The second way is for you to use Eclipse itself to install
the plug-in. Since youve just seen the brute force method
which is easy, lets look at the elegant way through the
Eclipse IDE. Click on the Eclipse globe on your dock (you did
put it there, right?) and wait for it to start. When it first
comes up, you will see the screen shown in Figure 3 asking
you where to put the workspace files. It usually wants to
put them in the Documents folder; I have no objection,
so just press OK.
Next, navigate to Help-> Software Updates -> Find and
Install as shown in Figure 4 to get to the Feature Updates
dialog and click the Search for new features to install
button, then click Next. Click the New Remote Site button
and fill in the dialog box as shown in Figure 5.
There are lots of Next, Finish, and I Accept type of
buttons to push; remember to actually select the plug-in
when you see its checkbox on the screen! When you have
navigated this endless selection of screens, licenses, and
warnings about unsigned downloads and hit your final
finish button, you will see the window as in Figure 6.
Whew! Now restart Eclipse and lets get to work!
Using avr-gcc, Eclipse, and the
AVR plug-in to write your code
Ive written a toy program that blinks some LEDs on
one of my educational robot boards. All this program will
do is blink two LEDs alternately. This article isnt about how
to write AVR programs you can learn that anywhere (if
enough ask, Ill be happy to write such an article) but
how to use this set of tools on your Mac to do it, so Im
not going to explain the code beyond using the tools to
write, compile, and download it. Now, lets create an AVR
robot project!
Creating a Project
Navigate the File -> New -> C Project and fill in the
Project name as
shown in Figure 7.
Note that the AVR
Cross Target
Application is
automatically
chosen. Well use
just that; press
Next to set
everything up. You will get a configurations screen that
shows a Debug and RELEASE configuration. Well take the
defaults, but before were done here, click the Advanced
Settings button so that we can choose our processor and
clock speed. This window will look like Figure 8.
SERVO 08.2008 21
Figure 2. Avr-gcc configure example.
Figure 3. Workspace dialog.
Figure 4. Get a plug-in.
Figure 5. Install the AVR plug-in.
MrRoboto.qxd 7/8/2008 10:05 AM Page 21
In Figure 8, you see that Ive selected the processor
type and the clock speed. Study your product document for
your chosen AVR microcontroller carefully to select its clock
speed and other settings well discuss later. I selected the
AVR Target Hardware to set these features. If you look at
the Environment selection (after you click on the triangle to
open the C/C++ Build category), youll see that the IDE has
already found your AVR MacPack directory and has set
everything up for us! Totally cool! Were ready to make a
program and project.
When we created our project, a folder was created
called Documents/Workspace/Tiny26. Here, you can drop
or create your C files for your projects. If you copy files
there, go to the Eclipse IDE in the Explorer Window and
right-click on the project in this case, Tiny26 select
Refresh, and the project will pick up the files. If you are
making new files, then just remember to save them there.
When you have everything ready to go, it is time to build
your project. At this time, the Debug configuration isnt
all that useful since it doesnt create a hex file. So, make
sure you are using your Release configuration. To do this,
navigate Project -> Build Configuration -> Set Active ->
Release.
To build, you can navigate Project -> Build All, use the
<propeller> B hot key, or press the Build All icon on the
toolbar (looks like a page with 1s and 0s on it.) If there are
any problems in the build, the errors will show up in the
Console window at the bottom of the IDE window. To go
to the error line in your source code, click on the Problems
window and double-click on the error; the IDE will take you
to the line. See Figure 9 for a condensed view of the IDE
and those tabs.
Youll note a tab called AVR Device Explorer; this is
a very nice utility that shows you all of the hardware
registers, I/O ports, and interrupt sources and their names
for your chosen microcontroller.
Programming a Microcontroller
Ive reached the end of my allotted space now. In my
next installment, I will show you how to configure a
programmer board an AVRISP 2 to be specific to
program your microcontroller, and how to add a tool to
your Eclipse IDE to program at a press of a button. SV
22 SERVO 08.2008
Figure 9. The Eclipse IDE window.
Figure 6. Install complete.
Figure 8. Configure microcontroller settings.
Figure 7. Start a project.
MrRoboto.qxd 7/8/2008 10:06 AM Page 22
SERVO 08.2008 23
Full Page.qxd 7/9/2008 4:02 PM 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
A Au ug gu us st t
9 RoboCountry
Takamtsu City, Kagawa, Japan
ROBO-ONE style humanoid robot combat.
www.robocountry4.com
23-24 Motodrone AFO Competition
Finowfurt, Germany
Autonomous Flying Objects (AFOs) compete in
several areas including the ability to hover in
changing wind conditions, stable flight between
points, capturing photos of targets, recovering
from freefall, and automated take-off and
landing.
www.motodrone.de
29 DragonCon Robot Battles
Atlanta, GA
At this event, remote-controlled and autonomous
robots fight it out at the DragonCon science
fiction convention.
www.dragoncon.org
TBA DPRG Robot Talent Show
The Science Place, Dallas, TX
Autonomous robots demonstrate their talents.
www.dprg.org/competitions
TBA Robot Fighting League National
Minneapolis, MN
Robots (RC vehicles) attempt to destroy each
other.
www.botleague.com
TBA Robots at Play
City Square, Odense, Denmark
Robots compete to demonstrate playfulness and
interactivity.
www.robotsatplay.dk
S Se ep pt te em mb be er r
6 ROBO-ONE Helper Robot Project
Kawasaki City, Japan
Teleoperated robots compete at performing
common household tasks.
http://getrobo.typepad.com/getrobo/2008/
05/new-helper-robo.html or
www.robo-one.com/robo_help/robo_help.
html
17 Powered by Sun
Ostrava, Czech Republic
Just as the name suggests, this is a competition of
solar-powered robots.
http://napajenisluncem.vsb.cz
18-19 Korea Intelligent Robot Contest
POSTECH Gymnasium, Pohang City, Korea
This competition includes several events for
general-purpose intelligent robots and one
event for specialized cleaning robots.
http://irc.piro.re.kr
20 Robotour
Prague, Czech Republic
Autonomous robots must navigate in a park.
www.robotika.cz
20-21 RoboCup Junior Australia
Scitech Museum, Perth, Australia
Events include robot dance, robot rescue, and
robot soccer.
www.robocupjunior.org.au
27 Elevator:2010 Climber Competition
To be announced (see website for updates)
Autonomous climber robot must ascend a scale
model of a space elevator using power beamed
from the base.
www.elevator2010.org
Send updates, new listings, corrections, complaints, and suggestions to: steve@ncc.com or FAX 972-404-0269
24 SERVO 08.2008
Events.qxd 7/9/2008 5:32 PM Page 24
29 Microtransat Challenge
Viana do Castelo, Portugal
This event is a transatlantic autonomous robot sail
boat race.
www.microtransat.org
TBA BotTrot 4Bottle Race
To be announced (see website for updates)
Robot must navigate a figure-8 course. Video of
robot completing the course must be submitted
by the contest date for judging.
www.botmag.com/articles/06-10-07_4bottle_
robot_race.shtml
TBA Robothon
Seattle Center, Seattle, WA
Events include Robo-Magellan, MicroMouse, Line
Following (two categories), Line Maze, Walking
Robot Race, Mini Sumo, and 3 kg Sumo
(autonomous and RC).
www.robothon.org
O Oc c t to ob be er r
24-26 Critter Crunch
Hyatt Regency Tech Center, Denver, CO
Robot combat 2 lbs and 20 lbs event
categories. Autonomous and Remote-Control.
Starting size of 12 x 12 x 12. Expansion during
event okay. Weight limit of 20 lbs. Power source
must meet OSHA requirements for indoor use.
Awards for 1st, 2nd, and 3rd place, as well as
amusing and arbitrary accomplishments.
www.milehicon.org/critrule.htm
SERVO 08.2008 25
From $25
From $25
Use our low-cost
solder paste stencils
to quickly assemble
your surface-mount
designs.
Solder Paste Stencils
programming
connector
20 MHz clock
power LED
(green)
trimmer pot
(on ADC7)
dual H-bridge voltage
regulator
ATmega48/168
microcontroller
red user LED
(on PD1)
Baby Orangutan B-48 and B-168
starting at $24.95
Robot Controllers
S
e
n
s
o
r
s
3
-
A
x
s
i
A
c
c
e
l
r
o
m
e
t
e
r
e
$
1
9
.
9
5
R
Q
T
R
e
f
l
e
c
t
a
n
c
e
S
e
n
s
o
r

$
3
.
4
9
T

R
e
f
l
e
c
t
a
n
c
e

S
e
n
s
o
r

A
r
a
y


$
1
4
.
9
5
Q
R
r

TReX Jr
Dual Motor
Cont r ol l e r :
Instantly switches
between radio control
(RC) or analog voltage and
asynchronous serial (RS-232
or TTL), plus a multitude of
additional features. $59.95
o
t
r
M
o
C
o
n
t
o
l
e
s
r
l
r
Find out more at www.pololu.com or by calling 1-877-7-POLOLU.
Custom Laser Cutting
Cut your own custom
chassis, front panels, and more!
o

l
e
!
G
r
e
a
t

f
r
i
n
-
s
e
n
s
i
n
g
Events.qxd 7/9/2008 7:54 PM Page 25
Micro Metal Gearmotor Bracket
P
ololu introduces its
compact bracket for
convenient mounting of
the popular Sanyo-style
10x12 mm miniature
metal gearmotors. The
plastic brackets are custom
made to securely hold the
metal gearmotors in place
while enclosing the otherwise
exposed gears; the mounting tabs capture the nuts
for easy installation.
For further information, please contact:
Solar-Breeze Intelligent Solar
Robot Pool Skimmer
T
he Solar-Breeze
Intelligent Solar
Robot Pool Skimmer
manufactured by
Invention Concepts
is the first of its kind,
hoping to bring pool
owners on board with
the idea of having
greener pools. Solar-Breeze uses a unique solar-power
system that allows it to skim your pool surface all day
while the sun is shining, collecting debris from the pool
surface and preventing it from sinking to the bottom.
Since it keeps dust and debris from sinking to the
bottom of the pool, the time required to run the pool
pump is significantly reduced, thus making pools cleaner
and clearer, so pool pump usage should go down. A
Chemical Dispenser (for commercial solid pool chemical
tablets) is included in the Solar-Breeze design since
dispensing chlorine or clarifiers evenly and randomly over
the surface makes the chemicals far more efficient than
when spread by other means.
Mr. Clock Radio
M
r. Clock Radio
manufactured by GeeWiz
Entertainment is the worlds first
animated talking robotic clock
radio. Press the snooze button and
he will tell you the current time,
or press the fortune teller
button and ask him a question
about your future. Mr. Clock
Radio has working eyes, a
multi-directional motorized head, as well as a motion
detector. Aside from AM/FM radio, Mr. Clock Radio can
also play music from other devices using the MP3 player
jack and it comes with 50 different wake-up shows.
For further information on either of these two
products, please contact:
LEGO Education WeDo
L
EGO Education The LEGO Groups educational division
introduces LEGO Education WeDo, a new product
that redefines classroom robotics, making it possible for
primary school students 7-11 years of age to build and
program their own solutions. Bridging the physical world
represented by LEGO models, and the virtual world
represented by computers and programming software,
LEGO Education WeDo provides a hands-on, minds-on
learning experience that actively involves young students
in their own learning process and promotes childrens
creative thinking, teamwork, and problem-solving skills.
Building upon our successful 10-year history of
bringing educational robotics to middle, high school, and
university classrooms with the award-winning LEGO MIND-
STORMS toolset, we are excited to extend this expertise
to benefit an even younger audience, said Jens Maibom,
vice president of LEGO Education. With a progressively
competitive global economy, we know it is imperative to
New Products
BRACKETS AND MOUNTS
CONSUMER ROBOTS
ROBOT KIT
Website: www.robotshop.ca or
www.robotshop.us
RobotShop, Inc.
N
N
E
E
W
W
P
P
R
R
O
O
D
D
U
U
C
C
T
T
S
S
26 SERVO 08.2008
6000 S. Eastern Ave. Suite 12-D
Las Vegas, NV 89119
Tel: 8777POLOLU or 7022626648
Fax: 7022626894
Email: www@pololu.com
Website: www.pololu.com
Pololu
Corporation
AUG08NewProd.qxd 7/9/2008 7:56 PM Page 26
provide even younger children and their teachers with
curricular-relevant, easy-to-implement educational materials
to spark childrens interest in all manner of subjects.
LEGO Education WeDo encourages teachers to issue
curriculum-based challenges for students to solve.
Working in teams, children invent their own solution by
building a LEGO model and programming it to perform a
certain task. Cause and effect learning is enhanced by
the models remaining tethered to a computer; similar to
scientists in working labs, children can test and adjust
their programming in real time. After reflecting on what
did and did not work, students can consult with peers,
adapt programming, adjust models, or begin again.
Newly-designed software developed by National
Instruments makes programming easy and intuitive and
students quickly learn that they can solve real-world
challenges by tinkering with building and programming.
Developed to cover a broad range of curriculum
areas, WeDo sample topics include Language and Literacy:
narrative and journalistic writing, storytelling, interviewing
and interpreting; Mathematics: measuring time and distance,
adding, multiplying, estimating, using variables; Science:
transmission of motion, working with simple machines,
gears, levers and pulleys; Technology: programming,
using software media and creating a working model.
The complete LEGO WeDo package includes:
158 brightly colored LEGO elements, including gears
and levers
One LEGO USB hub connects directly to a Mac/PC
laptop, desktop, OLPC XO, or Intel Classmate computer to
allow control of hardware input (tilt and motion sensors)
and output (motor), thereby bringing models to life
One motor, one motion sensor, and one tilt sensor
Drag-and-drop, icon-based software that provides an
intuitive and easy-to-use programming environment
suitable for beginners and experienced users alike
CD-Rom provides up to 24 hours of instruction.
Teacher notes and glossary are also included
For further information, please contact:
New Powerful, Versatile, and
Easy-to-Use Motor Controller
T
he CS110100 from A-WIT Technologies is a
multi-functional, high-current two-axis motor driver
with motion control. It features on-board, over-current
protection and over-temperature protection. Maximum
DC current per motor channel is 10A. For DC motors
with incremental encoder feedback, the CS110100 is
able to drive the motor in velocity mode or position
mode. For DC motors without encoder feedback, the
CS110100 is able to drive the motor via PWM. The
on-board motion processor allows users to change
motion control parameters, such as PID parameters,
motor configuration, etc.
The motor controller has three operating modes: UART
Mode the CS110100 is able to interface with a host
controller, such as the C Stamp (sold separately) via the
serial port. In this mode, the CS110100 will receive AT
commands sent from the host controller to change its speed,
position, etc; I
2
C Mode the CS110100 is able to interface
with the host controller via an I
2
C port. The I
2
C address is
selectable from 0x70 to 0x7E. The host controller is able to
control the CS110100 by I
2
C commands; Radio Control PWM
Mode the CS110100 can be connected to RC receivers
directly so that the motor speeds can be controlled by
the RC remote
controller. In this mode, users may choose to run the two
motors under coordinated mode or independent mode.
This mode is especially useful in building RC remote
robots. Some technical specifications are:
Power Supply Voltage: 7V-24V
Power Consumption: 2W (without motors)
Processor Speed: 40 MHz
On-Board Motion Control for brushed DC Motors
(Velocity Mode, Position Mode)
On-Board MOSFET PWM drivers
Able to drive Two DC motors at the same time
MAX DC Current Per Motor = 10A
PEAK DC Current Per Motor = 20 A
On-Board fan for efficient heat dissipation
Protection for Reverse Polarity, Over-Current, and
Over-Heating
Controllable by RC Servo PWM pulses directly
Controllable by a serial interface
Controllable by an I2C interface
User can control the PWM output to the motors directly
Switching power supply for lowest battery power
consumption
Compact size of 75 mm x 65 mm
For further information, please contact:
MOTOR CONTROLLER
SERVO 08.2008 27
656 Ironwood Dr.
Williamstown, NJ 08094
800985AWIT Fax: 8009852948
Email: info@a-wit.com
Website: www.c-stamp.com
A-WIT
Technologies, Inc.
Website: www.LEGO.com The LEGO Group
AUG08NewProd.qxd 7/9/2008 7:57 PM Page 27
Featured This Month:
Features
28 BUILD REPORT:
Combat Robot: $1.25
a Pound by Tim Wolter
32 PARTS IS PARTS:
Power Switches
by Chad New
Events
30 May/Jun 2008 Results and
Aug/Sep 2008 Upcoming
Events
30 EVENT REPORT:
Mall of America Rotunda
Rumble by Aaron Nielsen
ROBOT PROFILE Top
Ranked Robot This Month:
33 Touro by Kevin Berry
28 SERVO 08.2008
F
or many builders, combat
robotics is about pushing the
engineering envelope. You know,
how many extra volts can we
hammer through the system
before it flames out? But since I
primarily work with student
robotics programs, I have taken
this concept in a different
direction. Given the pressure on
school budgets these days, I have
become adept at pushing the
economic envelope. That is, how
tiny a budget, how minimal the
shop access, how few work
hours can still translate into an
effective fighting machine?
Ladies and gents, I think we
have an answer. With our latest
build, I believe we have attained
close to Absolute Zero on
resources, and still cooked up a
30 pounder that went 2-2 in its
debut competition.
I have been teaching a
middle school level robotics
program for years, where we
build one and three pound
combat machines. Its an after-
school program, so when I
proposed doing a bigger build I
knew we would only have a total
of about 15 work
hours. Also, the Tech
Ed teacher who
hoped to help me had
other commitments,
so there would
effectively be no
access to the school
shop. Fortunately, I
had a great volunteer
assistant, and a
talented bunch of
kids sign up; all
by Tim Wolter
Combat Robot: $1.25 a Pound
BUILD REP RT
SUMO: A robot built on the cheap.
CombatZone.qxd 7/8/2008 10:27 AM Page 28
SERVO 08.2008 29
veterans of my small robot classes,
some of them also having
experience on my Destination
Imagination teams.
The first session I tossed out a
bunch of stuff from my workshop:
cordless drills, cordless screwdrivers,
Barbie Jeep gearboxes with and
without removal of the final gear
for a speed hack. I had the kids
weigh them, and test the amp
draw running free and at stall. They
liked the standard Barbie gearboxes,
which was fortunate as I had a box
full of them.
Next, I had them draw up some
materials stats, such as weighing
and measuring various thicknesses
of plywood, aluminum, Lexan, and
foam; and calculating how heavy
a robot would be if it were made
of each material and had some
plausible dimensions for this project.
I suggested a simple pushy/wedge
bot for a first build and at the end
of session 1, we had a shopping list.
It helps a great deal to have a
workshop full of junk. The expensive
components such as speed
controllers and batteries were all
lying around from years of previous
projects. In fact, I had built
something very much like the kids
design a few weeks earlier when
the high school drama department
needed a robotic goat on rather
short notice.
Speed controllers are kind of
the soul of a robot. That being the
case, it appears that some Eastern
religions are correct about
reincarnation, as electronics for this
project had lived previous lives as
everything from the 340 pound
Newtons Claw down to the candy
delivering Pumpkin Bot that
scared my trick-or-treaters a few
years back.
Our basic drive system was a
pair of Barbie Jeep gearboxes,
hubbed to eight inch rubber wheels
that were about a buck at the local
surplus shop. We added a pair of
7.2 volt R/C car batteries wired in
series for 14.4 volts; a mild over-volt
for the motors but no problem for
the Victor 883 speed controllers
that I pulled out of RoboGoat.
One of the kids brought a big
slab of half-inch plywood that made
up the basic frame and base armor.
I tossed in a broken snow shovel
blade for the pusher.
So far, not much ground
breaking technology, but a
serviceable machine. We did get a
bit more creative with the secondary
armor, which was a tricky composite
of dense foam, 1/32 Lexan in two
layers, and plenty of Gorilla Tape. In
fact, two rolls of this stuff at about
5 bucks each were the single
biggest expense of the project.
The new machine dubbed
SUMO for its final pudgy look
was controlled with a 75 MHz
JR receiver and an IMX mixer for
simpler handling.
With time to spare, we actually
started a second 30 pounder, with
a working name of NSP (No Spare
Parts). This was to have a similar
drive system and an active weapon.
But alas, with two sessions to
go a problem arose. Spring arrived.
Middle school boys are not the most
focused primates on their best days,
and warm weather, track practice,
and the attire of middle school girls
all became major distractions. So,
we scrapped NSP at the half-built
stage and upgraded SUMO a bit.
Basically, we ended up
swapping in 24 volts worth of NiCd
batteries, which made SUMO a very
effective pusher.
In actual combat, lessons were
as usual quickly learned. The
close enough fit between the axle
and shaft collar proved to be not
quite close enough, and we lost one
match when one hub slipped off
the output gear of the gearbox. The
design was a bit tight, making
emergency repairs difficult. This
could have been avoided, as we
were four pounds underweight.
(Note to self: Next time, bring an
accurate scale. The one from the
school nurses office must have
been jumped on too often.)
The composite armor proved
more than sufficient against flail
and blade, and with some additional
refinements will make more
appearances in future projects.
The kids all had a fun time, and
the relative success of the project is
largely a tribute to their outstanding
driving skills.
Total out-of-pocket costs came
in under $40, which at just over a
dollar a pound must be some kind
of record. True, you could claim that
we cheated by raiding my robot
graveyard/workshop. But I suspect
that with a bit of eBay trolling and
dumpster diving, it would be possible
to do the entire project including
electronics and radio equipment for
somewhere around $150.
SUMOs drivetrain. The build team pauses for a photo-op.
SUMO the pushybot.
CombatZone.qxd 7/8/2008 10:29 AM Page 29
30 SERVO 08.2008
All in all, a fun project, with lots
of opportunity for creative tinkering
and for on-the-fly troubleshooting
and repair. And at this kind of price,
something very possible on a wider
basis. Without an active weapon,
we could have just as easily fought
in the school parking lot as in an
expensive arena. SV
Results May 4
Jun 15, 2008
S
RJC Day Under The Oaks was
held May 4th in Santa Rosa, CA.
Fifteen bots were registered.
Presented by SRJC Robotics Club.
R
obots Live presented an event
May 17th18th at the National
Space Center in Leicester, England.
C
CR Memorial Day Qualifier was
held May 24th in Greensboro,
NC. Sixteen bots were registered.
Presented by Carolina Combat
Robots.
2
008 Fighting Robots UK
Featherweight Championships
were held May 24th25th in
Birmingham, England. Presented
by Robo Challenge.
R
oboGames 2008 was held June
12th15th in San Francisco, CA.
One hundred twenty five combat
bots were registered. Presented
by ComBots.
G
uildford
2008 was
held June 15th
in Guildford,
England. Forty two bots were
entered. Presented by Roaming
Robots.
Upcoming Events for
Aug-Sept 2008
H
ORD Fall 2008 will be held by
the Ohio Robot Club in
Strongsville, OH
on September
13th. Go to
www.ohio
robotclub.org
for more details.
A
show at Midlands MCM Expo
will be in Telford, Shropshire,
England on September 13th14th.
Go to www.robotslive.co.uk for
more details.
A
show at the Huddersfield
Sport Centre will be held on
September 20th21st in
Huddersfield, West Yorkshire,
England. Go to
www.robotslive.co.uk for more
details.
R
obothon
Robot
Combat 2008
will be held by
Western Allied
Robotics in
Seattle, WA on September 21st. Go
to www.westernalliedrobotics.
com for more details. SV
I
n the post-televised robotic combat
era, its good to see the sport
can still draw a standing room only
crowd. Such was the case at the
Rotunda Rumble held at the Mall of
America in Minneapolis, MN, where
there were at times four floors of
spectators cheering for more.
The event, sponsored by
Synergy Robotics Entertainment and
the Midwest Robotics League, was
held on April 26th and 27th, and it
was divided into two major classes:
student and professional. Beyond
that, there was the usual weight
EVENTS
Results and Upcoming Events
by Aaron Nielsen
Mall of America Rotunda Rumble
EVENT REP RT
CombatZone.qxd 7/10/2008 2:49 PM Page 30
class spread starting with the cute
n cuddly ant weights (one pound)
and ending with the that just
might rip your leg off feather-
weights (30 pounds). As for fight
structure, the 15 pound student
Battle Bots IQ (BBIQ) class fought
in classic bracket style, while the
remaining classes fought round
robin.
Taking center stage was the
BBIQ half of the tournament where
teams of students some coming
from as far as Williams, AZ
displayed their prowess in
mathematics, science, and
engineering by vigorously applying
it to their opponents in the form of
stored kinetic energy. When
comparing the tournament
designations of student versus
professional, one might be tempted
to assume that the student class
was somehow inferior. That would
be the thought of someone about
to be resoundingly beaten by
something conceived of, designed,
and built by a 10th grader.
Even the schools that opted to
stick to the classic concepts of
robot combat (wedges and bricks)
managed to bring something new
to the table. Billet a simple brick
bot to the untrained eye featured
magnets to increase its tractive
effort. Another bot dubbed
Catapult boasted the most James
Bond worthy weapon. What I mean
is they opted to forgo powering
their flipper with a mere tank of air
and instead chose to mount a
complete working air compressor
right on the robot so they could
recharge on the go. Frankly, I still
have no idea how that whole
apparatus worked, but it did. Either
way, enough about the event. Lets
talk about results.
The ant weight battles were
less of a tournament and more of a
one-on-one brawl for supremacy
between ANTI (vertical spinner) and
the peculiarly named UnderWHERE
(horizontal spinner). It was a friendly
rivalry, and there were only two of
them; thus, they opted to pummel
each other on an exhibition basis.
Moving on to the beetle
weights (three pounds), third place
went to Rampage Productions
wedge bot, Screw U, which might
now hold the title of bot name
that gets the most snickers when
announced over the PA. Second
place went to Team Bobbing for
French Fries wooden wonder, Boxy
Brown, a wooden box with a dowel
on the front and a driver with an
affinity for trash picking. After Boxy
took a bit of a beating from the first
place finisher, his driver disappeared
for a bit and, upon his return,
proudly declared he had found a
plastic bottle in the trash and
commenced attaching it to the
remains of his bots keep-away-stick.
First place went to team Python
and their bot, Strychnine, which
can be best described as three
pounds of precision machined, bar
spinning death.
SERVO 08.2008 31
Humdinger versus Pox. Guess which
of these bots is having a bad day?
Studley Do-Right versus a distressing
amount of kinetic energy (Murder-Go-Round).
SUMO and Edge of Madness
pause to ponder one another.
ANTI versus
UnderWHERE
two tiny brushless
spinners enter.
Only one leaves.
CombatZone.qxd 7/8/2008 10:31 AM Page 31
32 SERVO 08.2008
Jumping up to the 15 pound
BBIQ class, the rule for the day was
vertical spinning egg beaters rule,
with one exception. That exception
was third place finisher No Remorse
from Valley Middle School in Apple
Valley, MN. No Remorse was a
wedge bot that proudly proclaimed
it had no regrets (except perhaps
not finishing first or second). The
story behind second and first place
is a little more amusing. Chucker,
from St. Cloud Technical College in
Minnesota, and Humdinger 2, from
Buffalo High School (also in
Minnesota) were both armed with
egg beaters and spent the duration
of the Rotunda Rumble putting
various items, including themselves,
into low orbit. Interesting fact: The
creators of Chucker and Humdinger
2 used to be on the same team.
Thus, when they both found their
way to the finals, the ensuing battle
was the robotic equivalent of Obi-
Wan Kenobi facing off with Anakin
Skywalker. It was three minutes of
sheer pandemonium to see who
was stronger in the force, but the
results showed that Humdinger 2
was the master and, as such,
walked away with $2,500 in
merchandise (including a GEARS kit
donated by GEARS) for first place.
Chucker would have to content
himself with being the apprentice.
Since they were able to make it
through the entire BBIQ tournament
on Saturday, there was a second
BBIQ tournament on Sunday for
anyone who could still cobble
together a working robot. Taking
home first place ($200) and some
vindication for Saturday was none
other than Chucker. In second was
Uppercut built by John Glenn
Middle School in Maple Wood, MN.
In an honorable third was Death
Star deployed by PACT Charter
School in Ramsey, MN. (Id trot out
another Star Wars metaphor, but
Im afraid we used them all up in
the last paragraph.)
Among the 30 pound big boys
of the event, third place went to
Team Nerd Academy and their
wood, plastic, shovel, Gorilla Tape
composite push bot, SUMO. (See
Tim Wolters build report on SUMO
in this months Combat Zone.) In
second was team Rampage
Productions Whop Rivet, an
articulated flail spinner. And
bringing home first place and $500
in prizes was veteran driver Dick
Stuplich from Team Killerbotics and
his wedged-wonder, Pyromancer.
Even more impressive was that
Pyromancer was fighting with the
proverbial arm behind the back, as
the flame based weaponry, and,
consequently, his flamethrower was
not allowed at the Mall of America.
If anyone happens to think thats
silly, I would like to point out two
things. One, every other store in the
Mall of America sells 100% cotton
shirts. Two, 100% cotton shirts burn
quite well. (Your honor, the defense
rests.)
All in all, it was an impressive
event which boasted an excellent
turnout in terms of both builders
and bot watchers. Better still, plans
are in the works for a similar event
next year. Were looking forward
to it. SV
All the pictures were taken by Deb Holmes
of the Midwest Robotics League.
Pox, jealous of
Catapults on-board air
compressor, attacks!
This, ladies and
gentlemen, is what
you call a crowd.
T
he power switch is one of the
most overlooked yet critical
parts of a combat robot.
Paraphrasing the Robot Fighting
League rule set, all robots must
have an easily accessible power
by Chad New
PARTS IS PARTS:
P wer Switches
CombatZone.qxd 7/8/2008 10:32 AM Page 32
SERVO 08.2008 33
T
ouro has competed in
RoboGames 2006, RoboGames
2007, and 7 ENECA-Recife. Touro
debuted in RoboGames 2006
achieving third place. Afterwards,
it won Brazils III Winter Challenge
and VI Robocore ENECA both in
2006. In 2007, Touro won a
RoboGames gold medal and kept
both Brazilian competition titles.
Details are:
Configuration: Drum
Bot
Frame: 7050 aluminum
20 mm (approx. 3/4)
ROBOT PR FILE
TOP RANKED ROBOT THIS MONTH
Touro flips Orion 3 during the
2007 Winter Challenge final match.
Photo courtesy of Robocore.
switch that can be used to turn on
and off the robot safely, quickly,
and easily.
During the mad dash of event
preparation, builders often neglect
this critical component. I have seen
dozens of fights lost due to a power
switched being tripped during a
hard hit, links falling out because
of poor design and placement,
and even fights lost simply because
of not turning the switch to the full
on position.
Given the importance of this
component, it should be factored
into your robots design previous to
the final hours of your build. Power
switches can be made very simple
or complex; what you decide to go
with will depend mainly on available
space and budget.
It is my opinion that the two
best options for a power switch are
a removable power link which any
builder should be able to easily
make, or the Team Whyachi ready
made power switch line.
A removable power link is easily
made by creating an open on the
negative side of your main power
line which can be closed by inserting
the plug, thus completing the circuit
and turning the robot on. Turning
the robot off is as simple as yanking
the plug out which puts the open
back onto the line. The link can be
made of whatever you
want. I find, however,
its easiest to use a set
of Deans Ultra Plugs.
I simply wire the female
end into the power and
use the male end as
the plug; thats it. This
switch should cost you
less than $5.
The other option is
to buy a ready-made switch from
Team Whyachi. They are made very
solidly featuring a UHMW body with
copper contacts inside which you
are able to make and break contact
with by adjusting an internal screw.
Loosening the screw turns the robot
on while tightening breaks the
copper contact and shuts the power
off. They also come in a
variety of sizes to fit
your needs. If you have
the budget for this item,
then it may be a sound
investment of about $50.
No matter what
power switch option you
decide to go with, the
most important thing is to put some
forethought into it.
Be sure to consider its
placement so you have easy
access to it and so it is protected
from your opponents. Remember
that one shot to this part can take
you out of the match, so treat
it well. SV
PHOTO 1. A Team Whyachi
power switch. Simply insert
the wrench and turn on or off.
PHOTO 2. A removable link
made from Deans Ultra
connectors. A simple, easy,
and cheap solution to your
power switch needs.
by Kevin Berry
CombatZone.qxd 7/8/2008 10:33 AM Page 33
34 SERVO 08.2008
walls and 8 mm (approx. 5/16)
thick top and bottom
Drive: Two MagMotor S28-150s
and Team Whyachi TWM3M
gearboxes
Wheels: Two Colson 6 x 1.5
tread, mounted on aluminum
hubs
Configuration: Two wheel drive
with tank mixing
Drive ESC: Two IFI
Victor HV-36s
Drive batteries: Two
24 VDC, 3,600 mAh
Battlepacks
Weapon: 12 kg
(26.5 lb) 304 stainless
steel drum, with two
1 x 1 S7 tool steel
teeth and 1.5
titanium axle
Weapon power: 6.7 kilojoules
stored @ 6,000 RPM
Weapon motor: Magmotor
S28-400
Weapon ESC: Team Whyachi C1
Contactor trigged by custom-made
electronics
Armor: 3 mm (approx. 1/8)
6Al-4V titanium with Kevlar
underneath; also 5 mm (approx.
3/16) 304 stainless steel
Radio system: Spektrum DX6
Future plans: Work hard to stay
on top
Design philosophy: As a rule of
thumb, the design is as simple as
possible; our goal was to build a
compact, strong, and reversible
robot. After 2006, it has undergone
minor revisions to become even
more simple and powerful.
Builders bragging opportunity:
We dont like to brag, we like to see
our robots in action!
Future plans: Four wheel drive
version SV
All fight statistics are courtesy of BotRank
(www.botrank.com) as of June 14, 2008.
Event attendance data is courtesy of
BotRank and The Builders Database (www.
buildersdb.com) as of June 14, 2008.
Touros inside.
Photo courtesy of RioBotz.
Weight
Class
Bot Win/Loss
Weight
Class
Bot Win/Loss
150 grams VD 26/7 150 grams Micro Drive 7/1
1 pound Dark Pounder 44/5 1 pound Dark Pounder 23/3
1 kg Roadbug 27/10 1 kg Roadbug 11/4
3 pounds 3pd 48/21 3 pounds Limblifter 12/1
6 pounds G.I.R. 17/2 6 pounds G.I.R. 11/2
12 pounds Solaris 42/12 12 pounds Surgical Strike 17/7
15 pounds Humdinger 2 29/2 15 pounds Humdinger 2 29/2
30 pounds
Totally
Offensive
43/13 30 pounds Billy Bob 12/4
30 (sport) Bounty Hunter 9/1 30 (sport) Bounty Hunter 9/1
60 pounds
Wedge of
Doom
43/5 60 pounds Texas HEAT 11/4
120 pounds Devil's Plunger 53/15 120 pounds
Touro 10/0
220 pounds Sewer Snake 43/12 220 pounds Sewer Snake 11/5
340 pounds SHOVELHEAD 39/15 340 pounds Ziggy 3/0
390 pounds MidEvil 28/9 390 pounds MidEvil 3/0
Rankings as of June 14, 2008
History Score is calculated by perfomance
at all events known to BotRank
Current Ranking is calculated by
performance at all known events, using
data from the last 18 months
History Score Ranking
Touro Currently Ranked #1
Historical Ranking: #7
Weight Class: 120 lb Middleweight
Team: RioBotz
Location: Rio de Janeiro Brazil
BotRank Data Total Fights Wins Losses
Lifetime History 16 14 2
Current Record 10 10 0
Events 3
Photo courtesy of Robocore.
CombatZone.qxd 7/8/2008 10:34 AM Page 34
CONFERENCE&EXPO
,
08
NOV. 18-19, 2008
SANTA CLARA, CA
SANTA CLARA CONVENTION CENTER
Join the International Technical Design and Development
Event for the Personal, Service, & Mobile Robotics Industry
Q 30
+
Cutting-edge, relevant conference
sessions covering:
- Systems and Systems Engineering
- Tools and Platforms
- Enabling Technology
- Achieving Autonomy
- Design and Development
Q Keynote sessions delivered by internationally
recognized industry leaders
Q Exposition oor featuring whats new and whats
next in robotics design and development
Q Valuable networking opportunities that put
you in touch with peers, industry experts and
up-and-coming talent
WWW.ROBODEVELOPMENT.COM Q 800-305-0634
USE PRIORITY CODE RDSRV AND
SAVE $300ON A CONFERENCE PASS
For Information on
Sponsorship and
Exhibiting
Opportunities,
contact
Ellen Cotton at
ecotton@ehpub.com
or 508-663-1500 x240
FOR COMPLETE EVENT DETAILS
VISIT WWW.ROBODEVELOPMENT.COM
EXCLUSIVE OFFER:
Featured Keynote
Presentations
Professor of Computer
Science and Electrical
Engineering
Director, Articial
Intelligence Laboratory
Stanford University
Making Cars Drive Themselves
Sebastian Thrun
Founding Director
USC Center for Robotics
and Embedded Systems
Director
USC Robotics Research Lab
Maja J. Mataric
Jeanne Dietsch
CEO
MobileRobots Inc
Opportunities at the Uptick
JOIN THESE LEADING
COMPANIES AT 2008
ROBODEVELOPMENT
Analyst, Association &
Academic Co-Sponsors
Silver Sponsors
Media Co-Sponsors
Gold Sponsor
BOSTON
ENGINEERING

BOSTON
ENGINEERING

Listing as of July 7, 2008. For a


current list of participating
companies, please visit
www.robodevelopment.com.
Founding Sponsor
Plus...
Full Page.qxd 7/9/2008 5:37 PM Page 35
36 SERVO 08.2008
M
y first serious hobby servo controller was built
around an LM556 dual timer IC with a potentiometer
at the end of a joystick acting as the hobby servo
controller input. After discovering PIC microcontrollers,
my next generation of hobby servo controllers got a bit
more flexible as I could control the hobby servo PWM
signal and thus the servo itself with both firmware
PHOTO 2. This is the real McCoy. There are other
XC2C64A programming alternatives. However,
this CPLD and FPGA programming device is fully
supported by the Xilinx ISE WebPACK firmware
generation package. You can purchase this tool
from a number of electronics distributors.
The hobby servo is an amazing device. The typical hobby servo is a collection of plastic or
metal gears driven by a DC motor, which is under the control of a specialized motor driver IC
and a feedback potentiometer. Back in the day, one would find hobby servos in most every
model airplane and model boat. If you really put a brain cell to it, radio-controlled model
planes, cars, and boats are actually specialized types of robots that depend greatly on the
controlled motion provided by a hobby servo. Hobby servos dont care who drives them as
long as they are driven with a specifically
timed PWM signal. So, its not so strange
that the ubiquitous hobby servo has
rotated its way into todays microcontroller-
controlled robotic ramblers.
PHOTO 1. This Xilinx CPLD development board
contains everything you need to put the XC2C64A
on the air. The idea is to put down and test
your XC2C64A design on this board before
building up the final hardware that will be
dedicated to your XC2C64A project.
Eady.qxd 7/8/2008 11:55 AM Page 36
and a potentiometer. As time passed, PICs got more
sophisticated and began to include on-chip PWM
subsystems that could be programmed to effortlessly
service a hobby servo while doing other things at the same
time. This month, were going to add yet another hobby
servo controller type to our list. This hobby servo controller
variant is based on a Xilinx XC2C64A CPLD. If you are CPLD
challenged, fear not. The April and May 2008 issues of
Nuts and Volts contain introductions to CPLD hardware and
firmware. In fact, we are going to reuse that Nuts & Volts
64A CPLD hardware in this months discussion. There are
lots of details we need to cover. So, lets get started.
Doing Some Servo Math
The typical radio-controlled servo system consists of a
transmitter, a receiver and multiple servos. Most advanced
microcontrollers that contain on-chip PWM subsystems only
provide up to two independently controlled PWM output
channels. If you only need to control a couple of hobby
servos and your selected microcontroller can drive its PWM
outputs independently, youre covered. However, if you
need to drive a greater number of hobby servos, youre
going to need some help. Thats where the 64A
CoolRunner-II CPLD comes in.
In the pages of those issues of Nuts & Volts that I
steered you to earlier, we built up the basic CPLD hardware
configuration you see in Photo 1 exactly as it is represented
in Schematic 1. The pinned-out CoolRunner-II CPLD is
programmed via its JTAG port using a Xilinx-compatible
CPLD programming device. To raise the chances of project
success, I like to use the official programming tools offered
up by the manufacturer. For the 64A, those programming
tools include the free Xilinx ISE WebPACK CPLD/FPGA
firmware generation tool and the Platform Cable USB
hardware programming tool shown in Photo 2.
A microcontroller uses its system clock to assist in the
generation of PWM signals. Well also need a clock source
to lock in the PWM signal that the 64A will be sourcing to
the hobby servos. The LTC6900 is configured as a 1 MHz
clock source that can have its output frequency divided by
10 or by 100 with the positioning of a jumper. Our hobby
servo application will utilize the undivided 1 MHz clock
signal. To get 1 MHz out of the LTC6900s OUT pin, we
must ground the DIV pin (pin 4) with a jumper. The 1 MHz
output jumper configuration and the LTC6900 along with
its supporting circuitry are shown from a lizards viewpoint
in Photo 3.
We need to drive our hobby servos with a positive-
going pulse every 16 to 30 ms or so. The positive-going
pulse width must be able to be varied between a minimum
of 1 ms and a maximum of 2 ms within the 20 to 30 ms
window. With a center servo rotor position represented by
a 1.5 ms pulse width, its rather obvious that we must use
microsecond-based pulse widths to be able to better position
the servo rotor within its bounds of travel. Microsecond
timing falls into our lap here as each tick of our 1 MHz
clock is 1 microsecond (1.0 s) in length.
Now that we have a solid timebase figure of 1 s to
work with, lets assign bits fields to our pulse widths that
correspond to their numeric size. At a minimum, well
need to generate a 16 ms control pulse window which
must contain a positive-going servo positioning pulse with
a minimum pulse width of 1 ms and a maximum pulse
width of 2 ms:
16 ms = 16,000 s = 0x3E80 s = 0b0011111010000000 s
1 ms = 1000 s = 0x3E8 s = 0b001111101000 s
2 ms = 2000 s = 0x7D0 = 0b011111010000 s
Instead of using ABEL as we did in our Nuts and Volts
CPLD introduction, the programming language of choice for
this project will be Verilog. Verilog is very much like C and is
very easy for most anyone to pick up and run with. Verilog
supports numbers up to 32 bits in length. Judging from our
binary breakdown of the pulse widths, by stripping off the
leading zeros of the most significant bytes of each pulse
width bit field we can easily represent our largest pulse
width number (16 ms) with 14 bits. All of the rest of
our pulse width values (including the 2 ms servo
positioning pulse) can be represented with a maximum of
11 binary digits.
Every 16 ms servo control pulse window must begin
with a positive-going servo control pulse, which we know
can vary anywhere between 1 ms and 2 ms. We can easily
write some 64A code to produce the timing necessary to
realize a 16 ms servo control pulse window. However, from
experience I know that we must generate extra code to
reload the 16 ms value into the servo control pulse
counter at the end of every 16 ms timing period. Our
coding chore would be a little easier and the code flow
made easier to follow if we could eliminate the necessity to
SERVO 08.2008 37
PHOTO 3. The LTC6900s undivided output frequency is
determined by the value of resistor R18. Utilizing the
LTC6900 is a really neat way to put a highly stable and
programmable frequency source in a tight space.
The CPLD Servo Driver
Eady.qxd 7/8/2008 11:55 AM Page 37

L
E
D
4
3
.
3
V
R
1
4
3
9
0
C
L
O
C
K

O
U
T
S
W
A
R
1
8
2
0
0
K
S
W
A
1
3
.
3
V
3
.
3
V
L
E
D
2
R
1
5
3
9
0
+
C
3
2
2
0
u
F
R
1
3
9
0
R
5
2
0
0
V
R
2
L
M
1
1
1
7
-
1
.
8
I
N
A D J
O
U
T
R
1
3
3
9
0
R
3
2
0
0
R
8
1
0
K
L
E
D
7
J
1
+
5
V
D
C

-

+
9
V
D
C
C
8
.
1
u
F
C
9
.
1
u
F
T
M
S
L
E
D
4
C
1
.
1
u
F
L
E
D
5
L
E
D
3
3
.
3
V
C
5
.
1
u
F
R
1
6
3
9
0
R
1
7
3
9
0
U
1
X
C
2
C
6
4
A
1 2 3 4 5 6 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
2
9
3
0
3
1
3
2
3
3
3 4
3 5
3 6
3 7
3 8
3 9
4 0
4 1
4 2
4 3
4 4
I
O
1
/
G
C
I
O
2
I
O
3
G
N
D
I
O
5
I
O
6
V
C
C
I
O
1
I
O
8
T
D
I
T
M
S
T
C
K
I O 1 2
I O 1 3
I O 1 4
V C C
I O 1 6
G N D
I O 1 8
I O 1 9
I O 2 0
I O 2 1
I O 2 2
I
O
2
3
T
D
O
G
N
D
V
C
C
I
O
2
I
O
2
7
I
O
2
8
I
O
2
9
I
O
3
0
G
S
R
I
O
3
1
G
O
E
I
O
3
2
G
O
E
I
O
3
3
G
0
E
I O 3 4 G O E
V A U X
I O 3 6
I O 3 7
I O 3 8
I O 3 9
I O 4 0
I O 4 1
I O 4 2
I O 4 3 G C
I O 4 4 G C
L
E
D
9
1
0
0
R
6
2
0
0
L
E
D
9
3
.
3
V
L
E
D
3
T
C
K
R
7
1
0
K
R
9
2
0
0 3
.
3
V
C
1
3
.
1
u
F
R
1
0
3
9
0
T
D
I
L
E
D
7
C
1
1
.
1
u
F
1
.
8
V
S
W
B
R
4
2
0
0
L
E
D
6
L
E
D
5
C
1
2
.
1
u
F
C
4
.
1
u
F
L
E
D
1
L
E
D
8
R
2
1
0
K
1
0
+
C
7
2
2
0
u
F
L
E
D
8
T
D
O
R
1
1
3
9
0
J
2
J
T
A
G
1 2 3 4 5 6
S
W
B
C
1
0
.
1
u
F
+
C
2
2
2
0
u
F
L
E
D
2
V
R
1
L
M
1
1
1
7
-
3
.
3
I
N
A D J
O
U
T
3
.
3
V
3
.
3
V
L
E
D
6
R
1
2
3
9
0
+
C
6
2
2
0
u
F
U
2
L
T
C
6
9
0
0
1
5
2 3
4
V
+
O
U
T
G
N
D
S
E
T
D
I
V
38 SERVO 08.2008
The CPLD Servo Driver
Eady.qxd 7/8/2008 11:55 AM Page 38
reload the servo control pulse counter value. We can follow
the easier coding path by selecting a servo control pulse
window time that lies on a power of two boundary. The
power of two timing method allows the servo control
pulse counter to run continuously and reset itself without
intervention.
Ultimately, we want the servo control pulse counter to
roll over to zero and restart the servo control pulse width
timing period automatically. The closest power of two
boundary value that meets our 16 ms servo control pulse
window timing limitation is 0x4000. Thus, we will assign a
bit pattern that will allow our servo control pulse counter to
count from 0x0000 to 0x3FFF and roll over to 0x0000. Our
selection of 0x4000 as the servo control pulse window
count provides a 16.384 ms control pulse window. If we
find that we need more time to service more servos, we
could multiply our servo control pulse window time by two
and use 0x8000 as our servo control pulse count value.
Counting from 0x0000 to 0x7FFF would yield a 32.768 ms
servo control pulse window.
From what I have read, 40 ms is the typical minimum
servo control pulse window used by RF-based hobby servo
systems and is mandated by the FCC (Federal
Communications Commission) to limit interference. We can
service a bunch of hobby servos in a 40 ms window. Lets
go with the 32.768 ms servo control pulse window for
now. If necessary, we can always scale the pulse window
time back to 16.384 ms with the flip of a bit. Heres the
32.768 ms servo control pulse window bit pattern:
32,768 s = 0x8000 s = 0b1000000000000000 s
We will count from 0x0000 to 0x7FFF and roll over.
If that doesnt compute, remember that we clock on zero
and the zero clock counts as one clock pulse. So, well need
15 bits not 16 bits for our 32.768 ms servo control
pulse counter.
Transposing the Servo Math
The idea is to plant the servo position pulse (1 ms to
2 ms) at the beginning of the 32.768 ms servo control
pulse window. Lets begin by putting some code together
that will center the servo rotor:
module rcservo(
input clk_1mhz,
output reg pwm_out
);
Verilog is module based. Our rcservo Verilog module
has an input and an output. The output is registered,
which means it has the ability to emulate a flip-flop.
A registered Verilog component also has the means
of holding a value just as a D flip-flop can on its
complementary Q and outputs. The input signal which
has defaulted to a Verilog type of wire is derived from
our LTC6900 1 MHz clock output. Verilog wires cannot hold
values and can only be driven by an external force such as
a register or the output of a gate. Basically, a Verilog wire
is just like the copper wire you use to connect electronic
components.
Next, lets associate our pulse width numeric values
with some human-readable names using the Verilog
keyword parameter. Verilog parameters are equivalent to
C constants:
parameter minpulsewidth = 1000;
parameter servo_vector = 500;
All of our Verilog parameter values are in microsecond
units. The minpulsewidth Verilog parameter should be
obvious as to its use. The Verilog parameter servo_vector
represents the relative position of the servo rotor. We must
always have a minimum servo position pulse width of 1 ms.
So, adding 500 s (0.5 ms) to the minimum servo position
pulse width with the servo_vector value of 500 will give us
the 1.5 ms centering pulse we are looking for.
We calculated that we would need a total of 15 bits to
implement our 32.768 ms servo control pulse window.
Heres the Verilog instantiation of our 15-bit servo control
pulse register, which we will call window_32ms:
reg [14:0] window_32ms;
If you lay down a 1 for every bit position in the
window_32ms register (bits 14 through 0), youll end up
with 0x7FFF hexadecimal, or 0b111111111111111 binary.
When the window_32ms register contains 0x7FFF and is
incremented, it will roll over to zero. So far, so good.
Weve served up the potatoes. Now, lets bring the meat
to the table:
always @(posedge clk_1mhz)
begin
window_32ms <= window_32ms + 1;
pwm_out <= (window_32ms <
(servo_vector + minpulsewidth));
end
endmodule
The Verilog always @(posedge clk_1mhz) statement
does exactly what it says. Every time the positive edge of
the LTC6900-provided 1 MHz clock occurs, everything
between the begin and end block delimiters is executed.
The Verilog endmodule keyword signals the end of the
rcservo module.
The always @(posedge clk_1mhz) block statement is
SERVO 08.2008 39
< SCHEMATIC 1. The electronic playground is contained
within U1, the Xilinx XC2C64A. U2 is a 1 MHz clock source
that can be divided by 10 and 100 with the movement of
a jumper. The LEDs and switches are here because the
XC2C64A is part of a XC2C64A development board design.
The CPLD Servo Driver
Eady.qxd 7/8/2008 11:56 AM Page 39
40 SERVO 08.2008
similar to a while(1) C loop that runs continuously. Verilog
always blocks run freely and are triggered every time the
condition in the always block sensitivity list is met. In the
rcservo module weve just coded, the Verilog always blocks
sensitivity list contains a trigger for every positive edge
(posedge) of the incoming 1 MHz clock signal (clk_1mhz).
That equates to the always blocks code between the
Verilog begin and end block delimiters executing every
microsecond.
The <= Verilog operator in our always loop code tells
us that the logic associated with this operator is clocked,
which means all of the statements using a <= operator
are termed unblocked and execute in parallel. If youre
having trouble with this concept, think of a bunch of D
flip-flops with all of their clock lines tied to the same clock
source. When clocked, every D flip-flop will switch its D
input to the Q output simultane-
ously. So, everything to the right
of the <= operator will execute
and the results will end up to
the left of the <= operator
beginning with every positive
edge of the 1 MHz clock. The
window_32ms <= window_32ms
+ 1; Verilog statement is very
easy to understand as every
microsecond we are incrementing
the count that is being held
within the 15-bit window_32ms
register.
The pwm_out <=
(window_32ms < (servo_vector + minpulsewidth)); Verilog
statement takes a bit more thought. Associate logically high
with Boolean TRUE and logically low with Boolean FALSE as
you sound it out:
The pwm_out output pin is logically high as long
as the window_32ms register count is less than the
servo_vector value plus the minimum servo position
pulse width value.
We know that we want to generate a 1.5 ms servo
position pulse with our rcservo Verilog module. So, lets
sound out the pwm_out <= (window_32ms < (servo_vector
+ minpulsewidth)); Verilog statement again, but this time
well sound it out mathematically:
When the window_32ms
register value is less than
1500 decimal, the pwm_out
pin is logically high. When
the window_32ms register
value is greater than 1500
decimal, the pwm_out
pin is logically low. The
window_32ms versus servo
position value comparison is
made at every rising edge of
SCREENSHOT 1. This pulse width
is right on the money. Upon
sensing this signal, the rotor of
my JR Sport SM8 hobby servo
snapped to the central position.
SCREENSHOT 2. My JR Sport SM8
hobby servo didnt chatter while
under the control of this 32.768
ms servo control pulse window
timing. The 4.8 volt SM8 ran well
using the XC2C64As 3.3 volt I/O
supply voltage. However, Im sure
youll get the most out of the SM8
with a +5.0 volt servo supply.
Note the rising-edge-to-rising-
edge timing in this shot.
The CPLD Servo Driver
Eady.qxd 7/8/2008 11:56 AM Page 40
the 1 MHz clock, or once every microsecond.
As you can see, the pwm_out <= (window_32ms <
(servo_vector + minpulsewidth)); Verilog statement uses
the 32.768 ms clock, the servo_vector value, and the
minimumpulsewidth constant to create a complete PWM
signal. The proof is in the pudding. One slice of servo driver
pie is represented in Screenshot 1, which is the 1.5 ms
pulse our Verilog code generated. I captured the servo
rotor-centering pulse for you with a CleverScope.
Screenshot 2 is another CleverScope shot of the complete
32.768 ms servo control pulse window, including the 1.5
ms servo position pulse.
With the XC2C64A code, weve put together so far, we
can change the position of the hobby servo rotor by simply
changing the value of the servo_vector parameter. Valid
servo_vector values range from zero to 1000 decimal, with
a zero value producing a 1 ms servo position pulse and a
value of 1000 decimal pushing the hobby servo to its full
opposite extent with a 2 ms pulse. We have easily taken
control of one hobby servo using only our 64A CPLD. Why
not two hobby servos??
One XC2C64A. Two Servos.
You already understand what it takes to move a hobby
servo rotor with an XC2C64A CPLD. So, lets not waste
any time getting some double rotor code down and
running. First, lets add that second PWM output to our
rcservo module:
module rcservo(
input clk_1mhz,
output reg pwm_out1,
output reg pwm_out2
);
Were going to take a different turn here. Instead
of loading the servo rotor position manually via the
servo_vector parameter, were going to instantiate a pair
of servo_vector registers to hold our desired servo rotor
positions:
parameter minpulsewidth = 1000;
reg [14:0] window_32ms;
reg [9:0] servo_vector1;
reg [9:0] servo_vector2;
reg servo_direction;
Recall that our servo_vector values can range from
zero to 1000 decimal. That means we need 10-bits to
hold the maximum servo_vector values. The single bit
servo_direction register should give you a clue as to where
that different turn will take us.
Nothing has changed about the way we generate the
servo control pulse window:
//*******************************************************
//* GENERATE SERVO CONTROL PULSE WINDOW
//*******************************************************
always @(posedge clk_1mhz)
window_32ms <= window_32ms + 1;
We will build upon our single servo code to add the
second PWM output pulse. We laid the ground work for
the extra PWM output earlier in the rcservo module:
//*******************************************************
//* GENERATE SERVO CONTROL PULSES
//*******************************************************
always @(posedge clk_1mhz)
begin
pwm_out1 <= (window_32ms <
(servo_vector1 + minpulsewidth));
pwm_out2 <= (window_32ms <
(servo_vector2 + minpulsewidth));
end
Notice that we replaced the servo_vector constant with
our servo_vector register variables.
Up to now, weve been seeing double. Lets drive down
that road we made the different turn onto. I dont think
youll have any problem following the idea behind this
Verilog code snippet:
//*******************************************************
//* DETERMINE SERVO ROTOR DIRECTION
//*******************************************************
always @(posedge clk_1mhz)
begin
if(window_32ms == 0)
begin
if(servo_vector1 == 0 || servo_vector1 == 1000)
servo_direction = ~servo_direction;
if(servo_direction)
begin
servo_vector1 <= servo_vector1 + 1;
servo_vector2 <= servo_vector2 - 1;
end
else
begin
servo_vector1 <= servo_vector1 - 1;
servo_vector2 <= servo_vector2 + 1;
end
end
end
endmodule
Everything we do must synchronize to the beginning of
the servo control pulse window. So, we must always check
to see if the servo control pulse window counter register is
at zero as this is the synchronization point we must adhere
to. The idea is that if we have a new servo vector value to
enter, it must be entered at the beginning of a new servo
control pulse window.
The servo_vector values of zero and 1000 decimal force
SERVO 08.2008 41
The CPLD Servo Driver
Eady.qxd 7/8/2008 11:56 AM Page 41
the servo rotor to travel to its opposing extents. If we desire
to change direction of the servo rotor after it has travelled
from one extent to another, we should change the direction
of the servo rotor at the current extent of its travel. If a
direction change is deemed necessary, we need a method
of storing the current servo rotor direction. Thats exactly
what the one bit servo_direction register does. Were going
to move the servo rotor to one extent and then reverse
until we reach the opposite extent.
So, we dont care about a clockwise or
counter-clockwise value. We can simply swap the logical
state of the servo_direction register and go from there. The
servo_direction register value can be either positive, zero, or
negative. So, we need only concern ourselves with it being
positive or something other than positive. In our code, the
servo_sector values are incremented or decremented
depending on the logical value of the servo_direction
register. Also, note that the servo_sector1 and servo_
sector2 registers are incremented and decremented in
opposing directions. The hobby servos we attach to the
64A PWM output pins will continually spin their rotors from
extent to extent in opposite directions. We could have
keyed on the value of servo_vector2 instead of servo_
vector1 to determine our change of direction points.
Taking Some Control
Thus far, we have allowed the XC2C64A to run the
show. Unless your XC2C64A applications mission is to
continually move the servo rotors in a
predetermined pattern, youll probably
program your XC2C64A to take orders
from a host device or respond to an
external stimulus. You can choose to
communicate with a supporting CPLD
using RS-232, SPI, or I
2
C. You can even
make up your own host-to-CPLD
scheme. Lets keep it simple and put
together some Verilog code that reads
the logic levels on a pair of XC2C64A
input pins and commands the servo
rotor to stop, spin clockwise, or spin counter-clockwise. The
logic levels present on the input pins may originate from a
microcontroller or a set of switches. The idea here is to
show you how to code for handling events on the CPLDs
input pins:
module rcservo(
input clk_1mhz,
output reg pwm_out,
input [1:0] btn_input
);
parameter minpulsewidth = 1000;
reg [13:0] window_32ms;
reg [9:0] servo_vector;
To gain control of the servo rotor movement we must
declare a pair of input wires (input [1:0] btn_input) that are
actually connected to the XC2C64A CPLDs I/O pins. Since
were only controlling a single servo here, we only require
one servo_vector register to hold our desired servo rotor
position data. We still need to generate the servo control
pulse window and the servo position pulses. So, the code
that follows should not seem strange to you:
//*******************************************************
//* GENERATE 32ms SERVO CONTROL PULSE WINDOW
//*******************************************************
always @(posedge clk_1mhz)
window_32ms <= window_32ms + 1;
//*******************************************************
//* GENERATE SERVO CONTROL PULSES
//*******************************************************
always @(posedge clk_1mhz)
pwm_out <= (window_32ms <
(servo_vector + minpulsewidth));
The code we will use to process the btn_input inputs is
very much like Basic and C. Well employ the Verilog case
statement to decode the btn_input input logic levels:
42 SERVO 08.2008
SCREENSHOT 3. According to this pin
report, our 1 MHz clock is connected to
pin 43 of XC2C64A. The PWM output is
found at I/O pin 29. The least significant
bit of the btn_input pair of inputs
([x:0]) is located on pin 38 while the
most significant bit btn_input pin
([1:x]) is attached to pin 37.
Saelig www.saelig.com
CleverScope
Xilinx www.xilinx.comXC2C64A
Platform Cable USB; ISE WebPACK
SOURCES
The CPLD Servo Driver
Eady.qxd 7/8/2008 11:57 AM Page 42
//*******************************************************
//* DETERMINE SERVO ROTOR DIRECTION
//*******************************************************
always @(posedge clk_1mhz)
if(window_32ms == 0)
case(btn_input)
2b01: servo_vector <= servo_vector + 1;
2b10: servo_vector <= servo_vector - 1;
2b11: servo_vector <= 500;
endcase
endmodule
The only thing I really need to explain is the Verilog
case structure. Otherwise, the Verilog case block works just
like the C case block. All of the possible btn_input input
logic levels are represented except 2b00, whose omission
brands it as a dont care or do nothing logic level. The
2b in each case choice represents the number of binary
bits in the case comparison argument. The stated number
of binary bits follows. In our application, each bit in the
case comparison arguments represents a particular input
pin. The logic we have implemented stops the servo rotor
when both btn_input pins are logically low. The servo rotor
is centered when both btn_input pins are logically high.
If youre wondering how we know which btn_input pin
is associated with which bit, the ISE WebPACK generates a
pin list report like the one you see in Screenshot 3 with
every successful CPLD or FPGA design implementation pass.
The most significant bit of our register and wire bit range
patterns is represented by the left-most bit in the range
declaration ([most significant bit:least significant bit]). Now
you can see how the order of the btn_input bit range declara-
tion pattern ([1:0]) relates to the Verilog case comparison
arguments (2b01, 2b10, etc.) and to the XC2C64A I/O pins.
Rotating Out
Driving hobby servos is only one of the tricks a CPLD
can perform. In addition to turning servo rotors, you can
use a CPLD to expand the I/O capability of your host
microcontroller. You can also use a CPLD to replace a
number of discreet logic ICs in your next robotic design.
If you see CPLD logic in your robotic future, Ive provided
all of the source code we generated in this discussion as a
download package from the SERVO website (www.servomag
azine.com). You can get the hardware scoop on the XC2C64A
development board as a download package from the Nuts &
Volts website (www.nutsvolts.com). CPLDs are easy to under-
stand and easy to design into your projects. So, gather up a
couple of hobby servos, build up the XC2C64A Development
Board, and drive some servos with a CPLD yourself. SV
Fred Eady can be reached via email at fred@edtp.com.
SERVO 08.2008 43
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
The CPLD Servo Driver
Eady.qxd 7/8/2008 11:57 AM Page 43
44 SERVO 08.2008
New Robotic Storage
System has Super
Abilities
RoboVault Implements
State-of-the-Art Technology
W
hen we think of the future, we
imagine robots, voice-activated
technology, and biometric
recognition playing a role in our
everyday lives. It has arrived in South
Florida with the construction of
RoboVault the first high-tech
robotic storage facility of its kind.
RoboVault is a fully automated
robotic container retrieval system that
safely stores valuables ranging in size
from exotic automobiles to precious
artwork and other priceless items
(Not to mention wine storage). Its
unique combination of extraordinary
storage capabilities and high-tech
security features distinguishes
RoboVault from all previous
storage facilities.
RoboVault developer, Marvin
Chaney, is a futurist. He envisioned
RoboVault by anticipating the needs
of those living in and visiting South
Florida. Chaney has developed self-
storage facilities for over 25 years,
first in Detroit and then in Florida.
With the help of Westfalia Systems,
Inc., (the German company which
produced RoboVault's advanced
robotics technology), Chaney
embarked on creating the most revo-
lutionary storage facility of our time.
What makes RoboVault so
revolutionary?
1. RoboVault is designed to stand up
to anything thrown its way nature
or manmade.
The building itself boasts a solid
concrete roof, solid concrete and
steel reinforced tilt-up wall panel
exterior for maximum strength and
stability, and double pane hurricane
impact glass. As a result, the exterior
of RoboVault is designed to
withstand Category 5 hurricanes,
with winds up to 200 mph.
2. RoboVault can think.
With Human Machine Interface
(HMI) a means by which users can
interact with the computer system to
create specific commands
RoboVault can quickly respond to
security issues and perform rapid
diagnostics.
3. RoboVault can create its own
energy.
RoboVault's emergency back-up
generator can support the entire
building with 100% back-up of
electrical base for building safety
and HVAC for a business as usual
environment for up to 10 days after
loss of local service.
4. RoboVault can morph better than
a Transformer.
Storage containers are made of
structural steel mesh that allows for
proper air circulation and fire safety
codes. There are 456 in total ranging
from 5x5 , 5x10, 10x10, 15x10, and
non-subdivided modules of 20x10
and free-standing positions for larger
items, including exotic cars.
5. RoboVault knows who is there at
all times.
Its unprecedented combination
of technology includes:
24/7 security monitoring
Retinal scanning
Heart beat detection
Biometric recognition
6. RoboVault is as safe as a Swiss
bank.
RoboVault has an adjacent room
specifically for safety deposit boxes.
The space implements all of the
same security measures as the
storage, plus a few extra perks!
Private entrance for clients to
drive into the building and access the
safe deposit box through another,
privately monitored interior entrance.
Clients have full access to their
safety deposit boxes 24 hours a day,
seven days a week.
7. RoboVault is cultured.
The facility also boasts a wine
storage facility on the ground floor.
The space allows discriminating
collectors to incrementally expand
their personal cellar capacity.
Check out http://youtube.
com/watch?v=cQLdOKklflI for a
background video on RoboVault.
For more information, visit the
website at www.robostorage.com.
B
lo
B
low
O
u
t
w
O
u
t
S
p
e
c
ia
l
S
p
e
c
ia
l
$
9
.9
5
!
$
9
.9
5
!
WWW.SERVOMAGAZINE.COM
Showcase Aug08.qxd 7/9/2008 3:22 PM Page 44
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!
$146.
Ask for our FREE 96 page catalog
VISIT OUR ONLINE STORE AT
www.allelectronics.com
WALL TRANSFORMERS, ALARMS,
FUSES, CABLE TIES, RELAYS, OPTO
ELECTRONICS, KNOBS, VIDEO
ACCESSORIES, SIRENS, SOLDER
ACCESSORIES, MOTORS, DIODES,
HEAT SINKS, CAPACITORS, CHOKES,
TOOLS, FASTENERS, TERMINAL
STRIPS, CRIMP CONNECTORS,
L.E.D.S., DISPLAYS, FANS, BREAD-
BOARDS, RESISTORS, SOLAR CELLS,
BUZZERS, BATTERIES, MAGNETS,
CAMERAS, DC-DC CONVERTERS,
HEADPHONES, LAMPS, PANEL
METERS, SWITCHES, SPEAKERS,
PELTIER DEVICES, and much more....
ORDER TOLL FREE
1 - 8 0 0 - 8 2 6 - 5 4 3 2
THOUSANDS OF ELECTRONIC
PA RT S A N D S U P P L I E S
Robotics Showcase Robotics Showcase
SERVO 08.2008 45
Showcase Aug08.qxd 7/9/2008 5:21 PM Page 45
46 SERVO 08.2008
T
he first issue that you run into is that instead of just a
straight DC motor, the Vex motors are controlled with
a pulse width modulation (PWM) signal in addition to the
normal DC power. This is pretty common for servo and
stepper motors, but to control it correctly you need to
know both the frequency and the duty cycle that the motor
likes. In general, the longer the pulse, the faster the motor
goes, as illustrated in Figure 1.
So, the first task we had to deal with was
understanding exactly what type of signal to feed the
motor. We spent quite a bit of time searching the web for
details on the Vex motors, and after coming up with
conflicting answers (but with a general consensus), we
decided that it wanted a frequency between 50 and 100
Hz with a pulse width from 1-2 ms. We wanted to be
sure, so we went straight to the source literally by
hooking up the real controller to a scope and measuring
the output as we varied the motor speed with the
remote control.
What we found was that the controller generally runs
at 50 Hz (20 ms) to 55 Hz (18 ms) with a pulse width of
around 2 ms to go full forward and around 1 ms to go full
backward. At around 1.5 ms, the motor
stands still and anything outside of that
range produces nicely erratic results.
Building the Controller
With the data in hand, we needed to
carefully choose from parts which were
readily available in our area hence, we
went through the local RadioShack parts
inventory to luckily find that they still carried
the LM555 timer and all the capacitors and
resistors we needed.
With a 555, normally you get a nice
square wave with the proper resistors and
capacitors, but for this project we needed
to have a lopsided wave. To accomplish this,
all you need to do is put a diode into the
circuit shown in Figure 2 so that it discharges
faster in one direction. In the circuit we used,
As part of this years Science Olympiad
competition, the students were tasked with
building an electric car that would go a certain
distance and stop. While the Vex Robotics kit
from Innovation First is ideal for building such a
vehicle, the competition restriction on batteries
precluded the use of the 7.2V NiCad that the
Vex controller uses. Fortunately, this gave an
opportunity to experiment with other ways to
drive the Vex motor and control the car.
Frequency
Width
Frequency
Width
Shorter Duty Cycle
Motor Goes Slower (or Reverse)
Longer Duty Cycle
Motor Goes Faster
FIGURE 1
Build a
to run a
PWM CIRCUIT
VEX MOTOR
by John Toebes
Photo courtesy of www.boingboing.net.
Toebes.qxd 7/8/2008 10:50 AM Page 46
the calculations for the resistors were
pretty simple:
Time On = R2 * C1
Time Off = R1 * C1
Opting for simplicity, we stuck with a 1 F
capacitor and the closest we could get with
standard resistors. For R2, this came out to be
19.4K which can be made with three standard
resistors (10K + 4.7K + 4.7K). However, for
the R1 which controls the duty cycle we
needed a bit more accuracy than we could
get with the typical 5% tolerance resistors.
For this we knew we needed somewhere
around 1.8K. For this, we chose to combine
a standard 1K resistor with a 1K, 15-turn
potentiometer.
The only other challenging part we
needed was a way to connect the Vex motor
to the circuit. If you are using a breadboard to
build the circuit, the Vex motor cable is on
standard .1 centers and just plugs into the
breadboard. If you put it on a perfboard, there are
several options short of actually soldering the motor pins to
the perfboard:
1) Use an IC socket and just push the motor into the socket.
This works to experiment with, but isnt very durable.
2) Get a Vex extender cable (or the equivalent from a local
R/C hobby store) and solder it to the board.
3) Use an old IDE, floppy, USB block, or even an internal
audio cable that the Vex motor plugs into make sure you
find the right wires to connect into the board. Audio cables
work great as you can see in Figure 3.
The circuit is easy to lay out. As you can see in Figure
4, the students built the circuit so that parts occupy just the
bottom half of the
perfboard (the top half has
the original timer circuit
which controlled how long
the motor ran for). The
circuit isnt too sensitive to
parts placement, so just lay
everything out wherever you
have the most room.
The only special thing to
note is that the circuit in
Figure 2 has both a +5 and
+Vcc indicator. This is
because we found that in
testing the car, sometimes
the noise of the motor
affected the other circuits of the car. To clean this up, we
simply connected the +5 to the battery through a five volt
regulator (such as a 7805 RadioShack P/N 276-1770.
Putting It in Motion
Once you have everything assembled and have
powered up the circuit, you need to adjust the potentiometer
to get the optimum speed. You can do this by either
watching a scope connected to the outputs or tune it by
just watching the motor. You should be able to see the full
range of the motor from maximum reverse to idle to full
forward by adjusting the potentiometer.
Building on It
One obvious improvement to this circuit would be to
SERVO 08.2008 47
2
6
7
1
5 4
8
3
+
1
K
!
2
K
!
1
0
K
!
4
.
7
K
! 4
.
7
K
!
1F
0.01F
0V
+5V
Output
555 VEX PWM Controller
5
5
5
Black
White
Red
+Vcc
R1
R2
FIGURE 3
FIGURE 2
T
Toebes.qxd 7/8/2008 10:50 AM Page 47
48 SERVO 08.2008
provide a way to control the speed. If you only want a
couple speeds, R1 could be selected with a relay or a
transistor controlling which values are used for the circuit.
With an adjusted PWM circuit, you can then have the
fun of building a vehicle with other Vex parts and watch it
run. Of course, you will need to have a way of starting and
stopping the car, but thats a project for another day. SV
FIGURE 4
(1) Vex Robotics Motor Vex Robotics P/N 276-2163
(1) LM555 Timer IC RadioShack P/N 276-1723
(2) 4.7KW 1/4 Watt Resistor RadioShack P/N 271-1330
(1) 10KW 1/4 Watt Resistor RadioShack P/N 271-1335
(1) 1KW 1/4 Watt Resistor RadioShack P/N 271-1321
(1) 1KW 15-turn Potentiometer RadioShack P/N 271-342
(1) 1 F Electrolytic Capacitor RadioShack P/N 272-1434
(1) 0.01 F Ceramic Capacitor RadioShack P/N 272-131
(1) IN4001 Diode RadioShack P/N 276-1101
(1) Battery Holder for four D-Cell Batteries RadioShack
P/N 270-396
(4) D-Cell Batteries
Parts List
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
Toebes.qxd 7/8/2008 10:51 AM Page 48
by Jason Bardis
A Look at the Long Beach Grand Prix
SERVO 08.2008 49
Robot drivers are
better than
human drivers.
Which human?
Uh, that would be me.
What happened?
We finished an
autonomous run and
we switched out of
autonomous into
manual drive, and ...
uh ... kinda kept going.
What we did was we
warmed up the rail on
the straightaway for the
rest of the drivers. So,
we know its good. We
tested it its solid.
A
pril 20, 2008 may be known as
the turning point when robots
became better drivers than humans ...
or at least Lockheed Martin Advanced
Technology Labs engineer Adam
Solomon, when he took the wheel of
an unnamed robotic Toyota Prius after
its autonomous run and attempted to
guide it back into the pits at the 34th
Annual Long Beach Grand Prix.
Maybe the professional drivers at
the race would have fared better than
Adam. Then again, Id bet dollars to
diodes that none of the professional
drivers had built any robot cars either,
so lets call it even.
Robots? Engineers? Car race?
What? According to the events Fan
Guide brochure, ... were also going
Green, Green, Green! in 2008! The
Toyota Grand Prix will take a giant
leap into the future with an expanded
Lifestyle and Alternative Energy Expo
in the Convention Center and a
dynamic new Green Power Prix-View,
showcasing hybrid, electric, and
possibly even robotic cars on and off
the track, as well as energy-saving
devices for the home and lifestyle.
Green is certainly a key buzz-
word these days, around the world, in
all industries, and now robotic is
right up there alongside green too.
Well, its almost right up there along-
side green it still has the cautious
qualifier possibly even preceding it.
But what was this event really all
about? Three robotic cars took to the
track that day, all veterans of the DARPA
Urban Challenge (not just any old
competitors race fans were treated
to the 1st, 2nd, and 4th place finishers
out of the 89 teams that entered and
11 teams that actually qualified). They
showed off by doing a hot lap of the
Long Beach Grand Prix race track.
Well, maybe it was more of a warm
lap ... okay, how about tepid?
Compared to the deafening blurs
of Champ Cars averaging 93 mph, the
30 mph max speed robotic cars
seemed rather tame and pokey at
best, at least to the average race fan.
At worst, the average race fan just
didnt get it: Those cars must be
driven by the people following in the
chase cars. No, the chase cars are
there just to shut them off in an
emergency those cars are really
driving all by themselves. Yeah, I
know, but, still, theres gotta be
somebody driving it! Uhhh ... ?
This years Long Beach Grand Prix
included this resoundingly successful
Look Ma, No Driver!
Look Ma, No Driver!
Bardis.qxd 7/9/2008 12:52 PM Page 49
50 SERVO 08.2008
demo that robotic cars have no trouble running a race track.
Most SERVO readers know of the DARPA Grand Challenge
and Urban Challenge, and are happy to see another
successful autonomous course completion. However, most
typical race fans got their first taste of robot cars and,
hopefully, their appetites have been whetted. The fans saw
drivers pilot two green electric race cars and a green (well,
it was bright yellow ...) solar-powered car run a lap (a
relatively warmish lap at that!). Sadly, the I-look-far-cooler-
than-anything-that-Batman-has-ever-driven Mazda speed
alternative energy rotary engine car never got out of the
pits. These cars were followed by a big Chevy SUV and a
VW wagon navigating the course smoothly, confidently,
and precisely. They also saw a little Toyota Prius navigate
the course with some timidity, trepidation, and
nervousness. But which one won the race?
Bardis.qxd 7/9/2008 12:56 PM Page 50
Read on as I introduce you to the players:
BOSS
Named After: Charles Boss Kettering, founder of General
Motors R&D (Nothing to do with Bruce Springsteen.)
Former Life: 2007 Chevy Tahoe
Pedigree: 1st place in 2007 DARPA Urban Challenge
Team: Tartan Racing @ Carnegie Melon University, with
General Motors, Caterpillar, Intel, and Continental
Build Time: 14 months between receipt of the vehicle and
the DARPA Urban Challenge
Cost: Well, the prize for winning the challenge was $2
million. We were very happy to receive that. Aaaaand,
that went somewhat towards recouping your costs of
WE WERE VERY HAPPY TO RECEIVE THAT!
Turn-Ons: More is better!
Turn-Of fs: Subtlety
What has room for four programmers, a table with
cupholders and power outlets and Ethernet jacks, and 10
bays of Intel dual-core processors? Oh, and it goes 30 mph,
so the answer is not the server room down at corporate.
Its Boss. Aptly named, as it won the 2007 DARPA Urban
Challenge ... by a 20 minute margin. Note that a two-second
lead in a normal car race is a healthy margin! A 6,000 lb
Chevy SUV with such impressive performance could be
misconstrued as a bully, but it ran the Long Beach Grand
Prix track almost as smoothly as the human drivers. I spoke
with test lead Bot Bittner about the past and future of Boss.
Because they tried so many tests to compare different
subsystems and components, they didnt have time to integrate
the large racks of components seamlessly into the vehicle.
Boss future lies in using its successful technology not to make
fleets of robotic cars but to integrate various subsystems
into consumer and military vehicles: What youll see is a lot
of the subsets of the technology pulled out and introduced
into the vehicles that were driving every day. Youll end up
with a lot of early warning for accidents ... be able to tell us
about lane departure, accident avoidance, obstacle avoidance,
defensive driving ... Right now, I dont think people are
ready to see a car just driving itself down the road.
How many more DARPA Blank Challenges (where you
can fill in Blank with some sort of extreme-sounding
adjective) are in store for Boss? Carnegie Melon is pursuing
many related projects, but We dont expect to see any
more of this type of challenge out of DARPA. But, what it
has done is excited the community, generated an interest in
vehicle safety, autonomous driving, and all the benefits that
can come from this technology bringing it to society. One
example is the panheads mounted on the sides of the
roof, which look downward and left/right. At an intersection,
these sensors are used to monitor side traffic and obstacles
and help Boss decide when it would be safe to pull forward
into an intersection. I am so looking forward to these
sensors being commonplace automobile options, stuck up
there on the roof next to the satellite radio antennas!
As a mechanical engineer, I deal in the tangible; having
trouble grasping the movement of electrons in circuits or
SERVO 08.2008 51
Bardis.qxd 7/9/2008 12:59 PM Page 51
52 SERVO 08.2008
appreciating the elegance of a really efficient gosub routine
(heck, they probably dont even have gosubs in modern
programming languages, do they?). So, I asked Bob what
all the cool sensors on Boss roof and bumpers were:
Roof: Three GPS antennas to determine not only location
but also orientation of Boss; Velodyne HDL-64E 64-laser
LIDAR rotating at 10 Hz.
Roof Sides: Panheads for monitoring side traffic and obstacles.
Roof and Inside: Big red panic buttons to shut down and
stop the car.
Back Bumper Sides: Two close-range radars.
Back Bumper Center: Planar LIDAR and long-range radar.
Front Bumper: More radar and LIDAR short- and long-
range sensors.
Junk in the Trunk: Racks with 10 Intel dual-core processors,
data-logging equipment, a Planix that processes the GPS data
and also takes inertial motion and encoder data to determine
location when GPS signals are not available, the remote kill
device (contrary to the saw blade deployment components on
a BattleBot, this box is used simply to pause and unpause
Boss), and a whole lot of cable ties to keep it all tidy.
I asked Bob if theyve ever gone on joyrides faster than
the 30 mph speed limit imposed by the DARPA Urban
Challenge rules. I got the boiler plate I can neither confirm
nor deny ... routine, but he did point out that theyve set
up the hardware and software to work and react at 30 mph.
So, weve probably got a few years until these smart guys
can get their robot cars up to typical Champ Car speeds.
To make its driving look effortless and professional,
Boss uses prior knowledge of the course combined with
on-the-fly decision-making. The course can be outlined from
satellite images or by driving the course prior to the event
and recording waypoint locations. Of course, the more prior
information known, the more successful the course naviga-
tion will be. Dont roll your eyes the same applies to us
fleshy and indecisive humans too! For the DARPA Urban
Challenge, they were provided with a sparse set of way-
points, so Boss proved that it was versatile and robust by
still navigating DARPAs course (and the Long Beach Grand
Prix race course) excellently, although they still deferred to
a human driver to drive Boss to and from the track. Boss
probably would not have dealt well with the dozens of
people crowding around him, as well as the strange obstacles
(tents, strollers, golf karts, swing-out race track entry/exit
barriers, etc.) creating mayhem in and around the pits.
WERE WORKING ON THAT
(No, thats not its real name it truly does
not have a name call Marketing, quick!)
Former Life: 2006 Toyota Prius
Named After: See above
Pedigree: Riding on the coattails of its twin Little Ben
(fraternal twin, not identical twin, as Little Bens brother
has only two-elevenths as many sensors as Little Ben), who
placed 6th in the 2007 DARPA Urban Challenge, unless you
ask somebody on Little Bens team, who points out that
Little Ben placed 4th out of the teams that finished within
the rules. What rules were broken? They collided with
other vehicles. One in particular had it out for us, it seemed
they tried to hit us twice.
Team: Ben Franklin Racing Team: University of Pennsylvania,
with Lehigh University and Lockheed Martin
Build Time: 18 months between initial concept and DARPA
Urban Challenge
Cost: $250,000 of parts, and a lot of free student labor
Turn-Ons: KISS (the acronym, not the band with their
own army)
Bardis.qxd 7/9/2008 1:02 PM Page 52
Turn-Of fs: Human drivers
Adam Solomon, Lockheed Martin engineer and race
track barrier strength-tester, gave me the scoop on their Prius.
The first thing that jumps out and slapped me in the
face is the fact that this car looks so normal! I couldnt help
myself: This car looks kinda boring. But thats a backhanded
compliment! Honest! Just as Toyota set to achieve (and
did so) utter normality with the Prius to not freak out
potential customers who fear change and abnormality in
their daily drivers, so did the Ben Franklin team also achieve
remarkable normality with their robot car.
This was the backup car (backup not as in it goes in
reverse, but backup as in if we total Little Ben, weve
got a spare!) for Little Ben at the DARPA Urban Challenge.
Little Ben ran so well that this vehicle wasnt needed for
that event. In its understudy role, as on Broadway, it wasnt
equipped as well as the top-billed star was in order to
put on a standing ovation, throw-the-roses-on-the-stage
performance. This car had only two main sensors vs. Little
Bens 11. This bears repeating. According to Adam, with
only 18% of the hardware bolted to the outside of this car,
it could perform at 95% of the capacity of Little Ben. The
5% shortcoming is in this robot cars inability to perform
sensing of extremely close objects the Prius roof eclipses
the field-of-view of the one centrally-mounted roof sensor,
casting the area immediately around the car into shadow.
How is this possible? Software, software, software.
They refined their software over and over, making it more
efficient, more robust, and more powerful, until they had
this impressive driving capability-per-sensor ratio (Dont ask
me what the units are on that value ...). Did I also mention
that the star of their robot the software runs on a plain
old consumer MacBook Pro laptop? Their biggest problem
with their whole system was not any of their components
or code but the laptops rechargeable battery, which
gradually lost its capacity over the months of testing from
its frequent charge and discharge cycles. They learned their
lesson and now keep the laptop plugged in at all times.
Lockheed Martin is also continuing to use this Prius as an
active research vehicle, constantly refining their software.
Why? They have plans to transition their refined software to
other vehicles, including boats and military tactical vehicles.
Could they end up developing a ubiquitous operating
system for robot cars? Perhaps standardized tests of the
future will include the following analogy: Microsoft is to
consumer PCs as Lockheed Martin is to robot cars.
Like Boss, Little Bens sensor-challenged brother starts
with a map of the course and then uses those sensors to
determine exactly when to turn, how sharply to turn, and
how to deal with obstacles that cant be pre-programmed.
Adams analogy was your GPS unit in your car. It tells you
SERVO 08.2008 53
Bardis.qxd 7/9/2008 1:05 PM Page 53
roughly when to turn and gives you a semi-detailed set of
instructions, but its up to the driver to perform the fine-
tuned actions of stopping at a red light vs. going at a green
light vs. flooring it at a yellow light, braking when that
teenager on her cell phone cuts you off without using her
turn signal, staying in your lane, and keeping on the right
side of the island on that boulevard.
As far as the Prius knows (knows, depending on how
many human traits you like to attribute to your car ...), it
has no idea that it was turned into a robot. That MacBook
operates the cars controls (steering wheel, gas, and brake)
with a drive-by-wire system, rather than interfacing into the
Prius smart hybrid computer brain.
Forget the high mileage boasted on the dealer sticker
on the Prius. This vehicle averages 23 mpg in autonomous
mode. Probably not too different from the smooth-driving-
yet-hefty Boss Chevy Tahoe.
Adam gave me the run-down on the amusingly short
list of significant sensors bolted to The Prius With No Name:
Velodyne HDL-64E 64-laser LIDAR rotating at 10 Hz
(Yes, I copied and pasted that from the Boss description I
challenge you to find a successful robot car that does not
have one of these spinning domes bolted to its roof!).
GPS on the roof determines vehicle location.
Also hidden in the car are accelerometers and odometry
data, used when a good GPS signal is hard to find. Long
Beachs skyline, intertwined with the street race course, was
conspiring against the robot cars, but they didnt seem to
mind very much. For the Grand Prix, the team also kicked
their system up a notch by refining it to cruise at speeds up
to 28 mph up from their previous 15 mph top speed.
So, how did it work? The Prius was significantly slower
than the other two robot cars, paused at a few turns, tapped
the brakes as much as a cautious octogenarian on a busy
street, and even added some slalom action around some
imaginary cones on a straightaway. Look! The Prius is heating
up its tires on its warmup lap! the race announcer mused
over the PA. The 23 mpg mystery was solved! Although the
Prius driving performance was the least impressive of the trio,
the fact that it did so much with so little was astounding.
Furthermore, it could blend in as well on a normal city
street as the Google Maps street view camera car or a car
belonging to a serious mountain biking addict.
JUNIOR
Former Life: 2006 VW Passat station wagon
Named After: Presumably the little brother of Stanfords
bigger VW Touareg winner of the 2005 DARPA Grand
Challenge
Pedigree: 2nd place in 2007 DARPA Urban Challenge
Turn-Ons: Intel Inside stickers on cars, not just PCs!
Turn-Of fs: Fahrvergngen
Team: Stanford University
Unfortunately, SERVO didnt get a chance to talk with
anybody from the Stanford team. Based on the impressive
operation of Junior, were certain that theyre all really
smart and stuff.
Even if SERVO Magazine doesnt give me a free press
pass to the 2009 Long Beach Grand Prix, I am so going to
attend, crazy ticket prices be damned! It will be worth the
price of admission just to see what sort of evolutionary
leaps these robotic cars have performed during their
intensive off-season training program.
Whats next for robotic race cars? Adam Solomon
grins: This year was just a demo. I hear theyre hoping to
make this a race! SV
Dr. Jason Bardis is a Mechanical Design Engineer for Alliance
Spacesystems in Pasadena, CA. In addition to having three giant
nuts from his three BattleBots championships, he designed many
parts on the Phoenix Mars Landers trench-digging arm, which is
currently making its mark on Mars.
54 SERVO 08.2008
Bardis.qxd 7/9/2008 1:07 PM Page 54
O
ver the years, I have built several robots of various
shapes and sizes. Most of them were controlled by a
microcontroller of one form or another. I have even built a
few that were tethered to a desktop computer. Its time to
build a robust robot with an on-board PC computer. This
will not be a toy.
In this series, I am going to build two robots around
the RS-64 actuator: a six-wheeled robot utilizing six and a
three-wheeled robot utilizing only two of them.
The code I use to control these motors will be isolated
into a set of subroutines so that you may utilize other types
of drivetrains. For instance, you could use a brushless motor
controller and motors as long as the routines to control the
speed and direction of the motors are named the same.
This will allow you to plug them into this system without
modification. The same applies to most of the sensors that
I am going to use. While I will be using Maxbotix sonar
sensors, you should be able to make your own substitutions
as long as you work out the interface and return the
distance to your objects in inches.
The reason I am going to build these two types of
robots is simple. The cost of six RS-64 actuators is over
$1,700. The cost for two is $570. The cost difference is the
same if you are using some other motor/controller system.
The cool thing is that you should be able to build the three-
wheeled robot, then later upgrade to the six-wheeled bot.
Unlike other projects that I built well in advance before
publishing, this is going to be a work in progress. I will
provide you with step-by-step instructions, as well as a
source for all the components that I use, and even some
that I havent. I will show you various techniques and
options along the way, so even if you dont build the
exact same robot, you should be able to use much of the
information that I will provide. Lets start by writing down a
few requirements for the project.
Payload
The first requirement is payload. It is important that
you look at this requirement early on in the design process.
My robot will need to carry the following items:
Main Controller 5 lbs
Battery 8 lbs
Robot Arm and Accessories 3 lbs
Miscellaneous Extras 1 lb
As you can see, based on my estimates I will need a
robot that can carry 17 lbs in addition to the base, wheels,
and actuators. You may have noticed that I set the main
controller payload to 5 lbs. If you use a Pocket PC, then you
will only need to allocate 0.5 lbs. For a WinCE device, about
1.5 lbs will be needed. What I am trying to say here is there
will be a large disparity in weights of various controllers.
Keep this in mind.
Size
The type of controller you use will determine the size
of your robot. If you are going to use a 17 laptop, you will
WARNING!
Before you read any further, I feel it only fair to warn you that this
series is going to be akin to a very fast roller coaster ride.
!
by Michael Simpson
SERVO 08.2008 55
Simpson1.qxd 7/8/2008 11:28 AM Page 55
56 SERVO 08.2008
probably need a much larger platform than you would for a
Pocket PC. If you create one large base, you can place all
your items at the same level. This give you easier access
for modifications. In my case, I will size both robots to fit
a small laptop, battery, robot arm, and various other
electronics and sensors I might need. Better too large than
too small.
Base Materials
Use a material that is readily available and that you
have the right tools and skills for. I plan on using 1/4
hardboard. Its cheap and easy to work with using both
power and hand tools. You could use 1/4 acrylic, but its
prone to cracking and a little harder to work with tools. I
like a little compliance in my robot and the 1/4 hardboard
will be perfect. As an option, you could also use 1/4
pegboard. Something to keep in mind is that you will
probably build a couple variations of your robot. Since this
material is so cheap, the cost of going back to the drawing
board will be low. Once perfected, you can always switch
to a different material.
RunTime
I want my robot to be able to run for at least two
hours. The type of controller, motors, and batteries will
determine this. I plan on using a 14-18V battery pack rated
at 12,000-14,000 mAh. This should give me plenty of
runtime. This power source should allow you to power a
pocket PC or WinCE device, but at first glance it may seem
a little challenging to power a laptop. However, we wont
be using the screen on the laptop so you should get three
to six hours with that turned off.
Terrain Type
Think about what type of terrain you plan to operate
your robot on. In my case, I want to run the robot on
indoor surfaces such as tile or carpet. I also want to operate
the robot on my driveway, which is half paved and half
gravel. The wheel types, number of wheels, and ground
clearance will affect the type of terrain you can traverse.
Processing Power
Since I am planning on using a PC, we should have
plenty of processing power to do just about any task. Even
the WinCE and Pocket PC devices while not as powerful
as the PC will perform adequately. Each type PC, Pocket
PC, and WinCE device will have its own advantages and
disadvantages. For instance, the WinCE device runs
considerably slower than the PC, but has both power
and weight advantages.
The PC with its USB 2.0 ports has the ability to
interface with all components using one or more
USB2Dynamixel interfaces. While the WinCE device
does not have the ability to communicate with the
USB2Dynamixel, it does have an RS-485 interface that can
talk to the RS-64 actuators directly. For the Pocket PC, we
will have to create an RS-232 to RS-485 converter.
Again, these are very high level requirements and like
any project, are subject to change. For any robot project of
this nature, it is important that you do some research on
your own. Here are a few factors that will affect the exact
details of your project:
Availability of Components
Availability of Tools
Availability of Funds
Availability of Skills
Lets take a look at each of these in more detail.
Availability of Components
While I will provide you with a source of components
that I use on this project, you may or may not decide to use
FIGURE 1
FIGURE 2
Simpson1.qxd 7/8/2008 11:28 AM Page 56
them. If you decide to use different components, you will
only be able to use my instructions as a basic guide. This
could be as simple as using a different material for the
robot base, which will probably only have minimal impact
on the project. You could also decide to use a different
programming language for the controller or even a
different type of controller. In this case, none of the
programs that I provide will work on your robot.
Availability of Tools
If you are already into building custom robots, then you
most likely have some or most of the tools needed for a
project such as this. Later in this article, I will go over some
of the tools that will be needed. So, what if you dont have
the tools needed for a particular phase of the project? Does
that mean you cant build it? Absolutely not! You can
always ask a friend to help you out, or in some cases
such as building the main robot base you may be able to
get your local home center or hardware store to assist you.
Availability of Funds
If you decide to build the robots I present in this series
it will cost you $1,000 to $4,000 depending on the base,
computer, and extras you plan on adding to your robot. If
you have an old laptop or Pocket PC, you could probably
get started for under $500.
Availability of Skills
If you build the exact robot I present here and use the
code that I provide, you wont need much more than basic
mechanical skills. If, however, you plan on writing your own
programs or using a different controller, you will need some
programming skills. You will also need to be able to use a
soldering iron. Contrary to popular belief, you dont need
to be a rocket scientist or an electronic engineer to build
a cool bot.
Project Overview
Its time to give an overview of the project. At this
point, I wont go into any of the actual technical or
construction details. Think of it as an
introduction to the types of
components, tools, and techniques
I will be going over in more detail
as the series continues.
Brain
As I mentioned previously,
there are three types of computer
controllers that I intend on using on
my robot. The first is a laptop
running Windows Vista or XP. I
recommend at least a 900 MHz
machine like the HP shown in Figure 1. The second type is a
Windows CE device like the CUWIN3500 shown in Figure 2.
It has a built-in touch screen that would allow us to provide
some sort of human interface to our robot.
The third type is a Windows Pocket PC like the one
shown in Figure 3. I will be using an HP Pocket PC 2003
device running at 600 MHz.
I plan on using Zeus for the programming language for
this project. With Zeus, you can create a program that will
run on the Windows PC, Windows CE, and Windows Pocket
PC platforms with little or no changes to the code. Zeus is a
very simple Basic programming language with some
advanced features like built-in GPS processing.
In addition to the main controller, we need to access
our various sensors and motors through some sort of
interface. For the XP based controller, we can use the
USB device (the USB2Dynamixel) shown, in Figure 4. Its
manufactured by Robotis and sold by Crustcrawler.
Features of the USB2Dynamixel
RS-485 Interface Support
AX-12 TTL Serial Interface Support
RS-232 Interface Support
Shows up as a standard PC com port
Compatible with Windows 2000, XP and Vista
Several USB2Dynamixel interfaces can be used at once
Can be used as a limited USB to serial interface (does not
support control leads)
Built-in library for ZeusPro compiler
If you wish to create your own library using .Net, the
folks at Crustcrawler have developed a .Net Visual Studio
Project that will give you a good start. You can download
this from their website.
To make life easier, I have added a new library to the
KRMicros ZeusPro compiler. It is called USB2AX, and I will
be using it extensively throughout this series.
Since our ultimate robot will be using both RX-64
and AX-12s, you will need two USB2Dynamixels attached
to your computer. There is a small switch on the
USB2Dynamixel interface shown in Figure 5. This switch is
used to configure the interface for the type of bus that
you will be using. For all your AX-12s, you will set the
interface to TTL. For your RX-64 and RX-28, set the switch
FIGURE 4
F
I
G
U
R
E

3
SERVO 08.2008 57
Simpson1.qxd 7/8/2008 11:29 AM Page 57
58 SERVO 08.2008
to RS-485. Each bus has its own special connector shown in
Figure 6. The larger four-pin connector is used for the RX-64
and RX-28 actuators. The smaller three-pin connector is
used for the AX-12 and AX-S1 actuators and sensors.
Unfortunately, the USB2Dynamixel will not work on
Windows CE or Windows Pocket PC devices so we will have
to use a different interface. What this means is that the
Windows PC platform will be a little simpler to implement
as the hardware interfacing to the various devices has been
done for us. If you plan on using a Pocket PC or Windows
CE device and have access to a laptop, I recommend
building your robot with this controller first.
Base Configuration
I was playing with the Dynamixel RX-64 actuator when
the idea for this project came to mind. The RX-64 shown in
Figure 7 delivers a whopping 888 inch-ounces of torque. It
utilizes a RS-485 control system that allows you to daisy
chain and control up to 254 units. This actuator can run in
servo mode or in continuous operation, and can report
position, temperature, load, and input voltage. This will not
only allow us to detect collisions but the level of our
batteries, as well.
The RX-64 has a full metal gear set and utilizes an axis
bearing that will insure no efficiency degradation with high
external loads. It also features an aluminum servo arm. Its
ability to operate in full rotation mode makes it perfect for
our drive train. Its my plan to connect a 5.5 wheel to each
of six RX-64s in order to provide the best load distribution
for our base.
The RX-64 has a little brother called the RX-28 shown
in Figure 8. The RX-28 has a much smaller footprint than its
bigger brother. It does, however, utilize the RS-485 interface
and the same protocol so both the RX-64 and RX-28 can be
placed on the same bus. The features on these little gems
do come at a price. The RX-64 will run you $285 per
actuator. The RX-28 is a little cheaper at $200 each.
For the wheels, I plan on using the Du-Bro 550TV
wheel shown in Figure 9. These wheels are 5.5 inches in
diameter and have pneumatic
tires. By adding or removing air
from the tire, you can set the
amount of traction or firmness
desired. Later in this series,
I will show you step-by-step
how to attach this wheel to
the RX-64.
I will show you how to
build a six-wheeled robot by
attaching six of these wheels
to six actuators. For the
three-wheeled robot, we will
attach two wheels to two
actuators. This is a $1,140
difference in price, so it can
affect your ability to fund
this project.
FIGURE 5
FIGURE 6
FIGURE 7
FIGURE 8
FIGURE 9 FIGURE 10
Simpson1.qxd 7/8/2008 11:29 AM Page 58
Robot Arm
I want to add a small
manipulator. The manipulator I
have in mind is the Crustcrawler
AX-12 Smart Arm shown in
Figure 10. The Smart Arm
utilizes seven AX-12 Dynamixel
actuators. For more details,
check them out at www.crust
crawler.com/products/smart
arm/index.php?prod=12.
It is my plan to place some
sensors on the arm, as well as a
Pocket PC like the one shown
back in Figure 3. Even if I use
another controller, I think a face
mounted on a Pocket PC
controlled by the arm would be
very cool and invite a great amount of attention at the next
Robot Fest I attend.
Tools
Before I close out this introduction, I think its
important that you understand what kind of tools you may
need for this project. First, you will need both Philips and
flat head screwdrivers. I recommend various sizes. Many of
the machine screws I will use will be #10 and smaller, so
size your screwdrivers accordingly. A set of small wrenches
will also come in handy. In lieu of these, a small crescent
wrench will suffice.
There is no way of getting away from it... you have to
have a drill for this project. As a minimum, I recommend an
electric drill like the one shown in Figure 11. Look for a drill
with both variable speed and reverse. If you get one with a
clutch, you can use it to drive and remove screws. A drill
with a high/low gear option will give you more speed and
power options. There are times when a drill press like the
one shown in Figure 12 will come in handy. They give you
more control over the drilling process and allow you to use
various accessories like sanding drums. A drill press is not a
requirement but may come in handy. Check out your local
classifieds. You may be able to get a bench top model for
$15-$25. In addition to the drill, you will also need a set of
bits. You can purchase these one at a time or in sets.
In addition to the drill, I also recommend a rotary tool
like the one shown in Figure 13. You can use this for drilling
small holes, but they excel at sanding and cutting. Many
rotary tools come with a complete bit set. There are
many additional accessories available like cutoff wheels and
various grinding bits. Again, this is not 100% required but
can make some tasks easier.
For the electronics, you are going to need a pair of
needle-nose pliers and wire cutters. In addition, you will
need a soldering iron like the one shown in Figure 14.
When purchasing a soldering iron, make sure you get one
FIGURE 11
FIGURE 13
FIGURE 14
FIGURE 15
FIGURE 12
SERVO 08.2008 59
Simpson1.qxd 7/8/2008 11:30 AM Page 59
60 SERVO 08.2008
with disposable tips. Two power settings will also come
in handy. If the iron you purchase does not come with a
stand, you will need to get one. (I own a higher powered
soldering gun but find that I never use it.)
While you wont need a 25 measuring tape, I do
recommend a steel rule and set of calipers like the ones in
Figure 15. I prefer the digital calipers with both inch and
mm readings.
This project will require you to cut various small pieces
of plastic or wood. The best tool for this job is the scroll
saw like the one in Figure 16. For instance, we will need
to create a special wheel mount that is used for attaching
the wheel to the RS-64. This is a 2-1/4 disk and is easy to
cut with a scroll saw. You can also use a small band saw.
As a last resort, you could rough it out with a rotary tool,
then sand it to the exact size with a sanding drum bit.
You dont have to spend a lot of money on a scroll
saw. I have seen them on sale at Sears for as little as
$49. If you are going to do a lot of robot building, I
recommend including one in your arsenal of tools. I did
a complete review of scroll saws back in the February 05
issue of SERVO Magazine.
Once we start adding microcontrollers and sensors to
our robot, an oscilloscope will become invaluable to help us
set up and test our components. The Hitachi oscilloscope
shown in Figure 17 is a 100 MHz, four-channel scope that
I have used for years and it has served me well. Some
PC-based oscilloscopes have recently become available and
connect through your USB port. This helps keep the
price down and adds a few nice features. For instance,
the Bitscope device shown in Figure 18 is not only a
two-channel oscilloscope, it is also an eight-channel logic
analyzer. It can be used as a data recorder and is perfect if
you need to make hard copies of your captured signals like
the one shown in Figure 19.
Batteries
Probably the heaviest piece of cargo
will be the battery. This will be used to
power the wheel actuators, Smart Arm,
and various electronics. Originally, I was
thinking of a 12V sealed lead-acid battery,
but didnt think this would be enough to
drive the RS-64s for any length of time.
FIGURE 16
FIGURE 17
FIGURE 18
FIGURE 19 FIGURE 20
Simpson1.qxd 7/8/2008 11:31 AM Page 60
After much research, I decided on the use of an
external laptop battery. These seem to have the best
weight-to-capacity ratio. The battery shown in Figure 20
will provide 19V at almost 5 amps (around 133 Wh).
They are available from AtBatt.com and come with their
own charger and several tips to connect to various
devices. I will be going into more detail on this as the
series progresses.
Whats Next
In Part 2, we will start the base construction by build-
ing the wheel assemblies for both the six-wheeled and
three-wheeled robots. Well, thats if for this month. Be sure
to check out the Kronos Robotics website periodically for
any updates to this project at www.kronosrobotics.com/
Projects/megabot.shtml. SV
SERVO 08.2008 61
EX-106
Encoder
164
EX-106 14.8
84 106
155
0.182 0.143
NEW
Visual Studio
Microsoft
C/C++
Visual Basic
C#
Dy yn namix xe el SDK
Crustcrawler
AX-12 Smart Arm www.crustcrawler.com/products/
smartarm/index.php?prod=12
RS-64
www.crustcrawler.com/motors/RX64/index.php?prod=67
USB2Dynamixel www.crustcrawler.com/electronics/
USB2Dynamixel/index.php?prod=65
USB2Dynamixel .net API www.crustcrawler.com/
electronics/USB2Dynamixel/software/Usb2Dynamixel.zip
AtBatt.com
P133 External Laptop Battery
www.atbatt.com/product/7901.asp
KRMicros
ZeusPro www.krmicros.com/Development/
ZeusPro/ZeusPro.htm
ZeusLite
www.krmicros.com/Development/ZeusLite/ZeusLite.htm
BitScope
BitScope Model 100 www.bitscope.com/product/BS100/
Comfile Technology
CUWIN3500 www.cubloc.com/product/05_01.php
Maxbotix
Sonar sensors www.maxbotix.com
SOURCES
Simpson1.qxd 7/8/2008 11:31 AM Page 61
62 SERVO 08.2008
T
he typical amateur robot is
completely autonomous; its own
circuitry controls what it does and
where it goes. That circuitry can be as
simple as moving toward a light in the
room, or as complex as carefully
mapping and navigating the room
using vision and other sensors.
Yet, there is also plenty of call for
the remotely controlled robot. Such
telerobotics are commonly used for
police and military functions, and the vast
majority of combat robots are, in fact,
controlled directly by human operators.
The remote control link is typically via
radio frequency, but other means of
communications are used as well, such
as infrared pulses and even hard-wiring.
Well look at several popular
remote control techniques in this
installment of Robotics Resources.
Robot Radio Control
Radio control uses the airwaves to
send and receive a signal. Though
among the most expensive remote
control technologies to use, radio control
is perhaps the most flexible in terms
of range and the number of channels
that can be operated in one signal.
With the use of digital radio signals, for
example, its possible to communicate
a nearly unlimited set of instructions
between you and your robot.
Radio communications can be used
in robotics for two primary purposes:
1) To command the robot, either com-
pletely for all its discrete functions, or
to provide general commands for
basic operations, such as Run or Stop.
General commands may also be used
to select and activate programs already
resident in the robots computer.
2) To receive data from the robot;
usually either a video signal or some
form of telemetry.
Radio links are common for
discrete function control in combat
robotics. The operator of the robot
uses a radio control (R/C) transmitter
of a type similar to those for model
airplanes and cars (most such trans-
mitters are outfitted with a frequency
crystal for land use, rather than airplane
use). The operator controls joysticks
and/or switches in order to steer or
otherwise maneuver the robot.
Typical transmitters for model R/C
applications have four to six channels,
with each channel operated by the twin
joysticks, a switch, or other knob on the
transmitter. At a minimum, three chan-
nels are used: one each for the right and
left motors; and one for the weapon.
In some cases, its necessary to
receive signals from a robot. Video is
a typical application for receiving a
radio signal from a robot. Video
transmitters and receivers that operate
in the 2.4 GHz microwave range (such
as Bluetooth) are common and fairly
inexpensive. Range is limited to under
200 feet outdoors, or from 20 to 50
feet when used indoors.
When selecting a receiver and
transmitter for wireless data between
you and your robot, consider the
following:
Power output determines range.
Depending on your countrys laws,
higher power outputs may require
certification of the device, or even
licensing. In the US, most wireless
data modems operate at a power
output that does not require licensing.
Range contributes to maximum
data rate. Data rates can be fastest
over shorter distances, because the
received signal is clearer. Over longer
distances, the data rate must be
decreased in order to reduce or
eliminate errors.
The right antenna can greatly
increase range. Radio frequency
signals radiating from a properly
designed and mounted antenna will
travel further than signals from a
transmitter without an antenna. Be
sure to use an antenna properly
matched for the transmitter you are
using sometimes, its just a simple
wire, but consult the documentation
on how to position or wrap the wire.
Use a compatible antenna on the
receiver. The same rules apply to the
receiver as to the transmitter. Be sure
to consider the orientation of the
antennas on the receiver and the
transmitter if the units have stick
antennas, avoid having one point up
while the other points sideways.
Robotics Via
Remote Control
Tune in each month for a heads-up on
where to get all of your robotics
resources for the best prices!
RoboResources.qxd 7/8/2008 11:00 AM Page 62
Bluetooth, ZigBee, and
Other RF Modules
R/C transmitters and receivers are
channel based; that is, on one fre-
quency the transmitter controls a certain
number of channels, with each channel
dedicated to a specific function. In the
typical model airplane R/C transmitter,
for example, a joystick controls the up
and down action of a servo connected
to the planes ailerons. Another
joystick controls the servo connected
to the planes rudder, and so on.
Data modems provide for
completely digital communication. If
you have a laptop PC with a wireless
internet connection or a Bluetooth
headset for your cell phone, youre
already familiar with modern data
modems. Common types of data
modems used in amateur robots
include Bluetooth and ZigBee (the lat-
ter sometimes referred to as 802.15.4,
after the international protocol that
defines its standard). Both require a
set of transceivers for sending and
receiving data along a two-way link.
Depending on the specific device,
effective communication range is
hundreds of feet in free air; somewhat
less indoors where walls, doors, and
ceilings may obstruct the signal.
Bluetooth and ZigBee modules can
be duplex or two-way as opposed
to R/C transmitters and receivers,
which are only one way. Another plus
in their favor is that they are based on
industry accepted standards and
documentation on their use is widely
available from Internet sources and
manufacturers of the products.
There are a number of Bluetooth
and ZigBee modules directly suitable
for robotics use, such as the Parallax
EmbeddedBlue Transceiver. All they
require is a power source and the
data is provided via a parallel, serial,
or USB interface. Not all RF data
modules use Bluetooth or ZigBee
technology. There are a number of RF
modules that use other technologies,
some standard like 802.1 (Wi-Fi) and
some proprietary. You can choose the
module best for your application
based on whether you need such
features as longer range, true duplex
(two-way) communication, ultra-small
size, and so on. Check the Sources
listing for several companies that spe-
cialize in RF digital data transmission.
Alternatives to RF
Purchasing an RF transmitter and
receiver module is one way to provide
a communications link between you and
your robot. In addition, several ready-
made products can be hacked for their
RF systems and pressed into use as
radio links between you and your bot.
Walkie talkie. Many toy walkie
talkies include a code sender button
for transmitting Morse code. By
connecting the receiving to an AC
coupled interface and 567 tone
decoder, you can add simple on/off
control of your robot.
Garage door opener. Try to find a
used one thats being discarded; the
electronics the part you want last
longer than the mechanics. Hack the
receiver to work as an on/off control
for your robot.
Keyring (or keyfob) appliance
control. You can purchase a radio
controlled powered outlet at many
department and home improvement
stores. Hack the module to work with
your robot. The transmitter is a
keyring, with one or two buttons
(some control several modules).
Wireless car alarm kit. Two- and
three-function wireless car alarm kits
can be retrofitted for controlling a
robot. You can find them at auto
parts stores and weekend swap meets.
Infrared Remote
Control
A radio link isnt the only way to
wirelessly control a robot. Another
technology for one- and two-way links
is infrared control. This system has the
benefit of low-cost hardware, and its
relatively easy to interface to most
microcontrollers used in robotics.
The major components of the robot
infrared remote control system are:
Infrared remote. Most any modern
infrared remote control will work, but
... remote controls vary considerably in
the signal patterns they use. Youll find
it most convenient to use a universal
remote control (under $10 at a
department store). Specifically, you want
the universal remote to support Sharp
TVs and VCRs, of which 99.99% do.
Infrared receiver module. The
receiver module contains an infrared
light detector, along with various
electronics to clean up, amplify, and
demodulate the signal from the remote
control. The remote sends a pattern of
on/off flashes of light; these flashes are
modulated at about 38-40 kHz, in
order to reduce interference from other
light sources. The receiver strips out the
modulation and provides just the
on/off flashing patterns.
Computer or microcontroller. You
need some hardware to decode the
light patterns, and a computer or
microcontroller, running appropriate
software makes the job straightforward.
In operation, you press a button
on the infrared remote which sends a
coded light signal to the receiver
module. The receiver demodulates the
signal and extracts the code sent by
the remote control. The code is a
sequence of binary 0s and 1s, in the
same way a number or letter is repre-
sented in a personal computer. Your
microcontroller interprets the binary
sequences as a specific button that
was pressed on the remote control.
Wired Remote
Control
Perhaps the simplest form of
remote control is the wired controller,
such as an Atari, PC, or Playstation
joystick. These connect to your robot
via a set of wires. How you interface
the controller to your robot depends
on the type of control.
SERVO 08.2008 63
RoboResources.qxd 7/8/2008 11:00 AM Page 63
64 SERVO 08.2008
An Atari style joystick is a simple
switch contact controller. These are
among the easiest to interface to your
robot. Push the joystick up and the Up
switch closes. Push it to the left and
the Left switch closes. You connect
the wires for each switch to a
separate input pin on your robots
microcontroller and then read the pin
as you would any switch closure.
PC joysticks use potentiometers to
proportionally measure the position of
the joystick. There are a variety of ways
of interfacing these to a microcontroller,
including via an analog-to-digital input
pin (if the controller is so equipped),
through a resistor and capacitor (a
simple form of go/no-go analog meas-
urement), or a 555 timer where the
position of the potentiometer changes
the pulse width and/or duration of
the timer output. All three of these
techniques are fairly well documented
on a number of websites; use Google
or Yahoo to search for IBM PC joy-
stick interface (without the quotes).
Playstation remotes use a controller
for the Sony Playstation 2. You may use
wired or wireless controllers. The
controller outputs a complex digital
datastream that needs to be decoded
using a microcontroller. Lynxmotion sells
a low-cost adapter cable for the PS2
remote, so you dont have to cut off the
connector and solder the wires directly.
They also provide a programming tuto-
rial on interfacing the PS2 remote with
the popular Basic Atom microcontroller.
Sources
In addition to the sources listed
below, check out online and local hobby
store retailers that specialize in radio
control model airplanes and cars, where
you can find numerous transmitter/
receiver packages for operating R/C
servo motors via radio remote control.
Abacom Technologies
www.abacomdirect.com
Full resource of wireless
communications technologies,
including data modules (receivers,
transmitters, transceivers), antennas,
RF remote control, and more.
Bluetooth.com
www.bluetooth.com
Official Bluetooth technology
resource page. Includes several
technical papers for downloading.
Abacom Technologies offers transmitters, antennas, and everything
in-between for radio communications.
Lemos International specializes in Bluetooth, ZigBee, and RF data modems,
with numerous products in each category.
RoboResources.qxd 7/8/2008 11:01 AM Page 64
Digi-Key
www.digikey.com
General electronics online distributor
with selection of RF communications
modules (ZigBee, Bluetooth, etc.).
Innotech Systems, Inc.
www.innotechsystems.com
Innotech Systems provides
infrared and RF remote controls and
remote control systems. Some parts
have a minimum order.
Jameco
www.jameco.com
General electronics online distribu-
tor. Offers selection of Bluetooth and
other RF communications modules.
Lemos International
www.lemosint.com
Wide assortment of Bluetooth
and other RF data communications
products, including a compact
USB-based Bluetooth module.
Linx Technologies
www.linxtechnologies.com
Wireless made simple
technologies, including keyring
transmitters and specialty RF modules.
Lynxmotion
www.lynxmotion.com
Offers a Playstation 2 controller
interface connector, plus programming
tutorials for Basic Atom microcontroller.
Mouser Electronics
www.mouser.com
General electronics online distributor
with selection of RF communications
modules (ZigBee, Bluetooth, etc.).
Parallax
www.parallax.com
Offers educational resource kits
for exploiting RF communications
technology (e.g., Bluetooth), primarily in
conjunction with the Parallax micro-
controller product line, such as the BASIC
Stamp. Also sells a starter kit for experi-
menting with infrared remote control.
PC Remote Control (info page)
www.pcremotecontrol.com
Products to control your PC via a
handheld remote control. Interface
circuit examples and downloadable
communications software.
SparkFun Electronics
www.sparkfun.com
SparkFun Electronics carries
a fairly extensive selection of
Linx Technologies provides everything from chip-level
RF components to complete evaluation kits.
Among the hobby and experimenters boards from SparkFun
is a wide selection of Bluetooth and ZigBee modules.
SERVO 08.2008 65
RoboResources.qxd 7/8/2008 11:02 AM Page 65
Bluetooth and ZigBee modules and
development boards, with a variety
of interfaces, including RS-232 serial
and USB.
Xilor, Inc.
www.rfmicrolink.com
Check out Xilor, Inc. for wireless
remote controls (both RF and
infrared).
ZigBee Alliance
www.zigbee.org
ZigBee Alliance is the official
resource page for the ZigBee product
standard. SV
Gordon McComb can be reached via
email at robots@robotoid.com
CONTACT THE AUTHOR
Electronic Parts & Supplies
Since 1967
www.c-stamp.com
L
O
W

C
O
S
T
!
CONTROLLERS & ROBOT KITS SENSORS DISPLAYS
Free
Expert
Technical
Support
1 (800) 985-AWIT
E
a
s
y

t
o

C
o
n
n
e
c
t
L
O
W

C
O
S
T
!
LOW COST
Professional SW Dev. Tools
For the finest in robots,
parts, and services, go to
www.servomagazine.com
and click on Robo-Links.

66 SERVO 08.2008
RoboResources.qxd 7/9/2008 2:42 PM Page 66
W
ith all the various
programmers, tools, and
compiler options though, he
was getting confused. He wanted to
be able to program blank PICs, not
another companys chip where you
have to buy from a limited number of
sources. This ruled out the Basic
Atom, the PICAXE, and a few others.
What I hope to show you in this
article is the same thing we
emonstrated to the high school.
You can put together a great starter
package for under $25 using mostly
free samples and free downloads
from the Internet.
Requirements
The BS1 has an 80 command
limit, but the high school teacher
stated that many of the projects his
students worked on were very simple
and didnt require a lot of code space.
On the other hand, he wanted an
upgrade path to offer more space and
definitely more speed to his advanced
students. He also wanted to be able
to access the PICs built-in features
such as A/D and timers. As a simple
test, he asked if we could recommend
a package and offer a simple example
for driving an LCD module as a basic
demonstration. This took many lines
of code in the BS1, so he either needed
to use an expensive serial LCD module
or move up to a larger part like the
BS2 to do more with it. He stated that
hed seen sample code with a single
LCD control command that simplified
driving an LCD and wondered if the
PIC had that option built in. That was
the challenge he placed before me.
Based on these requirements, I
told him that we could show him
an LCD example with very little
effort, using a BASIC compiler
that will easily convert over his
existing code and offer an easy
upgrade path to full professional
PIC programming for his
students down the road. He
was very interested so he wanted
more detail.
Package Details
The package I put together
for him involved several key
components:
PICBASIC PRO compiler, sample
version
MicroCode Studio IDE
EZPIC JDM style serial port
programmer
WINPIC programmer software
PIC16F690 microcontroller plus
4 MHz resonator with capacitors
2x16 LCD module
Breadboard and wires
A high school teacher recently sent me an email asking for advice on the best
path to move from the BASIC Stamp 1 (BS1) module to Microchip PICs. He had
his students programming the BS1 Project Board (Figure 1) which is a very nice
board for the price. He was happy with that board as an entry point, but the next
step in the BASIC Stamp world was moving to the BS2 Homework Board, which is
a $45 development board. He hoped to keep it below $25. He thought maybe
programming a PIC microcontroller directly might be the best option since the
BS1 is based on that same family of microcontroller ...
FIGURE 1. BS1 Project Board.
Moving From BS1 to PIC
by William Smith
SERVO 08.2008 67
BasicBoardRobotics.qxd 7/8/2008 10:38 AM Page 67
68 SERVO 08.2008
4.5V battery pack
This project ended up going
beyond the $25 range, but only
because I included all the components
he needed along with the
breadboard, LCD, and battery pack.
Those were not part of his original
under $25 description. I put together
the demo unit and the sample
package and sent it to him. He was
very pleased with the results, so I
thought Id share this with the readers
of SERVO, as well.
Ill step through the details.
PICBASIC PRO
Sample Version
The PICBASIC Pro compiler (Figure
2) was selected for the compiler part
of the package. It is very easy to use
and a great language for someone
just getting started. It uses the same
format as the BASIC Stamp PBasic
language but produces a binary file so
you can program blank PICs. The
PICBASIC Pro compiler has advanced
over the years to become just as
powerful as any other professional
compiler. What helped with the
package was the fact that you can
download a free sample version of
this compiler from http://melabs.
com/pbpdemo.htm.
The sample version is limited to 31
commands but that is more powerful
than it sounds. Many of the features
you want such as driving an LCD or
reading a potentiometer with an
analog-to-digital port are reduced
down to a single command. That leaves
a lot of space in the 31 commands for
other things. A sample LCD example I
saw in the BS1 application notes took
27 command lines to drive an LCD.
That is a lot of space in the BS1 80
command limit. I knew this would be
the product for the school.
MicroCode Studio IDE
PICBASIC Pro is just a compiler,
though. It needs a development
screen to make it easier to write the
software. The BS1 has a very nice
interface with a single click compile
and program button. The MicroCode
Studio software handles this for you.
You can download this from the
author at www.mecanique.co.uk/
code-studio/index.html, but you
dont have to because the Microcode
Studio installation is included with
the PICBASIC Pro file you download.
When you install the PICBASIC PRO
software on your computer, it will
automatically offer to install the
MicroCode Studio software, as well.
After it is installed, you will be set up
to write your first program.
Figure 3 shows the MicroCode
Studio screen with the LCDsample.bas
code created for the demonstration.
PIC Programmer
Once you write the program
and compile it with PICBASIC Pro,
you need to send it to the PIC
microcontroller. This requires special
hardware known as a PIC programmer.
The BS1 doesnt require this since it
receives the tokenized code through a
serial connection. Most of the custom
chip options (like Basic Atom and
PICAXE) do something similar with
software known as a bootloader.
In the early days of PICs, the
hardware programmer was several
hundred dollars. This prompted
hobbyists to design their own. The
original Tait design was created by a
guy named David Tait. His design was
reproduced and sold by many people
for years. The Tait design required a
parallel port and a high voltage source
(16V) to program a PIC.
One of the more popular designs
to follow was the JDM design by Jens
Dyekjr Madsen that powers itself off
the PCs serial port which eliminates
the need for an external 16V supply.
Some laptops dont offer enough
voltage on the serial port, so it is
recommended to use the JDM
programmer on a desktop PC. This was
not a problem for the high school as
they were using desktop PCs already.
There are a lot of variations to the
JDM design. You can get schematics
and board layouts with a simple
Google search of JDM Programmer.
Beginnerelectronics.com offers a
programmer kit for $19.95 designed
FIGURE 2. PICBASIC Pro Basic Compiler.
FIGURE 3. MicroCode Studio IDE.
BasicBoardRobotics.qxd 7/8/2008 10:38 AM Page 68
around the JDM programmer with
some modifications. The assembled
programmer is shown in Figure 4.
This kit makes a great soldering
project for the student that will later
serve as the main programming tool
for using blank PICs in place of the
BS1 board. You dont have to rely
on this particular kit either. There
are other JDM style programmers
available from various sources,
including many different versions
offered on eBay.
Programmer Software
In order to use the JDM
programmer, you need software for
your computer to send the PICBASIC
Pro created file to the PIC micro-
controller. There are a few choices
available but our choice is the WINPIC
software that can be downloaded for
free from www.qsl.net/dl4yhf/
winpicpr.html. This software worked
the best with the MicroCode Studio
IDE based on limited testing. The
setup in MicroCode Studio is very easy
also, so the user can create that one
click compile/program feature.
When MicroCode Studio is
running, you set up the winpic.exe
software by clicking on the menu
option; View > Compiler and
Programmer Options to get the
window in Figure 5. Next you have to
click on the Programmer tab to add
a new programmer. You will see the
window in Figure 6 appear. Select
the Create custom program entry
and click Next.
The Add New Programmer
window will then pop up (Figure 7).
This is where you enter the name you
want to describe the programmer.
I chose winpic in this example to
match the software being used but
you can name it EZPIC or anything
else you desire. After that, you click
Next to move on. The window in
Figure 8 is where you enter the
executable file name for the
programmer. This time, you have to
enter winpic.exe. Once again, click
Next to move on.
The window in Figure 9 will
appear and this is where you tell
MicroCode Studio where to find the
winpic.exe software on your computer.
I suggest you click on the Find
Automatically button to allow
MicroCode Studio software to find it.
Or, you can click on Find Manually
if you know exactly where you put
the file. Finally, the next window in
Figure 10 is where we enter the setup
parameters for the WINPIC software
to automatically read the device and
program the PIC when you click on
the compile&program button in
MicroCode Studio. Set it up with the
following line /device=PIC$target-
device$ $hex-filename$ /p /q=5.
(Note the whole line doesnt show
up in Figure 10).
These steps weve covered will
allow you to write the software and
program the microcontroller, but now
we need to select that microcontroller.
PIC Microcontroller
For the microcontroller, I
recommended the PIC16F690 mainly
because it has all the features you
could want in a PIC microcontroller
and its supported by the sample
version of PICBASIC Pro. The part can
handle a lot more than the 31
command limit with its 7K byte
program memory, but its a common
part that is easy to find on eBay,
Mouser, or even get a few free
samples from www.sample.
microchip.com. I recommended the
DIP version which is part number
PIC16F690-I/P.
There are many free code
examples included with the PICBASIC
Pro sample version. You need to
modify some of those sample
programs though, to use them with
the PIC16F690. Ill show you what I
mean in the sample code covered
here. The PIC16F690 has an internal
oscillator and also an internal MCLR
pin pull-up resistor so all you need is
FIGURE 4. JDM EZPIC Programmer
(assembled).
FIGURE 5. Compile and Program
Options Window.
FIGURE 7. Add New Programmer Window. FIGURE 8. Programmer Executable Window. FIGURE 9. Programmer Path Window.
FIGURE 6. Add New Programmer Window.
SERVO 08.2008 69
BasicBoardRobotics.qxd 7/8/2008 10:39 AM Page 69
70 SERVO 08.2008
power and ground connections to
operate. To create the demonstration
unit for the high school, we used one
of our breadboards from Beginner
Electronics.com. The breadboard
circuitry included the power
connections and the connections to
the 2x40 LCD per the schematic
shown in Figure 11. We had a large
box of brand new surplus 2x40 LCDs
available, so we did the demo with
that LCD. (The same software will
work with any two line LCD.)
The software is shown in Listing
1. The first section that has all the
DEFINEs is required for the way we
wired up the LCD. This shows how the
PICBASIC Pro compiler handles the
setup in the background to make
the code easier to write. The final
example took 23 command lines, but
if we used a different PIC and used
the default DEFINE settings, then we
could remove the DEFINEs and the
program reduces down to 13 lines.
We are also writing to the LCD several
times within those 13 lines so this
is more efficient than other BS1
examples I saw.
The unique section of the code
required to use the PIC16F690 are the
special register setups shown below.
The sample programs may need these
same lines of code. These settings
make the pins digital instead of the
default analog mode. They also shut
off the internal comparator that is on
this part.
Set A/D ports 0-7 as digital
ANSEL = 0
Set A/D ports 8-10 as digital
ANSELH = 0
CM1CON0 = 0 Comparator 1 off
CM2CON0 = 0 Comparator 2 off
The rest of the program is fairly
simple to understand so I wont go
through it all. The point is the code
was short and simple enough to fit
within the 31 command limit with
more space for a few more functions.
What Does All This
Cost?
PICBASIC PRO compiler, sample
version (free)
MicroCode Studio IDE (free)
EZPIC JDM style serial port
programmer ($19.95 kit)
WINPIC programmer software (free)
PIC16F690 microcontroller (free
sample)
2x40 LCD module ($5.00 special at
BeginnerElectronics)
Breadboard and wires ($12.95)
4.5V battery pack ($3.00)
FIGURE 10. Programmer Parameters
Window.
Listing 1. PIC16F690 Driving
2x40 LCD Software.
BasicBoardRobotics.qxd 7/8/2008 10:39 AM Page 70
If you take out the LCD and battery
pack since those arent included with
the BS1 project board either, you end
up with a total cost of $32.90. Odds
are if you do any electronic work though, you already have
a breadboard so taking that out of the equation, the total
cost is $19.95 to get started programming blank PICs in
Basic. We sell the programmer assembled for $24.95 so
even if you choose to bypass the kit path, then we still
met the $25 target. Figure 12 shows the final package we
recommended for those who want to move from the BS1
to the PIC. Weve decided to offer this kit on our website
at www.beginnerelectronics.com for anybody getting
started. We also plan to include a discount coupon for the
full version of the PICBASIC Pro compiler to make that
transition less expensive. Check it out if you get a chance.
Conclusion
At the end of our discussion and review of the LCD
demo, the high school was pleased to have such a simple
option. The PICBASIC Pro compilers many sample programs
were a bonus that only required some modifications for the
students to use directly. We suggested they make a series
of homework projects to convert those files to fit the
PIC16F690. You could do the same to create a library of
code. This package didnt stop there, either. The PICBASIC
Pro sample version also supports the eight pin PIC12F683
and the 14 pin PIC16F688, along with a few 18, 28, and
40 pin parts. This gave the students several choices if they
needed a smaller or larger pin part.
The best part of all is the teacher could order one copy
of the PICBASIC Pro compiler full version and put that on
his computer. When the students needed more space for
their program, they could use the same language but get
more command lines by taking turns working on the
teachers computer.
The jury is still out if this will be their final choice, but if
you are just getting started building a robot or electronic
gadget of some kind that needs a microcontroller, I hope
what we put together for the high school will also help you
as you try to make the transition from Stamps to PICs in
your home lab. SV
FIGURE 11. LCD/PIC
Hardware Schematic.
FIGURE 12. PIC Starter Package.
microEngineering Labs www.melabs.com
Beginner Electronics www.beginnerelectronics.com
MicroCode Studio www.mecanique.com
WINPIC Software www.qsl.net/dl4yhf/winpicpr.html
Microchip Technology, Inc. www.sample.microchip.com
Resources
SERVO 08.2008 71
BasicBoardRobotics.qxd 7/8/2008 10:39 AM Page 71
72 SERVO 08.2008
Page72.qxd 7/9/2008 4:29 PM Page 72
Robot Builders Cookbook
by Owen Bishop
This is a book for
first-time robot
builders, advanced
builders wanting to
know more about
programming robots,
and students in
further and higher
education tackling
microcontroller-
based practical
work. They will all find this book a unique
and exciting source of projects, ideas, and
techniques to be combined into a wide
range of fascinating robots. $29.95
FIRST Robots: Rack 'N' Roll
Behind the Design
by Vince Wilczynski / Stephanie
Slezycki
The second annual
book highlighting the
creativity and process
behind 30 winning
robot designs from
the 18th annual
international FIRST
Robotics Competition.
The FIRST organization,
founded by Dean Kamen (inventor of the
Segway), promotes
education in the sciences, technology, and
engineering in collaboration with sponsors
including Motorola, Xerox, NASA, Delphi,
General Motors, and other companies
invested in science education. $39.95
Build Your Own
Humanoid Robots
by Karl Williams
GREAT 'DROIDS, INDEED!
This unique guide to
sophisticated robotics
projects brings
humanoid robot
construction home to
the hobbyist. Written
by a well-known figure
in the robotics
community,
Build Your Own
Humanoid Robots provides step-by-step
directions for six exciting projects, each
costing less than $300. Together, they form
the essential ingredients for making your
own humanoid robot. $24.95*
We accept VISA, MC, AMEX,
and DISCOVER
Prices do not include shipping and
may be subject to change.
The SERVO Webstore
Attention Subscribers ask about your discount on prices marked with an *
L
o
o
k
L
o
o
k
W W
h
a
t
h
a
t

s s
N
e
N
e
w w
Forbidden LEGO
by Ulrik Pilegaard / Mike Dooley
Build the Models
Your Parents
Warned You
Against.
Forbidden LEGO
introduces you to
the type of free-
style building that
LEGOs master
builders do for fun
in the back room. Using LEGO bricks in com-
bination with common household materials
(from rubber bands and glue to plastic
spoons and ping-pong balls) along with
some very unorthodox building techniques,
youll learn to create working models that
LEGO would never endorse. $24.95
SERVO 08.2008 73
SERVO Magazine
Bundles
Published by T & L Publications, Inc.
$57
per bundle
Save $10
off the
normal
price!!
Now you can get one years worth of all
your favorite articles from SERVO Magazine
in a convenient bundle of print copies.
Available for years 04, 05, 06, and 07.
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
Robot
Programmer's
Bonanza
by
John Blankenship,
Samuel Mishal
The first hands-on
programming guide
for today's robot hobbyist!
Get ready to reach into your programming
toolbox and control a robot like never before!
Robot Programmer's Bonanza is the one-stop
guide for everyone from robot novices to
advanced hobbyists who are ready to go
beyond just building robots and start
programming them to perform useful tasks.
$29.95
N N
E E
W
!
W
!
WebstoreAug08.qxd 7/9/2008 4:25 PM Page 73
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
programming experience is required. This
book includes access to all the
downloadable programs you need.
$34.95
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.
Limited time offer. Call 1-800-783-4624.
F
R
E
E
!
F
R
E
E
!
w
ith
a
n
y
w
ith
a
n
y
p
u
rc
h
a
s
e

p
u
rc
h
a
s
e

o
v
e
r $
1
0
0
o
v
e
r $
1
0
0
From HomoSapien to RoboSapien Before R2D2 there was R1D1
Oil prices getting
to you, too?!
Stay home,
read a book.
The online stor The online store @ e @
www www.ser .ser v vomagazine omagazine.com .com
To order call 1-800-783-4624
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
74 SERVO 08.2008
The Amateur Scientist 3.0
The Complete Collection
by Bright Science, LLC
There are 1,000
projects on this CD, not
to mention the
additional technical
info and bonus
features. It
doesnt matter if youre
a complete novice
looking to do their first
science fair project or a
super tech-head gadget
freak; there are enough projects on the
single CD-ROM to keep you and 50 of your
friends busy for a lifetime! $26.99
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
Phone-in
orders only!
SERVO
Magazine
T-Shirts
For men and women
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
WebstoreAug08.qxd 7/9/2008 4:27 PM Page 74
PROJECTS
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
BACK ROOM SPECIALS
With this kit, you now can see and
feel the future of energy generation
in your own hands!
Bionics for the Evil Genius
by Newton C. Braga
THE EVIL GENIUS
TACKLES BIONICS!
Step into the future -- (or
the past, if you have a
touch of Dr. Frankenstein
in your soul) -- with these
25 incredibly cool bionic
experiments!
Demonstrating how life
forms can be enhanced, combined,
manipulated, and measured with electronic
and mechanical components, these
inexpensive projects from internationally
renowned electronics guru Newton Braga
provide hours of fun and learning.
$24.95 Sale Price $ 22.95
Or order online www.servomagazine.com
SERVO 08.2008 75
Fuel Cell Projects
for the Evil Genius
by Gavin D J Harper
FUEL YOUR EVIL
URGES WHILE YOU
BUILD GREEN
ENERGY PROJECTS!
Go green as you amass
power! Fuel Cell
Projects for the
Evil Genius broadens
your knowledge of this
important, rapidly
developing technology and shows you how
to build practical, environmentally conscious
projects using the three most popular and
widely accessible fuel cells!
$24.95 Sale Price $ 22.95
The Definitive Guide to
Building Java Robots
by Scott Preston
The Definitive Guide to Building Java Robots
is for educators,
students, hobbyists,
and startups looking
for Java/hardware
interaction. This book
shows you how to use
your PC to build
robots, and how you
can interface with a
microcontroller to do
the basics. Youll learn
to design your robot to navigate, see, speak,
recognize your face, listen to you, and build
maps. $55.95 Sale Price $ 47.95
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 enjoy-
able 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. Sale $22.95
The SERVO BUDDY
KIT
An inexpensive circuit you
can build to control a servo
without a microcontroller!
For more information,
please check out your
May 2008 issue
or go to our website @
www.servomagazine.com
Subscribers Price $39.55
Non-Subscribers Price $43.95
PCB includes article reprint.
H Racer video clips can be found in the on-line store product descriptions!!
N N
E E
W
!
W
!
Buy both these books
together in the month
of August 2008
and
and save 10% off the list price. Plus get free shipping in the US!!
Call 800 783-4624 or order online @ www.servomagazine.com
List Price $29.95 Sale Price $ 26.95 List Price $39.95 Sale Price $35.95
The LEGO Mindstorms
NXT Idea Book
Building Robots with
LEGO Mindstorms NXT
S SA AVE 10% plus VE 10% plus
GET FREE GET FREE US US
SHIPPING! SHIPPING!
WebstoreAug08.qxd 7/9/2008 4:29 PM Page 75
T
he real world, what a place! The
smell of freshly mowed grass, the
breeze against my face, textures,
colors, shapes. The real world is
incredibly compelling to us. Life, from
plants to animals to other humans,
has an incredible draw for us. Weve
been finely optimized to survive in the
real world. Looking at a beautifully
rendered apple on a screen is a treat
for me, having been a part of the
computer graphics community for
longer than I care to remember. But
holding, touching, and biting into
the apple in my hand is an entirely
different experience. Primal and
glorious, a feast for my senses.
Though I started out in a machine
shop, much of my work life has been
spent in the virtual world. The journey
back to the physical world has been
very interesting. This, I think, is one of
the attractions of robotics. Rodney
Brooks showed us how to get robots
out of their heads and into their
bodies. The real world became the
model; reactions were faster and
subsumption provided an inkling of
the robustness that we see in nature.
It was hard not to see cockroaches in
a whole new light.
When we strive to create robots
that can exist in the same messy,
ever-changing, complicated world that
we live in, we are faced with
tremendous challenges. And through
the process of solving these
challenges we get back something
very precious in return. We get to
experience awe. In some ways, it is
the childlike awe of a thunderstorm
but now we have knowing mixed in.
Last summer, I was working on a
vision problem related to navigation.
A tremendous amount of processing
power is required to deal with the
per pixel optic flow algorithms that I
was exploring. Then a fly swept in,
neatly avoiding my hand and landing
on the edge of my cup all this
in a breeze.
Before my robotics adventures,
that fly was just a nuisance to be
eliminated. Now I sit amazed by this
self-contained, autonomous creature.
It runs on garbage, procreates,
navigates using optic flow, and
aerobatically escapes predators.
Understanding how hard these things
are to do, Im left in a state of
informed but profound awe.
A diverse collection of folks have
gathered at Ugobe to tap into bits of
this inspiring experience of creating
life. Part of the fun of robotics is that
you get to work with people with
vastly different skills. David Calkins
captured this perfectly in his column
(SERVO, June 08), What the Heck is
a Robot, Anyway? The need for us
to stretch to understand each other
is hard, but once you get through it
the teams are incredible, eclectic,
and electric.
Just to give you a taste of this,
here are a few of the crafts and
disciplines to be found at Ugobe:
illustrators, sculptors, animators,
model makers, CAD operators,
firmware engineers, electronic
engineers, computer scientists,
performance artists, ethologists,
cognitive scientists, synthetic
biologists, voice talent, recording
engineers, mechanical engineers,
writers, testers, spouses, children,
cats, and dogs.
Life Forms
At Ugobe, we are working toward
robotic technology that can capture
some of the key elements of life at
the level of a non-human animal.
While Im a great admirer of David
Hansons work on conversational
humanoid robots, weve initially
set our sights a bit lower on the
evolutionary ladder. From a technical
standpoint, even creating a realistic
robotic mouse is beyond the current
state of the art. With our life forms,
we are working to advance the level
of realism and autonomy of our
creatures while still making them
accessible to a wide audience.
Human-robot interaction is a
very active field right now. Many
projects in this area are examining
the role of affect and the underlying
emotion models. One of the problems
The Greatest
Playground of All
by John R. Sosoka
76 SERVO 08.2008
Appetizer.qxd 7/9/2008 1:47 PM Page 76
in these studies is the lack of a
platform that can express emotions
and intent while providing a rich
array of sensory interactions. We
have been providing a small number
of Pleos (our robotic dinosaur) to
universities for use in these studies.
This exciting work at UC Berkeley,
Georgia Tech, MIT Media Lab, and
other institutions will help our larger
robotics community to better
understand how robots and humans
can interact.
An interesting thought to
ponder is that, for most of human
time, animals were the primary
non-human robotic technology.
Humans have developed a special
working relationship with many
animals such as horses and dogs.
The easy and robust interaction
between a human and a service
animal is strikingly different from
the typical human-computer
interaction. Much of our technology
interface design is centered around
telling our technology exactly what
to do and how to do it in the
current specific situation. Yet our
interface with a horse or dog is
mostly about executing against a
shared understanding of what
each will do in a wide variety of
situations. Typically, commands only
need to occur when there is an
exception to the expected action.
Often, complex behaviors can be
invoked with motions as subtle as a
nod. What does this suggest for the
future of human-robot interaction?
Education
An important challenge that
we face today is providing an
interesting space to encourage
kids to pursue technical and
engineering studies. Robotics has
helped with programs such as
FIRST and BEST. Yet there are a lot
of technically savvy kids who are
not interested in the construction
and competition aspects. As the
robotics community expands to
encompass more character-based
robots, there is a new opportunity
to pull kids in with performance
art and synthetic personalities.
These opportunities may be just
the thing to keep kids engaged as
they cross the middle school divide
where so many shy away from
technology studies.
Our Place
Robotics at this moment in time
is incredibly exciting and diverse.
We have the chance to bring our
creations to life in the real world.
They must cope with all the richness
and complexity of our messy world.
We can create their personalities
and give them autonomy. They can
sense beyond the range of human
perception and communicate
across the world. And all the while
we have the opportunity to work
in this renaissance environment,
frantically grabbing ideas from
dozens of fields. Each day we are
learning things that, in any other
job, wed rarely discover. For me,
and I hope for you, this is the
greatest playground of all! SV
SERVO 08.2008 77
Appetizer.qxd 7/9/2008 1:50 PM Page 77
78 SERVO 08.2008
I
ve written recently about how
robots have changed over the years
from a historical perspective, but not
how weve actually constructed them.
Lets face it, robot stores were certainly
not around 40 years ago, and even
today, there are only a tiny fraction of
the stores wed like to see for our
robot experimenting as compared with
computers. There are hundreds of
thousands of computer stores and
companies around the world but only
a few actual robot stores, and less than
a hundred robot companies that deal
with robots for the experimenter. Most
of those companies here in the US and
Canada advertise in the pages of SERVO.
As I mentioned in my previous
column, we keep hearing about the
arrival of the robotics age, but many
seem to find that it really is not here,
but just around the corner. Military
robots, insect-like walking and
humanoid robot kits, and even floor-
sweeping Roombas now seem a bit
blas. Some experimenters are already
hanging up their soldering irons to
wait for the next killer app to come
along in another field.
We want working robots right
out of the box or an easy-to-assemble
kit. The creativeness of electronics
enthusiasts seems to be history. Its a
shame that some are changing their
interests to other areas of science.
Though the economy has taken a dip,
robotics truly is making amazing
strides. A great example is Sonys
once-shelved Aibo that is slated to
make a comeback this year.
Magazines such as SERVO, Nuts &
Volts, and the like, still have great
schematics and circuit board layouts,
but the pages of most popular
magazines that used to feature
build-it-yourself articles no longer have
construction articles for mechanical
projects. Building a desk or garden
shed from scratch is frequently
featured in many magazines, but not
how to build a garden tractor or other
mechanical projects. Certainly there
are crafty people still around such as
the stars of Myth Busters, but they
are a minority it seems these days.
Possibly the slow economy and
resulting tightened budgets will
resurrect the creative bent in us so
that home-built robots will once again
become popular.
Building Robots
in the 50s
We take for granted all the
motors, sensors, high power density
batteries, and microcontrollers
that are contained within todays
experimental robots. The model
airplane servo that so many builders
use as the base of their robot designs
was still in the future 60 years ago. In
those days besides a lucky find at a
war surplus store it was hard for a
robot experimenter to find good parts.
Some of the best sources for robot
parts were old appliances such as
washing machines, food mixers, electric
fans, refrigerators, record players, and
115 VAC power tools. Cars had fans,
windshield wiper motors, and various
wiring harnesses. Bicycles had neat
chains, bearings, gears, and even
hardened steel spokes. Boats and boat
motors had some great parts for
robots. Hardware stores had hinges,
door and cabinet hardware, plumbing
items, shafts, and threaded rod stock.
Some of the very best parts came
from jukeboxes and pinball machines.
Anything with parts that could be
moved usually had something that was
useful to robot builders. Growing up
in a small town (Mount Olive, NC), my
robot parts sources were empty coffee
cans and heating duct sections for
robot shells, plywood structures, and
various weird things from junkyards. I
also had access to jukebox parts and
other surplus things my brother got in
the big city of Raleigh. When I later
moved to Long Beach, CA near Los
Angeles, I was in robot builders heaven.
Notice that I did not mention any
sort of electronics. Of course, there
were no computers and therefore, no
printers, hard drives, and other similar
itmes. Certainly there were no
microcontrollers or ready-built motor
drivers available to experimenters.
Office machines usually consisted of
typewriters, mimeograph machines,
and various types of adding machines,
and had little usable parts for robots.
Entertainment electronics back then
were radios, TVs, movie projectors,
phonographs, and associated
amplifiers and speakers for these
items. Most electronic products were
hand-wired from point-to-point and
large capacitors, transformers, and
other components could be removed
for projects. The robot experimenter
Then NOW
a
n
d
ROBOTS HOW WEVE BUILT
THEM OVER THE YEARS
b y T o m C a r r o l l
Then&Now.qxd 7/8/2008 4:33 PM Page 78
was usually left to his or her own
imagination when it came to using
these types of parts for robots.
Early Robot Designs
Robots were frequently built upon
plywood bases, held together with
wood screws, nails, and glue in the 50s.
Most of the earlier robotic creations
were fairly large so wood seemed
natural for the shells of robots. There
were few sources for aluminum angle
extrusions so most people used steel
for the inner structures. Wheels may
have come from lawn mowers, the
occasional scooter, large toy, or roller
skates. Most motors available to
experimenters were not geared down
so belt and chain reduction systems
connected the motors to the wheels.
Many of the early robot designs used
the Ackermann type of steering that
is used in all cars instead of the
differential type of steering popular
today in robots. In this configuration,
the back (or front) wheels were used
for forward or reverse movement and
two of the wheels were connected
together to steer right or left by
another steering motor. Sometimes a
single wheel was steered by a steering
motor and that single wheel could
also be powered by a drive motor.
Figure 1 shows Grey Walters Elmer
robot and the gears that drive the
front wheel in this configuration.
Good old Gilbert Erector Sets
had some of the best parts to experi-
ment with mechanical configurations.
Figure 2 shows a set from 1949.
Notice that it features a remotely-
controlled robot and you can see the
AC motor sitting in the metal box with
the red gear train behind. The motor
supplied with these sets was not
only a gearmotor, but it had several
different geared output speeds. Since
it was an AC shaded-pole motor, you
were stuck with the speeds on the
side of the gearbox. Few robots had
any sort of variable speed control,
whether for the base or for any sort
of arms or other extremities. Cables
and even fishing line were frequently
used to transfer motion from one part
of an arm to the ends to allow weighty
driving motors to be located in areas
easier for the main arm motor to lift.
Early Robot
Intelligence
Not all of the earlier robots were
designed to resemble bipedal humanoid
forms as Grey Walters tortoise-like Elsie
and Elmer typifies. Experimenters in
these early days were just as interested
in Artificial Intelligence as we are today;
its just that there were absolutely no
forms of non-human intelligence (i.e.,
microcomputers) small enough to be
placed on a mobile platform. In the
50s and even the 60s, computers
filled complete rooms and drew
thousands of watts. Any sort of
intelligence had to be simulated
by using some sort of sensors to feed
back into an onboard relay or
hard-wired network, or to an external
computer.
Available sensors to the early
experimenters could be microswitches
with feelers to detect obstacles or CdS
or phototube sensors to
detect light sources or
ambient light. The intelligence
could be as simple (or
complicated) as: If bumper
switch c is in the closed
position, and the CdS cell 2
sees enough light to close its
relay, then send a signal to
relay AA to drive the
steering motor to the left.
It wasnt AI as we know
it today, but Walter did some
amazing things with two
tubes in his amazing little
robot. Those that followed
also built some surprising
robots with only relays, switches, CdS
photo cells, and lots of hard-wired
wire connections.
Early Robot Power
Early experimenters did not have
the luxury of todays vast array of bat-
tery chemistries, amp-hour capacities,
and low costs. Many robots of that
era used simple dry cells, usually the D
sized carbon-zinc type. AA cells were
called penlight batteries and there
were no alkaline types at that time. C
cells were smaller and less than half
the capacity of a D, yet cost the same,
so most experimenters used D cells.
The other batteries were smaller six
and 12 volt lead acid batteries, usually
the smallest battery that you could
find from a farm implement or similar.
There were no easily obtainable
sealed electrolyte lead acid batteries
so you just hoped your robot didnt
turn over and eat its innards and
everything in sight with the spilled
FIGURE 2. Gilbert Erector Set #12 and one half.
FIGURE 1. Grey Walters Elmer.
SERVO 08.2008 79
Then&Now.qxd 7/8/2008 4:34 PM Page 79
80 SERVO 08.2008
sulfuric acid. Some experimenters
opted for 110 volts from a wall plug
as AC motors were cheaper and
more available. Of course, the poor
robot was tethered to the wall by a
long cord.
Early Toys and
Toy Robots
Toys in the 50s began to have
battery-powered DC motors; usually
three volts. Remotely controlled cars with
a wired handheld remote control were
popular. Some toys even had attached
gear trains great for the slower speeds
with the greater torque needed for
robots. It was a real plus if you could start
with one of those tinny imported robots
and peel it apart to modify it with
moving arms and head, or change its
walking mechanism in some way.
There were no LEDs in those days,
but many toy robots had little colored
three volt incandescent bulbs for
eyes that could be used in another
location. Of course, the purists would
scream if the robot was even taken
out of its original box and would cry
in their beer if it was taken apart.
Todays Selection
of Robots
Lets jump ahead 50 years to the
present without even looking at the
robots available 20 or 30 years ago.
Money is a bit tight these days for all of
us but that hasnt stopped entrepreneurial
companies from developing some
amazing robots for experimenters.
For that matter, experimenters have,
themselves, developed some cutting-
edge robots that have been exhibited
at conferences and exhibitions around
the world.
Kids as young as kindergarten age
have learned robotic techniques and
programming that wasnt even
available to university level students a
few decades ago. Companies such as
LEGO, Robotis, Parallax, and others
have brought affordable and capable
robotics kits to youngsters to teach
them this exciting science.
What were the key ingredients
that made all this possible? Well, I
believe that all of us will probably say
that it was the personal computer and
the ability for the average person to
program simple microcontrollers to
control some fairly sophisticated
robots. The microprocessor came
first as the core of the PC, with the
microcontroller making the scene a bit
later. The latter did not require the
higher level languages needed to
communicate with humans; only for a
robot to understand a suite of sensors
and control some functions by driving
a motor(s). Simple languages and low
prices brought the microcontroller
within the budget of even the most
cost-conscious robot experimenter.
You might ask, What about the
mechanical aspects of robotics? A
robot is not a robot without some
sort of mechanical means to affect its
environment; whether that be to just
roam about an area or manipulate
something with an arm and end-
effector. Low cost motors, and
especially gearmotors, allowed
builders to add all sorts of movement
to their robots. The model airplane
servo that I mentioned earlier was a
boon for those who did not have the
mechanical expertise to hook up a
set of surplus gearmotors to some
wheels. These ready-made drive
motors were ideal to drive small table-
top robots when they were hacked to
obtain continuous rotation.
They also had the advantage of
being able to listen to a micro-
controllers generated series of pulses
right out of the box. Inexpensive
active IR and ultrasonic rangefinders,
compass modules, GPS receivers, color
detectors, image recognizing cameras,
and a host of other sensors provide
todays robot experimenters with
amazing capabilities.
Combat Robots
Another real turning point in
build-it-yourself robots was the growing
interest in combat robots robots that
battled each other until one finally
beat the other. In the beginning and for
many years afterward, there were no
kits available for these types of robots
so the prospective robot warrior had
to design and build his or her own.
The earliest combat robots had fairly
weak weapons and many went on to
win a contest by simply sliding under its
opponent to prevent it from moving
away. Virtually all of the combat robots
were and are remotely controlled by
model aircraft types of radio systems,
though there are a few purists who
have built some fairly sophisticated
autonomous robots for the combat
arena. The sport reached a pinnacle
when the Comedy Channel aired the
popular BattleBots series. The weight
classes greatly expanded from the initial
light-middle-heavy weights to categories
from ant weight to super heavyweight.
Robots Progress
to the Future
So, how have things changed
over the years in the way weve
constructed our robots? We started
out with simple sketches on paper
and many of us have progressed to
CAD programs and finite element
analysis software on our computers.
Grey Walters robot tortoise (amazing
for the time) was a simply constructed
thing with a bent tin structure and
household-type fasteners. We have
progressed from mostly plywood and
wood with steel inner structures to
plastic with aluminum structures, and
even titanium for many combat robots.
Battery technology has advanced
from the early dry cells and lead acid
batteries of Walters time past nickel
cadmium to expendable alkaline cells
and lithium polymer, lithium-ion batteries,
and even fuel cells. Robot power
started with inefficient series-wound DC
motors and evolved to the very efficient
rare-earth field and coreless motors of
today. Relay and hard-wired logic gave
way to microprocessors such as the
6502 and the latter microcontrollers
such as the 68HC11, PIC, and others.
Rudimentary light detection and
vision arose from the lowly cadmium
sulfide photo cell to true vision with video
cameras and intelligent CCD/CMOS
cameras such as the CMU cam. The
dream of affordable speech recognition
systems is now a reality for our robots.
Have we reached the epitome of
robot evolution? Our robots cannot
only recognize our faces but they can
respond to our voices and commands
Then&Now.qxd 7/8/2008 4:34 PM Page 80
with their own speech. Many can walk
upright just like us and have dozens of
motors/servos to create many motions.
Some even move about on two side-by-
side balancing wheels or a roller skate-
like foot like Rosie (Figure 3) on the old
Jetsons cartoon series. It seems as if we
do have the ultimate robot available
today... or do we? Well, its not quite
like the myth that is often told that the
director of the US Patent Office over a
century ago handed in his resignation
stating that everything that can be
invented has been invented.
We have made some amazing
strides in technology, but we have many
huge leaps and bounds ahead of us.
Todays batteries have incredible power
density but they remain one of the
major pitfalls of creating a true home
robot that has the physical power of a
similar-sized human. Hondas Asimo
must walk around with a huge
backpack battery in order to operate
for less than an hour (Figure 4) The
energy crunch of today may actually
produce as a side product a very high
density battery that will have the
capacity to power future robots.
The latest rare-earth field DC motors
are powerful with several horsepower
available in fist-sized packages, but
tomorrows electro-chemical muscles
on the drawing boards may be the
answer for future humanoids. Wheels
not withstanding, most of the functions
and motions on a complex humanoid
robot can more easily be accomplished
by linear actuators much like our muscles.
Our shoulder, elbow, head, and similar
motions use our powerful chemical
powered muscles to produce partial
rotation of our joints.
Artificial robot muscles
that have long been a
dream of scientists and
labs around the world
are now becoming a
reality. The available
microcontrollers and
microprocessors are
becoming more versatile
and cheaper, but possibly
something on the order of
Isaac Asimovs positronic
brain may be on the
horizon. Unlike the DRAM
memory that I paid an
extra $40 to upgrade
my Rockwell AIM-65
computer from 1 KB to
4 KB back in the early
80s, memory is dirt cheap these days.
A GB of DRAM is less than $50 and
Flash memory is as cheap as $50 for
8 GB a million times cheaper!
Times may be a bit tough these
days, but the skys still the limit for
some fantastic home-designed and
built robots. SV
All Electronics Corp. .........................45, 66
AP Circuits/e-pcb.com ............................48
AWIT ..........................................................66
Boca Bearings .....................................71, 66
Budget Robotics ......................................77
CipherLinx Technologies .........................66
CrustCrawler .............................................19
Electronics123 ..........................................45
Hitec ..........................................................43
Innovation First ...........................................3
Jameco ......................................................12
Lorax Works ........................................45, 66
Lynxmotion, Inc. .......................................82
Maxbotix ...................................................66
Mini Robotics ...........................................66
Net Media .................................................83
Parallax, Inc. ...............................Back Cover
PCB Pool .............................................66, 77
Pololu Robotics & Electronics ..........25, 66
RoboBrothers, Inc. ...................................44
Robo Development .................................35
Robotis ......................................................61
RobotShop, Inc. .................................23, 66
Saleae ........................................................45
Solarbotics/HVW .....................................18
solderbynumbers.com ......................13, 45
Sparkfun Electronics ..................................2
Super Bright LEDs ....................................66
Technological Arts ...................................66
Vantec .......................................................48
Weird Stuff Warehouse ...........................45
Advertiser Index
FIGURE 3. Rosie from
the Jetsons. FIGURE 4. Honda's Asimo.
SERVO 08.2008 81
Looking for a GIFT or maybe just something special for yourself?
Check out our website to find all of our other robotic items for sale!
Then&Now.qxd 7/8/2008 4:34 PM Page 81
Full Page.qxd 7/9/2008 4:09 PM Page 82
Full Page.qxd 4/29/2008 4:05 PM Page 83
backcvr.qxd 7/9/2008 10:10 AM Page 84

You might also like