You are on page 1of 70

Marcelo H. Ang Jr.

1
CHAPTER 2
Rigid Body Motion ,
Robot Kinematics of Velocity,
and Robot Statics


Marcelo H. Ang Jr.
2
After this chapter, the students are expected
to learn the following:

1. Relate time derivatives of position and
orientation representations with translational
and angular velocities.

2. Transform velocities in different spaces

3. Relate joint velocities with end-effector
velocities


Marcelo H. Ang Jr.
3
After this chapter, the students are expected
to learn the following:

4. Understand the concept of Jacobians

5. Solve the forward and inverse kinematics of
velocity

6. Understand robot singularities



Marcelo H. Ang Jr.
4
After this chapter, the students are expected
to learn the following:

7. Static force/torque transformations between
frames

8. Static force/torque transformations between
task space and joint space

9. Understand redundancy and how to deal with
them


Marcelo H. Ang Jr.
5
Translational Velocities
A
u
B
e 9
3x1
= translational velocity of frame B
(i.e., origin of frame B) relative of
frame A

t
(t) - t) (t
0 t
lim

dt
d

A
A +
A
= =
B
A
B
A
B
A
B
A
p p
p u
frame of differentiation is A
Velocity, like any vector may be expressed in another
frame, say W
B
A
A
W
B
A
W
u r u =
Marcelo H. Ang Jr.
6
Translational Velocities
In general, velocity vector depends on 2 frames:
frames of differentiation A leading subscript
this is the frame where the velocity of B is
instantaneously computed from (can be thought of
as velocity reference point)
frame resulting vector is expressed in W leading
superscript
When leading subscript is omitted, it is implied that the
velocity is relative to some understood universal frame of
reference.
A missing leading superscript implies a generic frame of
expression.
Marcelo H. Ang Jr.
7
Rotational Velocities
A
w
B
{B}
{A}
At a certain instant, frame B has an
orientation
A
R
B
and its rotational motion
may be represented by the rotational
(angular) velocity vector
A
w
0
e 9
3x1

unit vector along
A
w
B
= instantaneous =
A
k
B
axis of rotation
magnitude of
A
w
B

= speed of rotation
A
w
B
is related to
t
(t) - t (t
0 t
lim

dt
d
A
A +
A
= =
B
A
B
A
B
A
B
A
R ) R
R R

Marcelo H. Ang Jr.
8
Rotational Velocities
Rot ( k, u ) =
|
|
|
|
.
|

\
|
+ +
+ +
+ +
cos vers k k sin k vers k k sin k - vers k k
sin k - vers k k cos vers k k sin k vers k k
sin k vers k k sin k - vers k k cos vers k k
z z x z y y z x
x y z y y z y x
y x z z x y x x
where versu = (1 - cosu)
Let Rot ( k, du ) = incremental change in rotation.

A
w
B
=
A
k
B
u =
A
k
B


A
R
B
+ A
A
R
B
= Rot ( k , du )
A
R
B
dt
d
pre-multiplication since du is
expressed in the frame A (base)
B
A
k

Marcelo H. Ang Jr.
9
Rotational Velocities
For a differential change (small) du

cos(u + du) = cosu + du = cosu + (-sinu)du


for u = 0, du small

cos(du) = 1 (approx)

sin(u + du) = sinu + du = sinu + cosu(du)

cos

sin
Marcelo H. Ang Jr.
10
Rotational Velocities
for u = 0, du = small

sin(du) = 0 + 1du

= du (approx)


for u = 0, du = small

vers(du) = 1 cos(du) = 0 (approx)
Marcelo H. Ang Jr.
11
Rotational Velocities
(
(
(

=
1 d k d k -
d k - 1 d k
d k d k - 1

x y
x z
y z
) d k, ( Rot
Back to:
| |
B
A
B
A
B
A
B
A
R I - ) d , ( Rot
R - R ) d , ( Rot R
k
k
=
= A
R
d k d k -
d k - d k
d k d k -
R
B
A
x y
x z
y z
B
A
(
(
(

= A
|
|
|
Marcelo H. Ang Jr.
12
Rotational Velocities
dividing by dt:
B
A B
A
R
R


dt
d
k
dt
d
k -
dt
d
k -
dt
d
k
dt
d
k
dt
d
k -

dt
d
x y
x z
y z
(
(
(
(
(
(
(

=
|
|
|
(
(
(
(

=
(
(
(

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

k
k
k
But
B
A
B
A
k w

Marcelo H. Ang Jr.
13
Rotational Velocities
B
A
B
A
R R
0 w w -
w - 0 w
w w - 0

x
B
A
y
B
A
x
B
A
z
B
A
y
B
A
z
B
A
(
(
(
(

=
Let this be
A
w
B
x =
angular velocity tensor of
A
w
B
A
R
B
=
A
w
B
x
A
R
B

Marcelo H. Ang Jr.
14
Rotational Velocities
As with any vector, the rotational velocity vector
A
w
B
may be expressed in another frame C:
B
A
A
C
B
A
C
w R w =
leading subscript A: frame the body is rotating relative to
(frame & differentiation)

leading superscript C: frame of Expression
Marcelo H. Ang Jr.
15
Rotational Velocities
The equivalent matrix product representation is:
x
B
A
C
w =
C
R
A

A
w
B
x
A
R
C
{B} & {C} are attached to the same
rigid body which is rotating
{C}
{B}
{A}
A
R
C
=
A
R
B

B
R
C
|
Diff with time
A
R
C
=
A
R
B

B
R
C
+
A
R
B

B
R
C

Marcelo H. Ang Jr.
16
Rotational Velocities

A
w
C
x
A
R
C
=
A
w
B
x
A
R
B

B
R
C

A
w
C
x
A
R
C
=
A
w
B
x
A
R
C
A
w
C
=
A
w
B

rotational velocity of rigid body is equal to rot. velocity
of any frame attached to the rigid body.
Marcelo H. Ang Jr.
17
The Orthonormal (Rotation) Matrix
& Skew Symmetric Matrices
RR
T
= I

RR
T
+ RR
T
= 0

(RR
T
)
T
+ RR
T
= 0

Define S = RR
T
= wx

Then S + S
T
= 0
S = a skew symmetric matrix



Marcelo H. Ang Jr.
18
The Orthonormal (Rotation) Matrix
& Skew Symmetric Matrices
Skew symmetric matrix as vector cross product:
(
(
(

=
(
(
(

=
z
y
x
x y
x z
y z
w
w
w
and
0 w w -
w - 0 w
w w - 0
Let w S
Then
Sp = w x p
where p e 9
3x1
vector
Marcelo H. Ang Jr.
19
Rotation Matrix
R = wx R or
3x3 (time derivative of Rot. Matrix)

or
w
ax -
ox -
nx -

a
o
n
|
|
|
.
|

\
|
=
|
|
|
.
|

\
|
x
r
= E
r
(x
r
) w
9x1 representation
of orientation 9x3 (a kind of Jacobian associated with
representation)
3x1 angular velocity











Marcelo H. Ang Jr.
20
Rotation Matrix
Trajectories are typically specified in terms of x
r
, and it

is important to determine the angular velocities
To solve for w given x
r
, need to solve 9 Equations
with 3 unknowns overdetermined system
Solution that minimizes | | E
r
w - x
r
| | is the
left pseudo inverse, E
r
+

w = E
r
+
x
r

E
r
+
= (E
r
T
E
r
)
-1
E
r
T
always exists



Marcelo H. Ang Jr.
21
Rotation Matrix
But from definition of E
r

E
r
T
E
r
= ( -nx
T
-ox
T
-ax
T
)



= +nx
T
nx + ox
T
ox + ax
T
ax
= 2I
3


E
r
+
= (E
r
T
E
r
)
-1
E
r
T

= (2I
3
)
-1
E
r
T
= E
r
T

|
|
|
.
|

\
|
ax -
ox -
nx -





very simple
Marcelo H. Ang Jr.
22
Rotation Matrix
w = E
r
T
= ( nx
T
n + ox
T
o + ax
T
a



Actually,
R = wx R
wx = R R
T

Note: Free of Math. Singularities
x
r
w
w x
r

|
|
|
.
|

\
|
a
o
n



always possible




Exactly the same
Marcelo H. Ang Jr.
23
Euler Angle Rates &
Angular Velocities
A
R
B
= Rot ( z, o ) Rot ( y, | ) Rot ( z, )

1
0
0

0
1
0

1
0
0

|
|
|
.
|

\
|
+
|
|
|
.
|

\
|
+
|
|
|
.
|

\
|
= ) y, ( Rot ) z, ( Rot ) z, ( Rot w


|
|
|
.
|

\
|
|
|
|
.
|

\
|
=


cos 0 1
sin sin cos 0
sin cos sin - 0
w
w = E
r
-1
x
r
Jacobian transformation




Marcelo H. Ang Jr.
24
Euler Angle Rates &
Angular Velocities

or x
r
= E
r
w note that E
r
does not always exist

w x
r

0
sin
sin

sin
cos

0 cos sin -
1
sin
cos sin -

sin
cos cos -

|
|
|
|
|
|
.
|

\
|
=
If sin| = 0, matrix does not exist
Math. Singularity
w x
r
not always possible
Not all possible angular matrices can be represented
Problem with 3 parameter representations for orientation



Marcelo H. Ang Jr.
25
Roll Pitch Yaw Rates &
Angular Velocities
A
R
B
= Rot ( z, | ) Rot ( y, u ) Rot ( x, )

0
0
1
) y, ( Rot ) z, ( Rot
0
1
0
) z, ( Rot
1
0
0
w | | |
|
|
|
.
|

\
|
+
|
|
|
.
|

\
|
+
|
|
|
.
|

\
|
=



|
|
|
.
|

\
|
|
|
|
.
|

\
|
=

|
u
| |
| |

sin - 0 1
cos sin cos 0
cos cos sin - 0
w
E
r
-1
RPY



w = E
r
-1
x
r


OR
x
r
= E
r
w



Marcelo H. Ang Jr.
26
Roll Pitch Yaw Ratio &
Angular Velocities
w
0
cos
sin

cos
cos

0 cos sin -
1
cos
sin

cos
sin cos
x
2
r
|
|
|
|
|
|
.
|

\
|
=
| |
| |
| | |
If cosu = 0, matrix does not exist
Math. Singularity
w x
r
not always possible
Not all possible angular matrix can be represented
This is a problem with 3 parameter representations for
orientation



Marcelo H. Ang Jr.
27
Quaternion Rates &
Angular Velocities
R R
T
= wx
f (
0
,
1
,
2
,
3
)
f (
0
,
1
,
2
,
3
)
OR

0
= cos u/2

1
= k
x
sin u/2

2
= k
y
sin u/2

3
= k
z
sin u/2
it
dt
d


|
|
|
.
|

\
|
|
|
|
|
|
.
|

\
|
z
y
x
0 1 2
1 0 3
2 3 0
3 2 1
w
w
w

-
-
-
- - -

2
1

3
=
x
r
= E
r
(x) w
Quaternion






Marcelo H. Ang Jr.
28
Quaternion Rates &
Angular Velocities
w = E
r
(x)
+
x
r
E
r
(x)
+
= [ E
r
(x)
T
E
r
(x) ]
-1
E
r
T
(x) (left pseudo inverse)
|
|
|
.
|

\
|
- -
- -
- -
2
0 1 2 3
1 0 3 2
2 3 0 1
=
always exist
Note: Free of Math. Singularities
w x
r
x
r
w
always possible



Marcelo H. Ang Jr.
29
Simultaneous Rotational &
Translational Velocities
Given: Frames A, B & C
{A}
{B}
{C}
{B} & {C} in motion
with respect to {A}
Find: Relationships between velocities

A
p
C
=
A
p
B
+
A
R
B

B
p
C
Marcelo H. Ang Jr.
30
Simultaneous Rotational &
Translational Velocities
Differentiating

A
U
C
=
A
U
B
+
A
R
B

B
U
C
+
A
R
B

B
p
C
Contribution of rotational velocity of frame B to the
translational velocity of C =
A
R
B

B
p
C
=
A
w
B
x
A
R
B

B
p
C
=
A
w
B
x (
A
R
B

B
p
C
)
= -
A
R
B

B
p
C
x
A
w
B

=
A
w
B
x (
A
p
C

A
p
B
)

A
U
C
=
A
U
B
+
A
R
B

B
U
C
+
A
w
B
x (
A
R
B

B
p
C
)
=
A
U
B
+
A
R
B

B
U
C
+
A
w
B
x (
A
p
C

A
p
B
)


Marcelo H. Ang Jr.
31
Simultaneous Rotational &
Translational Velocities
A
R
C
=
A
R
B

B
R
C

A
R
C
=
A
R
B

B
R
C
+
A
R
B

B
R
C

A
w
C
x
A
R
C
=
A
w
B
x
A
R
B

B
R
C
+
A
R
B

B
w
C
x
B
R
C


=
A
w
B
x
A
R
C
+
A
R
B

B
w
C
x
B
R
A

A
R
C

A
w
C
x
A
R
C
=
A
w
B
x
A
R
C
+
A
R
B

B
w
C
x
B
R
A

A
R
C



A
w
C
x =
A
w
B
x +
A
R
B

B
w
C
x
B
R
A


Marcelo H. Ang Jr.
32
Simultaneous Rotational &
Translational Velocities
x
C
B
A
w
But
=
A
R
B

B
w
C
x
B
R
A


=
A
R
B

B
w
C
expressing vector in
diff frame


A
w
C
x =
A
w
B
x +
OR in vector form:

A
w
C
=
A
w
B
+
A
R
B

B
w
C

Note also (in homogeneous transformation)
x
C
B
A
w
(

=
0 0
x

B
A
B
A
B
A
B
A
U R w
T
C
B
A
w


Marcelo H. Ang Jr.
33
Computation Of
End-Effector Velocity
(6x1) ) q q, ( f
w
u

N
N
=
|
|
.
|

\
|
=
N
v
joint position
joint velocities
Marcelo H. Ang Jr.
34
Computation Of
End-Effector Velocity
Let us examine the contribution of the ith joint motion to
end-effector velocity. We set all other joint velocities | :
q
C
= 0 q
1
= q
2
= = q
i-1
= q
i+1
= q
N
= |
so motion is occurring with respect to z
i-1
axis
For joint i rotational
w
i
= z
i-1
q
i
u
i
= w
i
x R
i-1

i-1
p
N
= z
i-1
q
i
x ( p
N
p
i-1
)
= z
i-1
x ( p
N
p
i-1
) q
i
Note that o
i-1
has no translational velocity
origin of frame i-1 w/c contains z
i-1
since joint is rotational






Marcelo H. Ang Jr.
35
Computation Of
End-Effector Velocity
(
(
(
(

=
(

=
=
N
1 i
i
N
1 i
i
w
u

N
N
N
w
u
v
For a translational joint i,
w
i
= 0
u
i
= z
i-1
q
i
The total velocity of the end-effector during coordinated
motion is the superposition of all the elementary velocities
that represent single joint motion:

Marcelo H. Ang Jr.
36
Computation Of
End-Effector Velocity
|
|
|
|
|
.
|

\
|
=
N
2
1
N 3 2 1
q
q
q
) J ... J J J (
N
v
6x1
6xN J(q)

Column J
i
represents motion contribution of joint i

J(q) = Jacobian matrix
Cartesian joint space



Marcelo H. Ang Jr.
37
Computation Of
End-Effector Velocity
For a translational joint i
(

=
0
z

1 - i
i
J
For a rotational joint i
(


=
1 - i
1 - i N 1 - i
z
) p - p ( z

i
J
Marcelo H. Ang Jr.
38
Jacobian Transformations
|
|
.
|

\
|
(
(

=
|
|
.
|

\
|
=
N
B
N
B
B
A
B
A
N
A
N
A
N
A
w
u
R
R
w
u
v
0
0

J
B
v
N
Velocities expressed in different frames


A
v
N

B
v
N






For
A
R
B
and
A
p
B
constants

N = End Effector
B = may be a link coord
frame that is held
instantaneously constant
Marcelo H. Ang Jr.
39
Jacobian Transformations
Diff pts on End-Effector
For
B
R
N
and
B
p
N
constants
B & N are attached to a rigid body moving
with respect to A:
{A}
{B}
{N}
N =

B =
Two Frames
Attached to
End-Effector
Marcelo H. Ang Jr.
40
Jacobian Transformations
A
u
N
=
A
u
B
+
A
w
B
x (
A
p
N

A
p
B
)

A
w
N
=
A
w
B
(
(

=
|
|
.
|

\
|
=
B
A
B
A
B
A
N
A
N
A
N
A
N
A
w
u
I
p p I
w
u
v
0
x ) - ( -

another J

Marcelo H. Ang Jr.
41
Jacobian Transformations
Most simplified form of Manipulator Jacobian is:

when it is computed at the mid-coord. frame
i.e. ,
2
1 N
L
+
~
All vectors are expressed in frame L

The origin of Frame L is taken as the velocity pt
for the end-effector
Marcelo H. Ang Jr.
42
Jacobian Transformations
{O}
{L}
{N}
end-effector
Note that although L is moving, it is taken as
instantaneously fixed when computing the Jacobian
Marcelo H. Ang Jr.
43
Jacobian Transformations
In computing the Jacobian
L
J
L
, each column is
joint rot. for
) - (

|
|
.
|

\
|

=
i-1
L
i-1 L i-1
L
i
z
p p z
J
joint ational for transl
0
|
|
.
|

\
|
=
i-1
L
i
z
J
Marcelo H. Ang Jr.
44
Jacobian Transformations
OR
L
J
L
can be computed from
0
J
N
:
|
|
.
|

\
|
|
|
.
|

\
|
|
|
.
|

\
|
=
|
|
.
|

\
|
N
0
N
0
N
0
L
0
0
L
0
L
L
L
L
L
w
u
I
p p I
R
R
w
u

0
)x - ( -

0
0

(



L
J
L
q =
0
J
N
q
L
J
L
=

0
J
N




Marcelo H. Ang Jr.
45
Robot Kinematics of Velocity
0
R(J)
N(J)
R(J) = Range Space
of J
= or column
space of J
oq e 9
n

Joint Space

ox e 9
m

End-Effector Space

N(J) = Null space
of J
oq produces no
motion ox
Marcelo H. Ang Jr.
46
Robot Kinematics of Velocity
J = Jacobian
(q) G J
i ij
j
q

=
x = G(q)
x = J q
ox = J oq

x = representation for E-E configuration
|
|
.
|

\
|
|
|
.
|

\
|
=
w
u

) (x E 0
0 ) (x E

r r
p p
x v x



|
|
.
|

\
|
=
v = E - c Angular velocity
v = J
0
q = Basic Jacobian


Marcelo H. Ang Jr.
47
Robot Kinematics of Velocity
ox = J oq
q (q) J x
0
) (x E 0
0 ) (x E

r r
p p
|
|
.
|

\
|
=

J = Jacobian = E J
0
(q)

Marcelo H. Ang Jr.
48
Inverse Kinematics of Velocity
Solution to ox = J oq [ i.e., given ox, Find oq ]
mx1 nx1
Exists if & only if
Rank J = Rank ( J | ox )
m x n m x ( n + 1 ) matrix obtained by
augmenting J with column ox
Meaning ox must be in the subspace spanned by the
columns of J
Marcelo H. Ang Jr.
49
Inverse Kinematics of Velocity
Solution exists if & only if Rank J
0
= min( m
0
, n )

i.e., columns of J
0
span the space R
min( m
o
,n )
First: Convert ox to ox
0
e R
m
o
( velocity, basic kinematic
model)
ox
0
= J
0
c (
0
v
N
= J
0
q )
R
m
o R
n

m
0
s 6

Marcelo H. Ang Jr.
50
Inverse Kinematics of Velocity
General Solution:


oq = J
0
#
(q) ox
0
+ [ I
n
- J
0
#
(q) J
0
(q) ] oq
0

generalized Inverse
nxn Identity
any arbitrary disp
Operates on oq
0
to produce vector oq
n
e N(J)
oq
n
= [ I
n
- J
0
#
(q) J
0
(q) ] oq
0

The mapping by J
0
of oq
n
results in zero vector in R
m
o

J
0
oq
n
= [J
0
- J
0
J
0
#
(q) J
0
(q) ] oq
0
= 0
Marcelo H. Ang Jr.
51
Inverse Kinematics of Velocity
Case 1: m
0
= n s 6
J
#
(q) = J
-1
(possible problem with singularity,
J
-1
may not exist)

Case 2: m
0
> n, m
0
s 6 (not interesting/useful case,
task shall be s n)
overdetermined system: more eqns than unknowns.
J
#
= (J
T
J
-1
) J
T
= left pseudo inverse
= exists only if Rank J = n
Soln minimizes || Joq - ox
0
||
2
Marcelo H. Ang Jr.
52
Inverse Kinematics of Velocity
Case 3: m
0
< n, m
0
s 6 (Redundant Robots)
underdetermined system = less eqns than unknowns
J
#
= J
T
(J J
T
)
-1
= right pseudo inverse
= exists only if Rank J = m
0
Soln minimizes || oq ||
2
Marcelo H. Ang Jr.
53
Static Forces in Manipulators
Link i+1
Link i
Link i-1
Let f
i
= force exerted on link i
by link i-1 at coord
frame (x
i-1
, y
i-1
, z
i-1
)
n
i
= moment exerted on link i

Marcelo H. Ang Jr.
54
Static Forces in Manipulators
z
i-1
n
i
f
i
x
i-1
y
i-1
P
i
P
i-1
-n
i+1
-f
i+1
z
i
z
i
n
i+1
f
i+1
o
i
o
i
Marcelo H. Ang Jr.
55
Static Forces in Manipulators
F = 0 f
i
f
i+1
= 0
Torques about origin of frame i-1 = 0
n
i
n
i+1
+ (p
i
p
i-1
) x (-f
i+1
) = 0
If we start with a description of the force and moment
applied by the hand, we can calculate the force and
moment applied by each link working from the last
link down to the base, link |.
f
n+1
n
n+1
Force exerted by the manipulator hand on
its environment.
Marcelo H. Ang Jr.
56
Static Forces in Manipulators
Recursive Equations:
f
i
= f
i+1
n
i
= n
i+1
+ (p
i
p
i-1
) x f
i+1

all vectors
expressed in
same frame
(e.g. base frame |)
What forces are Needed at the Joints in order to
Balance the Reaction Forces & Moments acting in the link
T
i
=

n
i
T
z
i-1
for a rotational link i

f
i
T
z
i-1
for a translational link i

Marcelo H. Ang Jr.
57
Jacobians In Force Domain
When forces act on a mechanism, work (in the
technical sense) is done if the mechanism moves
through a displacement

Principle if VIRTUAL WORK allows us to make
certain statements about the static case by defining a
VIRTUAL DISPLACEMENT ox that is experienced
without passage of time dt = 0
(Not only infinitesimal, dx = ox)
Marcelo H. Ang Jr.
58
Jacobians In Force Domain
Since work has units of energy, it must be the same
measured in any set of generalized coordinates
F ox = t oq
6x1
Cartesian
Force-Moment
Vector
6x1
Virtual
displ. In
Cartesian space
Torque/Forces at joints
6x1
6x1 virtual joint disp.
Marcelo H. Ang Jr.
59
Jacobians In Force Domain
But ox = J oq

Therefore F
T
[J oq] = t
T
oq


F
T
J = t
T
ox
t = J
T
F
expressed in the same (consistent) Frame
Marcelo H. Ang Jr.
60
Jacobians In Force Domain
When the Jacobian loses full rank, there are certain
directions in which the end-effector cannot exert
static forces (through joint actuation) as desired

That is, if J is singular, the equation is not valid
F could be increased or decreased in certain
directions with no effect on the value calculated
for t
These directions are in the null-space of the
Jacobian
Marcelo H. Ang Jr.
61
Jacobians In Force Domain
This also means that near singular configuration,
mechanical advantage tends towards infinity, such
that with small joint torques, large forces could be
generated at the end-effector
Marcelo H. Ang Jr.
62
Jacobians In Force Domain
Note that a Cartesian space quantity can be converted
into a joint space quantity without calculating any
inverse kinematic functions.
Marcelo H. Ang Jr.
63
Cartesian Transformation Of
Static Force
{B}
A
n
R
A
f
R
(Reaction forces
for equilibrium)
{C}
A
n
C
A
f
C
External forces/
moments applied
on frames {C}
{A}
Given:
A
f
C

A
n
C
Find:
A
f
B

A
n
B
(the force/moment
experienced at B if
force/moment is
exerted on C)
Marcelo H. Ang Jr.
64
Cartesian Transformation Of
Static Force
Why is this important?
C
f
C
&
C
n
C
can be force sensor readings
But our primary interest is
B
f
B
&
B
n
B
(force/moments at tool tip)
Force sensor
Tool
{C}
{B}
Marcelo H. Ang Jr.
65
Cartesian Transformation Of
Static Force
Equilibrium:
F = 0
A
f
C
+
A
f
R
= 0

A
f
R
= -
A
f
C

N = 0
A
n
C
+ (
A
p
B

A
p
C
) x
A
f
R
+ n
R
= 0

A
n
R
= -
A
n
C
(
A
p
B

A
p
C
) x
A
f
R


But
A
f
B
= -
A
f
R
A
f
B
=
A
f
C
Marcelo H. Ang Jr.
66
Cartesian Transformation Of
Static Force
A
n
B
= -
A
n
R
=
A
n
C
+ (
A
p
B

A
p
C
) x
A
f
R
A
n
B
=
A
n
C
+ (
A
p
B

A
p
C
) x (-
A
f
C
)

A
n
B
=
A
n
C
+ (
A
p
C

A
p
B
) x
A
f
C

OR
A
n
B
=
A
n
C
+
A
R
B
B
p
C
x
A
f
C

in Matrix Form
(
(

=
(

C
A
C
A
C
B
B
A
B
A
B
A
n
f
I x p R
I
n
f


0

Force torque Jacobian transformation

Marcelo H. Ang Jr.
67
Cartesian Transformation Of
Static Force
But in typical applications, we would like to relate
(
(

(
(

B
B
B
B
C
C
C
C
n
f
n
f
with
[e.g. sensor readings will be expressed in local frame
of sensor]
We can transform vectors f & n like any other vector
via Rotation Matrices
(
(

(
(

=
(
(

C
C
C
C
C
A
C
A
C
A
C
A
n
f
R
R
n
f

0
0

Marcelo H. Ang Jr.
68
Cartesian Transformation Of
Static Force
(
(

(
(

=
(
(

C
C
C
C
C
A
C
A
C
B
B
A
B
A
B
A
n
f
R
R
I x p R
I
n
f
0
0


0

(
(

(
(

=
(
(

B
A
B
A
A
B
A
B
B
B
B
B
n
f
R
R
n
f

0
0


(
(

(
(

=
(
(

C
C
C
C
C
A
C
A
C
B
B
A
C
A
B
A
B
A
n
f
R R x p R
R
n
f


0



Also
Marcelo H. Ang Jr.
69
Cartesian Transformation Of
Static Force
(
(

(
(

(
(

=
(
(

C
C
C
C
C
A
C
A
C
B
B
A
C
A
A
B
A
B
B
B
B
B
n
f
R R x p R
R
R
R
n
f


0

0
0



(
(

(
(

=
C
C
C
C
C
A
A
B
C
A
C
B
B
A
A
B
C
A
A
B
n
f
R R R x p R R
R R


0


Therefore
(
B
R
A

A
R
B

B
p
C
x
A
R
C
)
C
f
C
=
B
R
A
[(
A
R
B

B
p
C
) x (
A
R
C

C
f
C
)]
= (
B
R
A

A
R
B

B
p
C
) x (
B
R
A

A
R
C

C
f
C
)
=
B
p
C
x (
B
R
C

C
f
C
)
=
B
p
C
x
B
R
C

C
f
C
Marcelo H. Ang Jr.
70
Cartesian Transformation Of
Static Force
This is the form given in
Craigs Book
(
(

(
(

=
(
(

C
C
C
C
C
B
C
B
C
B
C
B
B
B
B
B
n
f
R R x p
R
n
f


0

You might also like