Você está na página 1de 13

Lecture 13: Rodrigues and Inverse Rodrigues Formula

Based on Chapter 7, Bullo and Smith

Vaibhav Srivastava
Department of Electrical & Computer Engineering
Michigan State University

Feb 27, 2017


ECE 818: Robotics
http://www.egr.msu.edu/vaibhav/teaching/robotics.html

1/7
Rodrigues Formula
Given a unit-length rotation axis and angle, what is the corresponding rotation
matrix?
Theorem (Rodriguess Formula): Given a unit-length rotation axis n and
angle [0, ), there exists a unique rotation matrix, denoted by Rotn (), representing
a rotation about n by an angle and it is given by

Rotn () = I3 + sin n + (1 cos )n2

2/7
Rodrigues Formula
Given a unit-length rotation axis and angle, what is the corresponding rotation
matrix? 7.3. Parametrization of rotation matrices

Theorem (Rodriguess Formula): Note Given a unit-length p


easily that sin() = rotation axis=n and
3/2, cos() 1/2,
angle [0, ), there exists a unique rotation matrix, denoted 2 by Rotn3(), representing2
a rotation about n by an angle and it is given by 0 1 1 2 1
1 1
b=p 4 1
n 0 15 ,
2
and n
b = 41
3 3
Rotn () = I3 + sin n + (1 cos )n12 1 0 1 1
7.3. Parametrization of rotation matrices 141
Therefore, we compute
Example: Consider p = 2/3 and n = [1 1 1]> .
1
Note easily that sin() = 3/2, cos() = 1/2, 3 2 3 2 3 2
1 0 0 p 0 1 1
2 3 2 3 3 1 4 3 14
0 1 1 Rot 1 4 0 1 05 +
2 n1() = p 1 0 15 +
1 4 5 2 14 5 2 3 23
b=
n p 1 0 1 , and nb = 1 2 1 .0 0 1 1 1 0
3 3
1 1 0 1 1 2
Simplifying the expression leads to
Therefore, we compute
2 3 2 3 2 3 2 3
1 0 0 p 0 1 1 2 1 1 0 0 1
3 1 4 3 14
4
Rotn () = 0 1 0 +5 p 1 0 5
1 + 1 2 1 5. Rotn () = 41 0 05 .
2 3 23
0 0 1 1 1 0 1 1 2 0 1 0
Simplifying the expression leads to
2 Next,
3 we are also interested in the inverse problem. Given a
2 /rota
7
Inverse Rodrigues Formula
Given a rotation matrix R, what is the rotation angle and the corresponding
axis of rotation n?
Theorem (Inverse Rodriguess Formula): Given an arbitrary rotation matrix R,
consider the Rodrigues formula in the two variables (, n), where is the angle of
rotation in [0, ) and n is the unit-length axis of rotation:

3/7
Inverse Rodrigues Formula
Given a rotation matrix R, what is the rotation angle and the corresponding
axis of rotation n?
Theorem (Inverse Rodriguess Formula): Given an arbitrary rotation matrix R,
consider the Rodrigues formula in the two variables (, n), where is the angle of
rotation in [0, ) and n is the unit-length axis of rotation:
(i) if R = I3 , then there exists an infinite number of solutions defined by = 0 and
arbitrary axis of rotation n

3/7
Inverse Rodrigues Formula
Given a rotation matrix R, what is the rotation angle and the corresponding
axis of rotation n?
Theorem (Inverse Rodriguess Formula): Given an arbitrary rotation matrix R,
consider the Rodrigues formula in the two variables (, n), where is the angle of
rotation in [0, ) and n is the unit-length axis of rotation:
(i) if R = I3 , then there exists an infinite number of solutions defined by = 0 and
arbitrary axis of rotation n

(ii) if 3 > trace(R) > 1, then there exists a unique solution

= arccos((trace(R) 1)/2),
1
n= (R R > )
2 sin

3/7
Inverse Rodrigues Formula
Given a rotation matrix R, what is the rotation angle and the corresponding
axis of rotation n?
Theorem (Inverse Rodriguess Formula): Given an arbitrary rotation matrix R,
consider the Rodrigues formula in the two variables (, n), where is the angle of
rotation in [0, ) and n is the unit-length axis of rotation:
(i) if R = I3 , then there exists an infinite number of solutions defined by = 0 and
arbitrary axis of rotation n

(ii) if 3 > trace(R) > 1, then there exists a unique solution

= arccos((trace(R) 1)/2),
1
n= (R R > )
2 sin
(iii) if trace(R) >= 1, then there exists two solutions defined by = and
n1 = n2 such that nn> = (R + I3 )/2

3/7
Inverse Rodrigues Formula Example

Consider 1 defined by x1 = y0 , y1 = z0 , and z1 = x0 with reference frame


rotation matrix
0 0 1
R = 1 0 0
0 1 0
Find and n

4/7
Inverse Rodrigues Formula Example

Consider 1 defined by x1 = y0 , y1 = z0 , and z1 = x0 with reference frame


rotation matrix
Robotic Planning and Kinematics, v0.91(e) (11 Apr 2016). 0
0 1 Chapter 7, slide 28
R = 1 0 0
0 1 for
We now wish to compute the rotation axis and angle 0 this rotation matrix. Using the Invers
RodriguesFind
formula
andand
n equation (7.2), we obtain:

2
= arccos((trace(R) 1)/2) = arccos( 1/2) = ,
3
2 3_ 2 3
0 1 1 1
1 T _ 1 4 5 1 4 5
n= (R R ) = p 1 0 1 =p 1 .
2 sin() 2 3/2 3 1
1 1 0

4/7
Proof of Rodrigues Formula
ematics, v0.91(e) (11 Apr 2016). Chapter 7, slide 288

Recall Lagranges formula


n (n p0 ) q
n A (B C ) = B(A C ) C (A B)
n p0
p 0 = pk0 + p
0 = (n p 0 )n n (n p 0 )

Coordinate of q 0 is
(n p0 )n
q 0 = pk0 + Rotn ()p
0
0 p
q

n p0
O

ugh p and q is orthogonal to n and has its center on line through n at the point (n p0 )n.

5/7
Proof of Rodrigues Formula
ematics, v0.91(e) (11 Apr 2016). Chapter 7, slide 288

Recall Lagranges formula


n (n p0 ) q
n A (B C ) = B(A C ) C (A B)
n p0
p 0 = pk0 + p
0 = (n p 0 )n n (n p 0 )

Coordinate of q 0 is
(n p0 )n
q 0 = pk0 + Rotn ()p
0
0 p
q
= (p 0 p
0
) + sin (n p 0 )

n p0 + cos (1)(n (n p 0 ))
O = p 0 + sin (n p 0 ) + (1 cos )(n (n p 0 ))
= p 0 + sin np 0 + (1 cos )n2 p 0
= (I3 + sin n + (1 cos )n2 )p 0
ugh p and q is orthogonal to n and has its center on line through n at the point (n p0 )n.

5/7
Proof of Inverse Rodrigues Formula I

Angle of a Rotation Matrix: The angle of rotation of any R SO(3) satisfies


trace(R) = 1 + 2 cos
Proof:
R is Rotz () is some frame

Can write: R = S > Rotz ()S for some rotation matrix S

trace(R) = trace(S > Rotz ()S) = trace(SS > Rotz ()) = trace(Rotz ())

trace(Rotz ()) = 1 + 2 cos

6/7
Proof of Inverse Rodrigues Formula II

If R = I3 , then rotation = 0 and rotation axis n can be chosen arbitrarily



R R > = 2 sin n. If (0, ), then n = (R R > )/(2 sin )

If trace(R) = 1, then = and

R = I3 + 2n2 = I3 + 2nn> ,

and the result follows

7/7

Você também pode gostar