A Mobile Robot with Onboard ... and Large Workspace Arm

From: AAAI-86 Proceedings. Copyright ©1986, AAAI (www.aaai.org). All rights reserved.
A Mobile Robot with Onboard Parallel Processor
and Large Workspace Arm
Rodney
A. Brooks, Jon Connell, and Anita Flynn
MIT
Artificial
Intelligence
545 Technology
Cambridge,
Lab
Square
Mass, 02139
ABSTRACT
a.
The
MIT
number
AI Lab’s
of unique
second
32 processor
sor system,
robot,
design features.
two of them in detail.
cheap
mobile
First,
control
BARNACLE,
no central
locus of control.
Unlike
processors
this one has no expensive
The communication
a distributed
patch
almost
Second,
lightweight,
but has an extremely
MOBOT-2
by the parallel
with
all other
parallel
communications
rout-
is determined
All computing
panel.
The proces-
asynchronously
topology
the robot.
arm is controlled
has an extremely
system.
runs
ing network.
is done
by
onboard
has an onboard
arm.
It is
large working
volume.
The
The MIT
MOBOT-1,
constructed
machine
sensors
rooms
which
an offboard
Lisp machine
emphasis
architecture,
known
system.
which
testbed
and TV
microlink to
is done.
The main research
par-
and strengths
as the suhumption
of the
architecture.
here, is intended
runs the subsumption
of this paper explores
parallel
architecture,
tasks in the world than simply
of MOBOT-2.
decisions
Figure
uninteresting
it more
it works
and there’s
interesting.
extremely
Another
and weight.
larger motors
The remainder
and trade-offs
in
1 shows MOBOT-1
all our problems
Founda-
tion, and in part by the Advanced Research Projects Agency under Office
and NOOOlrl-82-K-0334.
the robot
This
of
it becomes
to add to make
to be
This dictates
we use.
made from previous
Big robots
or
is because
level,
and reassemble.
systems
apart
modify
like MOBOT-2
is that there is an explosive
call for large batteries.
with MOBOT-1
something
we would
fastening
observation
mobile robots
quiring
always
Hence,
the type of physical
it.
at any given
easy to strip down
experience
phenomenon
with
regard-
need hefty motors,
Large batteries
and even bigger
which
add more weight,
batteries
(e.g.
re-
[Giralt
like to reverse this trend and
smaller and lighter.
In the limit,
will be solved.
2. The Parallel Processor
All serious previous
851, [Giralt
an offboard
perception,
N00014-8GC-0505
once
processor
ment Award, in part by a grant from the Systems Development
/ ENGINEERING
that
running
mobot
Support for this work was provided in part by an IBM Faculty Develop-
1096
it, as we do actually
the fact
experience
time taking
in order to enhance,
We would
and the new MOBOT-2.
of Naval Research contracts
it back together
build each succeeding
and a lightweight
move around.
as much
et al 841) and so on.
to do much more interesting
the design
debug
almost
control
the distributed
an onboard
arm which will enable the robot
and putting
ing power
to
on the first and to make for a richer exfor further pursuing
that we spend
on the Lisp machine.
the one described
To this end it includes
these two aspects
and
has been on a distributed
is simulated
the motivations
Our second robot,
perimental
It has an onboard
where the real computing
which
861 describes
laboratories
has 12 sonar depth
other than its wheels.
system
be an improvement
around
over a radio
with this first robot
allel control
We have found from previous
has been underway
861. MOBOT-1
communicates
It has no actuators
control
it wandering
and a pair of TV cameras.
processor
[Brooks
project
In that time we have built our first robot,
[Brooks
b. Partially
MOBOT-2.
1.1 Previous Lessons
AI Lab MOBOT
and tested
Figure 1. MIT mobile robots a. MOBOT-1
processor.
1. Introduction
since January 1985.
b.
has a
In this paper we describe
MOBOT-2
distributed
called
MOBOT-2,
robot.
mobile
robot
et al 841, [M oravec
processor
world
and planning
this approach
ever, due to the availability
processors
robot
[Brooks
systems
to move to all onboard
[Crowley
as required
for MOBOT-1.
of more computationally
ful, low power CMOS
control
(e.g.
841) have used
to do the bulk of the computation
modelling
We adopted
projects
831, [Nilsson
for
by the
Now howpower-
and a new decompostion
of
861, we believe the time is ripe
processing.
4
,
level 9
level P
reason
b.
about
behavior
plan changes
SeWX9
to the world
identify
obJecta
monitor
changes
build
level 1
of objects
Ez&
maps
Figure
3.
adding
more levels.
Augmenting
level 0
Actuators
an existing control
system
by
explore
wander
avoid object,
Figure 2. Slicing a control system a. Traditional
position b. Subsumption
architecture
2.1 The Subsumption
Architecture
The usual approach
bile robots
to building
is to decompose
of functional
units as illustrated
robot
illustrated
then tie them together
difference
is that
have a contSrol sy&em
petence.
second
which
layer to augment
it.
new decomposition
for mobile
achieves
The
a large number
The
level of CO~Iand build
continues
a
building
more competent
a subsuntptzon
systems,
plausible
control
architecture.
different
with radically
at the hardware
of advantages
Our
limited.
lel processors
or talk to memory.
different
im-
Under
control
as a watchdog
to its attached
functions
The current
and base.
and
It can wait for ceror act
t.imer. The finite state machine .also occasion-
ally passes data
computes
processor
The finite state machine
save partial results in an internal register,
geometry
coprocessor
such as polar coordinate
and monotonic
vector
of modules
Our initial
robustness,
coprocessor
required
boards.
to control
idea was that
precisely
Recently
That
the robot
arm
one physical
play the role of one finite state
pair,
which
addition,
functions.
design calls for 32 processor
should
switch
happen offline.
to reconfigure
is never
between
parni-
talk to each
the subsumption
run of the robot.
is predetermined
machine
coprocessor.
the data flow t,hrough the module.
geometric
part of most
which lets processors
this can essentially
architec-
processors
is
Thus there is no need
message
topology,
as
Instead the communication
by a distributed
patch panel.
to build
per physical
machine-
we are of the opinion
Each processor
and contains
forming
suppression
with
128 bytes
of internal
adding
layers from
collections
of very
Each processor
is 4 inches wide by 3 inches
(described
below).
an architecture
RAM
similar
high
and logic for per-
The 6301 is a CMOS
to the 6800.
and an external
It has
8K piggy-back
The board shown in figure 4 also has provisions
an extra 2K of external
will contain
municating
pairs, which we call modules.
board
a Hitachi 6301 microcontroller
processor
EPROM.
pair
processor.
the program
and the geometric
2.2 Physical Layout
We have chosen
controls
tain inputs,
processor
concerning
expensive
for a fast dynamic
simple processor
of a finite state
geometry
level. It also
is that the architecture
of communications
fixed for a particular
from BARNACLE.
that we may be able to simulate more than one processor
The most
is the switch
ture the topology
pair consists
a peripheral
is the number
architecture
and testability.
One of these advantages
bandwidth
Figure 4. A processor board
scaled comparison,
control
strategies
buildability,
topology
intact
process
system.
layer we already
a certain
system
leads to a radically
robot
plementation
other
control
the lowest
as in figure 3.
We call this architecture
confers
each slice explicit Iy,
t’o form a robot
We leave that running
he-
This is
slices iu figure 2b. As wit,11
layer upon layer to give successively
systems
of the problem.
we implement
after building
slices
requirements
to use task uchievzng
decomposition
decomposition
for mo-
by a series of vertical
by a series of horizontal
a functional
systems
into a series (roughly)
the computational
we have decided
haviors as our primary
control
the problem
in figure 2a. After analyzing
for a mobile
decom-
the geometric
of each module
processor
if needed.
for
The EPROM
to emulate the finite state machine(s)
co-processor(s),
between modules.
state variables
RAM
as well as the code for com-
The RAM will hold the internal
and serve as a scratch
and for the decoding
pad for
of messages.
ROBOTICS
/
1097
Dominant
nnn
Inferior
output
b.
a.
C.
Figure 6. In each of the three cases above the dominant
input suppresses the inferior input.
Figure
5. Physical
arrangement
of processor
boards.
is ignored.
b.
transmitted
inferior
Messages
Inferior
packet
packet
a. Inferior packet
ie blocked.
c.
are sent serially over 2 conductors,
tor is the data line and the other is a control
Each processor
puts.
The input
subminature
board has 3 serial inputs and 3 serial out-
and output
lines of the module
phone jacks on each individual
of one module
are connected
board.
to inputs of another
wires made from a piece of coaxial
end. A single lead contains
terminate
cable with
two conductors,
and the other to carry control signals.
in
Outputs
ln addition
each jack
using patch
plugs at each
one to carry data
All input jacks come in
has a built
in switch
The
5 illustrates
processor
boards
the complete
are mounted
the robot with the chips pointing
on
building
four octagons
gether
with
and stacking
batteries
required
being
nodes
clipped
for running
thC periphery
of
we plan
will be pabched
the robot
toThe
reside in the center
of the octagon.
2.3
Between
All messages
packets.
Making
must
protocol.
None of the physical
deal
are known
processor
Our analysis
quantities
than
be controlled
simpli-
showed
any physical
how many bytes
quantity.
per packet.
with which the robot
8 bits
of accuracy
more precisely
command
for distance.
corridor
orientation
relative
sonar
sensors
more
likely infrared
per ranger
Z, y, and 0.
to the current
position.
mounted
on the robot
depth
can be placed
/ ENGINEERING
sensors
and one
if desired.
length,
robot
was
of the robot
can fit in three bytes:
is plenty for local obstacle
1098
speed
size to
question
by three bytes:
byte can represent
nor
than this.
takes two bytes, one for heading,
A third
description
The remaining
The configuration
in the world can be represented
that
for several
Since 8 bits make a byte, that seemed like a reasonable
A motion
using our lisp machine
Inhibition,
There
a necessary
width,
With
(as in MOBOT-1,
A
and
12
but
on MOBOT-‘L),
two bits
in a single 24 bit packet.
Two bits
detection
of BARNACLE.
inhibit
input
amount
t.he
of time.
to each processors
which
is
can be varied from a tenth
A pulse on
line of the inhibit input starts the timer which in
t,urn prevents
although
architec-
by simply forbidding
for a specified
to a timer whose period
the control
of 24 bits
This is much
part of the subsumption
in BARNACLE
is a special
100 instruc-
Packets
rate we used to run MOBOT-1
simulation
to send any messages
connected
the processor
from sending
any new messages,
it is allowed to finish ones currently
timer can be re-triggered
are 24 bit
for our application
to more
can any of its effecters
represent
faster than the communication
three
All ports are
in progress.
The
at any time during the inhibition
the duration.
goes low, the processor
When
in-
at last the timer’s
is free to send whatever
mes-
sages it wishes.
a fixed size significantly
24 bits was the right number
(time for about
can thus he sent in about one tenth of a second.
output
Modules
in the BARNACLE
the packets
fies the communication
reasons.
500 microseconds
terval to extended
Communication
lines to supply
of a second to several minutes by a potentiometer.
t,opologies
into these trays.
I/O
lines on each processor.
t,ions) which is an easy speed to maintain.
module
(conceptually)
Particular
every
one conduc-
line. Both control
to single bits of the processors
We use 12 parallel
ture, is accomplished
system.
Currently
them
frame.
and suppressor
the cables
around
outwards.
above each other on a plexiglass
for the processors
BARNACLE
polled
which
forces the input to a known state if no jack is inserted.
Figure
ports.
input and three output
pairs so that signals which must fan out can be daisy chained
together.
and data wires are connected
parallel
Partially
is fluehed.
and avoidance.
Suppression
special
in BARNACLE
hardware.
Each
is also implemented
processor
board
contains
pressor node which has two inputs and one output.
of a flip-flop
output.
This flip-flop
the dominant
trolled
controls
input,
which
makes
The state
it through
to the
is set by a pulse on the control
line of
and reset after a time-out
by an associated
this works.
input
using
one sup-
The control
potentiometer.
line signals
period
con-
Figure 6 shows how
an impending
message
with a square pulse; the falling edge signals that the message
is about to begin.
There is a lower bound on the length of this
pulse, but no upper bound,
message
indicates
ignored-the
ent message.
be completely
collision
3.
Reassertion
that the message
of this line during
is invalid and should
new falling edge will indicate
Thus
the two inputs
asynchronous
problems
the start of a differ-
to a suppressor
node can
and yet there are no timing
thanks to the protocol
a
be
or
definition.
The Arm
The fact that our robot
is mobile
makes a big difference
in the design of the manipulator.
A mobile
an airplane in that all its resources
only carry n certain
fit in a specified
is linlited.
amount. of weight, all its equil)lllent
power is also scarce.
and weight
is limited
lights and disk drives,
and occasionally
illto
inhabit noisy environthe teleme(ry
communications
What
are in-
(“‘)
y = II sin 8 + 12 sin 4 - f
Requirements
has been said above
ware residing
on a mobile
requirements
is true for any piece of ltnrd-
robot.
There
for manipulators
are, however,
also
on mobile robots.
One
of these is that the arm and its end effector
heavy that it tips the robot
manipulator
throughout
We want our mobile
wafers,
to manipulate
but
7. The manipulator
Figure
the hand
is always
and its kinematics.
must, not be so
they can’t
up rocks for examination.
b.
and range of payloads.
reasonably
ounces
Note that
vertical.
over. This needs to be true of the
its workspace
Arms that can lift a couple
conductor
d
x=f~cos8+f~cos~+d
altogether.
3.1 Special
specific
Fortunately,
to beam information
Yet, because robots
ments full of fluorescent
they ruII, t II(~
they consume.
power, it is possible
and out of a robot.
bandwidth
com~~u~nt?o~(~I
\‘L!sl and C’M( IS,
there are and the faster
space,
unlike electrical
power scarce,
Even with advanced
the more processors
terrupted
(nil
111114
szze, and the power a~nil:~ble f~0111Ijilt t crier:
Not only is electrical
more power,
is ;I lot likfb
rol,ot
are severely lilrlit,cb(l. It
heavy objects.
are fine for shuffling semimove
Making
coffee
the actual
means that it can move faster without
mugs
or pick
arm light also
encountering
control
instabilities.
Another
nipulators
robots
shortcoming
of most commercially
is that they have too small
inhabit
ferent heights:
a three dimensional
desks, tables,
that t,he manipulator’s
tical freedom.
ma-
Mobile
world that, has mntty dif-
shelves,
workspace
available
a workspace.
floors,
etc.
needs a large mrount
The lateral mobility
Lastly, the precision
mobots
to transfer
t.o do low tolerance
locate
an object
of commercial
things
manipulators
to perform.
from one location
assembly.
Sensors
to a thousand
is over kill
things
and setting
something
where you want it is usually
positioning
does matter,
are often environmental
fine.
down
constraints
atively
straight
very accurate
On the other end,
a]) inch of
absolute
a peg from a hole, there
(like the edges of the hole)
given an appropriate
control
sys-
design of the arm for MOBOT-2
It is a 2 degree of freedom
manipulator
which moves in a vertically
ing through
the central
degrees of freedom
vertical
axis of the robot.
is relplanar
plane passThe two
are used to select a height for t’he gripper
and to give fine grain control
Coarse
oriented
over the hand’s
radial and angular control
is provided
Total
poor
headings
range estimates.
compensate
toward
only 2 degrees
of freedom
The rationale
Each
section
radial position.
by moving
the
behind
vision,
is desirable.
we choose
This
to mount
of the arm consists
that can
is why with
the arm so it
plane.
of a parallel
four-bat
Figure 7 shows how these linkages are arranged.
cause there is no wrist in this design we have decided
the gripper
always point straight
four-bar
mechanisms
gripper
to t’he robot’s
two joints
are capable
cause the motors
it controls.
complicated
serve
down, an attitude
frame.
the motors
power transmission
an unacceptable
a payload
are light, each motor
Mounting
of 2 pounds.
is located
tfihe
Be-
at, the joint
back further would require iL
system
that could
phase lag in the servo control
workspace
The
of the
which actuate
and would likely weigh as much as the motor
The complete
which al-
the attitude
The motors
of lifting
Be-
to have
from flat surfaces.
to reference
this
supply
but relat’ively
a degree of freedom
opera.tes in a radial rather than a tangential
linkage.
we have
posit,ion of t,he
a target object
Having
for these errors
down
in particular
lows the hand to pick up s~nsll objects
et al 831.
forward.
motion.
not.
3.2 Mechanical Design
The mechanical
hand; there is no sideways
of joints
of the angular
to another,
within
a.
area.
To keep the number
fine grain control
is that many long range sensors,
For cases where
like removing
that can aid in the alignment
tem [Lozano-PCrez
ent,ire robot.
our
such as vision call not
of an inch.
for the mmipulntor.
operating
We expect
getting the gripper to within half an inch is sufficient to grasp
most
b. Normal
not provided
we wish our robot
Tip positions
does
base allows it t,o move
the whole arm around.
for the actions
8.
workspace.
of v(br-
of the arm, however,
not need to be very big since the robot’s
Figure
This me3;111s
introduce
of the fingers
itself.
of the arm is shown in figure 8;~.
ROBOTICS
/
1099
b.
9. Close-up
Figure
of a prototype
compliant
gripper.
Figure
10. The hand
finders
(triangles).
returned
However, we are primarily
concerned
with the vel tic al colun~n
shown in figure 8b which is 40 inches high and 18 inches witle.
This
alloys
the arm to work 0x1 both
of tables and to reach anywhere
desk top.
Quantizing
the joint
a1111a quarter
inch accuracy
65530 possible
fingertip
the floor all(l the 101)s
in the front half of a nor~nal
angles to 8 bits eacll gives tllcx
over the entire workspace.
positions
are plotted
All
fingers are 1 inch wide by 3 inches long and contact
control
over the angular
the robot,
lateral
rubber
the jaws of gripper
leeway
2 degrees
furthest
location
is important
of the
of error in the angular
point
Thcb
the object,
with respect,
iWIll
open to a wide 5 inches.
because
in its workspace
it allows
position
t.0
This
us to tolerate
at shorte1
The arm is controlled
the joints.
voltage
by specifying
This is accomplished
to a st,andard
rate. Controlling
a speed for each of
by slowly ramping
proportional
controller
the speed of t,he joints rather than their po-
sition lets us move the hand along a desired trajectory.
ticular,
we can command
up or move it directly
by specifying
sensed, but. the error volt-
ages in the servo amps are also reported.
Errors in the joint
being supplied
pling this with the configurat,ion
the weight of the payload
suring the control
sufficiently
necessary
This
the hand is grasping
large grasping force is sensed.
is determined
slowly
The amount of force
by the weight of the payload
directly
until a
as described
above,
which
or esli-
/ ENGINEERING
kinesthesic
range-finders.
sensors,
These
The pro-
switch,
but rather
to local
moving
obst,acles,
formulabes
motors
on the onboard
processes
sensor
MOBOT-2
also has an onboard
care
and
fashion.
arm. Ilnlike other robols
arms this one has a large workspace
objects
The
arm, reacts
information,
high level plans all in a distributed
with onboard
topology.
in the entire system.
enabling
it
quite far above the base of the robot,.
has been
taken
achieve this reach without
to ensure
tipping
that
the robot
can
itself over.
REFERENCES
[Brooks
861 “A Robust
Robot”,
Rodney
RA-2,
Automation,
[Crowley
March
[Giralt
search
IEEE
Giralt,
Integrated
Raja Ch+tila,
for Robots”,
and Russell
Research,
[Morave<:
Mobile
Robot”,
and Automafzon,,
Navigation
Multisensory
831
“The
P. Moravec,
Motion
Robots”,
Robotics
Re-
1984, 191-214.
Synthesis
of Fine-
Tom&s Lozano-PCrez,
H. Taylor,
Volume
and
Mobile
and Marc Vaisset,
et al 831 “Automatic
Strategies
Robotics
and
1985, 31-41.
[Lozano-Pdrez
Hans
oj Robotics
1, Brady and Paul eds, MIT Press,
Mason,
oj Robotics
for an Intelligent
System for Autonomous
Motion
T.
System for a Mobile
Journal
1986
Journal
al 841 “An
et
IEEE
No l., April
851 “Navigation
James L. Crowley,
RA-1,
Layered Control
A. Brooks,
International
Mathew
Journal
oj
3, Issue 1, 1983
Stanford
Proceedings
Cart
and the CM17 Rover”,
of the IEEE,
71, July
1983,
872-884.
the finger separation.
from basic
a cluster of 8 infrared
1100
controls
Georges
For the fingers, mea-
allows us to close the fingers
by measuring
Aside
processor
angles iudicat e
of the arm we can determine
being carried.
processor.
of its communicat~ion
locus of control
parallel
Control
By cou-
parallel
configuration
There is ILOcentral
spring, this can
by t#he mobors.
error tells how tightly
can either be measured
mated
If the servo has a
such as a generalized
be very useful information.
the amount, of torque
joint speeds that
of the arm.
Not only are the joint positions
known transfer function,
111par-
the arm to raise the gripper straight
forward
vary with the configuration
an object.
has an onboard
the cont,lol
at a particular
For the table shown in figure
map looks figure lob.
relies on physical
Special
Control
the fingers as can be seen in figure
a coarse (3 bit) depth measurement
cessor is unique in that it has no dynamic
to manipulate
and
b. Ileights
Conclusion
of the arm at the
and larger errors
extensions.
3.3 Sensors
lOa, the IR depth
MOBOT-2
Since there is no fine grain
pads.
grid surrounding
of the surface in its field of view.
4.
by :I ring of II? range
by the IR ring.
10a. Each sensor provides
in ligtlre 8a.
The hand is a simple linear slide parallel jaw gripper.
via two compliant
hexagonal
is surrounded
a. The arm over a table.
the hand also has
are arranged
in a
[Nilsson 841 ‘Shakey
Center
Technical
the Robot”,
Note 8!?3, April
Nils J. Nileson,
1984.
SRI Al