You are on page 1of 34

Kinematics

Spatial Descriptions
Task Description Transformations Representations

Manipulator
Revolute Joint

Prismatic Joint

i nk Li

End-Effector Base

Links: Joints:

n moving link 1 fixed link


Revolute (1 DOF) Prismatic (1 DOF)

Configuration Parameters
A set of position parameters that describes the full configuration of the system.
9 parameters/link

Generalized coordinates
A set of independent configuration parameters

Degrees of Freedom
Number of generalized coordinates

Generalized Coordinates

Generalized Coordinates

6 parameters

3 positions 3 orientations

n moving links: 6n parameters

Generalized Coordinates

6 parameters 5 constraints

3 positions 3 orientations

n moving links: 6n parameters n 1 d.o.f. joints: 5n constraints d.o.f. (system): 6n - 5n = n

End-Efector Configuration Parameters


{0}

0n+1

A set of m parameters:

( x1 , x2 , x3 ,K , xm )
that completely specifies the end-effector position and orientation with respect to{0}

Operational Coordinates
On +1 : Operational point
{0}

0n+1

A set x1 , x2 ,K , xm 0 of m0 independent configuration parameters m 0 : number of degrees of freedom of the end-effector.

Joint Coordinates
3

Joint Space
3

( )
x y

1
y x

Operational Coordinates

Operational Space

Redundancy
A robot is said to be redundant if

n > m0
Degrees of redundancy: n m0

Position of a Point
With respect to a fixed origin O, the position of a point P is described by the vector OP or simply by p.

P p

Rigid Body Configuration


Q
E
Euclidian Space

uuu r p = uuur OP q = OQ
z

O
Cartesian Frame

p 0 y

Coordinate Frames

Rigid Body Configuration


^ ZA {A}
A

^ {B} ZB

^ YB

P
^ XB

^ YA ^ XA

Position:

AP A B B B}

^ ,AY ,A^ ^ Z Orientation: { X

Describes rotations of {B} with respect to {A}

Rotation Matrix

Rotation Matrix
r r r 11 12 13 A R = r21 r22 r23 B r31 r32 r33
A

^ ZA {A}
^A YBP

^ {B} ZB

^ YB

^ {B} ZB

^ XB

= AR BX XB B B

^ YA ^ XA
^ XB

0 1 0 A A A A A A XB = BR 0 Y = BR 1 ZB = BR 0 B 1 0 0

A B

AXB AY AZB R= B

Rotation Matrix
A B

AXB AY AZB R= B

^ ZA {A}
^ YB

Dot Product
X B .X A A X B = X B .YA X B .Z A

^ {B} ZB

^ YA ^ XA
^ XB

XB.XA A Y B R = XB. A XB.ZA

YB.XA ZB.XA YB.YA ZB.YA .Z Z .Z YB A B A

T XA

Rotation Matrix
A B

AXB R=
A B

YB

R= R
B A
A B 1

T BXA B T T B B B B A = YA = X A YA Z A = A RT ZB B T ZA

Inverse of Rotation Matrices

R = R= R
B A A B

A B

R = R
A B

T
Orthonormal Matrix

Example

^ YB

^ ZA

{A}

{B}
^ ZB

O
^ XB

^ YA

A B

F1 R = G0 GH 0

$T 0 0 BX A $ 0 1 B YAT $T BZ A 1 0 A XB AY AZB B

I JJ K

^ XA

Description of a Frame
with respect to reference frame {A}
A

^ XB

^ ZB

{B}

PBORG

^ YB

$ , AY , AZ , AP Frame {B}: X B $B $ B Borg


A

lq n
B =

A B

PBorg

Mapping
changing descriptions from frame to frame

Rotations
{B} {A} P
A

If P is given in {B}: BP

F X$ . PI F X$ $ $ P = G Y .P J = G Y GG Z$ . P JJ GG Z$ H K H
B B B B B
A

T A B T A B T A

I JJ . P JK
B

P= R P
A B B

Translations
A

{B} P OB
B

P P

{A}

PBORG OA

changing the position description of a point P


OBP OAP (Two different vectors)
B
=

PBORG :

PB O

POA
A

P = O
A

P + A PBORG O
B

General Transform
A

{B}

{A}
A

PBORG

P = ARBP + APBORG B

Homogeneous Transform
A

{B}
B

{A}
A

PBORG

P = ARBP + APBORG B
A

A AP B R = 1 0 0 0

BP P Borg 1 1
B

P =
(4x1)

(4x4)

(4x1)

Example
{A} ZA
?

LM0OP MM1PP N1Q Z


B

{B} YB

YA XA Homogeneous Transform
A B

LM0OP MM3PP N1Q


0 0 0 1 1 0 0 0 0 3 1 1

XB

LM1 MM0 T= 0 MN0

OP PP PQ
A B

LM0OP MM1PP P= 1 MN1PQ


B
A

P= T. P

LM0OP MM2PP P= 2 MN1PQ

Operators
Mapping: changing descriptions from frame to frame Operators: moving points (within the same frame) {B} Mapping {A}
P

P =

A
B

R P P2

Rotational Operator

P2

R P1

R: P1

P2 = R P1

Rotational Operators
RK(): P1
Example
RX

P2
Z

P2 = RK() P1
P2 P1
Y X

LM1 ( ) = M0 MN0

0 cos sin

0 sin cos

OP PP Q

0 0 0 1 0 P2 = RX ( ) P = 0 0.8 0.6 2 = 1 1 0 0.6 0.8 1 2

Translations
{A} POA

{B}

P2
POB

PBORG

Mapping: PBORG : POB

POA

(same point)
2 diff. vectors

POA = POB + PBORG

Translations
{A}

{B}

P2
POB

P1
POA

PBORG

Mapping: PBORG : POB Translational Operator:

POA

(same point)
2 diff. vectors

POA = POB + PBORG

Translations
{A}

P1
POA

{B} Q e mov

P2
POB

PBORG

Mapping: PBORG : POB Translational Operator:


Q: P1

POA

(same point)
2 diff. vectors

POA = POB + PBORG

P2 (2 points, 2 diff vectors)

P2 = P1 + Q

Translations
{A}

P1
POA

{B} Q e mov

P2

Translational Operator:
Q: P1 P2 (2 points, 2 diff vectors) P2 = P1 + Q

Translation Operator
{A} P1
Q

P2

Operator: AP2 = AP1 + AQ

Homogeneous Transform:
DQ

LM1 MM0 = 0 MN0

0 0 qx 1 0 0 1 0 0
z

OP q PP q P 1Q
y

P2 =

DQAP1

General Operators
P2 = RK() Q 0 0 0 1 P2 = T P1 P1

Inverse Transform
{B} {A} PAORG PBORG
A B

LM T= N0
T
A B

A B

R
-1

PBorg 1
T

0 0

OP Q

A B

LM = T= N0
B A

R =R

-1

(T = T )
T

R . PBorg
A B T A

0 0

OP Q

PAORG

You might also like