Sunteți pe pagina 1din 39

Chapter 1: Kinematics

Chew Chee Meng

What you would learn


Definitions of positions and orientations of rigid bodies Analysis of different representations for orientation Transformation of coordinates Determination of new positions and orientations after a sequence of rigid body motions Kinematics modeling of robotic manipulators Forward and inverse kinematics of position
2

Spatial descriptions and Transformations Need to specify spatial attributes of various objects with which a manipulation system deals Cartesian coordinate frames are used

Spatial descriptions and Transformations Position & orientation of a Rigid Body


Location of rigid body

Position

Orientation

Position & orientation of a Rigid Body Position: Attribute of a point


Represented by a position vector

zA With reference to a coordinate frame xA

AP

px P = p y 3 pz

{A} yA

Position & orientation of a Rigid Body Orientation: Attribute of a body


Represented by Matrices (Rotation Matrices)
A B

R = [AxB AyB AzB ] 3x3


zB

zA {A} yA xA Reference frame

{B} xB

yB body frame

By attaching a coordinate frame to the body and then give a description of this coordinate frame relative to the reference coordinate frame

A rigid body
6

Position & orientation of a Rigid Body


Orientation
A B

= [AxB AyB AzB ] 3x3


zA Orthogonal unit vectors (orthonormal matrix) {A} yA xA

zB {B} xB

yB

A det( B R) = +1
Multiplication of rotation matrices generally not commutative

Note: AxB means xB expressed in {A}

Position & orientation of a Rigid Body


Orientation
A B
zB zA {A} {B} xB

yB

= [AxB AyB AzB ]

x B x A = x B y A x B z A

yB xA yB yA yB zA

zB xA zB y A zB zA

yA xA

Remark: Components are direction cosines (dot product of two unit vectors yields the cosine of the angle between them) Choice of reference frame is arbitrary, but must be the same

Position & orientation of a Rigid Body


Orientation
A B
zB zA {A} {B} xB yB

= [AxB AyB AzB ]

x B x A = x B y A x B z A

yB xA yB yA yB zA

zB xA zB y A zB zA

yA xA

Note: Rows of the matrix are the unit vectors of {A} expressed in {B}

B xT A B T = y A = B xA B zT A

yA

B z A = A RT

Position & orientation of a Rigid Body


Orientation
A B

B R = A RT

By switching the frames labels:

B A

A R =B RT

A xT B A T A A T A xB B R B R = yB A zT B

yB

z B = I3

A B

A B R 1 = B R T = A R
10

Position & orientation of a Rigid Body


Orientation
zB yB

Uniqueness
xA

zA {A} yA

{B} xB

3 independent parameters

11

Position & orientation of a Rigid Body


Elementary (Basic, Fundamental) Rotation matrices
Rotation about xAo by angle
zA1 zAo

0 0 1 A0 cos - sin A1 R = R X ( ) = 0 0 sin cos


xAo , xA1

yA1

yAo

12

Position & orientation of a Rigid Body


Elementary (Basic, Fundamental) Rotation matrices
Rotation about yAo by angle
zA1 zAo

A0 A1

cos 0 sin R = R Y ( ) = 0 1 0 - sin 0 cos

yAo ,yA1 xAo xA1


13

Position & orientation of a Rigid Body


Elementary (Basic, Fundamental) Rotation matrices
Rotation about zAo by angle
cos A0 A1 R = R Z ( ) = sin 0 - sin cos 0 0 0 1
xAo zAo ,zA1

yA1 yAo xA1


14

Coordinate Transformations (Mappings)


Mapping: Changing descriptions from frame to frame Expressing the position vector of a point in space in terms of various reference coordinate systems
zB p

?
zA xB yA

yB

{B}

Given Find

P P
16

{A}
xA

Coordinate Transformations (Mappings)


Mappings involving translated frames (i.e., frames having same orientations)

AP

= BP + APBORG
17

Only applicable when orientations of frames A and B are the same

Coordinate Transformations (Mappings)


Mappings involving rotated frames
P

Coordinates of P in B

A P= B R BP

Coordinates of P in A

Above equation assumes origins of Frames A & B are coincident. What if the two origins are not coincident?

18

Coordinate Transformations (Mappings)


Example 1-1: Figure 1-1 shows a frame {B} which is rotated relative to frame {A} about z by 30 degrees. Here, z is pointing out of the page. There is a point P whose position vector expressed in {B} is Bp = [0 2 0]T. What is the position vector of the point P expressed in {A}?
P yA yB xB 30o xA
19

Figure 1-1

Coordinate Transformations (Mappings)


Solution:
Writing the unit vectors of {B} in terms of {A} and stacking them as columns of the rotation matrix we obtain: 0.866 0.5 0 P 0.5 0.866 0 A BR = yA 0 0 1 yB Given Bp = [0 2 0]T,

xB 30o xA

1 A A B p = B R p = 1.732 0

20

Coordinate Transformations (Mappings)


Solution: Remark:
A B

A B

R acts as a mapping which is used

0.866 0.5 0 R = 0.5 0.866 0 0 0 1


P yA yB 30o xB xA

to describe Bp relative to frame {A}. The original vector p is not changed in space. We simply compute the new description of the vector relative to a new frame.

21

10

Coordinate Transformations (Mappings)


Mappings involving general frames
zB p yB

?
zA xB yA

{B}

Given Find

P P

{A}
xA

22

Coordinate Transformations (Mappings)


Mappings involving general frames
zB zA p yB yA xA xB yA
A B A R = BR

zA

{B}

{A}
xA

P = A R B P B

and

P = A PBORG + A P
23

A P = A PBORG + A R B P = A PBORG + B R B P B

11

Coordinate Transformations (Mappings)


Mappings involving general frames
zB zA p yB yA xA xB yA

zA

{B}
A P = APBORG + B R BP
Rotational transformation

{A}
xA

Translational transformation

24

Homogeneous Transformation

zB

p yB

A P = APBORG + B R BP

zA xB yA

{B}

P = AT BP B

{A}
xA

Homogeneous transformation

25

12

Homogeneous Transformation
B px B p B P = B y pz 1

A B

R T = 0
A B

PBORG 1

Homogeneous transformation matrix

A px A p A P = A y pz 1

4x4 matrix

Augmented vectors
26

Homogeneous Transformation
Example 1-2 Figure 1-2 shows a frame {B} which is rotated relative to frame {A} about z by 30 degrees, and translated 10 units in xA , and 5 units in yA. Find Ap where Bp = [3 7 0]T.

Figure 1-2

27

13

Homogeneous Transformation
Solution:
0.866 0.5 0.5 0.866 A T = B 0 0 0 0
0.866 0.5 0.5 0.866 A p= AT Bp = B 0 0 0 0

0 10 0 5 1 0 0 1
0 10 3 9.098 0 5 7 12.562 = 1 0 0 0 0 1 1 1

That is,
A

9.098 p = 12.562 0

28

Homogeneous Transformation
Interpretation 1: T represents coordinate transformations in compact form
p yB
A B A BR T = 0 A

zB

zA xB yA

PBORG 1

{B}

{A}
xA

29

14

Homogeneous Transformation
Interpretation 2: T represents position & orientation of the coordinate frame {B} relative to {A}
zB yB

{B}
zA yA xB

A B

AR T = B 0

PBORG 1

{A}
xA

30

Homogeneous Transformation
Interpretation 3: T represents translation and rotation of the coordinate frame {A} to {B}
zB zA yB yA xA zA yA
31

{B}
xB

A B

A BR T = 0

PBORG 1

{A}
xA

15

Homogeneous Transformation
For free vectors (e.g. force, velocity, etc), augment the vectors with 0 rather than 1:

A px A p A P = A y pz 0

32

Homogeneous Transformation
Consecutive transformation:
zn-1 z1 yn-1 xn

p
zn yn

y1

{n-1}
xn-1
n

{n}

z0 x1 y0

{1}

Given

augmented position vector of P expressed in frame n homogeneous transformation matrix from frame i to frame i-1 (i = 1,,n) augmented position vector33 P of expressed in frame 0

{0}
x0

i 1 i

A
P

Find

16

Homogeneous Transformation
Consecutive transformation:
0 0 P = 1A1 A 2 n 1 n

A n P = n0 A n P
i 1 i
n

where

homogeneous transformation matrix from frame i to frame i-1 (i = 1,,n) augmented position vector of P expressed in frame n augmented position vector of P expressed in frame 0 homogeneous transformation from frame n to frame 0

P o P
0 1 1 A2 A n 1 n

A =0 A n

34

Homogeneous Transformation
Inverse of a Homogeneous Transformation Matrix A 1 A B Given BT , find AT or BT
By definition, i.e.
A BR 0 A

A B

T AT 1 = I B

PBORG X 1 0
=>

1 Y 0 = 1 0 0

0 0 0 1 0 0 I 33 0 = 0 1 0 0 1 0 0 1

A B
A B

RX = I

A A B X = B R 1 = B R T = A R

RY + APBORG = 0

=>

A A Y = B R 1 A PBORG = B RT A PBORG
35

17

Homogeneous Transformation
Inverse of a Homogeneous Transformation Matrix
A B RT B A 1 = AT = BT 0 A B RT A PBORG 1

36

Homogeneous Transformation
Example 1-4
Figure 1-5 shows a frame {B} which is rotated relative to frame {A} about z by 30 degrees, and translated four units in xA, and three units in yA. Find B T . A

Figure 1-5

37

18

Homogeneous Transformation
Solution:
0.866 0.5 0.5 0.866 A BT = 0 0 0 0 0 4 0 3 1 0 0 1
0 4.964 0 0.598 1 0 0 1
38

B A

R T = A T 1 = B 0
A B

0.866 0.5 R p BORG 0.5 0.866 = 0 0 1 0 0


A B T A

Example 1-5
Assume we know B T in Figure 1-6, which describes the frame at the T manipulators fingertips {T} relative to the base of the manipulator, {B}. Also, we know where the tabletop is located in space relative to the manipulators base because we have a description of the frame {S} which is attached to the table as shown, BT . Finally, we know the location of the frame attached to the S S bolt lying on the table relative to the table frame, that is, GT . Calculate the T position and orientation of the bolt relative to the manipulators hand, GT .

Figure 1-6

39

19

Solution:

T G

S S T = T T BT GT = BT 1 BT GT B S T S

40

Operators: Translations, Rotations, and Transformation


Operators :
Another interpretation of the mathematical forms used for coordinate transformations Only one coordinate frame is involved

41

20

Operators: Translations, Rotations, and Transformation


Translational operators: Moves a point in space a finite distance along a given vector direction qx How a vector AP1 is translated by a vector AQ = q y : AQ qz
zA
AP 1

Result of the operation is a new vector AP2 = AP1 + AQ


AP 2

xA

{A}

yA

To write the translation operation as a matrix operator,

1 0 A P2 = 0 0

0 1 0 0

0 qx 0 qy A P1 1 qz 0 1

42 where qx, qy and qz are components of the translation vector Q

Operators: Translations, Rotations, and Transformation


Rotational operators:
Operates on a vector AP1 and changes that vector to a new vector AP2, by means of a rotation, R (about origin) Same as the rotation matrix that describes a frame rotated by R relative to the reference frame Define a rotational operator RK():
AP = 2

RK()AP1

- K is the axis of rotation - (in degrees) is the amount of rotation about K


43

21

Operators: Translations, Rotations, and Transformation


Rotational operators:
E.g. operator that rotates about the Z axis by can be written as: cos sin 0 0 sin cos 0 0 cos sin 0 sin cos 0 RZ ( ) = RZ ( ) = 0 0 1 0
0 0 1
0 0 0 1
3x3 rotation matrix homogeneous transformation matrix

44

Operators: Translations, Rotations, and Transformation


Example 1-6
Figure 1-3 shows a vector Ap1 = [0 2 0]T. We wish to compute the vector obtained by rotating this vector about z by 30 degrees. Call the new vector Ap2.

Figure 1-3

45

22

Operators: Translations, Rotations, and Transformation


Solution:
Note: The rotation matrix which rotates vectors by 30 degrees about z = The rotation matrix which describes a frame rotated 30 degrees about z relative to the reference frame.
0.866 0.5 0 Rz (30.0) = 0.5 0.866 0 0 0 1

0.866 0.5 0 0 1 p 2 = Rz (30.0) p1 = 0.5 0.866 0 2 = 1.732 0 0 1 0 0


A

46

Operators: Translations, Rotations, and Transformation


Transformation operators
Rotate and translate
Define operator T to be one which rotates and translates a vector AP to a new vector AP : 1 2
AP = 2

T AP1

(1-3)

47

23

Operators: Translations, Rotations, and Transformation


Example 1-7
Figure 1-4 shows a vector Ap1. We wish to rotate it about z by 30 degrees, and translate it 10 units in xA, and 5 units in yA. Find Ap2 where Ap1 = [3 7 0]T.

48

Operators: Translations, Rotations, and Transformation


Solution:
The operator T, which performs the translation and rotation, is
0.866 0.5 0.5 0.866 T = 0 0 0 0 0 10 0 5 1 0 0 1

0.866 0.5 0.5 0.866 A A p 2 =T p 1 = 0 0 0 0

0 10 3 9.098 0 5 7 12.562 = 1 0 0 0 0 1 1 1

Note that this example is numerically similar to Example 1-2, but the interpretation is different. 49

24

Other Orientation Representation


Orientation of rigid body represented by 3x3 rotation matrix R 9 elements Subject to:
orthogonality conditions (3 equations) and unit length conditions (3 equations) => only 3 of 9 elements are independent (ie. there is redundancy in R)

Different representations of orientation which requires only three or four parameters


50

Other Orientation Representation


X-Y-Z fixed angles

X (roll)

Y (pitch)

Z (yaw)
51

Each of the three rotations takes place about an axis in the fixed reference frame, {A}

25

Other Orientation Representation


X-Y-Z fixed angles

A B

RXYZ ( , , ) = RZ ( ) RY ( ) RX ( ) c s 0 c 0 = s c 0 0 1 0 0 1 s 0 c c c s s s c = s c s s s + c c s c s s 1 0 0 c 0 c s c 0 c s 0 s c

+ s s s s c c s c c
52

where c and s denote cosine and sine functions, respectively

Other Orientation Representation


X-Y-Z fixed angles
Inverse transformation
r11 r12 R = r21 r22 r31 r32 r13 r23 r33
, find , ,

Given

A B

Nine equations (6 dependencies) and three unknowns


r11 r 21 r31 r12 r22 r32 r13 c c r23 = s c r33 s c s s s c s s s + c c c s c s c + s s s s c c s c c
53

26

Other Orientation Representation


X-Y-Z fixed angles
Inverse transformation
r11 r 21 r31 r13 c c r23 = s c r33 s c s s s c s s s + c c c s c s c + s s s s c c s c c

r12 r22 r32

= A tan 2( s , c )
2 2 = A tan 2( r31 , r11 + r21 )

Remark: Atan2(y,x) computes tan-1(y/x) and uses signs of both x and y to determine the quadrant in which the angle lies

54

Other Orientation Representation


X-Y-Z fixed angles
Inverse transformation
r11 r 21 r31 r13 c c r23 = s c r33 s c s s s c s s s + c c c s c s c + s s s s c c s c c

r12 r22 r32

= A tan 2( s , c )
= A tan 2( r21 r11 , ) c c
55

27

Other Orientation Representation


X-Y-Z fixed angles
Inverse transformation
r11 r 21 r31 r13 c c r23 = s c r33 s c s s s c s s s + c c c s c s c + s s s s c c s c c

r12 r22 r32

= A tan 2( s , c )
= A tan 2( r32 r33 , ) c c
56

Other Orientation Representation


X-Y-Z fixed angles
Inverse transformation
2 2 = A tan 2( r31 , r11 + r21 )

= A tan 2(

r21 r11 , ) c c

= A tan 2(

r32 r33 , ) c c

Remark: 2 solutions If |r31|=1 (implies r11 = r21 = r32 = r33= 0), the solution degenerates (mathematical singularity) such that only the difference of and may be computed: c s s s c c s c + s s 0 r12 r13 0 0 r = 0 r23 s s s + c c s s c c s 22 r31 0 0 s 0 0 If r31 = +1: = A tan 2( 1, 0) = 900 C If r31 = -1: = A tan 2(1, 0) = 900 C
=> + = Atan2 (-r23 , r22) => - = Atan2 (r23 , r22)
57

28

Other Orientation Representation


Z-Y-X Euler angles

Each rotation is performed about an axis of the moving frame {B}, rather than the fixed reference frame, {A}
58

Other Orientation Representation


Z-Y-X Euler angles
A B
A B

B R = BAR BR BR B

RZ Y X ( , , ) = RZ ( ) RY ( ) RX ( ) c s 0 c 0 = s c 0 0 1 0 0 1 s 0 c c c s s s c = s c s s s + c c s c s s 1 0 0 c 0 c s c 0 c s 0 s c

Note: Same as the result obtained for the same three rotations taken in the opposite order about fixed axes.

+ s s s s c c s c c

59

29

Other Orientation Representation

Four-parameter representations for orientation


Equivalent angle-axis Euler parameters or Unit Quaternion Nonminimal representations of orientation

60

Other Orientation Representation


Equivalent angle-axis
Any rotation matrix can be represented by choosing the proper axis and angle (Eulers theorem on rotation) quadruple of ordered real parameters consisting of one scalar (angle of rotation) and one unit vector K (axis of rotation) (according to right-hand rule)
A

61

30

Other Orientation Representation


Equivalent angle-axis
A

RK ( ) =
k y k x v - k z s k y k y v + c k y k z v + k x s k z k x v + k y s k z k y v - k x s (1-4) k z k z v + c
T
A

k x k x v + c k x k y v + k z s k k v - k s y x z

where v = (1 - cos), A K = k x k y k z , , sign of is determined by right-hand rule

K = 1 (unit vector)

Remark: For small angular rotations, axis of rotation becomes ill-defined. Non-unique representation: R K ( ) = R K ( )

62

Other Orientation Representation


Example 1-8

A frame {B} is described as follow: initially coincident with {A} we rotate {B} about the vector Ak = [0.707 0.707 0]T (passing through the origin) by an amount = 30 degrees. Give the frame description of {B} with reference to {A} after the rotation.

63

31

Other Orientation Representation


Solution:
A

k x k x v + c Rk ( ) = k x k y v + k z s k k v - k s y x z

k y k x v - k z s k y k y v + c k y k z v + k x s

k z k x v + k y s k z k y v - k x s k z k z v + c

where v = 1 cos ; Since there is no translation of the origin,


A R ( ) A k BT = 0 0 0 0 0.933 0.067 0.354 0 0.067 0.933 0.354 = 0 0.354 0.354 0.866 1 0 0 0 0 0 0 1

64

Other Orientation Representation


Example 1-9
A frame {B} is described as follows: initially coincident with {A}, we rotate {B} about the vector A k = [0.707 0.707 0.0]T , passing through the point T A P = [1 2 3] , by = 30 o . Give the frame description of {B} with reference to {A}.

Solution:
Before performing the rotation, {A} and {B} are coincident. We define two new frames, {A} and {B} which are obtained by translating {A} and {B}, respectively, to point P. {B} and {B} can be treated as if they are mounted on the same rigid body, whereas {A} and {A} are fixed in the space.
65

32

Other Orientation Representation


Solution:
1 0 A A 'T = 0 0
1 0 B BT = 0 0

0 1 0 0
0 1 0 0

0 0 1 0

1 2 3 1

0 1 0 2 1 3 0 1

66

Other Orientation Representation


Solution:
Note that the point P is on the axis of rotation. Now, lets rotate {B} relative to {A}. This is a rotation about an axis which passes through the origin, so we may use
A

k x k x v + c R k ( ) = k x k y v + k z s k k v - k s y x z

k y k x v - k z s k y k y v + c k y k z v + k x s

k z k x v + k y s k z k y v - k x s k z k z v + c

to compute {B} relative to {A} after the rotation.


A R 30 o A T = k B 0 0 0

( )

0 0.933 0.067 0.354 0 0.067 0.933 0.354 = 0 0.354 0.354 0.866 1 0 0 0

0 0 0 1

67

33

Other Orientation Representation


Solution:
Finally,
0.933 0.067 0.354 1.13 0.067 0.933 0.354 1.13 A A A B T BT = AT B BT = 0.354 0.354 0.866 0.05 0 0 1 0

Note: After rotating about the axis k , {B} becomes separated from {A} as shown in Fig. 1-9.

Figure 1-9
68

Other Orientation Representation


Equivalent angle-axis
Inverse Problem
Given
A B

Find A K ,
given

nx ox ax Let R = ny oy a y n o a z z z
A B

kx kx v + c kykx v - kz s kzkx v + ky s kzkyv - kxs = kx kyv + kz s kyky v + c kx kz v - ky s kykz v + kxs kzkz v + c


where v = (1 - cos)

69

34

Other Orientation Representation


Equivalent angle-axis
Inverse Problem
A

k y k x v - k z s n x o x a x k x k x v + c RK ( ) = n y o y a y = k x k y v + k z s k y k y v + c n o a k k v - k s k k v + k s y y z x z z z x z
From the diagonal elements, A Trace ( B R ) = 1 + 2cos =>
A

k z k x v + k y s k z k z v + c k z k y v - k x s

where v = (1 - cos)

cos = ( Trace (B R ) 1 )

(Two solutions for = A)

+A -A
70

Other Orientation Representation


Equivalent angle-axis
Inverse Problem
k y k x v - k z s n x o x a x k x k x v + c A RK ( ) = n y o y a y = k x k y v + k z s k y k y v + c n o a k k v - k s k k v + k s y y z x z z z x z If sin 0 :
From : nz & ax elements From : oz & ay elements From : ny & ox elements

k z k x v + k y s k z k y v - k x s k z k z v + c

ky =

ax - nz 2 sin oz - a y kx = 2 sin

kz =

n y - ox 2 sin

71

35

Other Orientation Representation


Equivalent angle-axis
Inverse Problem (1)
A

K
In general: 2 solutions

(2)

AK
72

Other Orientation Representation


Equivalent angle-axis
Inverse Problem

If = 0

A B

1 0 0 R = 0 1 0 0 0 1

Identity (null rotation)

= any axis (infinite solutions)

If = 180

- 1 + 2k x 2 2k x k y 2k x k z 2 A 2k k - 1 + 2k y 2k y k z BR = x y 2 2k k 2k y k z - 1 + 2k z x z

( symmetric )

73

36

Other Orientation Representation


Equivalent angle-axis
Inverse Problem

If = 180 (cont)

2 2k x k y 2k x k z n x o x a x -1 + 2k x A o y a y = 2k x k y -1 + 2k y 2 2k y k z BR = ny n o a 2k y k z -1 + 2k z 2 z z z 2k x k z

kx = ky = kz = ny 2k x az 2k x

nzn y 2o z

2 solutions for K (If one solution is K1 , the other is K1 )


74

Other Orientation Representation


Equivalent angle-axis
Inverse Problem

If = 180 (cont)
If all off-diagonal terms are 0, one of kx, ky or kz = 1 & the rest are 0s. The component of K that is 1 has a A value of 1 in the diagonal of B R . E.g. kx = 1, ky = kz = 0

1 0 0 A 0 B R = 0 -1 0 0 -1

75

37

Other Orientation Representation


Euler parameters (Unit Quaternion)
Able to solve the non-uniqueness problem encountered by angle/axis representation
Euler parameters:

1 = k x sin

2 = k y sin
3 = k z sin
4 = cos

4 parameters not independent because:


2 2 12 + 2 + 32 + 4 = 1

where kx, ky and kz are the coordinates of the equivalent axis K


and is the equivalent angle
76

Other Orientation Representation


Euler parameters (Unit Quaternion)
Based on Eq ( 1-4) and the definition of unit quaternion:

k x k x v + c k y k x v - k z s k z k x v + k y s k z k y v - k x s R = k x k y v + k z s k y k y v + c k x k z v - k y s k y k z v + k x s k z k z v + c 3 2 2 1 cos = 2 cos 2 ( 2 ) 1 = 2 4 1 = kz = ky = kx sin sin sin 2 sin 2 ( 2 ) = 1 cos , etc 2 2 2 2 2( 4 + 12 ) 1 2( 1 2 3 4 ) 2( 1 3 + 2 4 ) 2 2 R = 2( 1 2 + 3 4 ) 2( 4 + 2 ) 1 2( 2 3 1 4 ) (1-5) 2 2( 1 3 2 4 ) 2( 2 3 + 1 4 ) 2( 4 + 2 32 ) 1


A B

77

38

Other Orientation Representation


Euler parameters (Unit Quaternion)
Inverse Problem
Given
A B

r11 r12 R = r21 r22 r31 r32

r13 r23 , find i r33


1 2 1 2 = sgn(r13 r31 ) r22 r33 r11 + 1 2 1 3 = sgn(r21 r12 ) r33 r11 r22 + 1 2

2( + ) 1 2(1 2 3 4 ) 2(1 3 + 2 4 ) 2 2 R = 2(1 2 + 3 4 ) 2( 4 + 2 ) 1 2( 2 3 1 4 ) 2 2(1 3 2 4 ) 2( 2 3 + 1 4 ) 2( 4 + 32 ) 1


2 4 2 1

1 = sgn(r32 r23 ) r11 r22 r33 + 1

4 =

1 1 + r11 + r22 + r33 2

78

Note: sgn(x) = 1 for x 0 and sgn(x) = -1 for x < 0

Other Orientation Representation


Euler parameters (Unit Quaternion)
Inverse Problem
1 = sgn(r32 r23 ) r11 r22 r33 + 1
2 = sgn(r13 r31 ) r22 r33 r11 + 1
1 2 1 3 = sgn(r21 r12 ) r33 r11 r22 + 1 2 1 4 = 1 + r11 + r22 + r33 2
(by considering [-,])
79

1 2

Note: Implicitly assumed 4 0

No singularity occurs (compared to angle/axis representation)

39

S-ar putea să vă placă și