Vous êtes sur la page 1sur 93

Chapter 6 Manipulator dynamics

6.1 Introduction
6.2 Acceleration of a rigid body
6.3 Mass distribution
6.4 Newton’s equation, Euler’s equation
6.5 Iterative Newton-Euler dynamics equation
6.6 Iterative vs. closed form
6.7 An example of closed-form dynamic equations
6.8 The structure of a manipulator’s dynamic equations
6.9 Lagrangian formulation of manipulator dynamics
6.10 Inclusion of non-rigid body effect
6.11 Dynamic simulation
Introduction
• Our study of manipulators so far has focused on kinematic
considerations only.
• We have studied static positions, static forces, and velocities;
but we have never considered the forces required to cause
motion.
• In this chapter, we consider the equation of motion for a
manipulator – the way in which motion of the manipulator
arise from torques applied by the actuator or from external
forces applied to the manipulator.
• Dynamics of mechanisms is a field in which many books have
been written. Indeed, one can spend years studying the field.
• Obviously, we cannot cover the material in the completeness it
deserves.
• However, certain formulations of the particular, methods which
make use of the serial-chain nature of manipulators are natural
candidates for our study.
Forward Dynamics
Problem

Given: Joint torques and links


geometry, mass, inertia,
friction
Compute: Angular acceleration
of the links (solve
differential equations)
Solution

Dynamic Equations - Newton-


Euler method or Lagrangian
Dynamics
Inverse Dynamics
Problem

Given: Angular acceleration,


velocity and angels of the
links in addition to the
links geometry, mass,
inertia, friction

Compute: Joint torques

Solution

Dynamic Equations - Newton-


Euler method or Lagrangian
Dynamics
Acceleration of a rigid body
• Definitions of Linear and Angular acceleration
Linear acceleration
• The velocity of a vector as seen from frame {A} when
the origins are coincident:
Linear acceleration
• Acceleration of as viewed from {A} when origins of {A}
and {B} coincide:
Linear acceleration
• Finally, to generalize to the
case in which the origins are
not coincident, we add one
term which gives the linear
acceleration of the origin of
{B}, resulting in the final
general formula:

(6.10)

• For revolute joint link length usually is constant


(6.11)

(6.12)
Angular acceleration
• When {B} is rotation relative to {A} with

{C} is rotation relative to {B} with


What is ?

(6.13)

(6.14)

(6.15)

• We will use this result to calculate the angular


acceleration of the links of a manipulator, with respect to
the base frame {0}, and ith link {i} and i+1th link {i+1}
Newton’s Law
Angular Momentum

take the moment respect to o


Linear & Angular Momentum
Mass distribution

• Motion of a rigid body: translation and rotation. For


rotation about a single axis, one can use moment of
inertia.

• For a rigid body that is free to move in three dimensions,


there are infinitely many possible rotation axes.

• In case, of rotation about an arbitrary axis, we need a


complete way of characterizing the mass distribution of a
rigid body.

• Inertia tensor is used as a generalization of the scalar


moment of inertia of an object.
Mass distribution
•We shall define a set of quantities that give information
about the distribution of mass of a rigid body relative to a
reference frame.

Inertia tensor can be defined relative to any frame, but, we


will always consider the case of an inertia tensor defined for
a frame attached to the rigid body.
Angular Momentum
• Rigid Body -Rotational
Motion

Angular Momentum
Linear & Angular Momentum

?
Inertia Tensor
Inertia Tensor
Inertia Tensor
• For any frame {A}, the inertia tensor is given by

Mass moments Mass products


of inertia of inertia
Example 6.1
•Find the inertia
tensor for the
rectangular body of
uniform density ρ
with respect to the
frame {A}.
Example 6.1
• Permuting the terms, we can obtain

• We next compute the mass products of inertia:


Example 6.1
• Permuting the terms, we can obtain
Parallel Axis theorem
•Parallel-axis theorem relates the inertia tensor in a frame with
origin at the center of mass to the inertia tensor with respect to
another reference frame. The theorem can be stated as:
{C}
Example

{C}
Inertia Tensor
Inertia Tensor
Additional facts about inertial tensors
1. If two axes of the reference frame from a plane of symmetry
for the mass distribution of the body, the products of inertia
having as an index the coordinate that is normal to the pane
of symmetry will be zero.
2. Moments of inertia must always be positive. Products of inertia
may have either sign.
3. The sum of the three moments of inertia is invariant under
orientation change in the reference frame.
4. The eigenvalue of an inertia tensor are the principal moments
for the body. The associated eigenvectors are the principle
axes. Inertia tensor is always diagonal in the principle axes
coordinate system.

• Most manipulators have links whose geometry and composition


are somewhat complex, it is difficult to calculate in practice. A
pragmatic option is actually to measure rather than to calculate
the moment of inertia of each link by using a measuring device
(e.g., an inertia pendulum).
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

• For our robot manipulators, whose


link masses are constant, this
equation simplifies to
Dynamics - Newton-Euler Equations
Eular Equation

• For a rotating rigid body,


the moment that causes
an angular acceleration
is given by Euler’s equation

• For our robot manipulators, whose


link moment of inertia is constant,
this equation simplifies to

• The second term on the right will be


non-zero when the link’s angular
velocity vector is not coincident with
the link’s principle axis of inertia.
Dynamics - Newton-Euler Equations
• To solve the Newton and Euler equations, we’ll need to
develop mathematical terms for:

– The linear acceleration of the center of mass

– The angular acceleration

– The Inertia tensor (moment of inertia)


Newton-Euler Algorithm

In order to computer inertial forces acting on the links, it is necessary to


computer the rotational velocity and linear and rotational acceleration of
The center of mass of each link of the manipulator at any given instant.
Propagation of Acceleration - Angular
• To derive a general formula for the angular acceleration, we
will differentiation the angular velocity

(6.31)
• Applying the chain rule, we find:

S
Propagation of Acceleration - Angular
Matrix form
(Revolute Joint)

• Converting from matrix to vector form gives the angular


acceleration vector

Vector form
(6.32)
(Revolute Joint)

• If joint i+1 is prismatic, the angular terms are zero and the
above equation simplifies to:

Matrix form (6.32)


(Prismatic Joint)
Propagation of Acceleration - Linear
From (6.10), we have

• This equation can be written equivalently as:

General form (6.35)

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

Revolute Joint (6.34)


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:

(6.36)

• 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}
Iterative Newton-Euler Equations
Iterative Newton-Euler Equations
• The Newton and Euler equations are re-written for the
forces and moments at each link:

• Where {Ci} is a frame who has its origin at the link’s center
of mass and has the same orientation as the link frame {i}.
Iterative Newton-Euler Equations
• In addition to calculating the forces and torques arising from
link accelerations, we also need to account for how they
affect the neighbouring links as well as the end effectors
interactions with the environment

• Balancing the forces shown in the above figure, we can find the
total force and torque on each link.
Iterative Newton-Euler Equations

take the moment respect to the center of the mass


Iterative Newton-Euler Equations
Iterative Newton-Euler Equations
• Rearranging the force / torque equations so that they appear
as iterative relationship from higher number neighbour to lower
number neighbour. The total force and torque on each link.

• Compare with the same equation for the static conditions


Iterative Newton-Euler Equations
• The joint torque is simply the component of torque that
projects onto the joint axis (Z axis by definition)
Iterative Newton-Euler Equations
• For a robot moving in free space

• If the robot is contacting the environment, the forces/ torques


due to this contact may be included in the equations
Iterative Newton-Euler Equations -
Solution Procedure: (Revolute
Joint)
• Step 1 - Calculate the link velocities and accelerations
iteratively from the robot’s base to the end
effector
• Step 2 - Write the Newton and Euler equations for each
link.
Iterative Newton-Euler Equations -
Solution Procedure: (Revolute
Joint)
• Step 3 - Use the forces and torques generated by interacting
with the environment (that is, tools, work stations,
parts etc.) in calculating the joint torques from the
end effector to the robot’s base.
Iterative Newton-Euler Equations -
Solution Procedure
• Error Checking - Check the units of each term in the
resulting equations

• Gravity Effect - The effect of gravity can be included by


setting . This is the equivalent to
saying that the base of the robot is
accelerating upward at 1 g.

The result of this accelerating is the


same as accelerating all the links
individually as gravity does
Iterative Newton-Euler Equations - 2R
Robot Example
Example of closed-form dynamics
equations

• For uniform distributed mass:

• To include gravity forces:


Example of closed-form dynamics
equations
• The transformation between successive link frames is given
by
Example of closed-form dynamics
equations
•Outward iterations:

• Inertial force:
Example of closed-form dynamics
equations
•The outward iterations for link 1 are as follows: (i=0)
Example of closed-form dynamics
equations
Example of closed-form dynamics
equations
• The outward iterations for link 2 are as follows: (i=1)
Example of closed-form dynamics
equations
Example of closed-form dynamics
equations
• Inward iterations:

•Inward iterations for link 2 are as follows:


Example of closed-form dynamics
equations
•Inward iterations for link 1 are as follows:
Example of closed-form dynamics
equations
• Extracting the components of the , we find the joint
torques:

• The compact matrix form


Dynamic Equations - State Space
Equation

• It is often convenient to express the dynamic equations of


a manipulator in a single equation

Where

- Mass matrix (includes inertia terms) - nxn Matrix

- Centrifugal (square of joint velocity) and Coriolis (product of


two different joint velocities) terms - nx1 Vector

- gravitational terms - nx1 Vector.


Lagrangian formulation of manipulator
dynamics
• Newton-Euler formulation:
“force balance” approach

• Largrangian formulation:
an “energy-based” approach

• Of course, for the same manipulator, both will give the same
equations of motion.

• Our statement of Largrangian dynamics will be brief and


somewhat specialized to case of a serial chain mechanical
manipulator with rigid links.
Lagrangian formulation of manipulator
dynamics
• In our notation, the Largarngian of a manipulator is

where

is the total kinetic energy of the manipulator,

is the total potential energy of the manipulator.

• Kinetic energy is positive and scalar value. The total energy


of the manipulator is the sum of the energy in the individual
links. Kinetic energy is independent to the coordinate
system, while as the potential energy is depending on
reference coordinate system.
Kinetic Energy

Total Kinetic Energy


Kinetic Energy

• Kinetic Energy
Quadratic Form of
Generalized Velocities
Kinetic Energy

0
J vi = 0i RJ vi 0
J viT 0 J vi =( 0i RJ vi )T 0i RJ vi = J viT 0i R T 0i RJ vi = J viT J vi
Kinetic Energy
Kinetic Energy
Mass matrix of the manipulator
• The kinetic energy of a manipulator is given by

M(Θ) is the n×n mass matrix of the manipulator

• The total kinetic energy must always be positive. So the


manipulator mass matrix must be a so-called positive
definite matrix.
• Positive definite matrices are those with the property
that their quadratic form is always a positive scalar.
Kinetic energy in different frames
1 0 T0 1
K tran _ i = mi Vi Vi = mi iViT iVi
2 2
T 0
Vi =
0 0 i
i R Vi ⇒ 0
V i Vi = iViT 0i RT 0i R iVi = iViT iVi
1i T i 10 T0 0
K rot _ i = ωi I Ci ωi = ωi I Ci ωi
2 2
0
ωi = 0i R iωi I Ci = 0i RT 0 I Ci 0i R
i
ωi = 0i R 0ωi = 0i R T 0ωi 0
I Ci = 0i RI Ci 0i R T
Potential Energy

uref - is a constant chosen so that the minimum value


of ui is zero.
u u ∂P
Gj = = ∑ i − ∑ ( mi g T ci )
Gravity Vector ∂q j ∂q j ∂q j
Lagrange Equations
• The equation of motion for the manipulator are then given by

τ is the n×1 vector of actuator torques

is the total kinetic energy of the manipulator,


u(Θ) is the total potential energy of the manipulator
Five Steps to Obtain Lagrangian
Formulation of Manipulator Dynamics
1. Define a set of generalized coordinates for i=1,2,3…N.
These coordinates can be chosen arbitrarily as long as
they provide a set of independent variables that map
the system in a 1-to-1 manner. The usual variable set
for serial manipulators is:

2. Define a set of generalized velocities for i=1,2,3…N

3. Define a set of generalized forces (and moments) for


i=1,2,3…N
Five Steps to Obtain Lagrangian
Formulation of Manipulator Dynamics
• The generalized forces must satisfy

Where

δΘi --is a small change in the generalized coordinate and

δW --is the work done corresponding to that small change.


Five Steps to Obtain Lagrangian
Formulation of Manipulator Dynamics
4. Write the equations describing the kinetic and potential
energies as functions of the generalized coordinates as
well as the resulting Lagrangian.

• In case, there is spring involving:

Let L denote the Lagrangian given by


Five Steps to Obtain Lagrangian
Formulation of Manipulator Dynamics
5. The equations of motion are given by

• or,

• or in the component form as


Example 6.5 Lagrangian Formulation of
a PR Manipulator
Known parameters:

, d2,

• Generalized Variables: θ1,d2,


X1
• Generalized Forces: τ 1, f2
Example 6.5 Lagrangian Formulation of
a PR Manipulator
• By definition, the inertia tensors:

• Joint Velocities and kinetic energy


Example 6.5 Lagrangian Formulation of
a PR Manipulator
Example 6.5 Lagrangian Formulation of
a PR Manipulator

• Kinetic energy
of link i

• Total kinetic
energy
Example 6.5 Lagrangian Formulation of
a PR Manipulator
• Potential energy of links

• For i=1

• For i=2

is the maximum extension of joint 2.

• Total potential energy


Example 6.5 Lagrangian Formulation of
a PR Manipulator
•The partial derivatives of the energy of the manipulator
Example 6.5 Lagrangian Formulation of
a PR Manipulator
• The compact matrix form is
Mass Matrix –geometric approach

direct differentiation of the vectors:

• In frarme {0}, these


matrix are

• This yields
Mass Matrix
The matrices and are given by
i
ω c = iJ ω θ&

Joint 1 is revolute and joint 2 is prismatic: ( θ&2 = 0 )

⎡ I yy2 0⎤
1 T 1
(J I J )= J
1
ω2 c2 ω2
1 T 2
ω2 1
T2
R I 2
c2 1 R Jω 2 = ⎢
1

⎣ 0 0⎦

Finally,
Lagrangian Formulation –2R Robot
Example
Lagrangian Formulation –2R Robot
Example

1 ⎡0 0⎤
J T
I J J = ⎢
0 ⎥⎦
ω1 c1 ω1 ω 1
2 ⎣1
Lagrangian Formulation –2R Robot
Example

Geometric
Approach---
direct projection

1 T ⎡0 0⎤
J ω2 I c 2 J ω2 J ω2 = ⎢
2 ⎣1 1 ⎥⎦

⎡0⎤ ⎡ 0 ⎤ ⎡0 0⎤ &
⎢ ⎥ ⎢ ⎥ ⎡θ&1 ⎤ ⎢ ⎡θ ⎤
ω2 = 0 = 0 = J ω 2 q& = J ω 2 ⎢ ⎥ = 0 0⎥ ⎢ 1 ⎥
⎢ ⎥ ⎢ ⎥ & ⎢ ⎥ &
⎢⎣ω2 ⎥⎦ ⎢⎣θ&1 + θ&2 ⎥⎦ ⎣θ 2 ⎦ ⎢1 1⎥ ⎣θ 2 ⎦
⎣ ⎦
Lagrangian Formulation –2R Robot
Example
Lagrangian Formulation –2R Robot
Example
Lagrangian Formulation –
2R Robot Example
Inclusion of non-rigid body effects
• It is important to realize that the dynamic equations we have
derived do not encompass all the effects acting on a
manipulator. They include just those forces which arise from
rigid body mechanics. The most important source of forces
that are not included is friction.

• All mechanisms are, of course, affected by frictional forces.


In present day manipulators in which significant gearing is
typical, the forces due to friction can actually be quite large--
- perhaps equaling 25% of the torque required to move the
manipulator in typical situations.

• In order to make dynamic equations reflect the reality of the


physical device, it is important to model (at least
approximately) these forces of friction.

• For simplicity, two types of frictional model are given in this


section: viscous friction and Coulomb friction.
Inclusion of non-rigid body effects
• Viscous friction: the torque due to friction is
proportional to the velocity of joint motion.
Thus we have

where v is a viscous friction constant.

• Coulomb friction: is constant except for a sign


dependence on the joint velocity:

where c is a Coulomb friction constant, and,

c1 is the static coefficient and larger that c2,


the dynamics coefficient.
Inclusion of non-rigid body effects
• A reasonable model is combining both:

- It turns out that in many manipulator joints, friction


also displays a dependence on the joint position.
- A major cause of this effect might be gears which
are not perfectly round—their eccentricity would
cause friction to change according to joint position.

• So a fairly complex friction model would be have the form

Hence,

• There are other effects which are also neglected in this model.
• However, these effects are extremely difficult to model, such as
the bending effects of the non-rigid link, and are beyond the
scope of this course.
Dynamic simulation
• Simulate the motion of a manipulator requires
solving the dynamic equation for acceleration:

• Several known numerical integration techniques can be


used to integrate the acceleration to compute future
positions and velocities.

Give initial conditions on the motion of the manipulator,


usually in the form:

• Numerically integrate forward in time by step size Δt.


Dynamic simulation
• Euler integration (the simplest integration scheme):

Starting with t=0, iteratively compute:

ending with for a given input function

The selection of Δt :

• It should be sufficiently small that breaking continuous


time into these small increments is a reasonable approximation.
• It should be sufficiently large that an excessive amount
of computer time is not required to compute a simulation.

Vous aimerez peut-être aussi