Dynamics of Robot Manipulators

Download Report

Transcript Dynamics of Robot Manipulators

Dynamics of Robot
Manipulators
Purpose:
This chapter introduces the dynamics of mechanisms. A robot
can be treated as a set of linked rigid bodies. Each link body
experiences the motion dynamics contributed by its own joint
motor plus the cumulative effect of the other links that form a
dynamic chain. This means that we must recursively accumulate
the net dynamics by moving from one link to the next. This
approach is referred to as the Newton-Euler recursive equations.
The equation types are distinguished as Newton for force
equations and as Euler for moment equations.
ME 537 - Robotics
ME EN 537 - Robotics
In particular, you will
1. Review the fundamental force and moment equations for
rigid bodies.
2. Determine that the moment of forces applied to a rigid
body is the rate of change of angular momentum if taken
about the body’s center of mass or about an inertial point.
3. Apply Newton-Euler recursive equations for the connected
rigid links of a mechanism.
4. Understand that forward recursion is used to propagate
motion through the links, while backward recursion is
used to propagate forces and torques through the links.
ME 537 - Robotics
ME EN 537 - Robotics
Review of fundamental equations
Given a system of particles
translating through space,
each particle i being acted
upon by external force Fi, and
each particle located relative
to an inertial reference frame,
the governing equations are
Fc = m ac

M= H

M =H
c
Z
Fi
ME 537 - Robotics
ME EN 537 - Robotics
mi
•
•
XYZ inertial
•
rc
mn
•
cm
ri
•m1
• m2
Y
X
What is an inertial
frame?
c
"system"
mi + 1
(6.10)
(6.11)
(6.12)
Review of fundamental equations
where
m = total mass (sum over all mass particles)
ac = acceleration of center of mass (cm) of all mass particles
Fc = sum of external forces applied to system of particles as if applied at cm
Hi = ri x mivi = angular momentum of particle i (also called moment
of momentum)
H, Hc = angular momentum summed over all particles, measured about
inertial point, cm point, respectively
M, Mc = moment of all external forces applied to system of particles,
measured about inertial point, cm point, respectively
ME 537 - Robotics
ME EN 537 - Robotics
Rigid bodies in general motion
(translating and rotating)
The time rate of change of any
vector V capable of being viewed
in either XYZ or xyz is
z
w
a
y
Z
[ dV
]
dt
[ ]
dV
=
XYZ
dt
xyz
+wxV
x
Y
where w is the angular velocity of
a secondary translating, rotating
reference frame (xyz).
ME 537 - Robotics
ME EN 537 - Robotics
X
Rigid bodies in general motion
(translating and rotating)
Another common form of the
equation is:
 = V
r+wxV
V
z
w
a
y
Z
(6.13)
x
and when applied to rate of change
of angular momentum becomes
Y
X
 = H
 r + w x H (6.16)
M= H
which is referred to as Euler’s equation.
ME 537 - Robotics
ME EN 537 - Robotics
Rotating rigid body
z
By integrating the motion over the
rigid body, we can express the
angular momentum relative
to the xyz axes as
H = Hx i + Hy j + Hz k
moments
=
w
dm =  d dV
•
 or r
P
y
x
products
(Jxx wx + Jxy wy + Jxz wz) i
+ (Jyx wx + Jyy wy + Jyz wz) j
or in matrix form
H= Jw
+ (Jzx wx + Jzy wy + Jzz wz) k (6.20) where J = inertia matrix
ME 537 - Robotics
ME EN 537 - Robotics
Rotating rigid body
Taking the derivative of (6.20) and substituting into (6.16), also
assuming the body axes to be aligned with the principal axes, we
get Euler’s moment equations:
 x + (Jzz - Jyy) wy wz
Mx = Jxx w
(6.29a)
 y + (Jxx - Jzz) wx wz
My = Jyy w
(6.29b)
 z + (Jyy - Jxx) wx wy
Mz = Jzz w
(6.29c)
What are principal axes?
ME 537 - Robotics
ME EN 537 - Robotics
Acceleration relative to a noninertial reference frame
a
w
P
z
Z

r
R
x
Y
X
ME 537 - Robotics
ME EN 537 - Robotics
y
Acceleration relative to a noninertial reference frame
By taking two derivatives and applying (6.13) appropriately, the
absolute acceleration of point P can be shown to be
 + a x  + w x (w x ) + 
r+ 2 w x  r
a = r  R
where
 = acceleration of xyz origin
R
a x  = tangential acceleration
w x (w x ) = centripetal acceleration
r = acceleration of P relative to xyz

2 w x  r = Coriolis acceleration
ME 537 - Robotics
ME EN 537 - Robotics
(6.31)
Acceleration relative to a noninertial reference frame
For the special case of xyz fixed to rigid body and P a point
r   r  0 and (6.31) reduces to
in the body, 
 + a x  + w x (w x )
a = r  R
(6.32)
If P at cm, then
 + a x c + w x (w x c)
ac = R
ME 537 - Robotics
ME EN 537 - Robotics
(6.33)
Recursive Newton-Euler Equations
(forward recursion for motion)
z i+1
w i+1
zi
Joint i
Oi+1
xi+1
pi
wi
xi
Link i
pi+1
•
s i+1
Joint i+1
y i+1
Zo
Xo
ai + 1
Oi
yi
pi+1 = s i+1 + pi
Yo
Use Craig/Red D-H form
ME 537 - Robotics
ME EN 537 - Robotics
Recursive Newton-Euler Equations
If vi = pi and wi is defined to be the angular velocity of the
ith joint frame xi yi zi with respect to base coordinates, then
*
where si  1 describes the velocity of xi+1, yi+1, zi+1 relative to
an observer in frame xi, yi, zi.
ME 537 - Robotics
ME EN 537 - Robotics
Recursive Newton-Euler Equations
Likewise, the acceleration v i  1 becomes
Defining wi+1 to be the absolute angular velocity of the i+1
*
frame and wi  1 to be the angular velocity of the i+1 frame
relative to the ith frame:
ME 537 - Robotics
ME EN 537 - Robotics
Recursive Newton-Euler Equations
Taking one more derivative for angular acceleration:
ME 537 - Robotics
ME EN 537 - Robotics
Recursive Newton-Euler Equations
Now applying the DH coordinate representation for
manipulators:
ME 537 - Robotics
ME EN 537 - Robotics
Recursive Newton-Euler Equations
Using the previous equations, we can generate the angular
motion recursive equations:
ME 537 - Robotics
ME EN 537 - Robotics
Recursive Newton-Euler Equations
The linear velocity and acceleration equations use the D-H
forms:
where d i+1 is the translational velocity of xi+1, yi+1, zi+1
relative to xi , yi , zi
ME 537 - Robotics
ME EN 537 - Robotics
Recursive Newton-Euler Equations
Substituting (6.59) – (6.62), we get the velocity and
acceleration recursion equations:
Note that wi+1 = wi for translational link i+1.
ME 537 - Robotics
ME EN 537 - Robotics
Recursive Newton-Euler Equations
(backward recursion for forces and torques)
Joint i+1
w
.
w
Link i
F
i
c
i
Ni
w*i
,
z
i
pi
Zo
r
i
Yo
Xo
ME 537 - Robotics
ME EN 537 - Robotics
i
i
zi+1
Recursive Newton-Euler Equations
(backward recursion for forces and torques)
f i+1
ni+1
Link i
fi
ni
Joint Forces/Torques
ME 537 - Robotics
ME EN 537 - Robotics
Recursive Newton-Euler Equations
Define the terms:
mi = mass of link i
ri = position of link i cm with respect to base coordinates
Fi = total force exerted on link i
Ni = total moment "
" " " *
Ji = inertia matrix of link i about its cm
determined in the Xo Yo Zo axes
fi = force exerted on link i by link i-1
ni = moment "
"
"
“
ME 537 - Robotics
ME EN 537 - Robotics
Recursive Newton-Euler Equations
For each link we must apply the N-E equations:
The gravitational acceleration and damping torques will be
added to the equations of motion later.
ME 537 - Robotics
ME EN 537 - Robotics
Recursive Newton-Euler Equations
Now r i is easily calculated by knowing the acceleration of the
origin of the ith frame attached to link i at joint i. We locate
link i cm with respect to xi yi zi by ci such that ri = ci + pi.
The velocity of the cm of link i is obviously
ME 537 - Robotics
ME EN 537 - Robotics
Recursive Newton-Euler Equations
To determine Fi and Ni define
fi = force exerted on link i by link i-1
ni = moment "
"
"
“
Then
and
Fi = fi – fi+1
(6.71)
Ni = ni – ni+1 + (pi - ri ) x fi - (pi+1 - ri ) x fi+1
(6.72)
= ni – ni+1 - ci x Fi – si+1 x fi+1
ME 537 - Robotics
ME EN 537 - Robotics
Recursive Newton-Euler Equations
The previous equations can be placed in the backwards
recursion form to work from the forces/moments exerted on
the hand backwards to the joint torques necessary to react to
these hand interactions and move the manipulator:
fi = fi+1 + Fi
(6.74)
ni = ni+1 + ci x Fi + si+1 x fi+1 + Ni
(6.75)
ME 537 - Robotics
ME EN 537 - Robotics
Recursive Newton-Euler Equations
The motor torque ti required at joint i is the sum of the joint
torque ni resolved along the revolute axis plus the damping
torque,
ti = ni ˙ zi + bi  i
(revolute)
(6.76a)
where bi is the damping coefficient.
For a translational joint
ti = li fi ˙zi + bi d i
where li is the torque arm for motor i.
ME 537 - Robotics
ME EN 537 - Robotics
(translational)
(6.77a)
And what about gravity?
The effect of gravity on each link is accounted for by applying
a base acceleration equal to gravity to the base frame of the
robot: v o = g zo with zo vertical. v o is applied to the base link in
equations (6.65) and (6.66) for i = 0 and this serves to transmit
the acceleration of gravity to each link by recursion.
ME 537 - Robotics
ME EN 537 - Robotics
There are two basic problems with
the derivation so far. What are they?
Problem 1 - Ji in (6.68) when resolved into base coordinates is a
function of manipulator configuration. To avoid this
unnecessary complexity, we apply the equations at the cm of
each link where Ji is constant.
Problem 2 – The recursive relations have not resolved the
various vectors from one joint frame to the next. We must
adjust the equations accordingly.
ME 537 - Robotics
ME EN 537 - Robotics
Do we use the full homogeneous
transformation in the recursive
equations?
We resolve the free vectors by applying the rotational submatrix of the D-H transformations for each joint frame to the
recursive vectors, using the Craig/Red D-H representation. Let
us also use Tsai’s notation.
joint frame i+1 relative to joint frame i:
joint frame i relative to joint frame i+1:
ME 537 - Robotics
ME EN 537 - Robotics
i
R i 1
i 1
Ri
Revised angular motion equations
Do you notice anything about the form of the D-H
rotational sub-matrix?
ME 537 - Robotics
ME EN 537 - Robotics
Revised linear motion equations
ME 537 - Robotics
ME EN 537 - Robotics
Revised force and torque equations
ME 537 - Robotics
ME EN 537 - Robotics
Dynamics summary
The N-E equations are applied recursively to generate the
forces and torques at each joint motor. We first apply forward
recursion to get the motion state for each link. We then use
this motion state to propagate the forces and torques in
backward recursion to each joint. The rotational sub-matrix
of the D-H transformations must be applied to resolve the
vectors correctly into each link’s joint frame .
ME 537 - Robotics
ME EN 537 - Robotics