You are on page 1of 33

CHAPTER SIX

DYNAMIC ANALYSIS AND FORCES

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

 Analysis of forces, torques, inertias, loads, and


accelerations.
 Derivation of dynamic equations of motion.
 Allows determination of important loads for design.
 Assists in the selection of actuators.

Introduction to Robotics: Analysis, Control,


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

 Easier for simpler systems.


 Familiar to users

F  ma and T  I  

T F I 
= ma

Introduction to Robotics: Analysis, Control,


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

 Easier for more complicated systems


 Based on system’s energies
 Systematic
 Lagrangian is the difference between kinetic and potential
energies of the system:

L K P

Introduction to Robotics: Analysis, Control,


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

 Lagrangian relationships are:

  L  L
Fi   
t  x i  xi

  L  L
Ti    
t  i  i

Introduction to Robotics: Analysis, Control,


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

 Please see examples in the book for the application of Lagrangian


mechanics. For the following system we can derive equations of
motion as:
1 1 
2 2
 T   m1l1  m2l2  m2 r
2
0     0 0   2   m2 r m2 r   r 
F    3 12  
  r   m2 r 0   r 2   0  
0   r 
  0 m2 

 l1  
 
m1 g  m2 gr  C 
2   F

 m2 gS 
r
I2
l 2, D
T1
C m2
y0 I1
l 1, B

A m1 1
x0

Introduction to Robotics: Analysis, Control,


Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Effective Moments of Inertia
 The equations of motion can be written in matrix form as:

 Ti   Dii Dij  i   Diii Dijj  i 2   Diij Diji  i j   Di 


T    D D       D D    2   D D       D 
 j   ji jj  
 j   jii jjj  
 j   jij  j i   j 
jji  
 Dii is effective inertia at joint i, such that an acceleration at joint i causes a
torque at joint i equal to . Diii
 A coefficient in the form Dij is known as coupling inertia between joints i
and j as an acceleration at joint i or j causes a torque at joint j or i equal to
. D  or D 
ij j ji i

Dijj j2 terms represent centripetal forces acting at joint i due to a velocity at



joint j.
 All terms with represent Coriolis accelerations, and when multiplied
12
by corresponding inertias, represent Coriolis forces.
 The remaining terms in the form Di represent gravity forces at joint i.
Introduction to Robotics: Analysis, Control,
Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Dynamic Equations for Multiple-DOF Robots

 We will discuss:
 Kinetic energy
 Potential energy
 Lagrangian
 Derivation
 Observations

Introduction to Robotics: Analysis, Control,


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

 For a 3-D system,



 hG vG

G
G

1 1
K  mvG  I  2
2

2 2

 We need the moments of inertia and velocity expressions


at the center of mass G on each link.
Introduction to Robotics: Analysis, Control,
Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Kinetic Energy: Cont.

 Velocity of a point on a robot’s link can be defined by differentiating


the position equation of the point, expressed by a frame relative to the
robot’s base.
 We use the D-H transformation matrices Ai to find the velocity terms.
R
TH  RT1 1T2 2T3 ... n 1Tn  A1 A2 A3 ... An
 The derivative of an A matrix is:

C i  S i C i S i S i ai C i    S i C i C i C i Si  ai Si 


Ai

 S i C i C i C i S i ai S i   C i  S i C i S i Si ai Ci 
   
 i  i  0 S i C i di   0 0 0 0 
   
 0 0 0 1   0 0 0 0 

Introduction to Robotics: Analysis, Control,


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

 This matrix can be broken into a constant matrix


Qi and the Ai matrix such that
  S i C i C i C i S i  ai S i 
 0 1 0 0  C i  S iC i S i S i a iC i 
 C  S i C i S i S i aiC i   1 0 0 0   S i C iC i C iS i a iS i 
 i   
 0 0 0 0  0 0 0 0  0 S i C i di 
     
 0 0 0 0  0 0 0 0  0 0 0 1 

Ai
 Qi Ai
 or  i
 The Q matrix is a constant, non-changing matrix.
Introduction to Robotics: Analysis, Control,
Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Kinetic Energy: Cont.

 The same can be done for a prismatic joint:


C i  S i C i S i S i ai C i  0 0 0 0
Ai

 S i C i C i C i S i ai S i  0 0 0 0
   
d i d i  0 S i C i d i  0 0 0 1
   
 0 0 0 1  0 0 0 0

0 0 0 0 0 0 0 0  C i  S i C i S i S i ai C i 
0 0 0 0 0 0 0 0   S i C i C i C i S i ai S i 
   
0 0 0 1  0 0 0 1  0 S i C i di 
     
0 0 0 0 0 0 0 0  0 0 0 1 

Ai
 Qi Ai
 i
Introduction to Robotics: Analysis, Control,
Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Kinetic Energy: Cont.

 Extending the same to the 0Ti matrix with multiple joint


variables (i and di), differentiated with respect to only one
variable qj results in

 0Ti  ( A1 A2 .. A j .. Ai )
U ij    A1 A2 ..Q j Aj .. Ai ji
q j q j

 Higher order derivatives can be formulated as:


U ijk  U ij qk
Introduction to Robotics: Analysis, Control,
Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Kinetic Energy: Cont.

 The position of a point on a link is:


pi  RTi ri  0Ti ri
 The velocity of a point on a link is:
i  
d 0  ( 0Ti ) dq j i
dqi
vi  ( Ti ri )     ri   (U ij )  ri
dt 
j 1  q j dt dt
 j 1

 The kinetic energy of an element of mass is:


1 2
dK i  ( x i  y i2  z i2 ) dm
2
Introduction to Robotics: Analysis, Control,
Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Kinetic Energy: Cont.

 Since vi has three components of x i , y i , z i , it can be written


as a 3X3 matrix:
 x i   x i 2 x i y i x i z i 
 
vi viT   y i   x i y i z i    y i x i y i 2 y i z i 
 z i   z i x i z i y i z i 2 

 or
 x i 2 x i y i x i z i 
 
Trace (vi viT )  Trace  y i x i y i 2 y i z i   x i 2  y i 2  z i 2
 z i x i z i y i z i 2 

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

 Combine these to get:

1  i dq p  i dqr  
T

dK i  Trace   (U ip )  ri    (U ir )  ri   dmi
2  p 1 dt   r 1 dt  

 Integrate to get:
1  i i 
K i   dK i  Trace   U ip (  ri ri dmi )U ir q p q r 
T T

2  p 1 r 1 

Introduction to Robotics: Analysis, Control,


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

 For moments of inertia, write ri in terms of its coordinates


relative to its frame:
 xi   xi 2 xi yi xi zi xi 
y   
xy yi 2 yi zi yi 
ri   i  and riT   xi yi zi 1 and ri riT   i i
 zi   xi zi yi zi zi 2 zi 
   
1  xi yi zi 1 
 Therefore:
 xi 2 dmi
 xi    x y dm  x z dm  x dm 
i i i i i i i i

 xi yi dmi
y 
  y dm  y z dm  y dm 
2
i i i i i i i
 i i i  zi   xi
r r T
dm   i
yi zi 1  dmi  
 x z dm
 i i i  y z dm  z dm  z dm 
2
i i i i i i i
 
1  x dm 
  i i  y dm  z dm  dm 
i i i i i

Introduction to Robotics: Analysis, Control,


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

 Since:
1 1 1 1
 dm     
2 2 2 2 2 2 2
x ( y  z ) dm  ( x  z ) dm  ( x  y ) dm = ( I xx  I yy  I zz )
2 2 2 2
1 1 1 1
 2 2 2
2 2 2 2 2 2 2
y dm  ( y  z ) dm  ( x  z ) dm  ( x  y ) dm = ( I xx  I yy  I zz )
2
1 1 1 1
   
2 2 2 2 2 2 2
z dm  ( y  z ) dm  ( x  z ) dm  ( x  y ) dm = ( I xx  I yy  I zz )
2 2 2 2
 Therefore:
1 
 2 ( I xx  I yy  I zz )i I ixy I ixz mi xi 
 
 1
I ixy ( I xx  I yy  I zz )i I iyz mi yi 
Ji   2 
 1 
 I ixz I iyz ( I xx  I yy  I zz )i mi zi 
 2 
 mi xi mi yi mi zi mi 

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

 Combining the above and adding actuator inertia and


kinetic energies we find the total kinetic energy to be:

1 n i i
1 n
K
2

i 1 p 1 r 1
Trace (U J U
ip i ir
T
) 
q 
q
p r 
2

i 1
I 
q
i ( act ) i
2

Introduction to Robotics: Analysis, Control,


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

 Potential energy of all the components together is:


n n
P   Pi   [ mi g T  ( 0Ti ri )]
i 1 i 1
T
 where   g x
g gy gz 0  is the gravity matrix and
ri is the location of the center of mass of a link relative to
the frame representing the link

Introduction to Robotics: Analysis, Control,


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

 The Lagrangian is:

1 n i i n n

 Trace(U ip J iU ir )q p q r  1  i (act ) i  i


T 2
L K P  I 
q  [  m g T
 ( 0
Ti ri )]
2 i 1 p 1 r 1
2 i 1 i 1

Introduction to Robotics: Analysis, Control,


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

 Robot’s equations of motion are found by differentiating


the Lagrangian as discussed, resulting in:
n n n
Ti   Dij q j  I i ( act ) qi   Dijk q j q k  Di
j 1 j 1 k 1

n
Dij  
p  max( i , j )
Trace(U pj J pU Tpi )

n
Dijk  
p  max( i , j , k )
Trace(U pjk J pU Tpi )

n
Di   m p g T U pi rp
p i
Introduction to Robotics: Analysis, Control,
Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Equations of Motion: Cont.

 This translates into the following:


Ti  Di11  Di 22  Di 33  Di 44  Di 55  Di 66  Ii ( act )i
 D  2  D  2  D  2  D  2  D  2  D  2
i11 1 i 22 2 i 33 3 i 44 4 i 55 5 i 66 6

 Di1212  Di1313  Di1414  Di1515  Di1616


 D    D    D    D    D  
i 21 2 1 i 23 2 3 i 24 2 4 i 25 2 5 i 26 2 6

 Di 3131  Di 3232  Di 3434  Di 3535  Di 3636


 D    D    D    D    D  
i 41 4 1 i 42 4 2 i 43 4 3 i 45 4 5 i 46 4 6

 Di 5151  Di 5252  Di 5353  Di 5454  Di 5656


 Di 6161  Di 6262  Di 6363  Di 6464  Di 6565  Di

Introduction to Robotics: Analysis, Control,


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

 Each inertia terms must be calculated based on the


previous discussion.
 Substituting the proper joint values into this equation
yields the following equations for each joint:

T1  D111  D122  D133  D144  D155  D166  I1( act )1


 D11112  D12222  D13332  D14442  D15552  D16662
 2 D11212  2 D11313  2 D11414  2 D11515  2 D11616
 2 D    2 D    2 D    2 D    2 D  
123 2 3 124 2 4 125 2 5 126 2 6 134 3 4

 2 D13535  2 D13636  2 D14545  2 D14646  2 D1565 6  D1

Introduction to Robotics: Analysis, Control,


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


T2  D211  D222  D233  D244  D255  D266  I2( act )2
 D21112  D22222  D23332  D24442  D25552  D26662
 2 D21212  2 D21313  2 D21414  2 D21515  2 D21616
 2 D    2 D    2 D    2 D    2 D  
223 2 3 224 2 4 225 2 5 226 2 6 234 3 4

 2 D23535  2 D23636  2 D24545  2 D24646  2 D25656  D2

T3  D311  D322  D333  D344  D355  D366  I 3( act )3


 D31112  D32222  D33332  D34442  D35552  D36662
 2 D31212  2 D31313  2 D31414  2 D31515  2 D31616
 2 D    2 D    2 D    2 D    2 D  
323 2 3 324 2 4 325 2 5 326 2 6 334 3 4

 2 D33535  2 D33636  2 D34545  2 D346 46  2 D35656  D3

Introduction to Robotics: Analysis, Control,


Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Equations of Motion: Cont.
T4  D411  D422  D433  D444  D455  D466  I 4( act )4
 D  2  D  2  D  2  D  2  D  2  D  2
411 1 422 2 433 3 444 4 455 5 466 6

 2 D41212  2 D41313  2 D41414  2 D41515  2 D41616


 2 D    2 D    2 D    2 D    2 D  
423 2 3 424 2 4 425 2 5 426 2 6 434 3 4

 2 D43535  2 D43636  2 D44545  2 D44646  2 D45656  D4

T5  D511  D522  D533  D544  D555  D566  I5( act )5


 D  2  D  2  D  2  D  2  D  2  D  2
511 1 522 2 533 3 544 4 555 5 566 6

 2 D51212  2 D51313  2 D51414  2 D51515  2 D51616


 2 D    2 D    2 D    2 D    2 D  
523 2 3 524 2 4 525 2 5 526 2 6 534 3 4

 2 D53535  2 D53636  2 D54545  2 D54646  2 D55656  D5

T6  D611  D622  D633  D644  D655  D666  I 6( act )6


 D61112  D62222  D63332  D644 42  D65552  D666 62
 2 D61212  2 D61313  2 D61414  2 D61515  2 D6161 6
 2 D    2 D    2 D    2 D    2 D  
623 2 3 624 2 4 625 2 5 626 2 6 634 3 4

 2 D63535  2 D63636  2 D645 45  2 D646 4 6  2 D6565 6  D6


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

 Too involved and complicated.


 Depending on the situation, some terms may be ignored or
eliminated.
 If low velocity, Coriolis and centripetal terms may be
ignored.
 In space and underwater applications, gravity terms may
be ignored.
 These can be used to design and select actuators too.

Introduction to Robotics: Analysis, Control,


Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Static Force Analysis of Robots

 Assume F is the forces at the end effector, D is the


displacements at the end effector, T is the toques (and
forces) at the joints, and D is the displacements at the
joints:
T
 F    f x
H
fy fz mx my mz 

 H D   dx dy dz  x  y  z 
T

T   T1 T2 T3 T4 T5 T6 
T

 D   d1 d 6 
T
d 2 d 3 d 4 d 5

Introduction to Robotics: Analysis, Control,


Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Static Force Analysis of Robots: Cont.

 Using the principle of virtual work we get:


T
 W   H F   H D   T   D 
T

 fx fy fz mx my mz   dx 
 dy 
 
 dz 
   f x dx  f y dy    mz z
 x 
 y 
 
 z 

Introduction to Robotics: Analysis, Control,


Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Static Force Analysis of Robots: Cont.

 In Chapter 3 we saw that:

 T6 D    T6 J   D  or  H D    H J   D 

Then:

T T
 F   J   D   T   D    F   H J   T 
H H T H T

Introduction to Robotics: Analysis, Control,


Applications, Third Edition. Saeed B. Niku. ©
2020 John Wiley & Sons Ltd. Published 2020 by
Static Force Analysis of Robots: Cont.

 This can be written as:


T
T    J   F 
 H
  H

 Therefore, the torques and forces necessary at the joints to


produce the desired forces and torques at the end effector
can be calculated.

Introduction to Robotics: Analysis, Control,


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

 The discussion above can also be used in the


control of these robots.
 The robot can “sense” the resistive forces exerted
on it by a human or another robot and either
respond to it (e.g. stopping), or adjusting the
forces and torques at the joints to not exceed
preset values to avoid injuries to humans or
damages to other robots, parts, or itself .

Introduction to Robotics: Analysis, Control,


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

You might also like