Tạp chí Servo
Trang 2Let 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 SparkFun’s 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
Sharing Ingenuity
W W W S P A R K F U N C O M
Trang 3Introducing Logic, the new Logic Analyzer with SPI, Serial, and I2C Now shipping for $149.
Problem Seen Problem Solved.
Trang 4Robothon Robot Combat 2008
28 Results and Upcoming Competitions
Robot Profile
26 Micro Drive
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
Build a Self-Balancing Scooter
Trang 5by Balakumar Balasubramaniam and Wendi Dreesen
This inexpensive system lets you monitor your (or your robot’s!) rhythm and stride pattern.
Part 3: Base Assembly.
SERVO TankBot
by Ron Hackett
This time, take a look at centering the TankBot’s servo motors and implementing a Universal TV remote for control.
PAGE 48
PAGE 74 Features & Projects
Trang 6430 Princeland Ct., 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, N Hollywood, CA 91615
PUBLISHER
Larry Lemieux
publisher@servomagazine.com ASSOCIATE PUBLISHER/
Dan Danknick
dan@teamdelta.com CONTRIBUTING EDITORS
Jeff Eckert Tom Carroll Gordon McComb David Geer Dennis Clark R Steven Rainwater Fred Eady Kevin Berry Michael Simpson Chris Savage Wendi Dreesen Fulvio Mastrogiovanni Shane Colton Thomas Kenny Blake Hooper Rob Farrow William Smith Ron Hackett Balakumar Balasubramaniam
CIRCULATION DIRECTOR
Tracy Kerley
subscribe@servomagazine.com MARKETING COORDINATOR
WEBSTORE
Brian Kirkpatrick
sales@servomagazine.com WEB CONTENT
Michael Kaudze
website@servomagazine.com PRODUCTION/GRAPHICS
T & L Publications, Inc.
All Rights Reserved
All advertising is subject to publisher’s approval.
We are not responsible for mistakes, misprints,
or typographical errors SERVO Magazine assumes
no responsibility for the availability or condition of advertised items or for the honesty of the advertiser The publisher makes no claims for the
legality of any item advertised in SERVO.This is the
sole responsibility of the advertiser.Advertisers and their agencies agree to indemnify and protect the publisher from any and all claims, action, or expense
arising from advertising placed in SERVO Please
Mass Customization
I’m convinced that the future of
robotics — especially service robotics
— is tied to the development and
acceptance of mass customization
Consider the typical challenges faced
by an enthusiast in creating a
complete robot First, there’s the
hardware platform — from the
supporting infrastructure to the drive
train to the effectors Unless you
start from scratch — a costly and
time-consuming affair — you must
identify and purchase a crawler or
roamer or other platform suitable to
your needs However, have you ever
tried mixing and matching an arm
from one manufacturer with the
body of another? Even if it’s possible
to readily bolt the effector securely to
the main body, there remain issues
from electrical connectivity to how to
best compensate for the extra weight
and shift in the center of gravity
Then, there’s the issue of sensor
selection — from US range detectors
to IR radar Again, this is a task- and
cost-dependent selection, assuming
what you need is even available
off-the-shelf There’s also the power
system, communications system, and
all-important computational
hardware and software to consider
Typically, you must either cobble
together a unique assemblage of
components from a variety of
vendors or buy a pre-configured
robot from a single vendor that’s (at
best) a compromise On top of it all,
because your final robot is a unique
assemblage of components, sensors,
effectors, and software, the software
routines crafted by another developer
will probably require significant
modification before they’re useable
in your robot
Other industries facing the samechallenges turned to the masscustomization model, often withastounding commercial success Forexample, take Dell and Apple Whenyou order a PC from the Dell website,you scroll through pages describingoptions and prices You addwhatever features you can’t livewithout — while knowing thatregardless of your choices, themachine will boot and run yourfavorite programs The Apple websiteoffers many of the same designoptions — including drives withvarious capacities, DVD and CDplayer/recorder options, extramemory, video memory, and monitorsizes This is possible because eachcomponent manufacturer abides byindustry standards
Mass customization has beenapplied successfully to other, lessobvious industries, as well Forexample, one of my interests isbuilding, refurbishing, and playingelectric guitars However, as withrobotics, designing a guitar involvescareful consideration of myriadfactors Critical issues range fromneck size and geometry and thenumber and configuration ofelectronic pickups, to thecomposition of the body All of thesefactors and more affect the tone andplay-ability of a guitar Furthermore,
to put the pieces together requires
an expensive set of specialized toolsand the expertise to use them
The mass customizationcompanies catering to custom guitarbuilders (such as
Mind / Iron
by Bryan Bergeron, Editor
Trang 7Perform proportional speed, direction, and steering with
only two Radio/Control channels for vehicles using twoseparate brush-type electric motors mounted right and leftwith our mixing RDFR dual speed control Used in manysuccessful competitive robots Single joystick operation: upgoes straight ahead, down is reverse Pure right or left twirlsvehicle as motors turn opposite directions In between stickpositions completely proportional Plugs in like a servo toyour Futaba, JR, Hitec, or similar radio Compatible with gyrosteering stabilization Various volt and amp sizes available.The RDFR47E 55V 75A per motor unit pictured above.www.vantec.com
STEER WINNING ROBOTS
WITHOUT SERVOS!
Order at
www.FirstAct.com) take care of the standards issues,
allowing you to focus on appearance and geometry The
universe of possible components isn’t available to you,
but the component selection is generally rich enough to
create a custom guitar suitable for any budget As a
result, with a click of the mouse and credit transaction a
custom guitar can be at your doorstep in a matter of
weeks No need to fully equip a woodworking shop or
learn how to wire your own pickup coils, and (given the
skill) you can play music written for any other electric
So, if mass customization can work for other
industries, why has it been slow to take off in robotics?
One factor is the lack of a deep-pocketed Dell or Apple in
the world of robotics A few hardware platforms have
been widely accepted by the enthusiast community — the
Parallax BoeBot comes to mind However, most robot
models sell in the hundreds unless they make it to the
game/entertainment market
The underlying issue is, of course, the lack of an
industry standard robot configuration (akin to the PC) or
a proprietary design with a devoted following (akin to the
Apple Mac) Certainly, standards have been advanced to
assist in the development of reusable robot software
components (such as the Microsoft Robotics Studio) and
several vendors offer platforms ready to be populated
with components But there are no real robotics
standards from a body large enough to enjoin the entire
consumer robotics industry, such as the IEEE
So, what can we do, as mere enthusiasts, to nudge
mass customization of robotics along? Do what
developers in other industries do: Identify best of breed
and then integrate them into a good product line The
first hurdle is, of course, defining “best,” given each
component manufacturer has a stake in declaring their
product as such
Take a moment and imagine what you’d do, given
unlimited access to commercial robotic components and
systems What’s the best platform out there for small
service robots? Medium sized? What are the best (i.e.,
most affordable, easily programmed, compatible, etc.)
controllers? Sensors? Motors?
As a first step in developing industry recognized
standards, a consortia of companies and developers could
interface the best out there and then provide options to
suit different classes of users If you or your
group/company is up for the challenge — or currently
engaged in the challenge — then please drop me a line
SV
Trang 8Stereo Vision System
Introduced
If your bot or other homebuilt
device needs 3D vision, check out the
Surveyor SVT™ : a camera,
dual-processor Wi-Fi system geared for
robotics, embedded image processing,
and Web-based remote monitoring
Surveyor (www.surveyor.com)
points to features including on-board
programmability, Wi-Fi connectivity,
easy sensor and actuator interface,
open source architecture, and a list
price of $550 as key attributes
You may note from the photo
that the SVT employs Analog Devices’
Blackfin processors, which are
designed for such things as
multi-format audio, video, voice and image
processing, etc (details at www.ana
log.com) According to Surveyor
literature, the system takes “full
advantage of the processor’s power
efficiency, optimized video
instruc-tions, high speed video interface, and
easy interface to peripheral devices.”
It incorporates two BF537 32-bit
Blackfins, two Omnivision OV9655
1.3 megapixel cameras, PWM motor
control, various interfaces, and
3.3V and 5V regulation for battery
operation You also get a Lantronix
Matchport 802.11bg radio, all of
which takes up only a 2.5 x 6 x 2 inch
volume and consumes less than 2W
Programming can be via Windows,
Mac OS X, or Linux
Bee Safer on the Road
At the recent CEATEC Japan
show, Nissan (www.nissan-global.
com) unveiled its concept for
automotive safety in the form of theBiomimetic Car Robot Drive, alsoknown as BR23C According toNissan, it is based on lessons learnedfrom the “humble bumblebee,”
specifically the bee’s vision system
The insect’s compound eyes canspot obstacles in a 300°+ range, allowing
it to fly safely within its personal space
In the automotive version, Nissan’sLaser Range Finder (LRF) system covers180° and has a sensor range of 2 mtoward the front The LRF calculatesthe distance to another object andsends the data to an onboard micro-processor, which translates it into acollision avoidance strategy But a beecan bumble up, down, or sideways toavoid other bees, whereas the BR23Ccan only move in two dimensions andonly within the limitations of the wheels
Presumably, the operating range of
2 m is a prototype limitation, as it wouldappear advisable to detect a pendingcollision with a bit more time to react
Let’s say you’re driving toward a phone pole or other stationary object at
tele-60 mph (88 ft/sec) and detect an cle at a distance of 10 ft That wouldallow only about 1/10 sec reaction time
obsta-— enough time for an airbag to deploy,but not so hot for braking or swerving
Nissan says the device “only needs
to process inputs every few seconds,and act on that.” Hmmm In any event,the company hopes that the system will
cut the number of accident fatalitiesand serious injuries to Nissan drivers byhalf by 2015, as compared with 1995
And Bee Careful of Flying Objects
Another ostensible offspring ofthe genus Bombus is the KillerBeeunmanned aircraft system, which isbeing provided to the US Navy andMarine Corps by a team made up
of Swift Engineering and Raytheon
(details at www.killerbeeuas.com).
It looks more like a manta ray leapingthrough the surface of the gulf, butit’s considerably more lethal thaneither one when connected to com-bat and command control systems.According to a recent announcement,
“KillerBee has the ability to insertpersistent intelligence, surveillance,and reconnaissance (ISR) into the bat-
tle space and rapidly deliveractionable intelligence tocombatant commanders.” Late in September, aRaytheon flight operationscrew simulated a combatenvironment by deliveringthe KillerBee system to
a remote location viaHumvees In less than 45minutes, the crew set up
by Jeff Eckert
The SVT™ dual-camera, dual-processor stereo vision system.
Courtesy of Surveyor Corp.
Nissan’s BR23C uses compound “eyes” for collision avoidance Courtesy of Nissan Motor Company
Advanced Technology Center.
The KillerBee — a fully autonomous UAS — will be used by the US Navy and Marine Corps for both ground-based and ship-launched surveillance and reconnaissance Courtesy of Raytheon Corp.
Trang 9the system and launched the UAS.
The team then executed the
opera-tional scenario (details not revealed)
and safely retrieved the UAS
Specs are sketchy, but we did find
out that KillerBee is fully autonomous,
with no piloting skills needed by the
operator Maximum takeoff gross
weight is 164 lb, and it’s powered by
an 8 hp engine fitted with a
two-blade prop The stall speed is 45 kt,
and loiter speed is 55 kt Mission
endurance is 15 hr, and it has an
impressive range of 972 nautical miles
AUV Hovers Underwater
Researchers at MIT (www.mit.
edu) have revealed the new Odyssey
IV — a small, inexpensive robo sub that
can hover like a helicopter, which
should be really handy for deep-water
oil explorers, marine archaeologists,
oceanographers, and other folks who
need to loiter undersea for long periods
of time Whereas previous Odyssey
models could operate only while
moving forward continuously, the IV
can stop anywhere in a water column
and constantly correct for currents
and obstacles This makes it useful
for things like making detailed
inspections of an offshore oil
plat-form and photographing flora and
fauna around an undersea vent In a
sea trial completed off Woods Hole,
MA, it performed at depths of up to
6,000 m It can also be fitted with amechanical arm, allowing it to grabsamples and perform manipulations such
as twisting a valve or clonking a lobster
on the head Odyssey IV is pretty swift,too, with a top speed of 2 m/sec
The ultimate goal is to develop aversion that can stay underwater for
up to a year, collect and transmit data,and ultimately return to its home basewithout the need to surface at all
RoboVox: All Talk
For journalistic purposes, it is sionally necessary to be flexible with thedefinition of a robot, and in the case ofRoboVox we sag from flexible to flaccid
occa-A creation of artist Martin Bricelj, the 8
m colossus doesn’t move or do anythingrobotic, but at least it looks like anautomaton Lest you leap to the conclu-sion that this is merely a pitiful cry fornotoriety from a starving artist, notethat it is presented as a socially relevantvehicle for freedom and self-expression
According to the creator, “Its purpose is to serve as a tool for anindividual whose voice usually getslost in the sounds of the mass, the
society An individual can send a textmessage using his mobile phone tothe dedicated RoboVox’s number.Upon receiving the SMS, RoboVoxsays out loud the statement, theprotest, the declaration of love, orwhatever the message may read, thuslending its voice to the anonymousindividual.” If you’re impressed, youcan purchase RoboVox merchandisesuch as airline bags, T-shirts, and talk-
ing soft toys Just log onto www.
robovox.co.uk and take your pick It
may be the perfect Christmas gift forthat relative who has everything SV
R o b y t e s
Schematic shows Odyssey IV — a
small, inexpensive robotic submarine
that can hover in place Courtesy
of MIT Sea Grant AUV Lab.
RoboVox appears in downtown Maribor, Slovenia.
Trang 10The basic EPAM is a rubber sheet
made of a custom-formulated
elastomer, explains Ilya Polyakov,
a senior mechanical engineer at
Artificial Muscle, Inc., creators of the
EPAM The polymer is applied so that
electrodes plate the rubber sheeting
on both top and bottom As voltage
is applied positively and negatively
through these electrodes, the
dielectric rubber — which doesn’t
permit the flow of electricity —
produces an electrostatic force
This force pulls the electrodes
together, pushing the EPAM out
side-to-side at tenss of
pounds-per-square-inch This actuation is then
harnessed for practical uses, including
robot muscles
“Because our muscle membrane
squeezes out proportionally to the
electrical field applied, we can simplycontrol the amount of movement,”
says Polyakov
Harnessing EPAM Properties
One of the most common building blocks using the EPAM is the universal muscle actuator (UMA) configuration, which is a jumping-offpoint for more complex applications
This configuration attaches two EPAMsheets/films at their centers, with alightweight spacer between them
“Each stack of film is attached to
a frameso it can be mounted Eachstack is also attached to an outputdisk which transmits the force andstroke of the expanding film to someload in order to perform work,”
explains Polyakov One practical usefor EPAMs and UMAs is in valves.Existing valve systems convert highspeed rotary motors running at thousands of RPMs to low speed linear motion for valve parts thatmove a few feet per second
The EPAM actuator eliminates themechanical steps necessary for thespeed conversion by offering lowspeed linear motion in the initialinstance This technology is called aroll configuration actuator, whichemploys a large stretch of artificialmuscle film/membrane wrappedaround a compressed spring
The spring pushes the cylinder ofwound film into tension, Polyakovexplains “Once in tension, the application of the electric field to the film causes it to relax and produce a force imbalance betweenthe spring and the connected films,
Contact the author at geercom@alltel.net
by David Geer
Artificial Muscle (EPAMs)
Today, Robotic Applications to Follow
Electroactive Polymer Artificial Muscles (EPAMs) are a new actuating/motion technology based on polymers that react to electricity The new actuators are useful across applications where motors are not as efficient or are simply not feasible
The valve on the left is an OTS proportional solenoid valve The one
on the right is EPAM powered with identical flow specs, and a directly attached power supply board It weighs 1/7th the original unit and operates
at 1/10th the power.
This larger solenoid coil at left is used
in commercial pneumatic valves
The coil at right — a 9.5 mm actuator stack based on EPAM technology
— is capable of the same workload
at a fraction of the commercial solenoid’s mass and volume The commercial part weighs 70 grams compared to the EPAM’s 8.
This small piece of hardware uses EPAM
technology to auto focus optical lenses
in mobile/cell phone cameras,
according to Polyakov A 9.5 mm EPAM
actuator positions the lens based on
data from a CMOS sensor The
hardware is encircled by a flex circuit
power supply at 1.3 kV The unit is
specifieded to fit the standard SMIA
9.5 mm phone camera form factor.
Trang 11causing movement.”
These actuators are made up of
only the EPAM membranes, a spring,
and end caps, which are cheaper,
simpler, and lighter than the several
parts and the electric motor otherwise
required to do the same job
Further Applications
Like motors convert rotary
movement to linear today, EPAM
technology will be used to convert
repeated linear motion into rotary
motion, such as is seen with a crank
and pistons in an internal combustion
engine — but much more cheaply
and efficiently in a more compact
size and space
“We can also perform accumulated
or step-by-step linear motion One of
the simplest examples of this is in theinch worm, where the actuatorrepeats a motion many times to produce linear travel much greaterthan the singular stroke of the actuator,” says Polyakov
In a sort of opposite application,EPAM is used to convert linear torotary motion This technology is arotary, one-way clutch which enables
a shaft to rotate in only one directionwhile the other side of the clutch isconnected to an arm which, in turn,
is connected to an EPAM actuatorthrough a linkage apparatus
“As the actuator oscillates backand forth, one direction of movementlocks the rotary clutch to the shaft,resulting in the shaft rotating a few degrees, while the other lineardirection unlocks the clutch andallows the actuator and linkageassembly to move free of the shaftreturning to the beginning of thecycle,” summerizes Polyakov Everystroke of this EPAM actuator
implementation turns the shaft a littlebit A continuous, high speed shaftrotation is therefore achieved throughmany thousands of cycles
Conclusion
While there is a view to the future
of EPAM with robot muscles in mind,there are some near-term obstacles.One is that the range of motion doesn’t scale for EPAMs as easily asthe force emitted by them “Our actuator stroke range is on the order
of 10 percent,” says Polyakov Robotsclearly require a much broader range
of motion SV
GEERHEAD
This is a demonstration model of a
buckling frame actuator which applies
extreme tension to the EPAM film The
frame is pliable enough that the film
buckles (the actuator’s starting form is
flat as compared with the apparent
curved wing-like form shown here) “This
forces the bent frame to act as the bias
spring in equilibrium with the film,”
explains Polyakov As the actuator
activates, the frame flattens out the film.
“The wings have been added to amplify
the effect/result of the motion They also
make for a very cool demonstration!”
This large stack of several, round actuators has been formed to activate
an automobile accessory clutch such
as an air-conditioning compressor pulley connected to a serpentine belt
on certain car models (my Buick Skylark, for one) The advantage is the reduction in weight, size, and required power over a legacy electromagnetic clutch The unit — shown next to an
AA battery — is quite miniscule.
This is a planar actuator configuration for driving a rotary shaft The circular black plate consists of eight pie-slice electrodes When any one of these electrodes actuates, the center of the disk shifts in the plane, engaging a crank
on a shaft By actuating the electrodes in circular succession clockwise or counter- clockwise, the configuration moves a shaft in a circular motion, creating an EPAM version of a stepper motor
EPAMs are a competitive technology
when compared with electric motors and
other actuators Their benefits include:
Virtual silence The muscle uses
no moving parts, so the actuator is
virtually silent; applicable where noise
is undesirable.
applicable under much tighter size constraints than electric motors, so therefore useful for applications in small cameras and consumer electronics.
More jump per joule “If you compare energy vs work output, we get more work per joule than piezo or
Advantage: EPAM
These are two miniature pumps based
on EPAM actuator technology One is a
35 mm pump, shown with a US quarter for reference, the other one is a 12 mm pump, shown with a dime The pumps use the same size pump head “That’s the cylindrical part with the two tubes exiting it,” explains Polyakov.
Photos courtesy of Artificial Muscle, Inc.
Trang 12Know of any robot competitions I’ve 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
De ce mber
4-31 ROBOEXOTICA
Museumsquartier, Vienna, Austria
In this event, robots are tested on servingcocktails, mixing cocktails, bartendingconversation, lighting cigarettes/cigars, andother achievements in electronic cocktailculture
www.roboexotica.org/en/acra.htm
5 Robotex
Tallinn University of Technology, Tallinn, ESTONIA
Autonomous robot must clean a room by gathering up socks, empty cans, and other strayobjects The objects must be placed into a specialgathering area
www.robotex.ee
6 Penn State Abington Robo-Hoops
Penn State Abington, Abington, PA
Robots pick up foam balls and shoot or dunkthem into a basket to score points
www.ecsel.psu.edu/~avanzato/robots/
contests/robo-hoops/
17-21 IROC International Robot Olympiad
Kuala Lumpur, MALAYSIA
Includes a wide range of events including line-following, maze solving, legged robot contest,robot prison break, FIRA soccer, robot dancing,and an open category
TBA PAReX Autonomous Robotics Competition
Shiloh Community Center, Phoenix, AZ
This event includes mini-Sumo, maze runners, and line-following
www.parex.org/autoevent1.shtml
Ja nua r y
20-22 Singapore Robotic Games
Singapore Science Center, Republic of Singapore
Another big multi-event competition Some of theevents planned are autonomous Sumo, RC Sumo,robot soccer, wall climbing, pole balancing, underwater robots, legged robot marathon,legged robot obstacle race, and others
http://guppy.mpe.nus.edu.sg/srg/
24-26 Techfest
Indian Institute of Technology, Bombay, India
Autonomous bots compete in Micromouse andthree other events, called Pixel, Full Throttle:Grand Prix, and Blitzkrieg
www.techfest.org/
29 Robotix
IIT Khargpur, West Bengal, India
Now at nine years old, this is supposed to be the largest robot competition in India Expect tosee over 1,000 teams competing and over 2,500spectators this year
www.robotix.in/
TBA Kurukshetra
Guindy, Chennai, INDIA
This event includes Designer’s Quest, Solenopsis,Freightocog, and Catch Me If You Can
Trang 14Q.For a year now, I have been researching a solution
to the problem of reliably determining a robot’s
position to within one inch in a 25 square mile
area Cost is a major design consideration (ideally less than
$1,000) Lasers cannot deal with obstacles (and I’m also
pretty sure my dogs won’t tolerate the goggles) GPS
augmentation is prohibitively expensive I’ve found a few
RF designs, but none that can be built on a budget that
would be approved by my CFO (wife) Hopefully, you can
provide me a solution or point me in the right direction
P.S I really enjoy your column!
— Thanks, Roger
A.First off, thanks for the kudos! I don’t know why you
need such exacting accuracy; it will definitely be a
challenge since I don’t think there is anything that
can provide that level of accuracy that is built into a
roving vehicle You’re going to need to “instrument” your
environment some how
Even differential GPS can only get an accuracy of — at
best — one meter One paper that I read — www.gdgps.
net/system-desc/papers/ion_paper_2000.pdf — suggests
a sophisticated Internet-based correction method for differential
GPS that can get an estimated accuracy of about 20 cm So
clearly, GPS by itself cannot get you what you want Regardless,
that will set you back way more than your $1000 limit RF
systems are very uncertain for determining ranges well and
clearly IR rangers are of limited value outdoors Okay, that
takes care of what WON’T work for you Now, let’s step off
of the deep end and speculate on what might do what you
want in your limited area of a quarter mile
My first thought would be to position two video cameras
at right angles to each other on tall towers aimed down on
the area within which you are tracking your robot I realized,
however, that I was thinking a quarter acre, not quarter mile
That wouldn’t work because you couldn’t get the whole space
in the frame at a useful resolution So, strike that idea
dig a hole, some of them will dig down to the correctdepth and place a spinning laser to show the depth allaround the hole But as you’ve noted, your dog and probablyyour neighbors wouldn’t be too happy about that Too bad,since that laser would be fairly easy to detect with a camera
on a stepper motor, whose angles could then be comparedwith each other to get an absolute location of the source
of light to a pretty good resolution With more sensors,even more resolution could be gained So, what else can
we use? Sonar is out since the sound waves will spread outtoo far as they move away from the robot
How about this idea: put a bright rotating red (blue,green, whatever) light on the top of your robot This will bereasonably directional with minimal dispersion of the light —and you can perhaps make the point source even moredirectional with a tube limiting the direction of the lightfrom the reflector Next, put a video camera with a limitedfield of view and a filter on the lens that will admit only thecolor that you are looking for at the four corners of yourarea Place it high enough so that there is nothing blockingthe view of the area This assumes, of course, that you don’thave much in the way of shrubs and trees Some barriersare okay as long as at least two adjacent cameras can seethe target Now, scan the cameras using a motor that can
be precision turned like a stepper motor or a servo I woulduse an encoder to further enhance the accuracy of the posi-tioning By using a Cartesian coordinate system and somebasic trigonometry, you can calculate the location of therobot within the property by comparing the readings fromtwo orthogonal (fancy word for “at right angles”) cameras.The biggest resolution limiter is the cross section of thepoint source (the light) You can’t be more accurate than thewidth of that point source as seen by the camera I think thiswill work but you’ll need a computer to coordinate the readings,calculate the angles, and come up with the actual range.The light will need to be strong enough to reach the cameras
at a brightness that will stand out against the ambient light
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?
Trang 15lots of things that will prevent this idea from working all of
the time, like light interference, the sensitivity of the camera,
or the expense of the light filters Other tuning (like the angle
of the cameras to the ground) could also cause issues
The problems in this type of system may be
insurmountable, so let’s think even MORE inside the box
Suppose we came up with small RF transmitters that were
carefully designed to have a limited range of about a meter
when used with a carefully tuned receiver Then, suppose
we “planted” these transmitters in a grid at one meter
intervals You could calculate your position by knowing your
range to each of these beacons by checking their field
strength Since it would take thousands to do this at one
meter intervals, you could put them at longer intervals, but
then their resolution will suffer and your accuracy will not
be very good Hmm, RF is just too unreliable
Note that I don’t even give odometry a nod here Since
you are outside, there is just about no way you will get any
kind of positional accuracy when you consider ditches,
bumps, wheel slips, and the like If you are going to use
some very sophisticated programming, you could use a full
IMU unit and calculate acceleration, deceleration,
inclina-tion, pitch, and yaw to create an inertial navigational unit
But I still doubt that you could get a one inch in a quarter
mile accuracy It would be fun to try it though! Google for
“Inertial Navigation” on the Internet I have seen some
interesting papers on this topic; some by other well known
hobby robotics folks in the well known clubs
Unless you can come up with something from my
rambling thoughts here, I’m afraid that all I’ve done is
convince myself that this just can’t be accomplished Atleast not within the $1000 budget restriction! If anyone out there reading this has some ideas, let’s hear them!With my roving robots, I’m happy if I can just keep theminside a set perimeter A GPS will get me within 10 meters
or so of the robot where I should be able to see it
Q.In last month’s column, I described a simple
PID algorithm and showed you code that used avoltage read from the motor CEMF to determinethe wheel’s rotational velocity Some who read that likedthe idea of a “sensorless” feedback system I received arequest to show how such a feedback mechanism could
be built and used, so, here it is
A.Last month, you saw the code and how I averaged
the readings and used the values read by turning offthe PWM and looking at the CEMF (Counter Electro-Motive Force) at those intervals This month, I’ll post theelectronic circuit that I used to get those values Once again,you’ll see that it is actually very simple to do this, and the nicething about it is that you won’t need finicky wheel encodersfor feedback These inputs come from the motor itself.Figure 1 shows the schematic of the circuit that matches the code that I gave in the November issue
How the Circuit Works
Some explanation of how this works is in order Whenyou drive a motor, you feed voltage to the windings on thearmature (the part that rotates) through contacts on the
Figure 1 Sensorless motor speed
Trang 16commutator This voltage induces a current in the windings
proportional to the voltage divided by the resistance of the
windings The electromagnetic field then generated in the
windings will attract part of the armature to a magnet in
the motor can, which causes the armature to rotate
There are several sets of windings on a motor; how many
depends upon the motor Each set of windings will have its
own pair of contacts on the commutator Brushes are
connected to our PWM output and transfer the current
from our H-bridge to the motor windings I don’t want to
get into how a DC brushed motor works any more than
that; it is a fascinating topic all by itself We know that
rotating a coil of wire in a magnetic field (in this case, the
one generated by the magnets in the motor can) will
induce a current in the coil This induced current will be in
the opposite direction as the current that generates the
field in the motor windings The end effect of this induced
current is that as the motor spins faster, the current
generated in the windings by rotating in the magnet’s
magnetic field will get larger While we have the motor
turned on, the effect of this CEMF is that the current
required by the motor will be reduced as the motor spins
faster When we turn the PWM off to the motor, this
induced current will still be there and proportional to the
velocity of the motor rotation We will read that current
with the analog to digital converter (ADC) inputs on the PIC
to determine the motor speed
The resistor networks R1/R3 and R2/R4 will divide downthe CEMF voltage proportionally so that we can get as much
of the full range of change as possible The zener diodes D1and D2 will limit any voltage spikes we could get to a levelthat won’t damage the ADC circuitry The diodes D3 and D4will shunt negative voltages that may become present when
we shut the PWM off so that we don’t really damage our ADCinputs The output of all this limiting and filtering will then
be fed to AN0 and AN1 on the PIC to provide the readingsthat we need to determine the relative motor speed
In last month’s code, you saw that we looked at bothsides of the motor input to determine which way the motorwas turning On one side of the motor, there will be a negative voltage, which we shunt to ground so only -0.6V
is present; the resistor dividers will reduce this even further.The PIC will see that voltage as 0V; the other side of themotor input will be a positive voltage If the motor spinsthe opposite direction, then these voltage polarities willreverse and thus we can tell which way the motor is spinning Listing 1 shows how this is done in the code
Choosing Components for the Circuit
Your choice of resistor values depends upon your motorvoltage Here, I am using a 6V to 7.2V battery to power mymotors My choice of resistors (2.2K and 4.7K) gives me a
stepdown of about 0.7 which means the mum voltage that I’m likely to see is about 4.9V(which is pretty close to the ADC full swing of 0V
maxi-to 5V) You calculate this resismaxi-tor divider as lows: R3/(R1 + R3) * Battery Voltage = MaximumVoltage seen at ADC input So, my example is4.7K/(2.2K + 4.7K) = 0.68; 7.2V * 0.68 = 4.90V.You might see some healthy
fol-current spikes to the negative direction on yourmotor contacts so diodes D3 and D4 should be
at least one amp; I like 1N5817 diodes They willwork well for smaller motors; you’ll want to scale
up for really big ones The zener diodes D1 andD2 won’t be handling more than a few milliamps
of current, so just about any 5.1V zener diode thatyou have in your junk box will work well here.There are many enhancements you could do
to make this circuit work even better than it does
If you used an op-amp between the sensor resistorsand the ADC inputs, then you could adjust youramplitude and even offer some active filteringthat will give you more consistent readings Thequality of your motors will also have some effect
on how good of a job the circuit does, but I’venoticed that even cheap motors work well.Well, that wraps up this month’s reading sessionwith Mr Roboto I hope that you’ve learnedsomething or at least have enjoyed what you haveread As usual, if you have any questions aboutthings robotic, please drop me a line at roboto@
signed long getError()
/* Find the difference between where we want to be
and where we are */
{
signed long error;
unsigned int16 ma,mb;
setup_ccp1(CCP_OFF);
//Turn off PWM delay_us(500);
//wait for steady state set_adc_channel(0); //get forward side voltage delay_us(20);
ma = read_adc();
ma <<= 1; //This “amplifies” the
//signal, making it more //relevent
set_adc_channel(1); //get reverse side voltage delay_us(20);
mb = read_adc();
mb <<= 1; //This “amplifies” the
//signal, making it more //relevent
currPos = (signed long)((signed long)ma - (signed long)mb);
// Uncomment to debug //printf(“ma= %lu mb= %lu\n\r”,ma,mb);
setup_ccp1(CCP_PWM_PLUS_3);
error = calcPos - currPos;
Listing 1 ADC motor speed readings.
Trang 18power supplies or the
CS220001 for European power supplies These kits
provide everything necessary to build a complete
Mechatronics Laboratory
They include the 48-pin C Stamp, a μC 101 BOL, PC
programming cables, power supply, instruments, and the
Mechatronics Parts Kit Learn programmable mechanical
control, infrared speed and direction detection, and a
host of other Mechatronics concepts
The Mechatronics Parts Kit includes sensors, display,
motor, etc The electronic components required for the
Mechatronics activities are also included in the Parts Kit
The activities introduce motor control and interfacing,
electronics, and transistor theory, just to name a few
concepts All necessary software, documentation,
curriculum, and highly-illustrated instructions written
by college professors are included in the kit CD
These Mechatronics kits are unique in the sense that
hobbyists, students, and autodidactic users alike work
with and develop embedded systems using professional
software development tools and a professional
programming language in a very user friendly
environment
The power and versatility of the C Stamp guarantees
that learners can expand upon their Mechatronics
knowledge with their own ideas, projects, and
imagination Well thought out and pedagogically sound
examples developed by college professors make sure that
learning Mechatronics with these kits is a powerful and
enjoyable experience
All items are new, fully tested, factory direct, and all
software is included at no extra charge
For further information, please contact:
RA-02 Robotic Arm Kit
The RA-02 RoboticArm from Images
Co teaches basicrobotic principles TheRA-02 kit includes allcomponents necessary
to build the roboticarm shown here.The robotic armkit also includes the SMC-05 five-position servomotorcontroller kit The servomotor kit includes the PCB and allcomponents necessary to build the servomotor controller(soldering is required) Using the five-position servomotorcontroller, one can control the robotic arm using theonboard three position switches to manually grab, lift,lower, wrist rotate, and pivot In addition, the Windows(98/XP) control software is available as a free download.This allows PC control through one of the PC’s serialport The Windows program has a script writing featurethat allows one to program the robotic arm with thousands of movements with full, precise, and repeatable control of each movement Scripts may hold
a maximum of 10,000 movements (including pauses)with a maximum repetition of 10,000
New AX-12 Smart Arm Web Control from
CrustCrawler Interactive
The CrustCrawlerInteractive grouphas released a simpleyet robust Telerobotics
EDUCATIONAL KITS
N E W P R O D U C T S
Tel: 718•966•3694 Website: www.imagesco.com
Images ScientificInstruments
656 Ironwood Dr.
Williamstown, NJ 08094 Tel: 800•985•AWIT or 800•985•2948 Fax: 800•985•2948 Email: info@a-wit.com Website: www.c-stamp.com
A-WIT
Technologies, Inc
TELEROBOTICS SOFTWARE
Trang 19for remote, web control of any robotic platform.
Currently, the Tele-Robotics application contains control
and monitoring services for CrustCrawler’s AX-12 Smart
robotic arm If you do not own an AX-12 Smart Robotic
Arm, you can test drive the AX-12 Smart Arm through
CrustCrawler’s interactive Telerobotics web page Move
the arm through several preset movements while
monitoring in real time the position, speed, load, voltage,
and temperature of each of the AX-12+ Smart servos
from anywhere in the world
CrustCrawler’s Tele-Robotics software is ideally suited
for robotics applications that use servo motors which
can provide real time feedback for position, speed, load,
voltage, and temperature Such feedback features are an
integral part of the AX-12+, RX-28, RX-64, and EX-106
series of servos from Robotis
CrustCrawler offers the software as a free open
source download which contains fully commented client,
server, and AJAX code modules Help and additional
code can be found on the CrustCrawler robotics forum
Visit the website for more information and code updates
For further information, please contact:
HS-5485HB Economy Digital Servo
Hitec's new HS-5485HB digital servo features longlife components and zero wearKarbonite gears The HS-5485HB
is an inexpensive, fully programmable standard sizedigital servo
Features include:
• 89 in/oz of torque at six volts
• Backed by a two year warranty and Hitec’s service and
support
• Suggested retail price $25
For further information, please contact:
Servo Commander
The Servo Commander is a portable, hand-held devicethat generates the command signal required to driveservos and Electronic Speed Controls (ESC) without theuse of an R/C transmitter and R/C receiver You canmanually adjust the servo position or the ESC speed,
or continuously cycle between two slewing endpointpositions of your choice
Features are interference-free servo checking whenamong groups using live R/C equipment; test servo travel, positioning, and throttle adjustment; check forservo alignments, binding, damaged gear trains, or weak motors; enable mechanical adjustment of precisezero position; check step response; permit first order frequency response; check for vibration problems;
facilitate mechanical break-in; perform endurance testing;input is protected against reversed voltage; conveniencepower to driven equipment fused at 1A; accommodateseither 1.0 or 1.5 ms zero signal; always powers-up producing a zero output signal; output signal is short circuit protected; allows normal or reversed positionalcontrol; has teach function to enter arbitrary slew endpoints; slew rate is variable from 0 (motionless) to100%; has quartz crystal controlled accuracy; and typespecific power cables are available
CrustCrawler, Inc
Is your product innovative, less expensive, more functional, or
just plain cool? If you have a new product that you would
like us to run in our New Products section, please email
a short description (300-500 words) and a photo of your
product to:newproducts@servomagazine.com
Show Us What You’ve Got!
12115 Paine Street Poway, CA 92064 Tel: 858•748•6948 Website: www.hitecrcd.com
Hitec
Multiplex
3662 Brandi Drive Sterling Heights, Mi 48310 Tel: 586•274•9792 Website: www.sviind.com/servo
SVI
TOOLS & TEST EQUIPMENT
MOTORS
Trang 20Featured This Month:
Laying Out Your Work
Area by Blake Hooper
ROBOT PROFILE – Top
Ranked Robot This Month:
26 Micro Drive by Kevin Berry
The wedge is one of the oldestand most successful types ofcombat robots The effectiveness
of a simple ramp with good drivepower has yet to be matched byany other robot design However,throughout the years the wedgehas managed to become themost hated design as many claimthey lack any sort of originality
or excitement There has been, however, a small community offast, well driven wedges that provide a good amount of excitement as they bouncearound the arena It was theserobots that inspired me to onceagain jump back onto thewedge bandwagon, thistime in the three poundbeetleweight class
Like I have been doingfor all of my recent robots,
I did all of the robot’sdesigning in SolidWorks3D CAD Before I couldbegin drawing up the
chassis however, I needed toknow how large it would be, asopposed to simply tinkering with
it until everything fit To do this,
I took all of the parts I had, (substituting paper cutouts withthe correct dimensions for theparts I did not have) and laidthem out in the most compactconfiguration possible, while leaving some space for wiring
It is important to have yourrobot’s dimensions as small
as possible Not only does itdecrease how large of a targetyour robot is, but since your chassis components will be
● by Thomas Kenney
Cloud of Suspicion
BUILD REP RT
FIGURE 1 The robot is drawn
up in Solidworks CAD before construction begins.
Trang 21smaller, they will weigh less, and be
stronger since the mounting areas
will be closer together After all of
the basic dimensions were finalized,
I drew up the rest of the robot in
SolidWorks The completed design is
shown in Figure 1
The first part of the robot to be
designed was the drive system My
first choice was two Banebots 36
mm gearboxes with the RS motors
I was on a very tight schedule, and
hadn’t done belt drive before, but I
didn’t want to go to two-wheel
drive either My solution was to
switch to the 28 mm gearboxes
opposed to the 36 mm ones I
would lose a bit of durability, but
there was also a weight difference
of four ounces per gearbox With
this weight difference, I was able to
go to four-wheel drive, even though
the drive system took up half of the
robot’s weight With 1.875” wheels
and on 7.4 volts, I would get a top
speed of 6 mph and near
instanta-neous acceleration; certainly zippy
enough for a 8 x 8 arena Next, I
began on the chassis Because of
the huge amount of weight the
drive motors, gearboxes, and wheels
took up, there was only 1.5 pounds
out of three left for everything else
— including the chassis, electronics,
and the wedge itself To make
weight while still maintaining a
strong frame, I used a material I was
familiar with, and more importantly,
already had copious amounts of —
UHMW polyethylene
UHMW is known in combat
robots for its great structural
properties It is relatively soft, but
just enough that it won’t crack
under most circumstances UHMW
is also very light, weighing in at just
75% of the weight of polycarbonate
and acrylic It also comes in several
different colors, including white,
black, and blue The material I had
was a white, five foot long, 1.5” x
3/8” strip, which was the perfect
height for my robot’s chassis For
the top and bottom, I needed as
stiff and light a material as I could
get My first and final choice was
carbon fiber, a compositematerial made up ofstrands of carbon clothbonded through an epoxylaminate It is very stiff,which is a good counterfor the flexing tendency
of UHMW One of the only drawbacks is its price,which can total more than
$50 for a 12” x 12” x 1/6”
thick sheet
Since my UHMW wassimply a long strip with thecorrect width and thickness, all Ihad to do was to cut the correctlysized pieces To do this, the UHMWstrip was marked at the right intervals, and then moved down
a table saw Once this was done,
I had all of the basic pieces used toform the chassis Cutting the carbonfiber wasn’t as easy
When carbon fiber is cut, theblade generates a hazardous finedust, so extreme caution needs to
be taken as inhaling this dust can
be a catalyst for lung cancer
Getting carbon fiber in your skin isnot as hazardous, but once it’s in,it’ll itch for weeks To negate theaforementioned spray of dust, shaving cream was placed down the cutting line When the materialwas cut, the cream absorbed all ofthe motes of dust
After cutting the carbon fiberpieces down to their basic dimensions, they were placed onthe table saw again to cut out thewheel wells After this was done,the only work left on the chassiswas to drill and tap 12 holes to hold the frame together, and thensome more to attach the top andbottom pieces; overall about 45minutes of work With this done,
I had a finished chassis
Next, I began work on thewedge My first wedge robot had its wedge fixed to the chassis Though it was very sturdy, wedges with their leadingedges dragging on the groundgot under it easily In order to nothave this problem, I chose to go
with a hinged wedge this timearound As opposed to using a hardware store hinge, I cut a 3/16”titanium shaft to length and pressed
it into the UHMW side rails
Once the wedge was cut out
of the 3/32” 7075 aluminum, I cutseveral small UHMW blocks,attached them to the wedge, anddrilled holes in them a bit largerthan the shaft diameter I then simply slid the wedge assembly ontothe shaft This created a durable andeasy to fix hinge system that is stillrelatively light The completed wedgeassembly is shown in Figure 3
With all of the major construction finished, it was time
to mount the internal components.The Banebots 28 mm gear motorsall have a corresponding mountingpattern, which makes it easy tomount them to base plates and also makes it a simple task to switch them out between fights,
if needed To mount them, I created
a PDF file of the mounting patternand printed it out It was easy todrill through the marked areasstraight into the base plate where
FIGURE 2 The chassis is assembled with all internal components mounted.
FIGURE 3 The hinged wedge assembly is completed.
Trang 22the motors would be mounted.
After the motors were mounted, the last thing I needed
to do was secure the electrical
components I mounted
my two cell 1,320 mAhThunderpower batteryunder my Spektrum BR6000receiver and simply zip-tiedthem to the base plate Ithen drilled through themounting holes of myScorpion XL speed controllerand used screws to secure
it After this was done, therobot was finished Soonafter the robot was finished, I gave
it the name “Cloud of Suspicion,”
which I found in a list of “SuggestedNames for Racehorses Expected to
Have Undistinguished Careers.”
In the end, the concept of alightning fast, overpowered wedge
in the beetleweight class ended upbeing very successful A few flawswere found, but easily corrected
It went on to win the rumble at its first tournament (destroying the arena hazard in the process)and then took home second
at its next event, where the aforementioned flaw prevented itfrom placing first Now that theseproblems have been fixed, I havehigh hopes for this robot in thefuture SV
When it comes to entering
combat or otherwise knownrobotics the easiest thing a builder
can do to help themselves get
prepared is to work out their layout
By layout of course I mean the site
in which they will be working
How you set this up is based on the
builder, but there are certainly some
tips which can make this process
much easier
The first and most importantpart is to figure out the space that
you will be working in Many people
have set up their own shops in places
like their garage only to discoverthey hate working there and end upwith hand tools on a chair in theirkitchen Pick a place with plenty oftable space that you enjoy working
in, and make sure it can handleheavy vibrations and flying scraps
Another important thing is tomake sure you have good airflow Ifyou can swing it, air conditioningwill be a godsend, otherwise makesure to have plenty of fans or open windows When working onprojects, heat quickly becomes burdensome Light is also an important consideration I have seenmany builders work in their garage
when the lights aren’t working andconsequently, blood starts flowing.Once you have your work spacelocation figured out, you’ll need
to choose what tools you want
No matter what, you’ll need a basicset of hand tools The actual sizes,measurement standard, and type isdependent on the builder The moreimportant thing to consider is whatpower tools you will need If you are on a budget, this can quicklybecome an issue The first factoryou’ll want to consider is whatweight class your robot will be in.This way you’ll know the type ofmaterial you will be using, the
thickness of it, and the size
of tools you will need.For a cutting tool, youhave several options If youwill be working with severalsections of long bar stock
or are cutting particularlythick material, a tablemounted circular sawmounted to the floor will
do fine Make sure you areusing the proper blade Ihave seen many builders
and ready for battle.
Standard shop layout Hand tools and
electrical work stations are clearly within
arm’s reach of each other The bot is Ze
Uber Wedge, of Team Raybotics.
Drill press and accessories are near by — messy, but easy to get to.
Trang 23use aluminum blades on steel
only to discover a few weeks
into it that their blade can now
only cut soft cheese
If you are cutting thin
materials such as aluminum
and need specific shapes or
corners, a jigsaw can be quite
useful The same goes here for
the blade, but also make sure
to have the material you are
cutting firmly mounted Finally,
if you are cutting thin material
in small amounts and cannot
afford anything powered, a
hacksaw can work, just be
prepared to have tired arms
Drilling holes in your robot
for various reasons can be
done with several different
tools, depending on your
budget If you can spare the
cash, a drill press is a good
option; it will always stay
steady and can adjust to most
needs However, this can end up
being a bit too expensive, so a
simple power drill with the right
bits should do just fine If you
want good quality at a lower price,
“corded” will probably be your
choice Cordless drills — while nice —
can be pricey due to the battery
and the mobility it gives you
For any drills, however, you
will want to invest in a good set
of bits This can overwhelm many
beginners, but if you narrow down
what bit sizes you will use the most,
it can reduce your costs greatly
Also, make sure to invest in a punch
or two in order to mark your holes
properly A drill will easily wander
on you if you haven’t punched the
hole marking first
A tap set would be a good
investment if you want to be a bit
more advanced in your assembly
of pieces without too much of a
pocket drain This will allow you to
thread directly into the metal itself
For those of you with a larger
budget, a good addition to your
work space would be a mill This
tool will allow you to make many
modifications to both the shape and
depth of your robot For example,
if your bot weighs too much youcan mill out some slits from non-important pieces of metal or if youhave specific plates or patterns tomake, this tool will do the job Inthis range of tools, there are severallevels and scales to choose from, soyou’ll want to know what type ofmaterial and work you will be doingahead of time This will simplify your choices A simpler alternative
is hand-operated mill or you could
go the route of a computer drivenCNC mill which can do precise andsmooth work based on the designyou feed into it To find out about areasonably priced CNC machine forhobbyists, check out the Decemberissue of Nuts & Volts (www.nuts
volts.com), in the Personal Robotics
column
On the same end of the CNCspectrum is a lathe You can turndown anything from a wheel to ashaft with this machine A skilledoperator can add threads to a shaft
as well It is better to have a skilledoperator show you how to use alathe or else an accident can occur
Once you have the space andtools selected, it is important to
determine what the organization
of your set up will be If you are anorganized person by nature whoalways puts things back, then acomplex array of labeled drawerswill probably work fine for you
However, most builders I know lackthis quality However, I have found
a happy medium
First and foremost, keep tools
of the same skill set next to eachother, along with any support equipment such as bits or keys (Thiswill greatly simplify things when youhave lost something and are madlysearching through a messy pile.)After this, a simple set of bins orcubbies can serve to contain thingsseparately That way, you only need
to throw it back into the right pile
Tools are loosely placed on wall racks making them easier
to organize. Vises and jigs are all placed in one secure area.
Tools arranged on wall board keep everything nice and centralized.
Spare and useless bits kept in boxes off to the side.
Mounting boards arranged wall to wall, opening up the amount of readily available storage space.
Trang 24Finally, do the same kind of looseorganization with your hardware.
Nuts, bolts, and metal scrap doesnot need to be organized by exact
size, but if you can at least keep thespecific type separate then you will
be ahead of the game
The last thing to do is to position the different work surfaces where you can get tothem easily Once you have done this, it is easier to work oncomponents where multiple toolsets are required After this, make sure to have an appropriateamount of mounted grips and jigs
in order to secure your variety ofcomponents as you work on them.You should be all set to begin SV
It was the fifth Robothon event for
Western Allied Robotics at the
heavily trafficked Seattle Center’s
Center House Large crowds
circulating throughout the day were
entertained by three and 12 pound
fighting robots The three lb
Beetleweight division was mostly
populated by returning builders but
there were a few new designs
Greg Schwartz of Team LNWbrought Idiot Savant, an undercutter
robot with a 16 inch titanium blade
clocked at over 3,300 RPM Doug
Brown of Team Dinobots came with
a heavily updated undercutter T-Rex
2.0 with a more powerful weaponand a more durable design DanOdell of Team Death by Monkeysbrought a redesigned GutterMonkey — a four wheel pushy-botwith a chromoyl steel wedge
T-Rex 2.0 quickly worked itsway up to the top of the winner’sbracket by knocking out the titanium brick Monkeying Around,the previous Robothon championHurty Gurty, and the full body spinner Melty B(eetle) On theloser’s side of the bracket, it wasGutter Monkey’s steel wedge vs
the titanium blade of Idiot Savant
In a series of big hits, both botswent flying with Idiot Savant being
Event Results
I3 lb BEETLEWEIGHT
● 1st — Gutter Monkey, Team Death
by Monkeys, driven by Dan O’Dell
● 2nd — T-Rex 2.0, Team DinoBots,driven by Doug Brown
● 3rd — Melty B(eetle),SpamButcher, driven by Rich Olson
12 lb HOBBYWEIGHT (12 lb)
● 1st — Organ Grinder 12, TeamDeath by Monkeys, driven by Rob Farrow
● 2nd — Shag, Team Gausswave,driven by Rob Purdy
● 3rd — Defiantly Daft, Team LNW,driven by Travis Schwartz
Circular saws placed in one spot,
keeping all extra pieces next to it for
loose organization.
Pictures From Dr.
Joseph Immel, home workstation Shows example of both tools, and a non-garage based shop.
A standard lathe chuck setup.
A standard mid-line table mill.
Door leading to garage from workspace.
● by Rob Farrow
EVENT REPORT
Robothon Rob t Combat
2008
Trang 25unlucky and landing in
the arena pit Gutter
Monkey also managed to
defeat Melty B(eetle) by
keeping its steel wedge
facing the spinner and
pushing it around until
smoke started to come
out of it
In the Beetleweight
final, Gutter Monkey
faced off against T-Rex
2.0 Sparks flew as T-Rex’s powerful
blade struck the wedge With some
skilled driving, Dan O’Dell managed
to push T-Rex into the wall which
caused it to ricochet off and land
behind Gutter Monkey With its
wheels exposed, Gutter Monkey
spun around and got its wedge
pointed the right way again With
the help of some speed and luck,
Gutter Monkey managed to deposit
T-Rex into the arena pit and take
home 1st place
In the 12 pound Hobbyweight
class, the normally dominant
Fiasco’s weapon was as dangerous
as always ripping the titanium
wedge off of the four-wheel drive
Defiantly Daft As Kevin Barker
struggled to drive Fiasco which was
having drive motor problems, Travis
Schwartz did a masterful job driving
Defiantly Daft He positioned his bot
behind the wedge lying on the
arena floor and used it to push
Fiasco around even though the
wedge wasn’t actually attached
to the robot
Despite the damage to
Defiantly Daft, it won the judge’sdecision based on its control ofthe match Defiantly Daft’s luckdidn’t hold as it went up againstShag driven by Rob Purdy of TeamGausswave With the aid ofpowerful neodymium magnetsincreasing the robots down-forceand traction, Shag was able tocontrol the match and push thewedge around at will Shag thenstruggled against Organ Grinder 12
— a wide, wedge shaped bot with avertical tool steel disk spinning athigh RPM Rob Farrow of TeamDeath by Monkeys used the spinning weapon to flip Shag upsidedown, taking away Shag’s magneticassist on its drive train With the botupside down and its wedge hanging
in the air, Organ Grinder 12 took
the win resulting in a three-way tiefor first with Shag, Defiantly Daft,and Organ Grinder each having a3-1 record
In a first for a Western AlliedRobotics event, a three-way tiebreaker match determined thewinner The three bots met in thecenter of the arena, each jockeyingfor a good position Defiantly Daftslammed Shag into the arena wall
A three lb undercutter named Idiot Savant created by team LNW.
Driver-builder Dan O’Dell holding the
3 lb Beetleweight 1st place winner Gutter Monkey.
Driver Rob Farrow holding the 12 lb Hobbyweight 1st place winner Organ Grinder 12.
The youngest competitor Alex Conus holding up his three lb robot Vision #1.
The 12 lb robot Fiasco built by Kevin Barker
as it is spinning on its side with some sparks.
Trang 26knocking it on its side and turning it
into a two bot fight As Organ
Grinder and Defiantly Daft tangled,
a hit by Organ Grinder threw the
wedge into the air and knocked
Shag back on its wheels, returning
it to the match As the three botscontinued to fight, the two wedgessustained minor damage to theirdrive systems making it difficult to
avoid Organ Grinder’sweapon
With 30 seconds left in the match, OrganGrinder knockedDefiantly Daft onto the edge of the pitimmobilizing it and continued to hit away
at Shag In the end, itwas a unanimous judge’sdecision for Organ Grinder
With the conclusion of the
12 lb final, it was another excitingcompetition with everyone lookingforward to the next event SV
The 12 lb robot
T-Bone built by
Dylan Feral-McWhirter.
The 12 lb pusher Shag built by Rob Purdy The plow is
brick-nearly 5” titanium (WOW! -Ed.)
ROBOT PR FILE
● by Kevin Berry
TOP RANKED ROBOT THIS MONTH
Weight Class Bot Win/Loss Weight Class Bot Win/Loss
150 grams VD 26/7 150 grams Micro Drive 10/3
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 19/7
15 pounds Humdinger 2 29/2 15 pounds Humdinger 2 29/2
30 pounds Helios 31/6 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 K2 14/2
120 pounds Devil's Plunger 53/15 120 pounds Touro 14/2
220 pounds Sewer Snake 46/13 220 pounds Original Sin 12/5
340 pounds SHOVELHEAD 39/15 340 pounds Ziggy 6/0
390 pounds MidEvil 28/9 390 pounds MidEvil 3/0
Top Ranked Combat Bots
History Score Ranking Micro Drive – Currently Ranked #1
Historical Ranking: #2 Class: 150 gm Fleaweight Team: Team Misfit Builder(s): Zachary Lytle Location: Santa Rosa, California
BotRank Data Total Fights Wins Losses
Lifetime History 17 13 4 Current Record 13 10 3
Micro Drive has competed
at Marin Ant Wars 5,RoboGames 2006, SRJC Day Under
The Oaks 2006, Marin Ant Wars VI,
Halloween Robot Terror 2006,Smackdown in Sactown III,RoboGames 2007, SRJC Day UnderThe Oaks 2007, RoboGames 2008,
and SRJC Day Under The Oaks
2008 Details are:
● Overall configuration: Micro Drive
Trang 27Robotic combat is a dangerous
sport in its very nature, and if
participating, one must accept the
safety risks that are all too often
present in the sport In most cases
however, simply accepting the risk
isn’t enough, and something must
be done to negate this risk as
much as possible One of the most
dangerous variables in robots is the
safety features of their radios
Most FM receivers can easily
interpret noise from motors, speed
controllers, and even microwaves as
valid signals With the amount of
destructive spinners and otherdangerous designs in the currentcompetition circuit, it should gowithout saying that even in thesmaller weight classes, this is aserious safety hazard
That’s where failsafes come in
Featured prominently in FM-PCMradio receivers, failsafes willautomatically have all channels go
to zero throttle or any otherposition that the user specifieswhen the transmitter’s signal is lost
However, this does not solveanother all too prominent problem:
frequency conflicts In large roboticcompetitions or conventions,another robot is bound to have the same frequency as yours
Fortunately, with the recent 2.4GHz radios, this has become a thing
of the past
Recent spread spectrum radiossuch as the Spektrum DX serieshave taken the R/C world by storm.Unlike conventional FM transmittersand receivers that connect throughcorresponding frequency clips,2.4 GHz transmitters bind to theirspecific receivers, meaning there will
● by Thomas Kenney
PARTS IS PARTS:
2.4 GHz Radi Fail-safes
is a low to the ground wedge
robot, with sloped sides and a
titanium lifting arm The robot
can operate upside down or right
side up (however, the robot has
better armor when it's right
side up), and it can use its arm
to self right
● Frame: Carbon fiber sheets
and rods sewn and glued
together
● Drive: The 56-to-1 Sanyo gearbox
from Solar Robotics
● Wheels: Modified Light Flight
foam wheels from Dave Brown
● Drive ESC: Barello Ant 100 dual
5A speed controller
● Drive batteries: 7.4V 145 mAh
Kokam li-poly
● Weapon type: Lifter.
● Weapon power: 7.4V 145 mAh
Kokam li-poly
● Weapon motor: Mini metal
gear high tech servo
● Weapon controller: Servo.
● Armor: 1/16 inch polycarbonate
sheet, with 020 inch titaniumreinforcement in critical areas
● Radio system: Seven channel
programmable JR radio
● Future plans: Reinforce the
mounts that connect the armor
to the frame and raise thebottom plates to give the robot
a higher ground clearance
● Design philosophy: Let children
and rookies drive my robotagainst saw robots duringdemonstrations or exhibitions and find out what breaks, thenfix it “If it doesn’t fit, force it
If it breaks, you needed a newone anyway.”
● Builder’s bragging opportunity:
Micro Drive has been my mostsuccessful and reliable robotfor the last three years Hehas won two RoboGames
championships and got the silvermedal this year He has alwaysplaced either first or second inevery competition he has entered.The first Micro Drive was built
in two days and I’ve spentprobably a grand total of a weekrebuilding or repairing it in itsthree years of service When I dodemonstrations at high schools,Micro Drive is the primary robot Iuse and I let the audience drive
it Micro Drive was actuallybuilt using nothing more than aheavy-duty pair of scissors, a hairdryer, needle and thread, glue,and soldering iron At next year’sRoboGames, Team HammerBrothers better watch out,because Micro Drive will be back
in full fighting form ready toreclaim his title as RoboGameschampion! SV
Photos and information are courtesy of Zachary Lytle All fight statistics are courtesy
of BotRank (www.botrank.com) as of
October 10, 2008 Event attendance data
is courtesy of BotRank and The Builder’s
Database (www.buildersdb.com) as of
October 10, 2008.
Trang 28presentedRobothon Robot
Combat 2008 in
Seattle, WA on
September 21st
Twenty-two bots were registered
NERC presented FranklinInstitute Robot Weekend inPhiladelphia, PA on October 11th
Forty-twobots wereregistered
RobotsLive presented a show inHuddersfield, West Yorkshire onSeptember 20th and 21st SV
There are 80 channels in the range
of 2.4 GHz radios The transmitters
will search for an open channel, and
once this is found, connect to the
receiver it has been bound to via
this channel
The only problem with mostspread spectrum receivers is that —
like many R/C receivers — they
will only failsafe on the throttle
There are no failsafes on any of
the other channels, and they will
simply continue in the positions
that they were in when the signalwas lost
This is ideal for most R/Cplanes, boats, and cars where thethrottle is the only channel thatcontrols any large movement; thatbeing the motor or engine thatrotates the propeller on modelairplanes, boats, or the wheels onR/C cars The rest of the channelsmerely control servos that moveflaps, rudders, and steering whichhave no potential for any sort
of danger
In combat robots — in addition
to weapons often controlled by thethrottle channel — all sorts of
motors and other weaponsmay be controlled by theaileron, elevator, rudder, orany other channel
Spektrum RC addressedthis problem with therelease of their SpektrumBR6000 bot receiver, whichreplaced their AR6000 thatwould only failsafe on thethrottle channel At therequest of combat robotbuilders, Spektrum created
a 2.4 GHz radio receiverspecifically for combatrobots that would failsafe
on all channels
Today, the BR6000 isthe standard for spreadspectrum receivers Thoughrecently, there has been arelease of 2.4 GHz modulesmade by Spektrum forinstallation in oldertransmitters such as the Futaba9Cap With this, hobbyists are able
to take advantage of the newspread spectrum technology withouthaving to adapt to a new radiosystem
As technology grows, somerobotic competitions (such asRoboGames) are requiring theircompetitors to use spread spectrumradios to eliminate the complications
of standard radio frequencies Now that the robotic communityhas begun to embrace this newtechnology, it’s impossible toimagine what more advantages
it might bring in the future SV Spektrum DX6 and
BR6000 bot receiver.
Trang 29email: sales@crustcrawler.com
Trang 30This month, we’ll add yet another motor and motor
driver project to the pages of SERVO The motor in
the spotlight this time around is a direct descendent
of common universal brushed DC motors However, this
motor type contains no brushes as its brushes have been
replaced by Hall effect sensors and electronic circuitry A
brushed DC motor contains a set of brushes, a stator
assembly, and a rotor assembly Commutation — as it
relates to brushed DC motors — is the process of switching
current and thus, magnetic fields between the stator
assembly and rotor assembly of the motor The motor
brushes play a large part in the process of commutation as
the position of the brushes (like the stator) is constant with
respect to the rotor’s magnetic fields Thus, the brushes are
actually part of the motor’s stator assembly
The magnetic fields of the stator always react with the
commutating magnetic fields of the rotor in such a way
as to coerce rotary motion via the motor’s rotor shaft Our
new motor type has nostationary brushes thatprovide a reference pointfor commutation
Instead, the motor typewe’re about to discusscontains Hall effect sensors, which are positioned for use ascommutation referencepoints by the brushreplacement circuitry
This type of motor iscalled a brushless DCmotor or just BLDC
After we go to school onthis new motor, we’regoing to design a
that takes the place of the Hall effect sensors
I attempted to disassemble the BLDC motor you see
in Photo 1 with no joy I suspect that its components aresealed to preserve the integrity of the positioning of themotor’s integral Hall sensors I didn’t have a second motor
on hand So, I didn’t work too hard at pulling it apart Themodel BLY171S-24V-4000 BLDC motor shown in Photo 1 ismanufactured by Anaheim Automation This particularmotor has a permanent magnet rotor, a three-phase stator,and a built-in trio of Hall sensors Picking apart the modelnumber tells us that this motor is a NEMA size 17 typeBLDC motor The 1S denotes a single shaft motor with 11oz-in of continuous stall torque The BLY171S-24V-4000’smotor windings are rated for 24 volts and are able to spinthe rotor shaft at 4,000 RPM
I f you were to go back and survey past SERVO articles that I have written, you would probably conclude
that I have this thing about motors and motor drivers For instance, we recently tackled Universal Motors and constructed a Universal Motor controller I also presented more than one SERVO stepper motor controller project In these pages, we’ve driven linear actuators, rotated hobby servo rotors, and built circuitry to oversee the direction and speed of simple brushed DC motors.
Photo 1 This BLDC motor comes
ready to work with drive circuitry
that employs the use of its
built-in Hall effect sensors These
sensors are ignored when the
motor is spun using sensorless
LEARNING TO DRIVE:
Trang 31BLY’s motor interface wires are terminations for the three
stator phases The remaining five wires service the BLDC
motor’s built-in Hall effect sensors Here’s how our BLY
Hall Ef fect Sensors:
- Hall Effect Supply: Red
- Hall Effect Sensor A: Blue
- Hall Effect Sensor B: Green
- Hall Effect Sensor C: White
- Hall Effect Ground: Black
If we want to deploy the BLDC motor is a
standard manner, the Hall effect sensors are used in
the commutation process In a sensorless BLDC motor
implementation, we’re only interested in the motor phase
wiring Sensorless motor control commutation is a product
of the BLDC motor’s back electromotive force (BEMF),
which is produced in the motor’s stator windings as a
result of the movement of the rotor’s permanent magnets
past the stator coils Before we formulate a method of
getting rid of the Hall effect sensors, it would be helpful to
understand how a BLDC motor works with them
BLDC Operation 101
Although we have identified only three major coils in
our BLDC motor, a typical three-phase BLDC motor contains
a multi-coiled stator and a permanent magnet rotor The
more stator coils one can cram into the stator assembly of
a BLDC motor, the smaller the rotational steps Smaller
rotational steps result in less torque ripple The same
principle applies to the rotor A BLDC motor’s rotor supports
an even number of permanent magnets The more magnetic
poles associated with the rotor, the smaller the rotational
steps You know the rest Regardless of how many stator
coils and rotor magnets a BLDC motor has, we can still
gain an understanding of how a BLDC motor works by
examining only three coils
Like a stepper motor, a BLDC motor commutates
according to a predetermined coil activation sequence
That’s about where the similarity ends Stepper motors have
higher step counts and require a higher operating voltage
BLDC motors are designed to operate with Hall effect
commutation and variable voltage drive Precise rotor
alignment is not something a BLDC is particularly good at
Conversely, a stepper wants a constant voltage drive and is
designed for precise angular positioning of its rotor
A three phase BLDC motor has six discrete states of
commutation When the correct coil activation sequence is
direction of the shaft’s rotation I have labeled the BLDCmotor coils A, B, and C in Figure 1 As you can see, eachcommutation state consists of one coil driven positive, onecoil grounded, and one coil open This type of commutation
is called block commutation
Let’s walk through a BLDC motor commutationsequence visually Figure 2 is a simplified view of a three-phase BLDC motor’s coils and its rotor The simulated rotor
is centered in the figure as an arrow The pointed end ofthe arrow is positive while the opposite end of the arrow
is negative This positive/negative arrow arrangement simulates the magnetic fields generated by the rotor’s permanent magnets The stator coils in Figure 2 are shown
as rectangles, which are spaced at 120° intervals Thearrow (rotor) will move from commutation state to adjacentcommutation state depending on the direction of the current applied to the energized stator coils
Reference the coil voltage drive levels in Figure 1 andapply them to Figure 2 Commutation state 1 is a product
of stator coil A being driven positively, stator coil B beingdriven negatively, and stator coil C floating Driving statorcoil B negatively actually means that stator coil B is grounded.Thus, the stator coil current is flowing between stator coils
A and B while stator coil C is electrically disconnected Thepositive magnetic pole of the rotor will be attracted to thenegatively-charged stator coil B while the negative magneticpole of the rotor will be drawn towards the positively-charged stator coil A If we specify the positive pole of therotor as our commutation state reference, the positive pole
of the BLDC motor rotor is now positioned in BLDC motorcommutation state 1
Let’s transpose the next set of coil drive voltages inFigure 1 to our imaginary BLDC motor in Figure 3 Moving
Motor Drivers
Figure 1 This reminds me of a stepper motor coil activationchart An application that uses the Hall-Effect sensors wouldtrigger a commutation at every sensor logic level change
Trang 32floater and the stator coil C drive voltage level transitions
from floating to negative This stator coil drive voltage
pattern forces the positive field of the rotor to move
towards the negatively charged stator coil C The negative
field of the rotor is still under the influence of
positively-charged stator coil A
I think you get the idea However, to set the BLDC
commutation concept in stone, we’ll walk through one
more commutation using Figure 4 Again, moving 60° to
the right in the Figure 1 commutation chart, we assign
stator coil A as the floater Stator coil B is no longer the
floater and moves to a positive drive state The coil current
direction in stator coil C remains as it was in the last
commutation state illustrated in Figure 3 Stator coil A is
electrically null and is powerless to influence the motion of
the rotor The magnetic forces of stator coils B and C now
determine the position of theBLDC motor’s rotor,which is now positioned in what
we have defined as commutation state 5
I’ve pinned the Hall effect sensor states to the bottom
of Figure 1 Note that the sensors generate a unique binarycode for each commutation state The binary code is used
by a BLDC controller or microcontroller to determine thecommutation position of the rotor which, in turn, determines the present and next set of commutation drive voltage levels Now that we possess the knowledgenecessary to drive the stator coils of a BLDC motor, let’s look
at the hardware required to process those drive signals
BLDC Hardware 101
A typical BLDC motor’s coils are driven by athree-phase half-bridge circuit like the one you see
in Figure 5 Block commutation with a twist is used
to drive this multi-phase collection of MOSFETs Thetwist is PWM, which is applied only to the bottomMOSFETs Applying the PWM there leaves the possibility of only one of the top transistors to betotally ON at any time I’ve used the coil drive levels from the commutation chart in Figure 1 toformulate the hardware commutation chart you see in Figure 6 Just as in Figure 1, each hardwarecommutation state in Figure 6 is associated with
a binary Hall effect sensor value So, the BLDCmotor controller knows exactly where to pick upthe commutation sequence it needs to rotate theBLDC’s rotor
From what we’ve seen thus far, the BLDCmotor’s built-in Hall effect sensors are always available to tell the BLDC controller how to correctly
Motor Drivers
Figure 5 You’re used to seeing the Phase A and Phase B
circuitry as a pair of half H-bridges commonly used to drive
stepper and universal brushed DC motors Phase C is a
Figure 4 We’ve gone halfway aroundelectrically and I think you know wherethe next set of stator coil voltages will take us The commutation table
in Figure 1 represents electrical revolutions, not physical revolutions.The number of magnetic poles in therotor and stator determine the physicalnumber of revolutions versus the number of electrical revolutions
Figure 2 The Hall effect sensors
(which are not depicted here) are
mounted in such a way as to sense
the position of the rotor’s magnetic
fields in relation to the magnetic fields
emanated by the stator coils
Figure 3 We could reverse the BLDCmotor’s rotor to commutation position
1 by backtracking the drive voltagechart in Figure 1 by 60°
Trang 33sensors and still successfully commutate a BLDC motor?
The answer is BEMF
BEMF 101
When the BLDC motor shaft is spinning, BEMF is
generated by the movement of the rotor permanent
magnets past the stator coils BEMF is just a fancy way of
saying opposing voltage The BEMF varies according to the
speed of the motor The faster the motor spins, the higher
the BEMF that is generated
Recall that one of the three BLDC motor phases is
always electrically disconnected during commutation
Consider Figure 7 Matching up the phase drive voltages
with the commutation chart in Figure 6 tells us that this
drive pattern is representing commutation sequence 4
The floating phase in commutation sequence 4 happens to
be phase C The floating phase provides a portal for the
measurement of the BEMF voltage for this commutation
period Another look at Figure 6 shows that all three of the
phases are electrically disconnected at one time or another
Thus, we are able to measure the BEMF during any of the
six commutation periods using the available floating phase
Since the BEMF is directly proportional to the motor
speed, we can use the sensed BEMF levels to control the
commutation of a BLDC motor The goal is to commutate the
BLDC at the required speed and torque while maintaining a
safe voltage and current level in the motor’s windings
How Are We Going To Do This?
Now that we have some BLDC drive theory under our
belts and we know what we need to accomplish in relation
to driving a BLDC, let’s try to determine what we need on
the hardware side It’s pretty obvious that we’ll need a way
to generate PWM signals The easiest way I know of to do
this is to push some values into a set of microcontroller
registers and assign a PWM output pin We’ll also need a
way to activate and deactivate the MOSFETs in the
three-phase bridge Not only do we need to do this, we’ll need to
energize the correct set of MOSFETs in accordance with the
commutation table laid out in Figure 6 Logical activation
and deactivation of MOSFET switches sounds like a job for
a microcontroller to me
To implement a system that monitors BEMF and applies
the captured BEMF to commutating,the BLDC motor will
require a microcontroller with A-to-D converter capability
We’ll need at least four A-to-D converter inputs to monitor
the three phases and the overall current drawn by the
BLDC motor
A means of controlling the starting, stopping and the
speed of the BLDC motor would also be a nice thing to
have So, let’s add an additional A-to-D converter input
channel and a couple of I/O pins to our
microcontroller-capability shopping list
components we’ll need to build up our trio of phase drivers The MOSFETs for each phase can be realized using an IRF7309 The IRF7309 is an eight-pin device thatconsists of a pair of MOSFETs that matches the half-bridgeconfiguration of each of the phases outlined in Figure 5.Microchip’s TC446X series of Logic-Input CMOS drivers willprovide sufficient gate drive for the MOSFET pairs
I came across the word “BLDC” many times while reading through the PIC18F2431 datasheet So, I’m leaningtowards using the Microchip PIC18F2431 as our BLDCmotor control microcontroller The PIC18F2431 can providesix PWM channels and five fast A-to-D converter inputs
Next Time
I’m really anxious to get started on the hardware andfirmware design for our BLDC motor controller So, I’ll make this short and sweet Next month, we’ll build up our own BLDC motor
controller hardwarefrom scratch andexplore what it takes
on the firmware side
to successfully commutate ourAnaheim AutomationBLDC motor SV
Fred Eady can be reached via email at fred@edtp.com.
Motor Drivers
Figure 6 I used the voltage levels in Figure 1 to fill in this chart The PWM signals were substituted for the
–V signals given in Figure 1
Figure 7 The coil configuration is called a “wye” because
of its Y shape BLDC motors can also have their coilsarranged in a delta configuration The BLDC drive theorywe’ve discussed thus far is valid for both the wye and
delta coil configurations
Motor Anaheim Automation www.anaheimautomation.com
SOURCES
Trang 34This month, we wrap up our four part series by
covering practical use of PWM on the Propeller using
our multi-controller board In last month’s article,
Kevin McCullough covered stepper motor control and made
schematics available on the project web page These
schematics use the L293D Quad Half-H Driver IC which
provides bi-directional drive currents of up to 600 mA from
4.5V to 36V We will use the L293D in this article for both
motor control and light dimming This IC is included on the
Propeller™ Professional Development Board as well, so those
who have the PPDB can follow along even if they haven’t
built a multi-controller board
Control Methods
Controlling the speed of a motor or dimming a light
can be done by varying the voltage going to the device
More voltage and the motor goes faster or the light gets
brighter Less voltage and the motor slows down or the
BJT or MOSFET) operates in its linear (or active) regionwhen not fully on or off When this happens, the driver has
to supply necessary current while limiting the voltage onthe output The power dissipated is wasted in the form ofheat which could also be harmful to the driver or othernearby components, and often requires large heatsinks
By using the driver as a switch, it is either on or off at anygiven time This reduces the voltage drop across the device andtherefore the amount of power dissipated as heat In order
to control the speed of a motor or the brightness of a light,
we have to modulate the output to vary the power to theload PWM can accomplish this and reduce the total amount
of power to the load without the losses typical of resistive/analog means In the off state, the driver is not conducting anycurrent; in the on state, there is little voltage drop across it
PWM Control
Using PWM, we will essentially modulate our signal at a
by CHRIS SAVAGEGETTING CONTROL
WITH THE
Propeller PART 4:
Propeller Multi-Controller
Trang 35speed of a motor or the brightness of a lamp much more
efficiently Our multi-controller board is Propeller-based so we
can take advantage of the counters to help generate our PWM
signal The Propeller has eight cogs (processors) and each cog
has two counters for a total of 16 The counters operate
completely independently of each other and are advanced
modules having 32 modes of operation For this article,
we’ll be using the PWM mode which will be explained next
PWM Generation Using the Counters
The CTR.spin object (included with the Propeller Tool) does
a good job of going into the details of the counters and all
their modes and parameters, so I will focus on a small piece
of example code that will provide a working example of using
a counter to generate a PWM signal for the L293D First, let’s
have a look at the code line by line Please refer to Figure 2
for the code listing This code can also be downloaded from
the project web page listed in the Resources sidebar
Line 2 sets the clock mode and sets the PLL multiplier
to 16x Line 3 sets the frequency of the crystal we are using,
which is a 5 MHz crystal With the PLL at 16x, the Propeller
is now running at 80 MHz CLKFREQ is a command which
returns the current system clock frequency in Hertz This
means your programs can determine what speed the
Propeller is running at, as well as make calculations based
on this value Line 6 declares a global variable called
parameter, which we will use to change the duty cycle of
the signal by setting it to some percentage of the period
Line 8 starts our program code and defines the name
of this method as Main It also declares a local variable
named index which will be used as a counter Line 9 launches
the core PWM code into a new cog and passes the code
address (entry), as well as the address of the global variable
where it will obtain the duty cycle The @ symbol specifies
that we’re passing the address of a
symbol Line 10 starts a repeat loop that
never ends The lines indented below it
will run indefinitely or until the Propeller
is reset Line 11 starts a repeat loop
which uses the local variable index to
count from 0 to the current period Each
pass through the loop index is copied
into parameter and there is a small delay
before the loop continues When index
equals period, the routine will fall down
into the next repeat loop, which is
essentially the same as the first, except
that we’re counting back down The
effect is that we’re ramping the duty
cycle from 0% to 100% and back to 0%
in a continuous loop To ramp faster, you
can reduce the waitcnt value from
80_000 down to a lower value Likewise,
a higher value will cause it to ramp slower
Line 20 is the entry point to the
assembly code that handles our PWM
pin we will be using to make it an output This is accomplished by moving the value of diraval into DIRA Ifyou look down at line 30, this value was set using thedecode operator This effectively sets bit 16 high in the 32bit variable (all other bits are low) Now our PWM pin is set
to output so we drop down to line 21 which moves thevalue of ctraval into CTRA This value was calculated down
on line 31 by taking the bit pattern we want for the PWMmode (%00100), shifting it left 26 bits to get it into the correct field of the counter A control register, and adding
16 to specify which I/O pin to use for output This worksbecause the APIN is specified by the lower six bits of thecontrol register Line 22 moves a 1 into the FRQA registerwhich tells the counter to increment every clock cycle Line
23 moves the current contents of cnt into a variable called
25%
Period Duty Cycle
50%
75%
FIGURE 1 PWM example waveform.
FIGURE 2 Program listing.
Trang 36time The cnt value is a 32-bit counter incremented every
clock cycle In line 24, we add our period to time This
calculates the value of cnt one period from the time cnt
was read To summarize, lines 20 through 24 set up all the
parameters we will need in our assembly routine before
running the loop This includes setting up the direction
register for the output pin, setting up the configuration
register for counter A (which sets the mode and output
pin), and calculating the target cnt value for timing using
the system counter
At this point, we enter the main assembly loop at line
25 This line reads the current value from the address
passed in the par register which — as you may recall —
points to the global variable parameter where our main
code can alter the duty cycle Line 26 causes the cog to
wait for the target cnt value which was stored in time
Once reached, period is added to time again to recalculate
the new target and the code proceeds to the next line Line
27 takes the variable value and makes it negative before
loading it into PHSA
The reason for this is that in order for the output to be
high, bit 31 must be set By making value a negative number,
we set bit 31 and our output goes high Because value is set
to our duty cycle and the counter will increment every clock
cycle, then once the counter reaches 0 the output will go low
Line 28 loops back to line 25 where we fetch a new duty cycle
value and wait So, as you can see the output stays high for
the duty cycle, which is a percentage of the period and then
goes low The cycle restarts at exactly the number of cycles
in the period This happens indefinitely or until the cog, is
reset Since this routine runs in its own cog, the Main method
can change the duty cycle at any time and the PWM assembly
code will update at the end of the current period
Connecting the L293D
In this example, I will be driving a 7.2V DC gear motor
from a robot This motor draws approximately 190 mA
@ no load, which is well within the specifications of the
L293D If you look at line 32 of the code, you will see that
we have specified a period of 8,000 cycles This gives us a
PWM frequency of 10 kHz and a period of 125 μs which is
cannot use P0 through P15 on the multi-controller because
of the 3.9K series resistors Instead, we will use P16 whichhas no series resistor If you’re using the PPDB, you can simplyconnect P16 to Input 0 and tie the Enable (0, 1) connection
to the 5V just below it to keep it enabled Optionally, the enableline could be controlled by an I/O pin but we’re keeping itsimple for now If you are using the multi-controller board,you can breadboard this circuit and connect the ground andI/O lines using pluggable wires Please follow the schematicshown in Figure 3 PPDB users will still require an externalmotor supply and ground connection as shown in theschematic When you run the code, it should start rampingyour motor up and down between stopped and full speed
Dimming Lamps
Dimming lamps is done in the same manner as themotors, with the exception of not requiring such a highPWM frequency For light dimming, you can connect a bulb
in place of the motor and make the following changes tothe code Change the period in line 32 to 40_000 instead
of 8_000 This will reduce the frequency down to 2 kHzand a period of 500 μs You can also change the 80_000cycle delay in lines 13 and 16 to 4_000 to adjust the ramping rate A MOSFET is another option to drive a lampand there will be additional circuits and code available onthe project web page for this series
Other Options
So, now you have a good foundation to start generating PWM on the Propeller and add functionality tothe multi-controller board we’ve been working with Whilethis article covered the basics, more advanced code with bi-directional motor control will be available on the projectwebsite We may even go so far as to integrate all threetypes of control into one demo
For now, experiment, build, and learn Don’t be afraid
to try new things The chips are socketed and easily replaceable
if you should make a mistake that results in smoke Rememberyou can always visit the Parallax Object Exchange and theParallax Support/Discussion Forums if you need additionalcode or have any questions Feel free to email me at csavage@parallax.com if you have any questions, comments, or suggestions Take care and have fun! SV
1 2 3 4 5 7 8 6
Trang 37What today’s robotics
engineers, rocket scientists,
and astrophysicists do for fun.
Exercise your skill, expand
your mind, and challenge your
creativity with everything from
games to gadgets from Edmund
Scientific Whether you’re a
hobbyist, scientist, or student,
Edmund Scientific has something
to make you smile and think.
For the latest trends in toys
and technology, call for your
free catalog or shop online at
scientificsonline.com
Trang 38THE BASICS
Agait is defined as an ordered sequence of states that
typically result in locomotion To measure the gait of
a person, we measure the angles of the various parts
of the body with respect to a reference at each instance of time
during the motion The simplest reference that is available
everywhere and has the strongest effect on gait is gravity
So, we measure the gait by strapping accelerometers to
the hands, legs, hips, neck, and so on, and calculating the
angle made by the gravity vector with the axes of the
accelerometers Prior to data acquisition, we obtain a few
seconds of reference data in the rest position to measure
the angles made by the sensors with respect to the gravityvector Subsequent angles are all calculated with respect tothis reference Of course, when the limbs are moving fast,the accelerometers measure the centrifugal and radial accelerations in addition to the gravity vector So, it gets abit complicated Research systems typically use gyroscopes
to measure the angular velocity and compensate for suchrotations, but gyros are expensive To keep our costs low,
we built a system using only accelerometers It turns outthat even such a simplified system provides remarkably useful information (for example, even without the gyros,
we can measure the maximum forces on our joints whilerunning) and is routinely used in cutting-edge research
projects!
If you are looking for
an innovative science projectthat contributes to gaitresearch, this is your startingpoint The system presentedhere can also be used innumerous other applicationslike measuring the
accelerations of your bicycles, motion tracking
of slow and controlledmovements, or even in falldetection
HARDWARE DESIGN
The basic design ofthis gait detection systemconsists of one (or more)slave nodes daisy-chained
to a single master node
2
Ever wanted to monitor your rhythm and stride pattern while you run? How about the G-force on
your knees on the treadmill? Want to do simple motion tracking (inexpensively)?
This article describes a simple but powerful design for a gait detection system (of course, along with all the software you would need!) using the highly configurable Cypress CY29466 microcontroller for control and ADX330 accelerometers for the sensors.
ByBalakumar Balasubramaniam and Wendi Dreesen
Multi-Purpose, Daisy-Chained
Gait Detection System
FIGURE 1: CIRCUIT DIAGRAM FOR THE SLAVE.
Trang 39slave nodes are strapped onto the anatomy, and the
accel-erations imposed upon the slave nodes as they piggyback
during body movements are measured to calculate the gait
The key sensor component residing in every slave node
of our current gait detection system is the humble triple
axis MEMS-based accelerometer ADX330 In lieu of the
stand-alone accelerometer chip, we chose to use the
DE-ACCM3D modules from Dimension Engineering
(www.dimensionengineering.com) as they carry
on-board regulators, power filters, reverse voltage
protection, and provide buffered outputs
The three analog outputs (one for every axis) from the
DE-ACCM3D module in each slave is then fed into
program-mable gain amplifier modules within a Cypress C8YC29466
PSoC mixed signal array microcontroller The amplified
signals are then digitized using an incremental ADC converter
(TRIADC8) capable of fast conversions Note that the
TRIADC8 was chosen for this project solely for superior
speed However, the PSoC provides a large variety of
incremental and delta-sigma converters that can be
FIGURE 2: CIRCUIT DIAGRAM FOR THE MASTER.
Trang 40swapped for the TRIADC8 depending upon the application.
Once the analog data from the accelerometers is digitized,
it is sent to the master for accumulation
The operation of the slave PSoCs are controlled by a
single master PSoC on a PSoCEVAL1 evaluation board (see
Figure 4) We recommend the use of evaluation boards
instead of stand-alone breadboarded master units to ease
debugging and to facilitate further hacks on the present
design The data received by the master from the slaves is
finally transferred to a computer using the UART output
from the microcontroller (and an FTDI 232R chip) or by
connecting a serial-to-USB converter to the evaluation
board’s RS-232 port The data is recorded and saved to afile using Windows HyperTerminal
One of the difficulties we faced during our initial versions was the unreliability of data transfer while usingthe I2C connection between the slaves and the master Wetraced this problem to the long connection lengths betweenthe boards required to interconnect the slaves on a movinghuman to the stationary master In our case, the furthestdistance of the slave from the master was about five meters.With a rated capacitance of 460 pF over this length, the designexceeded the 400 pF maximum allowed line capacitance for
an I2C connection The trick to mitigate such length issues
in I2C connections is to use bus extenders We selected the Phillips P82B715 extender along with suitable pull-upresistors on the serial data (SDA) and serial clock (SCL) lines
It is estimated that the use of the extender chips allows us
to increase the maximum cable distances to about 30 m.While the design of each slave node is simple, the system obtains its enormous power by synchronously operating several slave nodes in parallel, controlled by amaster node equipped with the right software
MECHANICAL ASSEMBLY
After we got the hardware all set, we faced the formidable challenge of mounting the boards firmly on theappendages of the subject! After much trial and error, webuilt a reliable and low cost mount for the slave board byplacing it in a plastic container (soap container from Wal-Mart, $0.50) and screwing the board to the bottom of
it Initially, we experimented by sticking a piece of wood
in between the board and the container using epoxy to provide rigidity However, the epoxy was not enough tokeep the board firmly positioned under vibratory motions.Hence, four screws were used at the corners of the board,each with three bolts (two on either side of the board tohold it, and one to fasten the container’s surface) to make
a firm mount One could also use foam to fill the spacebetween the board and the container to damp out spuriousresonances between the board and the soap case Oncethe soap container was ready, we used an elastic neoprene
to fix the container in place
SOFTWARE DESIGN
The code associated with this project contains twocomponents: the hardware configuration component forthe selection and correct configuration of the various modules in the CY8C29466 chip; and the second component that takes care of the inter-chip communications, sends synchronization signals to controldata acquisition and transmissions
We configured the master PSoC with one each of
FIGURE 4: PHOTOGRAPH OF THE COMPLETED SLAVE MASTER.
FIGURE 5: SAMPLE SIGNALS FROM A HIP-MOUNTED
ACCELEROMETER SHOWING THE VOLTAGE LEVELS FOR
VARIOUS EVERY-DAY ACTIVITIES.