You are on page 1of 59

CHAPTER FIVE

DIFFERENTIAL MOTIONS AND


VELOCITIES

Introduction to Robotics: Analysis, Control,


Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Introduction to Robotics: Analysis, Control, Applications, Third Edition.
Saeed B. Niku.
© 2020 John Wiley & Sons Ltd. Published 2020 by John Wiley & Sons Ltd.

This solution manual may not be copied, posted, made available to students,
placed on any outlet, any other electronic media system, and the Internet
without prior expressed consent of the copyright owner.
This material may not be used except in conjunction with the “Introduction to
Robotics: Analysis, Control, Applications”

Introduction to Robotics: Analysis, Control,


Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Introduction

 Differential motions, divided by differential time intervals,


constitute velocity relationships.
 We cover :
 Differential motions of frames
 Differential motions of robots
 Relationship between the above

Introduction to Robotics: Analysis, Control,


Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Differential Motions of a 2-DOF Mechanism

 A mechanism and its velocity diagram


vB  v A  vB/ A
. . .
 l1 1 [ to l1 ]  l2 (1   2 )[ to l2 ]
. . . . . .
 l1 1 sin 1i  l1 1 cos 1 j  l2 (1   2 ) sin(1   2 )i  l2 (1   2 ) cos(1   2 ) j
y

B
y

l2
VB/A

2
l1 VA
A VB

o 1 x x

(a) (b)
Introduction to Robotics: Analysis, Control,
Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Differential Motions

 In matrix form we get:

 .
 vBx   l1 sin 1  l2 sin(1  2 ) l2 sin(1  2 )  1
   
v l cos   l cos(    ) l cos(   )  . 
 By   1 2 
 2 
1 2 1 2 2 1

 Differential motions are the product of the Jacobian and


the joint differential motions

Introduction to Robotics: Analysis, Control,


Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Differential Motions

 The same relationship can be derived from direct


differentiation:
 xB  l1 cos 1  l2 cos(1   2 )

 yB  l1 sin 1  l2 sin(1   2 )
dxB  l1 sin 1d1  l2 sin(1   2 )(d1  d 2 )

dyB  l1 cos 1d1  l2 cos(1   2 )(d1  d 2 )
 dxB   l1 sin 1  l2 sin(1   2 ) l2 sin(1   2 )   d1 
 dy    l cos   l cos(   ) l cos(   )   d 
 B  1 1 2 1 2 2 1 2  2

Differential Jacobian Differential


motion of B Introduction to Robotics: Analysis, Control, motion of joints
Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
The meaning of a Jacobian

 A representation of the configuration of the mechanism


Resulting
motion
B

Re
m sulti
ot ng
io
A n
B
1

Resultin
motion
g
o o o
A B A
1 1

Introduction to Robotics: Analysis, Control,


Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
What is the Jacobian
 For an equation in the form of
yi  f i ( x1 , x2 , x3 ,..., x j )
 The derivatives are:
 f1 f1 f1
 y 
 1 x 1 x  x   x 2  L   xj
x j
 1 2

 f 2 f 2 f 2
 y2   x1   x2  L   xj
 x1 x2 x j
M

 f i f i f i
 y 
 i x 1 x  x   x2  L   xj
 1 2 x j
Introduction to Robotics: Analysis, Control,
Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Jacobian
 This can be rearranged into:

 f1 f1 f1 


 y
 1     x1 
   x1 x2 x j 
 
   f  
 y2   2 K K K   x2   fi 
    x1   or  yi      x j 
   M    x j 
 M    M
   fi fi   
  yi    
 x j 
 x1 x j 

Introduction to Robotics: Analysis, Control,


Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Robot’s Jacobian

 For a robot, we get:

 dx     d1 
 dy     d 
    2
 dz   Robot   d3 
    or  D    J  D 
 x   Jacobian   d 4 
 y     d 5 
    
 z     d 6 

Introduction to Robotics: Analysis, Control,


Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Differential versus Large-Scale Motions

 Large scale motions happen once; differential motions


happen continuously.
 The final consequences are different.

l

B C

l
l A 

Introduction to Robotics: Analysis, Control,


Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Differential Motions of a Frame versus a Robot

 A frame may move by any means, including as a result of


the motions of a robot arm when the frame is attached to
the end effector.
 We will study the differential motions of a frame and of a
robot separately, then combine them together.

z z
z
o' Hand differential
o n' o'
a' motions a' o n'
a n a n

Joint differential bot


Ro
motions

x y x y x
y
Introduction to Robotics: Analysis, Control,
Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Differential Motions of a Frame

 Differential motions of a frame can be divided into the


following:
 Differential translations
 Differential rotations
 Differential transformations (combinations of translations
and rotations)

Introduction to Robotics: Analysis, Control,


Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Differential Translations

 The translation of a frame at differential values or


Trans(dx,dy,dz). This means the frame has moved a
differential amount along the x-, y-, and z-axes.

Introduction to Robotics: Analysis, Control,


Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Differential Rotations about Reference Axes

 Small rotations of the frame, represented by


Rot (q, d )
 Differential rotations about the x-, y-, and z-
axes are defined by  x,  y,  z.

Introduction to Robotics: Analysis, Control,


Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Differential trigonometric functions

 We use the following relationships:

sin  x   x (in radians)


cos  x  1

Introduction to Robotics: Analysis, Control,


Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Differential Rotations about Reference Axes

1 0 0 0 1 0 0 0
0 1  x 0 0 1  n 0
Rot ( x,  x )    Rot ( n,  n )   
0 x 1 0 0 n 1 0
   
0 0 0 1 0 0 0 1

 1 0  y 0  1 0 o 0
 0 1 0 0  0 1 0 0
Rot ( y ,  y )    Rot (o,  o)   
 y 0 1 0  o 0 1 0
   
 0 0 0 1  0 0 0 1

 1  z 0 0  1  a 0 0
 z 1 0 0  a 1 0 0
Rot ( z ,  z )    Rot ( a ,  a )   
0 0 1 0 0 0 1 0
   
0 0 0 1 0 0 0 1
Introduction to Robotics: Analysis, Control,
Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Multiple Differential Rotations about Reference
Axes

 Multiple differential rotations:


 Results are order-dependent
 If higher-order differentials are eliminated, the results are the same.

1 0 0 0  1 0  y 0  1 0 y 0
 
0 1  x 0  0 1 0 0   x y 1  x 0 
Rot ( x,  x) Rot ( y,  y )    
0  x 1 0    y 0 1 0    y  x 1 0 
   
0 0 0 1  0 0 0 1  0 0 0 1 

 1 0  y 0  1 0 0 0  1  x y  y 0
 
 0 1 0 0  0 1  x 0   0 1  x 0 
Rot ( y,  y ) Rot ( x,  x )    
  y 0 1 0  0  x 1 0    y  x 1 0 
  
 0 0 0 1  0 0 0 1   0 0 0 1 
Introduction to Robotics: Analysis, Control,
Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Differential Rotations about a General Axis q

 Based on the previous slide, the order does not matter:


(d )q  ( x)i  ( y ) j  ( z )k
Rot (q, d )  Rot ( x,  x) Rot ( y ,  y ) Rot ( z,  z )
1 0 0 0  1 0  y 0   1  z 0 0 
0 1  x 0   0 1 0 0   z 1 0 0
   
0  x 1 0    y 0 1 0   0 0 1 0
   
0 0 0 1  0 0 0 1  0 0 0 1
 1  z y 0 z

  x y   z  x y z  1  x 0 z q

 d
  y   x z  x   y z 1 0
  y
 0 0 0 1 x
y
Introduction to Robotics: Analysis, Control, x
Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Differential Rotations about a General Axis q

 Eliminating the higher-order differentials we get:

Rot (q, d )  Rot ( x,  x) Rot ( y,  y ) Rot ( z ,  z ) 


 1  z  y 0
 z 1  x 0
 
  y  x 1 0
 
 0 0 0 1

Introduction to Robotics: Analysis, Control,


Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Differential Rotations of a Frame

 Assume we may have differential translation and rotations.


 dT is the change in a frame. Therefore:

T  dT   [Trans(dx, dy, dz ) Rot (q, d )]T 


or dT   [Trans (dx, dy, dz ) Rot (q, d )  I ] T 

dT    T 
where    [Trans (dx, dy , dz )  Rot (q, d )  I ]

Introduction to Robotics: Analysis, Control,


Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Differential Operator

 Differential Operator can be derived.


 It is NOT a frame or transformation matrix and it does not
follow the same requirements.

 0  z  y dx 
 z 0  x dy 
 
  y  x 0 dz 
 
 0 0 0 0

Introduction to Robotics: Analysis, Control,


Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
The Differential Change

 Represents the changes in each of the elements in the


matrix representation of a frame.
 dnx dox dax dpx 
 dn doy da y dp y 
dT   y
 dnz doz daz dpz 
 
 0 0 0 0 
 The new frame is:
Tnew  dT  Told

Introduction to Robotics: Analysis, Control,


Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Differential Changes between Frames

 A differential change can be relative to the reference


frame or the current frame:

         
dT   T  T  T

T    T   T      
1 1 T
 T 

    T   T   
T 1
 0 T
 z T
y T
dx 
 T T T 
 z 0  x dy 
  T y T
x 0 T
dz 
 
 0 0 0 0 
Introduction to Robotics: Analysis, Control,
Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Differential Changes between Frames

 Differential change can be can be calculated directly, or


from:
T
x  δ n
T
 y  δ o
T
z  δ a
T
d x  n  [δ  p  d]
T
d y  o  [δ  p  d]
T
d z  a  [δ  p  d]
Introduction to Robotics: Analysis, Control,
Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Differential Motions of a Robot and Its Hand
Frame

 The differential motions of the robot can be expressed by:

 dx     d1 
 dy     d 
    2
 dz   Robot   d3 
    or  D    J  D 
 x   Jacobian   d 4 
 y     d 5 
    
 z     d 6 

Introduction to Robotics: Analysis, Control,


Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Differential Motions of a Robot and Its Hand
Frame

 Use the previous equation to relate the robot joint


differential motions to the end-effector motions,
 Use the data in D to form  .
 Calculate dT.
 Calculate the new position and orientation of the end-
effector
 Repeat.

Introduction to Robotics: Analysis, Control,


Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Calculation of the Jacobian

 Direct derivation is possible for position equations, but not


practical for orientation.
 Indirect derivation, especially relative to the current frame
is easier and more practical.
 For:  T6 d x   T6 J11 T6 J12 . . . T6 J16   d1 
 T6   T6  
 d y   J 21
T6
J 22 . . . T6
J 26   d 2 
 T6 d z   T6 J 31 . . . . T6
J 36   . 
 T6    T6  
  x   J 41 . . . . T6
J 46   . 
 T6   T6 J . . . . T6
J 56   . 
 T y   T 51  
 6 z   6 J 61 . . . . T6
J 66   d 6 
Introduction to Robotics: Analysis, Control,
Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Calculation of the Jacobian: Cont.

 If joint i under consideration is a revolute


joint:
T6
J1i  (nx p y  n y px )
T6
J 2 i  (  ox p y  o y p x )
T6
J 3i  (  a x p y  a y p x )
T6
J 4 i  nz
T6
J 5 i  oz
T6
J 6i  az
Introduction to Robotics: Analysis, Control,
Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Calculation of the Jacobian: Cont.

 If joint i under consideration is a prismatic


joint: T6
J1i  nz
T6
J 2 i  oz
T6
J 3i  a z
T6
J 4i  0
T6
J 5i  0
T6
J 6i  0
Introduction to Robotics: Analysis, Control,
Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Calculation of the Jacobian: Cont.

 Where the information comes from:

For column 1, use oT6  A1 A2 A3 A4 A5 A6


For column 2, use 1T6  A2 A3 A4 A5 A6
For column 3, use 2T6  A3 A4 A5 A6
For column 4, use 3T6  A4 A5 A6
For column 5, use 4T6  A5 A6
For column 6, use 5T6  A6

Introduction to Robotics: Analysis, Control,


Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Inverse Jacobian

 Inverse Jacobian is the real objective

 D    J  D 
 J 1   D    J 1   J  D 

 D    J 1   D 
 And similarly

 T6 J 1   T6 D    T6 J 1   T6 J   D 
T6 1 T6
D   J   D 
  
Introduction to Robotics: Analysis, Control,
Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Calculation of Inverse Jacobian

 Can be calculated from the Jacobian, but impractical for a


6 by 6 large matrix.
 Can be derived directly from the forward kinematic
equations instead.

Introduction to Robotics: Analysis, Control,


Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Derivation of the Inverse Jacobian

 Example: 6-axis robot first joint:


px S1  p y C1  0
 py 
1
1  tan   and 1  1  180
 px 

px S1  p y C1
dpx S1  px C1d1  dp y C1  p y S1d1
d1 ( px C1  p y S1 )  dpx S1  dp y C1
 dpx S1  dp y C1
d1 
( px C1  p y S1 )
Introduction to Robotics: Analysis, Control,
Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Derivation of the Inverse Jacobian: Cont.

 Similarly:
S 234 (C1ax  S1a y )  C234 az
C234 (d 2  d3  d 4 )(C1ax  S1a y )  S 234 [a x S1d1  C1da x  a y C1d1  S1da y ]
  S 234 (d 2  d3  d 4 )az  C234 daz

S 234 [ax S1d1  C1dax  a y C1d1  S1da y ]  C234 daz


(d 2  d3  d 4 ) 
C234 (C1ax  S1a y )  S 234 az

Introduction to Robotics: Analysis, Control,


Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Derivation of the Inverse Jacobian: Cont.

 and:
2a2 a3C3  ( px C1  p y S1  C234 a4 )2  ( pz  S234 a4 ) 2  a22  a32

2a2 a3 S3 d3  2( p xC1  p y S1  C234 a4 )


 [C1dpx  px S1d1  S1dp y  p y C1d1  a4 S 234 (d 2  d 3  d 4 )]
 2( pz  S234 a4 )[dpz  a4C234 (d 2  d3  d 4 )]

Introduction to Robotics: Analysis, Control,


Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Derivation of the Inverse Jacobian: Cont.

 and similarly, equations for the remaining can be derived,


including:

S6   S234 (C1nx  S1n y )  C234 nz

C6 d 6  C234 (C1nx  S1n y )(d 2  d 3  d 4 )


 S234 ( S1nx d1  C1dnx  C1n y d1  S1dn y )
 S234 nz (d 2  d3  d 4 )  C234 dnz

Introduction to Robotics: Analysis, Control,


Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Derivation of the Inverse Jacobian: Cont.

 These equations may be used to control the differential


motions of the robot.

Introduction to Robotics: Analysis, Control,


Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Calculation of Jacobian with screw-based
mechanics

 Same principles apply. The meaning and the use of


Jacobians is similar in screw-based mechanics. The
derivation is different. ŝ 3

ŝ4
ŝ2

S3 S4 z
ŝ1

S2
x
Fixed
base

S1 y

Introduction to Robotics: Analysis, Control,


Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Cont.

 Denoting the Jacobian of the robot as J, we write:


   
v   J   D
 
 

  is the vector of angular velocities of the end effector


with respect to the reference frame, v is the vector of
linear velocities of the end effector with respect to the
reference frame, and  D   is the angular velocities of the
joints

Introduction to Robotics: Analysis, Control,


Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Cont.

Introduction to Robotics: Analysis, Control,


Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Cont.

Introduction to Robotics: Analysis, Control,


Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Process of calculating the Jacobian

Introduction to Robotics: Analysis, Control,


Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Cont.

Introduction to Robotics: Analysis, Control,


Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Cont.

Introduction to Robotics: Analysis, Control,


Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Example

 Intermediate reference frame at z4 (s5)

zU zn

ŝ1 ŝ5
a4
a2 ŝ3 a3 ŝ6
ŝ2 xU xn
ŝ4

Introduction to Robotics: Analysis, Control,


Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Joint 5:

Introduction to Robotics: Analysis, Control,


Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Joint 6:

Introduction to Robotics: Analysis, Control,


Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Joint 4:

Introduction to Robotics: Analysis, Control,


Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Joint 3:

Introduction to Robotics: Analysis, Control,


Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Joint 2:

Introduction to Robotics: Analysis, Control,


Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Joint 1:

Introduction to Robotics: Analysis, Control,


Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Jacobian:
 S234 0 0 0 0 S5 
 0 1 1 1 0 C5 
 
5
 C234 0 0 0 1 0 
j 
 0 a2 S34  a3S4 a3 S4 0 0 0 
 a2C2  a3C23  a4C234 0 0 0 0 0 
 
 0 a2C34  a3C4  a4 a3C4  a4 a4 0 0 
5
x  S2341  S56
5
 y  2  3  4  C56
5
  C   
z 234 1 5
5
v x  a2 S342  a3S 4 (2  3 )
5
v y  (a2C2  a3C23  a4C234 )1
5
v z  ( a2C34  a3C4  a4 )2  (a3C4  a 4 )3  a 45
Introduction to Robotics: Analysis, Control,
Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Inverse Jacobian

 Inverting the matrix is too involved.


 Direct differentiation is easier and quicker.

Introduction to Robotics: Analysis, Control,


Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Jacobian of parallel robots

Introduction to Robotics: Analysis, Control,


Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Cont.

Introduction to Robotics: Analysis, Control,


Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Example: Jacobian of 6-6 Stewart platform

 We write 6 loop equations and differentiate


them to form the Jacobian as follows
P  bi  ai  d i for i  1 6 B3
B4 d̂1
B2
P b1
P  b  bi  d i +di  d i B5

B6
B1

A3
P
A4 A2
zo d1
yo
O a1
xo
A5 A1

A6
Introduction to Robotics: Analysis, Control,
Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Notes:

Introduction to Robotics: Analysis, Control,


Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Derivation:

Introduction to Robotics: Analysis, Control,


Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by

You might also like