high level manipulation primitives for a robot arm
play

HIGHLEVELMANIPULATION PRIMITIVESFORAROBOTARM Supported by National - PowerPoint PPT Presentation

ThesisProposalfortheMasterofScienceDegreeinComputerScience PresentedbyGlennV.Nickens AdvisedbyDr.DavidTouretzky Thursday,January29,2009 HIGHLEVELMANIPULATION


  1. Thesis
Proposal
for
the
Master
of
Science
Degree
in
Computer
Science

 Presented
by
Glenn
V.
Nickens
 Advised
by
Dr.
David
Touretzky
 Thursday,
January
29,
2009
 HIGH‐LEVEL
MANIPULATION
 PRIMITIVES
FOR
A
ROBOT
ARM
 Supported by National Science Foundation awards 0717705 and 0742106 to Carnegie Mellon University, and 0742198 to Norfolk State University. 1


  2. Outline 
 • IntroducKon
to
the
research
topic
 • Problem
statement
 • Accomplished
background
work
 • Proposed
method
of
compleKon
and
tesKng
 • Expected
outcome
and
contribuKons
 • Timeline
 2


  3. IntroducKon 
 • Access
to
the
field
of
roboKcs
has
been
limited
in
 computer
science
undergraduate
programs
due
to:
 – The
complexity
of
the
underlying
mathemaKcs
and
theory
 that
is
needed
to
implement
kinemaKcs,
path
planning
and 
 manipulaKon

 – The
size,
cost
and/or
limited
capabiliKes
of
available
robots 
 • To
help
solve
this
problem,
researchers
at
Carnegie
 Mellon
University
have
developed:
 – The
Tekkotsu
soSware
framework
 – An
inexpensive
hand‐eye
robot
($995
from
RoPro
Design)
 3


  4. IntroducKon 
 • Tekkotsu
 – is
an
open
source
robot
programming
framework
 based
on
C++.
 – is
an
object‐oriented
and
event
passing
 architecture
that
makes
full
use
of
the
template
 and
inheritance
features
of
C++.
 – programmers
use
high‐level
primiKves,
such
as
 “nod
your
head”
and
“walk
to
that
locaKon”,
to
 control
robots.
 4


  5. IntroducKon 
 • The
hand‐eye
robot:
 – has
a
three‐link
planar
arm,
with
a
webcam
 a`ached
to
a
pan‐Klt
above
it
for
vision.
 – is
a
small,
affordable
robot
that
fits
on
a
classroom
 table.
 – can
be
programmed
to
manipulate
objects
 idenKfied
by
the
camera.
 • However,
Tekkotsu
does
not
have
high‐level
 manipulaKon
primiKves
for
an
arm.
 5


  6. IntroducKon 
 • CreaKng
the
high‐level
primiKves
necessary
to
 perform
manipulaKon
with
the
arm
is
the
 subject
of
this
research
proposal.
 • Once
the
primiKves
are
implemented,
I
will
 test
them
by
wriKng
a
Kc‐tac‐toe
player.
 • The
player
will
use
only
the
high‐level
 primiKves
to
manipulate
the
game
pieces.

 6


  7. Problem
Statement 
 I
will:
 – design
the
high‐level
manipulaKon
primiKves
 required
to
program
the
hand‐eye
robot.
 – formalize
and
implement
the
algorithms
for
the
 primiKves.
 – demonstrate
that
the
primiKves
are
suitable
for
 performing
complex
tasks.
 7


  8. Background 
 • To
create
the
manipulaKon
primiKves
the
 following
are
necessary:
 – A
robot
arm
 – KinemaKcs
 – Collision
detecKon
 – Path
planning
 – Path
smoothing
 8


  9. Three‐Link
Planar
Arm
 • Three
Dynamixel
AX‐12
 servos
 • Upper
arm
and
forearm
 are
constructed
of
 aluminum
tubes
and
 elongated
c‐brackets
 • End‐effector
is
a

 c‐bracket
 9


  10. ManipulaKon
Surfaces
 • No
closeable
fingers
 • Must
move
objects
by
 pushing
them
 • Three
manipulaKon
 surfaces:
 – Interior
of
the
c‐bracket
 – Wrist
 – Forearm
&
Upper
arm
 10


  11. Why
not
two
links? 
 • ManipulaKon
in
the
 plane
requires
at
least
 3DOF
(x,
y,
and
 θ ).
 • A
two‐link
arm
only
has
 2DOF.
 • A
a
three‐link
arm
can
 reach
a
target
from
 many
angles;
a
two‐link
 arm
can
reach
it
from
 only
two
angles.
 11


  12. Why
not
four
or
more
links? 
 • Given
a
target
and
angle
 of
manipulaKon,
a
three‐ link
arm
will
have
at
most
 two
soluKons,
a
four‐link
 arm
may
have
infinitely
 many
soluKons.
 • Solving
kinemaKcs
for
a
 four‐link
arm
is
more
 complex
than
for
a
three‐ link
arm.
 • Links
are
expensive
 (power,
weight,
wiring).
 12


  13. KinemaKcs 
 • KinemaKcs
describes
 the
relaKonship
 between
the
posiKon
 and
orientaKon
of
the
 end‐effector
and
the
 joint
angles
of
the
arm.
 13


  14. Forward
KinemaKcs 
 • Forward/direct
kinemaKcs
calculaKons
 determine
the
end
effector
configuraKon
 given
the
joint
angles.
 • Forward
kinemaKcs
calculaKons
are
easily
 solved
with
a
series
of
matrix
mulKplicaKons,
 and
will
always
produce
a
unique
soluKon.
 14


  15. Inverse
KinemaKcs 
 • Inverse
kinemaKcs
 calculaKons
search
for
a
 set
of
joint
angles
that
 produce
a
specified
end
 effector
configuraKon.
 • Inverse
kinemaKcs
 calculaKons
are
harder;
 there
may
be
mulKple
 soluKons,
or
there
may
 be
none.
 15


  16. Inverse
KinemaKcs 
 • In
this
research,
inverse
kinemaKcs
is
used
to
 determine
the
shoulder,
elbow,
and
wrist
 angles
given
a
target
posiKon
and
the
 manipulaKon
surface
orientaKon.
 • The
inverse
kinemaKcs
calculaKons
for
the
 arm
use
a
four
step
process
based
on
a
 common
analyKcal
approach
documented
in
 the
book
‘Robot
Modeling
and
Control’
(Spong
 2006).
 16


  17. IK
CalculaKon
Process 
 Determine
the:
 1) wrist
posiKon
[x w ,
y w ]
from 
 the
target
point
[x t ,
y t ]
and
 desired
orientaKon,
 ϕ t .
 2) elbow
angle,
θ 2 ,
from
the
 wrist
posiKon
[x w ,
y w ]
and
 arm
dimensions,
L 1
 and
L 2 .
 3) shoulder
angle,
θ 1 .
 4) wrist
angle,
θ 3 .
 17


  18. IK
Step
1 
 • Determine
the
wrist
 posiKon
[x w ,
y w ]
from
 the
target
point
[x t ,
y t ]
 and
desired
orientaKon,
 ϕ t .
 18


  19. IK
Step
2 
 • Determine
the
elbow
 angle,
θ 2 ,
from
the
wrist
 posiKon
[x w ,
y w ]
and
 arm
dimensions,
L 1 
and
 L 2 .
 19


  20. MulKple
SoluKons 
 • The
step
for
 determining
the
elbow
 angle,
θ 2 ,
may
produce
 two
soluKons.
 • These
are
called
the
 elbow
up
and
elbow
 down
configuraKons.
 20


  21. IK
Step
3 
 • Determine
the
shoulder
 angle,
θ 1 . 
 21


  22. IK
Step
4 
 • Determine
the
wrist
 angle,
θ 3
 22


  23. IK
ModificaKons 
 • The
inverse
kinemaKcs
calculaKon
process
 described
thus
far
is
ideal
for
arms
whose
 joints
turn
without
bound
and
whose
 environments
are
obstacle‐free.
 • ModificaKons
have
been
made
to
these
 calculaKons
to
create
an
IK
solver
specifically
 for
the
arm
in
this
research.
 23


  24. IK
ModificaKons 
 • The
joints
cannot
turn
a
 full
360°
because
 adjacent
arm
segments
 will
collide.
 • The
IK
solver
only
uses
 configuraKons
that
are
 within
the
turning
limits
 of
each
joint.
 24


  25. IK
ModificaKons 
 • SomeKmes
a
target
is
not
reachable
from
a
desired
orientaKon,
 but
may
be
reached
from
another
orientaKon.
 • The
IK
solver
will
search
around
the
desired
orientaKon
at
10°
 intervals
for
180°
in
both
direcKons
unKl
a
valid
soluKon
is
 found.
 Desired Valid orientation orientation 25


  26. IK
ModificaKons 
 • When
both
elbow
up
and
elbow
down
configuraKons
 are
valid,
the
IK
solver
must
choose
one.
 • It
chooses
the
one
that
has
the
same
elbow
direcKon
 as
the
arm’s
current
configuraKon.
 26


  27. IK
ModificaKons 
 • The
IK
solver
uses
a
collision
 detecKon
algorithm
to
 check
for
collisions
of
the
 arm
with
itself
or
with
 objects
in
the
environment.
 • Arm
segments
and
obstacles 
 are
represented
as
 rectangles.
 • The
algorithm
is
based
on
 the
SeparaKng
Axis
 Theorem.
 27


  28. Path
Planner 
 Once
the
kinemaKcs
solver
has
determined
the
start
 and
end
configuraKons
for
the
arm,
a
collision
free
path 
 must
be
computed
to
move
the
arm.
 28


Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend