/
Forward Forward

Forward - PowerPoint Presentation

celsa-spraggs
celsa-spraggs . @celsa-spraggs
Follow
391 views
Uploaded On 2015-12-04

Forward - PPT Presentation

Kinematics and Configurations Kris Hauser I400B659 Intelligent Robotics Spring 2014 Articulated Robot Robot usually a rigid articulated structure Geometric CAD models relative to reference frames ID: 214604

space robot ref configuration robot space configuration ref reference workspace rigid relative joint frame path parent cartesian rotating general

Share:

Link:

Embed:

Download Presentation from below link

Download Presentation The PPT/PDF document "Forward" is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.


Presentation Transcript

Slide1

Forward Kinematics and Configurations

Kris Hauser

I400/B659

:

Intelligent Robotics

Spring

2014Slide2

Articulated Robot

Robot: usually a

rigid articulated structure

Geometric CAD models, relative to reference framesA configuration specifies the placement of those frames (forward kinematics)

q

1

q

2Slide3

Forward Kinematics

Given:

A kinematic reference frame of the robot

Joint angles q1,…,qnFind rigid frames T1,…,

Tn relative to

T0A frame T=(R,t) consists of a rotation R and a translation t so that T·x = R·

x + tMake notation easy: use homogeneous coordinatesTransformation composition goes from right to left:T1·T2 indicates the transformation T

2 first, then T1Slide4

Kinematic Model of Articulated Robots: Reference Frame

T

0

L

0

L

1

L

2

L

3

T

1

ref

T

2

ref

T

3

ref

T

4

refSlide5

Rotating the first joint

T

0

L

0

T

1

ref

q

1

T

1

(q

1

)

T

1

(q

1

) =

T

1

ref

·

R

(q

1

)Slide6

Where is the second joint?

T

0

T

2

ref

q

1

T

2

(q

1

) ?Slide7

Where is the second joint?

T

0

T

2

ref

q

1

T

2

parent

(q

1

) =

T

1

(q

1

)

·

(T

1

ref

)

-1

·

T

2

refSlide8

After rotating joint 2

T

0

T

2

R

q

1

T

2

(q

1

,q

2

) =

T

1

(q

1

)

·

(T

1

ref

)

-1

·T

2

ref

·

R

(q

2

)

q

2Slide9

After rotating joint 2

T

0

T

2

R

q

1

Denote

T

2->

1

ref

= (

T

1

ref

)

-1

·T

2

ref

(frame relative to parent)

T

2

(q

1

,q

2

)

= T

1

(q

1

)

·

T

2-

>

1

ref

·R(q2)

q

2Slide10

General Formula

Denote

(ref frame

relative to parent)

 

T

0

L

0

L

1

L

2

L

3

T

1

(q

1

)

T

2

(q

1

,q

2

)

T

3

(q

1

,..,q

3

)

T

4

(q

1

,…,q

4

)Slide11

Generalization to tree structures

Topological sort: p[k] = parent of link k

Denote

(frame i relative to parent)

Let

A(i)

be the list of ancestors of i

(sorted from root to i)

 Slide12

To 3D…Much the same, except joint axis must be defined (relative to parent)

Angle-axis parameterizationSlide13

Generalizations

Prismatic joints

Ball

jointsCylindrical jointsSpiralsFree-floating bases

From LaValle,

Planning AlgorithmsSlide14

Configuration Space

q=(q

1

,…,q

n

)

q

1

q

2

q

3

q

n

A robot

configuration

is a specification of the positions of all robot

frames relative

to a fixed coordinate system

Usually a configuration is expressed as a “vector” of parametersSlide15

reference point

Rigid Robot

3-parameter representation:

q = (x,y,

q

)

In a 3-D workspace q would be of the form

(x,y,z,

a,b,g)

x

y

q

robot

reference direction

workspaceSlide16

Articulated Robot

q

1

q

2

q = (q

1

,q

2

,…,q

10

)Slide17

ProteinSlide18

Configuration Space

Space of all its possible configurations

But the topology of this space is in general not that of a Cartesian space

y

q

robot

x

q

q’

3-D cylinder embedded in 4-D space

x

y

q

2

p

S

1

R

2

S

1Slide19

Configuration Space

Space of all its possible configurations

But the topology of this space is in general not that of a Cartesian space

C = S

1

x S

1Slide20

Configuration Space

Space of all its possible configurations

But the topology of this space is in general not that of a Cartesian space

C = S

1

xS

1Slide21

Configuration Space

Space of all its possible configurations

But the topology of this space is in general not that of a Cartesian space

C = S

1

xS

1Slide22

Some Important Topological Spaces

R: real number line

R

n: N-dimensional Cartesian spaceS1: boundary of circle in 2DS2: surface of sphere in 3DSO(2), SO(3): set of 2D, 3D orientations (special orthogonal group)

SE(2), SE(3): set of rigid 2D, 3D translations and rotations (special Euclidean group)

Cartesian product A x B, power notation An = A x A … x AHomeomorphism ~ denotes topological equivalenceContinuous mapping with continuous inverse (bijective)Cube ~ S

2SO(2) ~ S1SE(3) ~ SO(3) x R3Slide23

What is its topology?

q

1

q

2

(S

1

)

7

xI

3

(I: Interval of

reals

)Slide24

Notion of a (Geometric) Path

A

path

in C is a piece of continuous curve connecting two configurations q and q’: t

: s 

[0,1]  t (s)  C

q

1

q

3

q

0

q

n

q

4

q

2

t

(s)Slide25

Examples

A straight line segment linearly interpolating between a and b

t

(s) = (1-s) a + s bWhat about interpolating orientations?A polynomial with coeffients c0

,…,cn

t(s) = c0 + c1s + … + cn

snPiecewise polynomialsPiecewise linearSplines (B-spline,

hermite splines are popular)Can be an arbitrary curveOnly limited by your imagination and representation capabilitiesSlide26

Notion of Trajectory vs. Path

A

trajectory

is a path parameterized by time: t : t 

[0,T] 

t (t)  C

q

1

q

3

q

0

q

n

q

4

q

2

t

(t)Slide27

x

y

q

reference point

robot

reference direction

workspace

q

x

y

2

p

configuration space

What is the placement of the robot in the workspace at configuration (0,0,0)?

Translating & Rotating Rigid Robot in 2-D WorkspaceSlide28

x

y

q

reference point

robot

reference direction

workspace

q

x

y

2

p

configuration space

What is the placement of the robot in the workspace at configuration (0,0,0)?

Translating & Rotating Rigid Robot in 2-D WorkspaceSlide29

x

y

q

reference point

robot

reference direction

workspace

q

x

y

2

p

configuration space

What is this path in the workspace?

What would be the path in configuration space corresponding

to a full rotation of the robot about point P?

P

Translating & Rotating Rigid Robot in 2-D WorkspaceSlide30

Klamp’t Python API

world =

WorldModel

()world.readFile([some file])robot = world.robot(0) [if the world has only one robot]A robot’s configuration is a list of numbersrobot.getConfig()

robot.setConfig(q) automatically performs forward kinematics

It does not necessarily transform like a vector!Robot-specific interpolation function: robot.interpolate(a,b,u)A robot’s frames are given as a list of RobotModelLink’slink = robot.getLink([index or name])

(R,t) = link.getTransform()3D rigid transform utilities in se3.py