You are on page 1of 26

# Manipulator Dynamics

Chapter 6
Introduction

## Robot arm dynamics deals with the mathematical

formulations of the equations of robot arm motion.

## • A basis for computer simulations.

Equations of motion
The way in which the motion of the manipulator arises from
torques applied by the actuators, or from external forces
applied to the manipulator.
Forward and Inverse Dynamics

## Given a trajectory point, ,  , and  ,

find the required vectors of joint torques, .
: problem of controlling the manipulator

## Given a torque vector,  ,

calculate the resulting motion of the manipulator,
,  , and  .
: problem of simulating the manipulator
Forward Dynamics
Problem
Given: Joint torques and links ,
geometry, mass, inertia,
friction, joint torques
Compute: Angular acceleration of the
equations)

Solution
Solve a set of differential equations
Dynamic Equations - Newton-Euler method
or Lagrangian Dynamics

  V (, 
τ  M ()  )  G()  F (, 
)
Inverse Dynamics
Problem
Given: Angular acceleration, velocity and
friction

## Compute: Joint torques

Solution
Solve a set of algebraic equations
Dynamic Equations - Newton-Euler
method or Lagrangian Dynamics
  V (, 
τ  M ()  )  G()  F (, 
)
Two Approaches
Energy based: Lagrange-Euler.

## Efficient, derivation is simple but messy, involves

vector cross product. Allow real time control.
Dynamics - Newton-Euler Equations
Newton Equation
For a rigid body (like a robot link)
whose center of mass is
experiencing an acceleration, the
force acting at the center of mass
that caused the acceleration is given
by Newton’s equation
d mvc 
F
dt
For our robot manipulators, whose
equation simplifies to

F  mvc
Dynamics - Newton-Euler Equations
Eular Equation
For a rotating rigid body, the moment
that causes an angular acceleration is
given by Euler’s equation

N
 
d c I
dt
For our robot manipulators, whose link
moment of inertia is constant, this
equation simplifies to

N  cI   c I
The second term on the right will be
velocity vector is not coincident with the
Dynamics - Newton-Euler Equations
To solve the Newton and Euler equations, we’ll need to develop
mathematical terms for:

##  – The angular acceleration

c
I– The Inertia tensor (moment of inertia)

## N - The sum of all the moments applied on the center of mass

F  mvc

N  I    I
c c
Chapter 5
Linear and Rotational Velocity
A
B

• Vector Form
B
PQ
A
VQ  VBORG  R VQ  B  R PQ
A A
B
B A A
B
B

• Matrix Form
A
VQ  AVBORG  BAR BVQ  BAR BAR BPQ 

Angular Velocity
A
C  A  B  BAR B C
• Vector Form

• Matrix Form
A
C R   BAR   BAR CBR  BA RT

11
Acceleration of a rigid body
Linear and angular accelerations:

 dB
B
VQ (t  t ) BVQ (t )
B
VQ  VQ  lim ,
dt t 0 t
A  d A
 (t  t )  A
 B (t )
B  A
 B  lim B
.
dt t 0 t
Linear acceleration

A
VQ  BAR BVQ  A  B  BA R BQ. : origins are coincident.
d A B
( B R Q) BAR BVQ  A  B  BA R BQ. : re-write it as.
dt

d   A R BQ  A   d ( AR BQ) : by differentiating.
A
VQ  ( BAR BVQ ) A  B B B B
dt dt
 BAR BVQ  A  B  BA R BVQ  A 
  A R BQ  A  ( AR BV  A   A R BQ)
B B B B Q B B

##  BAR BVQ  2 A  B  BA R BVQ  A 

  A R BQ  A  ( A   A R BQ).
B B B B B
Linear acceleration
the case in which the origins are not coincident

## VQ  AVBORG  BAR BVQ  2 A  B BAR BVQ  A 

A   AR BQ
B B

  B (  B  R Q).
A A A
B
B

VQ  BVQ  0.
B : when B
Q is constant

A   AR BQ.
B B

## : the linear acceleration of the links of a manipulator with

rotational joints.
Angular acceleration
B is rotation relative to A and C is rotating relative to B

A
C  A  B  BAR B C .
A  A 
C   B 
d A B
dt

B R C . 
A  AR B 
  A   AR B  .
B B C B B C

## : the angular acceleration of the links of a manipulator.

Dynamics - Newton-Euler Equations
To solve the Newton and Euler equations, we’ll need to develop
mathematical terms for:

##  – The angular acceleration

c
I– The Inertia tensor (moment of inertia)

## N - The sum of all the moments applied on the center of mass

F  mvc

N  I    I
c c
Propagation of Acceleration – Angular
Matrix Approach
B is rotation relative to A and C is rotating relative to B
A
C  A  B  BA R B C  A  B  BA R B C ,
A  0, B  i, C  i  1
0
i 1  0 i  0i R i i 1  0 i  0i R i i 1
i 1
Multiply by 0 R
i 1 i 1
0 R 0 i 1  0 R 0 i  i 01R 0i R i i 1  i 01R ( 0 i  0i R i i 1 )
i 1
i 1  i 1i  i 1Ri i i 1  i 01R 0 i  i 01R 0i R i i 1
 0   0 
i 1
i 1  i i1R ii   0   i i1R ii   0 
i 1  i 1 
Propagation of Acceleration – Angular
Matrix Approach
To derive a general formula for the angular acceleration, we will
differentiate the angular velocity

i 1 i 1
i
i 
 i 1  R  i  0 0  i 1
T
 
Applying the chain rule, we find:

i 1 i 1
i
 i
i 
 i 1  R  i  R  i  0 0  i 1
i 1
i
T
 
Recall that  0  z y 
A 
BR 
d A
dt

 
B R   z 0
A A A
  x  B R  B R B R
  y x 0 

Propagation of Acceleration – Angular
Matrix Approach
Matrix form (Revolute Joint) i 1
 i 1 i
 i 1  i 1 i 
 i 1  i R  i  i R i R  i  0 0  i 1
T
 
Converting from matrix to vector form gives the angular acceleration
vector
 0   0 
Vector form (Revolute Joint)
i 1
 i 1 i i1R i i  i i1R i i   0    0 
i 1  i 1 

If joint i+1 is prismatic, the angular terms are zero ( i 1  i 1  0 ) and
the above equation simplifies to:

## Matrix form (Prismatic Joint) i 1

 i 1 i i1R i i
Dynamics - Newton-Euler Equations
To solve the Newton and Euler equations, we’ll need to develop
mathematical terms for:

##  – The angular acceleration

c
I– The Inertia tensor (moment of inertia)

## N - The sum of all the moments applied on the center of mass

F  mvc

N  I    I
c c
Propagation of Acceleration - Linear
Simultaneous Linear and Rotational Velocity

Vector Form

A
B
PQ
A
B

Matrix Form

## VQ  AVBORG  BAR BVQ  BAR BAR BPQ 

A
Propagation of Acceleration - Linear
Matrix Approach
To derive a general formula for the linear acceleration, we will differentiate
the linear velocity. However, instead of differentiating the recursive equation
like we did for the angular acceleration derivation, we’ll begin at a slightly
earlier step. Recall the three-part expression:
A
VQ  BAR  A
B 
R BPQ org  AVB org  BAR BVQ
A  0 B  i Q  i 1

i 1 i  i i 1 i i 
Re-assigning the link frames ( 0V  0R 0 R iP  0V  0R iV
i 1 ), we find

## Differentiating using the chain rule gives:

0
Vi 1  0i R
 0 R iP  0R 0 R 0 R iP  0R 0 R iP  0V  0R 0 R iV  0R iV
i i 1 i  i  i i 1 i  i i 1 i i i i 1 i i 1
Propagation of Acceleration - Linear
0
Vi 1  0i R
 0 R iP  0R 0 R 0 R iP  0R 0 R iP  0V  0R 0 R iV  0R iV
i i 1 i  i  i i 1 i  i i 1 i i i i 1 i i 1

## Combining the two like terms, we find:

0
Vi 1  0i R
 0 R iP  0R 0 R 0 R iP  0V  20R 0 R iV  0R iV
i i 1 i  i  i i 1 i i i i 1 i i 1

i 1
Pre-multiplying both sides of the equation by 0 R gives:

i 1
0 R 0Vi 1 i 01R 0i R
 0 R iP  i 1R 0R 0 R 0 R iP  i 1R 0V  2i 1R 0R 0 R iV  i 1R 0R iV
i i 1 0 i i i i 1 0 i 0 i i i 1 0 i i 1

## Expanding terms gives

i 1
0 R 0Vi 1 i i1R 0iR 0i R
 0 R iP  i 1R iR 0R 0 R 0 R iP  i 1R 0V  2i 1R iR 0R 0 R iV  i 1R 0R iV
i i 1 i 0 i i i i 1 0 i i 0 i i i 1 0 i i 1
Propagation of Acceleration - Linear

i 1
0 R 0Vi 1 i i1R 0iR 0i R 0i R iPi 1  i i1R 0iR 0i R  0i R  0i R iPi 1  i 01R 0Vi  2i i1R 0iR 0i R  0i R iVi 1  i 01R 0i R iVi 1

 T s 0A
Simplifying the previous equation using (Note: R R R t R  B
s A s
)
t B t
i 0  0  i RT  iR 0 
  iR i 
R R R  iR 0R 0 i i 0 i 0 0 i 0 i i

0
i
R 0i R  0i R  0i R i i i i
i 1
0 R 0Vi i i1R 0iR 0Vi i i1R i vi

0
i
R 0i R  0i R  0i R 0i  i i
we have

i 1
 
vi 1 i i1R i i i Pi 1  i i i i i Pi 1  i vi  2i i i 1 vi 1  i 1vi 1
Propagation of Acceleration - Linear

i 1
 
vi 1 i i1R i i i Pi 1  i i i i i Pi 1  i vi  2i 1i 1 i 1 vi 1  i 1vi 1
This equation can be written equivalently as:

 0   0 
 
General form i 1vi 1 i i1R i i i Pi 1  i  i i  i i Pi 1  i vi  2i 1 i 1   0    0 
   
di 1  di 1 

If joint i+1 is revolute joint, the linear terms are zero and the
above equation simplifies to:

Revolute Joint i 1

vi 1 i i1R i i i Pi 1  i  i i  i i Pi 1  i vi 
Propagation of Acceleration - Linear
From the general equation, we can also get the solution for the
acceleration of the center of mass for link i. Appropriate frame
substitution and elimination of prismatic terms gives we find:

i
vci i  i i Pc i ii i i i Pc i i vi

Frame {Ci} attached to each link with its origin located at the Center
of mass of the link, and with the same orientation as the link frame {i}