Dynamic analysis and control of a Stewart Platform kinematics, dynamics
Transcript of Dynamic analysis and control of a Stewart Platform kinematics, dynamics
-
7/23/2019 Dynamic analysis and control of a Stewart Platform kinematics, dynamics
1/27
Dynamic Analysis and Control of a
Stewart Platform Manipu lator
G. Lebret,
K.
Liu,' and
F.
L. Lewis
Automat ion
&
Robot ics Research Inst i tute
The University
of
Texas at A rl ington
7300
Jack Newel1 Blvd., S.
Fort Worth,
TX
76118
Received May
3,
1992; accepted October
20,
1992
The Stewart platform is a six-axis parallel robot manipulator with a force-to-weight ratio
and positioning accuracy
far
exceeding that of a conventional serial-link arm. Its stiff-
ness and accuracy approach that of a machine tool yet its workspace dexterity ap-
proaches that of a conventional manipulator. In this article, we study the dynamic
equations
of
the Stewart platform manipulator. Our derivation is closed to that of
Nguyen and Pooran because the dynamics are not explicitly given but are in a step-by-
step algorithm. However, we give some insight into the structure and properties of these
equations:
We
obtain compact expressions of some coefficients. These expressions
should be interesting from a control point of view. A stiffness control scheme is de-
signed
for
milling application. Some path-planning notions are discussed that take into
account singularity positions and the required task. The objective is to make the milling
station into a semiautonomous robotic tool needing some operator interaction but hav-
ing some intelligence of its own. It should interface naturally with part delivery and
other higher-level tasks.
0
1993
John Wiley Sons,
Inc.
*Addressee
for
all correspondence.
Journal
of
Robotic
Systems 10(5), 629-655 (1993).
0
1993
by John Wiley & Sons, Inc.
CCC
0741 2223/93/050629-027
-
7/23/2019 Dynamic analysis and control of a Stewart Platform kinematics, dynamics
2/27
630
Jou rnal of
Robot ic
Systems-1
993
1. INTRODUCTION
The Stewart platform manipulator is a parallel kinematic linkage system that
has major mechanical differences from typical serial link robots. In this re-
search, interest focuses on configuration offers the following significant advan-
tages when applied as a manufacturing manipulator:
(1)
Major components of
actuation forces are usually additive; (2) actuator position errors are not addi-
tive.
The Stewart platform manipulator appears simple and refined to the point of
elegance. However, the same closed kinematics that provide mechanical stiff-
ness also present an extremely difficult theoretical problem for forward kine-
matics analysis. This problem has blocked the development of a practical con-
trol algorithm capable of real-time trajectory generation, a necessity for
application of the manipulator.
Much effort has been devoted to finding an efficient algorithm for giving an
accurate kinematic solution since this kind of platform was proposed by
Stewart' in 1965. In Lee and Shah,2 the kinematic behavior of a three-link,
three-degrees-of-freedom (do0 platform was investigated. Though this re-
search gave the reader a clear geometric background, the 3-dof nature of the
device (two for orientation and one for position) limits its application. In Fich-
ter,3 he kinematic behavior of a 6-dof Stewart platform was studied. To solve
for the position of the upper platform in terms of the given link lengths, 30
nonlinear algebraic equations must be solved simultaneously. Due to the time-
consuming nature of this procedure, it is impossible to compute the kinematic
solutions on-line. In Waldron et aL4 and Nanua et aI.,s similar efforts have been
made. Instead of solving 30 equations, a 24th-order polynomial4or a 16th-order
polynomial5 in a single variable must be solved. Not to mention the computa-
tional complexity involved in solving such high-order polynomials, the multiple
solutions alone (there may exist up to 64 solutions) make this a difficult ap-
proach to use practically.
Liu et aL6 proposed a simple algorithm that involves solving only three
nonlinear algebraic equations. This algorithm provides not only a simpler kine-
matics analysis approach but also a relatively simpler approach to deal with the
Jacobian matrix and singularities.
In Liu et aL6 and this article interest focuses on the Stewart platform config-
uration, which consists of
a
semiregular hexagonal lower platform, an equilat-
eral triangular upper platform, and six identical linear actuators as shown in
Figure
1.
The detailed forward and inverse kinematics are in Liu et aL6 In this
article, we concentrate our effort upon the dynamics of the Stewart platform
based on our previous work on the kinematics and Jacobian. Then, we present
some potential applications of the Stewart platform manipulator in manufactur-
ing systems.
In general, there exists a duality between parallel robots and serial linkage
robots. For
a
6-dof Stewart platform, the complexity of the forward kinematics
has to be compared with that of the direct kinematics of the serial robot and, on
the contrary, inverse kinematics are as easy as the forward kinematics of a
-
7/23/2019 Dynamic analysis and control of a Stewart Platform kinematics, dynamics
3/27
Lebret,
Liu,
and Lewis: Stewart Platform Dynamics Analysis
631
Figure
1. Stewart platform geometry.
serial robot arm. The same remark can be made about the study of the direct
and inverse Ja~obian.~,
As far as the dynamics are concerned, some articles*.9 how the complexity
of this study. In the first, a Newton-Euler approach is used. In the second, the
Lagrange formulation is used. In this research, we also use Lagrange formula-
tion. However, we are more interested in the structure and properties of the
dynamics. Indeed, our aim here is to give more insight into the different coeffi-
cient of the dynamic equations and more precisely into the inertia matrix [M(q)
in
(4)j. We will show how it is related to the Jacobians defined
in
Liu et al.OThe
reason for this development is that a good knowledge of these terms is useful
for the study of adequate control schemes. For example, only a particular
factorization of the Coriolis and centrifugal terms
[V(q,$
in (4)] eads to the
well-known skew-symmetric relation used in the proof of the convergence of
several robust and adaptive In the same way, we hope that the de-
scription of the matrix M(q) will allow us to use some concepts like imaginary
robot developed by Gu and Loh.I4 This theory is based on a factorization of
the inertia matrix using Jacobians.
As a manufacturing manipulator, the Stewart platform has great potential to
be applied for the automation of many light machining applications such as
surface finishing, edge finishing, routing, and profile milling. New manipulator
applications to manufacturing processes requiring high-force and -power out-
put such as combined assembly pressing are also possible. Therefore, in section
4 the potential applicationsof the Stewart platform in the manufacturing indus-
try are discussed. As a special application, we will study the stiffness control
in
the milling process.
The milling machine is one of the most important machining tools used in
todays manufacturing industry. It can be used to process either the tools or the
parts. Due to its ability to quickly cut material and accurately follow contours,
the milling machine is used to machine small pieces such as helical gear or
-
7/23/2019 Dynamic analysis and control of a Stewart Platform kinematics, dynamics
4/27
632 Journal of Robot ic Systems-1993
large-scale parts such as cylinder heads for an oceangoing freighter. However,
because
in
general the cutter has only
2 or 3
dof to process a complex work
several configuration adjustments of the cutter, table, and fixture must be made
to let the combination of the movements meet the desired contour. In some
cases, a special fixture must even be designed to meet a specific need.
Another problem in milling is the shock that may occur when teeth on a
cutter make contact with the work. To minimize the effects of shock and give a
smoother cutting action, the cutter holder the spindle) must be very cumber-
some and powerful.
The Stewart-platform-based manipulator (SPBM) as some innate merits
that make it suitable for milling actions. Its link ends are simply supported,
making it far more rigid in proportion to size and weight than any serial link
robot. Furthermore, its links are arranged
so
that major force components of all
six prismatic joints may add together, yielding a ratio of force-output-to-manip-
ulator-weight more than one order of magnitude greater than most industrial
robots. The closed kinematic chain and parallel linkage structure not only give
the
SPBM
great rigidity and a high force-to-weight ratio but also provide the
capability of improved accuracy over serial link robots because the parallel link
positioning errors are distributed, not cumulative.
2.
NOTATIONS
To introduce the notations, we first briefly summarize the approach used in
Section
3
to derive the dynamic equations, Then, we describe the different
frames and coordinates needed to modelize the robot.
Procedures using the Lagrange formulation are
1.
Calculate the kinetic energy K)nd potential energy
P)
s a function of
the generalized coordinate q :
(1)
P = P q)
where P(q) E
53
(2)
1
K
=
K q,Q) =
2 QTM(q)Q
where
q E
3
and M
E R n x n
2.
Develop the Lagrange equations using
where 7 is the torque
or
force to apply to the body.
This finally yields the dynamic equations in the standard form:
-
7/23/2019 Dynamic analysis and control of a Stewart Platform kinematics, dynamics
5/27
Lebret, Liu, and Lewis: Stewart Platform Dynamics Analysis
633
The inertia matrix
M(q)
is directly given by the expression of the kinetic
energy K(q,$. The gravity term is obtained from the potential energy P(q) by
G(q) =
aP(q)/aq. However, the Coriolis and centrifugal term (V(q,$ E R n ) s
not
so
easy to express.
2.1.
Corio l is
and Centrifugal Term V(q,a)
Using the Christoffel symbols
[Cu&(q);
ee ref.
121, V(q,q)
can be obtained by
v(q,qIk=
e (eC,qi)C
fork = 1,
. . . ,
6
j i
with
This is the most practical expression to compute the Coriolis and centrifugal
term
V(q,q)
for a numerical application. But, for a theoretical study the de-
scription of Koditschek" is also interesting:
where
V,,,(q,q)
is an
n x n )
matrix that can be expressed by
Here,
U
s a matrix obtained from M(q) and 4 by the following relation, where
@ represents the Kronecker product:
with
-
7/23/2019 Dynamic analysis and control of a Stewart Platform kinematics, dynamics
6/27
634
Journal
of
Robotic Systems-1 993
Remark
1
The equivalence of the two descriptions can be understood from the rela-
tions
The skew-symmetric property commonly used (see refs.
12
and
13) in
the
Rroof of the convergence of several control laws is easy to derive from
(8):
M - 2V,,
=
UM -
UL
is a skew-symmetric matrix.
2.2. Frames and Coo rdinates Asso ciated with the Robot
In our study, we will use the following notations to modelize the parallel
robot. Referring to Figure 1, fix an inertial frame X, ,Z) at the center
0)
f
the lower platform with the Z-axis pointing vertically upward. Fix another
moving coordinate system (x,y,z) at the center of gravity of the upper platform
with the z-axis normal to the platform, pointing outward. In the sequel, these
two coordinate systems are called the
BASE
or fixed frame (ff)and the TOP or
moving from (mf). The physical dimensions of the lower and upper platforms
and the coordinates of their vertices
in
terms of the
BASE
frame or the TOP
frame are shown in Figure 2.
To
specify the configuration of the 6-dof Stewart platform, six independent
position-orientation variables are needed. Denote the location of the origin of
-4
+
1
X
Figure2. Physical
dimensions
Y
of
base
and top.
-
7/23/2019 Dynamic analysis and control of a Stewart Platform kinematics, dynamics
7/27
Lebret,
Liu, and
Lewis: Stewart
Platform Dynam ics Analysis
635
1
unity
approach vector
Y
Figure
3.
Rotation
angles.
the TOP frame with respect to the BASE frame
[ p x , p y , p z l T .
The orientation is
not defined by the standard Euler angles but by rotating the
TOP
fram e first
about the fixed X-axis by a degrees, then about the fixed Y-axis by
p
degrees,
and finally about the z-axis by y degrees (Fig. 3).
All
angles are m easured in the
right-handed sense. We will denote R x ( a ) , R y ( p ) , and R , ( y ) the three matrices
that represent these basic rotations.
1
R , ( y ) =
P 0 SP
-sp
0 cp
c y
- s y
0
0 0 1
(13)
This definition of orientation not only gives
us
a clear physical meaning but
also avoids violating the o ne-to-one relationship between the system configura-
tion
and the value of Xpp0,hich may cause the Jacobian matrix to lose its rank
even if the system is not in a singular position (see ref.
10).
Thu s, the position and orientation of the upp er platform is specified by the
Cartesian coordinates
XP- ,
[ p x , p ~ , p z , a , p , y I ~ .
Other notations will be introduced in the text. Just note that to make clearer
t h e reading we will differentiate a vector from
a
scalar by adding an arrow and
will denote the scalar product of two vec tors u and v either by u *
v'
o r iTv u
will be the module of 6).
3.
DYNA MIC EQUATIONS OF THE STEWART PLATFORM
As noted in Section 1, there exists a duality between serial and parallel
robots. It app ears here in the fact that the dynam ic equations are less difficult to
obtain in the Cartesian spa ce than in the joint space. Thus, o ne see ks the
-
7/23/2019 Dynamic analysis and control of a Stewart Platform kinematics, dynamics
8/27
636
Jou rnai of
Robotic Systems-1993
equations
M(X,.,-,)X,,-, +
Vm(Xp-,,X,,-,)Xp-,G X,-,) =
J*(X,,-,)T
(14)
The notations are the same than in eq.
(4);
we just replace the joint coordi-
nates q by the Cartesian coordinates X,,-()nd as a consequence replace the
torque
T
by the force
J
* X,,-,)T. T = V; fiA
,f4,fs ,fs] ,
where is the force
applied in the actuator of the leg Legi. Note that the Jacobian ( J ) that
is
introduced here, and more generally for parallel robots,
is
the classical
in-
verse Jacobian (of serial robot). This explains why we have here J * and not
J-*, as is the case for serial robots.
In the following, we divide the robot into two subsystems: the upper platform
and the six legs. We compute the kinetic energy and the potential energy for
both of these subsystems and then derive the global dynamic equations.
3.1. Kin etic and Poten tial Energies
3.1.1. Kinetic and Potential Energies
of
the Upper Platform
The characteristics of the upper platform (up) are
mass m u .
tensor of inertia
in
the moving frame l(d).
angular velocity in the fixed frame
f l u p ( ~ )
Kinetic energy
of
the upper platform. The kinetic energy (Kup) an be di-
vided into two terms:
Let
Translational energy. Energy of the center of mass when one considers
that the entire mass of the platform is concentrated there:
Rotational energy. Energy of the body due to the rotation around its center
of mass:
us develop the last expression.
The tensor of inertia O(m has a simple form in the moving frame
O(,,,f)
= 0 Iy 0
.
Given the definition of the angles a, p and y , the
[ I
-
7/23/2019 Dynamic analysis and control of a Stewart Platform kinematics, dynamics
9/27
Lebret, Liu, and Lewis: Stewart Platform Dynamics Analysis
angular velocity fiUp fi)of the upper platform is
or
CP 0
S P
- s p
0
cp
fiup(ff,
= ([
0 1 0
:
, j +
0 0 0
, :
:]
0 0 0
637
(17)
+ ['
C a
-saI[:
3
:
(18)
Sa
ca
0 0 1
In the moving frame,
it
is defined by
f iup mf) = R, y)TRx a)rRy P)r
iup fi).
Thus,
we obtain
1
Kupbt ) = 5
ci
IxC2y
+ f y S 2 y 1,
- y ) C a C y S y
0
0
-1zS2a
I Z
( f x - f y ) C a C y S y C 2 a ( l x S 2 y + ZyC2y) + fzS*a
- f z s 2 a ]
[i]
[
[
(19)
Finally, we can write the total kinetic energy o f the upper platform in a compact
form as follows:
Result 1
or
K,, =
2
m u
0
0
0 m ,
0
0 0
m ,
0 0 0
0 0 0
0 0 0
Potential energy of the upper platform
-
7/23/2019 Dynamic analysis and control of a Stewart Platform kinematics, dynamics
10/27
638 Journal of
Robot ic
Systems-1993
Result
2
Pup
= mu
p z
= [0 0
mug 0
O]Xp-o
(21)
where
g
is the gravity
3.1.2.
Kinet ic and Potent ial Energies of the Six Legs
A precise study of the dynamics of the legs should require a decomposition
into two parts: the fixed part (to the base) and the moving part (see Fig. 1). And,
we should consider them as two bodies with their own inertia. However, this
will lead to a complex form ulation.
As
a simplified yet still accurate model, we
will consider that each leg can be represen ted by a m oving point (its cen ter of
mass
Gi)
and assume that the mass is concentrated there. This takes into
account the motion of the center of gravity due
to
the change in leg actuator
length.
No te the following specification of a leg (Legi
i = 1, . . . ,
6) The ce nter of
mass
GI;
of the fixed part is not in the middle of the body due to the great mass
of the DC motor (see Fig.
4).
Let us denote by lI and
rnl
the length and the
mass, respectively, of this part and 6 he distance B,Gli.On the contrary, the
moving part of each ac tuato r is uniform. Its center
of
mass Gzi is in its middle.
Let us denote 12 and
m2
the length and m ass, respectively, of this second part.
Denote by
i
the unitary vector that gives the direction of a leg (I;i
=
m,/
Bi7j)-wherej
=
i
+
1)/2
if
i
is odd a n d j
=
i / 2
if
i
is even ). Finally,
Li
is the
total length of the leg Legi (note that this is a function of the time; its time
derivative will be noted
i i ) .
Figure
4. Leg
of
the
Stewart platform.
-
7/23/2019 Dynamic analysis and control of a Stewart Platform kinematics, dynamics
11/27
Lebret, Liu, and Lewis: Stewart Platform Dynamics Analysis
639
To obtain the kinetic and potential energies of a leg (Legi
=
1 , .
. . ,
6) we
need to determine the position and velocity of its center of mass
Gi :
The velocity vG, f the center of mass G ; is then
1
i
+
1)/2
if
i
is odd
where
= i / 2
if
i
is even
Note that
Kinetic energy
of
the legs. Because a leg is just modeled by one point, one
can write
Note that v, *
Ci)CJT VC
- (vq GJC;)
=
0; thus, after some calculations one
obtains
-
7/23/2019 Dynamic analysis and control of a Stewart Platform kinematics, dynamics
12/27
640
Let
us
denote
hi =
(-
+
L;
mI
+
m2
Then:
Result 3
Journal
of Robotic Systems-1
993
1)/2 if i is odd
(29)
if i
is even
where
Remark 2. One can also write
Remember that
is
the vector that gives the direction of the leg
i.
Thus, if
qT
s the velocity of the end of the leg,
* ; t i j
corresponds to the speed of the
elongation of the leg, that
is =
dL;/dt. As a consequence, K L , can be
divided into two parts with a physical meaning as follows:
The kinetic energy due to the rotation around the f ix point B; of the leg (if
one supposes that the length of the leg is constant), given by
The kinetic energy due to the elongation (or the translation motion) of the
leg (if one supposes that the direction of the leg is constant), given by
Let us now give a compact expression for the kinetic energy of the six legs.
For
this, note that one can write
r
hi 0
0
0 hi 0
0
0
hi
(33)
-
7/23/2019 Dynamic analysis and control of a Stewart Platform kinematics, dynamics
13/27
Lebret, Liu, and Lewis: Stewart Platform Dynamic s Analysis
w
Hence
-
hi
+
h,
0
0 hj + hz
0 0
-
where
and
K =
k l O O O
O k 2 O O
O O k 3 O
0
0
hi + h2
h3 +
h4
0 0
0 h3 + h,
0
0 0 h3
+
h,
T
K
h5
+ h6
0
0
with
1
0
0
h5 +
h,
64 1
(34)
(35)
[ k i = hi- (
m 2
) 2
ml + m2
Let us now introduce the Jacobians J I and J (see Appendix A
or
ref.
10.
for
details). One can write
-
7/23/2019 Dynamic analysis and control of a Stewart Platform kinematics, dynamics
14/27
642
- -
h i 0 0 0 0 0
O h 2 0 0 0 0
O O h J O O O
and K2
= ( m2 2
0 0
0
hq
0
0 mi + m2
0 0
0
0
hs
0
-
0 0 0 0 h 6
Jou rnal of Robotic
Systems-1 993
1 0 0 0 0 0
0 1 0 0 0 0
0 0 1 0 0 0
0 0 0 1 0 0
I
0 0 0 1 0
Thus, one finally obtains:
Result
4
561 =
where
~ o o o o o
]
(40)
h . =
(-+
'
Li ml + m2
Potential energy of the legs
j
=
i
t
1)/2
j
= i / 2
if
i
is odd
if
i
is
even
Z7;
=
pz + 2
mj.fi)
nd
One can finally write:
-
7/23/2019 Dynamic analysis and control of a Stewart Platform kinematics, dynamics
15/27
Lebret, Liu, and Lewis: Stewart Platform Dyn amics Analysis
643
Result 5
with
Remark
4.
mj(,f,
s given by the geometry of the platform.
3.2. Dynamic Equations
of eq.
(14),
i.e.,
We now have to calculate the terms
M(Xp-,,),Vfn(Xp-o,
p - J , and
G(Xp-,,)
M(Xp-,,)Xp-,, V f n ( X P - ,p - JX P - , )+ G(X,-,) = JT(Xp-,,)F
More precisely
From the expressions of the kinetic energies of the platform and the legs, we
directly have an expression of the coefficient M(XP-J. Vm (Xp-,,
Xp-J
will be
obtained from relations
5 )
and (6) [or from (8)]. The gravity term
G(X,-,)
has
to be calculated from the potential energy.
Although it is not difficult to obtain an explicit expression for
Mu,,
mbp,nd
G,,
(see Appendix B), it is impossible to obtain explicitly
MLegs, VmLlsr
nd
G L ~ ~ ~ .ven with a symbolic package like Mathematica, the expressions are too
complicated to obtain In this case, a step-by-step formulation must be used.
3.2.7. Terms
Mu,,
Vmup, nd
G,,
See Appendix B.
3.2.2. Terms MLegs,mLwa,nd GLegs
diagonal matrix. Thus
From (381, we know that M L e g s
=
ml
+
m2)[JT[kU - J ~ K J I I J 2 l , here is a
9 9
6 i = l , .
. .
, 6
m = l n = l
p = l
j = 1 , . . . , 6
MLegsij =
2 C [ J2mi M m n
- 2
J l p r n K p p J l p n ) J z n j ]
{
(43)
-
7/23/2019 Dynamic analysis and control of a Stewart Platform kinematics, dynamics
16/27
644
Journal of Robot ic Systems 1
993
Now,
from relation (6) of Section 2, we have
So, we have
to
calculate a mLegsij)laXp-o k))
or
i, j , k =
1,
. .
. ,
:
d J ~ ~ i / a X ~ - ~ k ) )r aJ2nj/aXp-o k,) re not difficult to obtain from the expres-
W m n
f
0 only i f m = n. In this case , if one takes i = 1 for
1
5 , i = 3 for
sion of J2 given in Appendix A.
4 5 6,
and
i
=
5 f o r 7
n
5
9
aJlpn/aXp-dk,) r aJlpmlaXp-dk))an be calculated from the expression
of
J I
given in Appendix A:
-
7/23/2019 Dynamic analysis and control of a Stewart Platform kinematics, dynamics
17/27
Lebret, Liu, and Lewis: Stewart Platform Dyn amics Analysis
645
Note that to get
(46),
(47), and
(48)
we need the expression of (aLnlaXp-o(k))or
n k = I , . ,
.
,
6. These terms can be obtained from
J I
and JZ by
The other terms
( m l , m2, q. ,,,f)...)
re either information available from the
geometry of the robot or ( a ( p ) r Ln.J information that has to be computed.
Note that these last terms are intermediate or final results of the computations
of the inverse kinematic that might be included
in
the algorithm described
hereafter.
3.2.3.
Term GLegs
It
is necessary to include the computation of G L ~ ~ ~n the algorithm. Indeed,
one can see from the following expression of GLegs(Xp- ) hat we need
the expressions of
(dL2;- tlaXp-,,(k)), (aLzJaX,-,,(k)), 1
/Lit-
I), 1 lLij)y
and
( a z T p x p - o ( k ) ) :
where
-
7/23/2019 Dynamic analysis and control of a Stewart Platform kinematics, dynamics
18/27
646
Journal of Robotic
Systems-1
993
3.3.
Summary
of
the Calculat ion
of
the Dynamics and Algor i thm
To obtain the dynamic equations, we use a combination of direct and step-
by-step Lagrangian formulations: direct formulation for the platform and step-
by-step formulation for the legs.
The expressions for Mu,, V, ,, and G,, are explicitly given in Appendix B.
The algorithm for computing MLegs, VmLCEvnd G L ~ ~ ~re summarized below.
Algorithm
for
the computation of the terms M L ~ ~ ~ ,mkp,,nd GLegs
1. Compute the inverse kinematics (see Appendix A for the theoretical ex-
pression)-This gives the length of the legs: L ; , i
=
1 , . . . , 6 . Note that
it also includes (see Appendix
A
the calculation of the termsm.(p)p = 1 ,
.
. . 3), and
ZT, ,
j = 1 ,
. .
. 3).
2.
Compute the
Jacobian
J I
(see Appendix
A
for the theoretical expres-
sion)-This needs the results of the previous step ( L i , i = 1 , .
. .
6 and
B i T , , j
=
1, .
. . 3).
3. Compute the Jacobian J2 (see Appendix A for the theoretical expression).
4. Compute the matrices and
06
[see relations (35) and (36)l-This needs
the values of
Li i
= 1,
. .
.
,
6).
5 . Compute the JacobianJ = J I 2to obtain dLn/aXp-o k))=
1,
. . . ,6, k =
1,
. . .
, 6 [see relation (49)l.
6. Compute the components of the tensors
(dJ2mi/dXp-o(k)) ,
dW,,,,/dXp-o(k)),
(dK,,,,/dXp-o~~ ,nd
( d J ~ , , ~ / d X ~ - ~ ~ , k ~ )
o calculate the other tensor defined by
(d(mLegs; j) /dXp-o(k))relations (461, (47), (48), and (4511.
-
7. Compute the Chrisroeffeelsymbols Cijk with relation (6).
8. Compute the coefficients MLegs, V,, and GLegs [see relations 43),
9,
and
SO)].
Remark and Conclusion.
Note that steps
1
to 4 are sufficient to obtain
MLegs.
Step 5 has to be added to obtain GLegs.But most of the computer time will be
dedicated to 6 and 7, that is, for the computations of VmLIEI.n fact, these last
steps will probably not be necessary.
As
pointed out by Reboulet and Bertho-
mieu* or Nguyen and P ~ o r a n , ~or most applications the contribution of the
Coriolis and centrifugal term is small and may usually be neglected.
As a conclusion of this section, we have to say that our study is close to that
of Nguyen and P ~ o r a n . ~owever, our contribution here is result 4, which
gives a compact expression of the inertia matrix MLegs n terms of the Jacobians
JI and J2. The interest of this result is essentially theoretical. Indeed, we think
that such an expression will allow us to develop some special control approach,
similar to the one described in Gu and L0h,14 where the matrix of inertia (M)
needs to be written in terms of some Jacobians.
Work in this direction as well as simulation of the dynamic equations will
have to be done to make possible the application in the milling process pro-
posed in the next section.
-
7/23/2019 Dynamic analysis and control of a Stewart Platform kinematics, dynamics
19/27
Lebret, Liu, and Lewis: Stewart Platform Dynam ics Analysis
647
4. STIFFNESS CONTROL OF A STEWART
PLATFORM-BA SED MANIPULA TOR
In this section, we
will
discuss the applications of a Stewart-platform-based
manipulator (SPBM)
in
manufacturing industry.
As
an example, we will con-
sider a special case-the stiffness control of SPBM in milling process.
As mentioned in Section 1, the milling machine is a popular machine tool that
can be found
in
any modern machine shop.
A
typical milling machine consists
of a swivelling (or nonswivelling) table, which is used to hold the parts to be
machined, and a horizontal- or vertical-spindle, which is used to hold the
cutter. Usually, the table (holding the part) is fixed during the milling process.
The spindle (with the cutter) can make 2-D movement. To machine a complex
part, several adjustments of the configuration of the table and spindle must be
made manually. In some cases, a specially designed fixture
or
attachment may
even be used.
In
milling actions, the cutter is required to be in continuous contact with the
part being machined to exert certain cutting forces along certain directions. It is
known that
when
the teeth on a cutter make contact
with
the part, shock or
vibration may be experienced.
The deficiencies of the regular milling process may be remedied by introduc-
ing an SPBM into the milling system. Its
6
dof including 3 dof in position and
3
dof in orientation and its precise positioning capacity make it fit for coordinat-
ing motion control
with
the cutter to machine a complex part. More important,
its far greater stiffness and high force-to-weight ratio make it suitable for reduc-
ing
the shock
or
vibration during the milling actions, yielding a smoother
mill-
ing path.
In this research, we propose to mount an SPBM on the machine table. The
SPBM base is fixed to the table and its upper platform holds the part being
machined.
From the discussion of Section 3,
it
can be seen
that
the dynamics of an
SPBM is complicated. Further, some parts of the dynamics are not understood
well. This makes controller design difficult. Standard control schemes such as
linearization techniques cannot be easily implemented because of a lack of the
complete knowledge of the dynamics.
However, in the milling process we may take advantage of this particular
application (e.g., the motion of an SPBM is not
so
fast) to design a simplified
controller. In this controller, a simplified model of an SPBM will be used in
which the Coriolis-centrifugal terms are ignored due to the assumption of low
velocities. A possible computed-torque controller for this situation was pro-
posed in Liu et al.
In
this research, a good deal of effort has been put into reducing the shock to
a minimum by using stiffness control.
Let (x, y ,
z)
be an orthogonal coordinate system associated with the fixed
task space. Its origin is at the location of
( X , ,
Y,) ,
2,
in
terms of the base frame
X - Y - Z
and its rotation angles with respect to the base frame are a,, o ,y o ) .
-
7/23/2019 Dynamic analysis and control of a Stewart Platform kinematics, dynamics
20/27
648
Journal of
Robotic
Systems-1993
(xo~~@zo* so~7d
Figure 5.
Base frame and task frame.
Let
R (a , , P o ,yo) E
R3')
be the constant rotation matrix from the task space to
the base space (Fig.
5 .
Then,
it
is easy to express the transformation from task
space to base space by
Let
e l ,
e2 ,
03)
be the yaw-pitch-roll angles about the x - ,
y-,
and z-axes. Then,
the yaw-pitch-roll matrix
in
task space can be written as
cos
O2
cos
O 3
sin 8, sin O2
cos e3-
cos
sin
f13
cos
82
sin
O3
sin
el
sin 62 sin
O3
+ cos
8,
cos O 3
-sin
02
sin 0, cos
tI2
cos
e l
sin
e2
sin
e3 -
sin
61
cos
83 =
[ne
Og ael
cos
e l
sin z cos O3
+
sin 8, sin
e3
cos
e l
cos
e2
where no, 0 8 , and
a6
represent the normal vector, sliding vector, and approach
vector, respectively. It can be shown that
any
rotation movement in the task
-
7/23/2019 Dynamic analysis and control of a Stewart Platform kinematics, dynamics
21/27
Lebret, Liu, and Lewis: Stewart Platform Dynamics Analysis 649
space
e l , 02,63)
can be transformed to the rotation movement
in
the base frame
a ,@, y ) by using the "equivalent transformation matrix"
Comparing both sides of (52) term by term gives the rotation angles
in
base
frame expressed in terms of the rotation movement in task space
by
where
R j
is the ith column of the rotation maxtrix
R
and
(a . b)
represents the
dot product of two vectors a and
b.
Thus,
a n y
position/orientation changes in
task space can be transformed to the base space using
X l
where
Jh E R h x 6
s the Jacobian between the task space and the reference
(world) frame. We assume that
Jh
is nonsingular.
To model the situation of contact between the cutter and the environment
(e.g., the part), another term
F,.
must be added into the dynamic equations
(9)
to
yield
MX,-,, + VJX, -,,, xp-,,)xp-,, G(x,-,J = F
- J ~ F , .
(57)
where
F,.E
R h x l epresents a vector of the reaction forces/torques between the
cutter and the environment in task space.
Intuitively.
if
a mechanism can automatically generate a force that will tend
to return any deflected states to the original, nominal states then that mecha-
nism can be used
to
solve our problem.
A n
ideal, linear spring will generate a
force that is proportional to the deflection from its nominal position. In this
research, we assume that there are no "twisting" actions occurring in the
cutter and the part; thus, a
3-D
linear spring can be used to model the contact
-
7/23/2019 Dynamic analysis and control of a Stewart Platform kinematics, dynamics
22/27
650
Journal of
Robotic
Systems-1 993
between the cutter and the part. Controlling the variation rate of the forces is
equivalent to controlling the stiffness of the spring. Let F, be
F, =
k , o o o o d
0
kt 0 0 0 0
O O k O O O
0 0 0
k, 0
0
0
0
0
0
k, 0
0 0
0
0
0
k ,
-
x - o
Y - Y u
z
-
u
0
0
:
=
K, 1 58)
X (x,
, o ,
zo)
is a vector of the commanded, nominal contact position in task
space,
x T
=
(x,
y ,
z)
is the tip position of the cutter in task space, and
k,
represents the stiffness constant. Figure
6
shows a
1-D
spring
in
the z-direction.
Before the cutter makes contact with the part, only position control is needed
to command the mobile platform (holding the part) to follow the desired posi-
tiodorientation trajectories Xp-ond Xp-o.s long as the cutter
is
in contact
with the part, stiffness control must be included
to
force the velocity of the
mobile platform in Cartesian space to go to zero while maintaining the desired
cutting forces
Fcd
in task space.
Because the contact force is modeled as a 3-D spring as shown in 58). we
may express the desired force in task space as
Figure 6. One-dimensional spring model.
-
7/23/2019 Dynamic analysis and control of a Stewart Platform kinematics, dynamics
23/27
Lebret,
Liu,
and Lewis: Stewart Platform Dyn amics Analysis 651
where
x:
= (xd, Y d , z d ) represents a vector of the "virtual" desired tip position
of the cutter
in
task space. We call it virtual because
it
only plays a role in
deriving the controller formulation. It
will
never be reached.
Define a Lyapunov function candidate"
where P,.
is
the force error defined by F,.d -
F,.
.Taking into account models
(58)
and 59) , (60) can be written as
u X,,-,, ,
F,) =
2
. pT-oMXp-,,
+ ["i
I T K ,
[ ,1
(61)
Differentiating (61) with respect time along with the dynamic eq.
57)
yieldsi6
[ (I ]} [:] , [ ' 1
(62)
F
-
G(X,-,)
- Jh'K,
Note that in
(62)
we already use the skew-symmetric property of the dynamics
(see Sections 2 and 3). If the generalized control force F is selected as
where K E R6x6 s a diagnonal, positive, constant matrix, then
The result of 64) an only guarantee that the Cartesian velocity of the mobile
platform goes to zero and hence the Cartesian acceleration goes to 2er0.I~
However, checking with the closed-loop system may find that at steady state
Because we assumed that the Jacobian Jh is nonsingular; it is easy to infer a
zero solution of
F,
from
65).
Note that expression (63) only gives us the "generalized" control input
in
Cartesian space. To manipulate the linear actuators, this control input must be
transformed to link space. Another problem is that in (63) measurements of
Xp-uand XP-
-
7/23/2019 Dynamic analysis and control of a Stewart Platform kinematics, dynamics
24/27
652
Journal of Robotic Systems-1 993
synthesized by
There is no need to measure positiodvelocity in task space. That is why we call
x d a
virtual desired position vector.
5.
CONCLUSION
In this article, we study the dynamics of a Stewart platform manipulator and
its potential applications in manufacturing industry. Although the explicit dy-
namic formulations cannot be obtained due to the high nonlinearities existing in
the kinematics and the strong coupling among the legs, a feasible dynamic
algorithm is proposed. As
a
special application
of
the Stewart platform, the
SPBM
milling station is discussed. Applying a simple stiffness control, the
mobile platform the part) not only follows the preplanned position/orientation
trajectories but also maintains desired forces in certain directions. Two proto-
type Stewart platforms have been built by the Advanced Controls and Sensors
Group at Automation Robotics Research Institute ARRI), the University of
Texas at Arlington. A TMS320C30-based real-time control system
is
being
developed and integrated at
ARRI
for SPBM control.
This research was supported by Texas Advanced Technology Program under Grant
003656-008
nd Le Ministitre Franais des M air es Etrangtres Francaises, Programme
Lavoisier.
APPENDIX A: INVERSE K INEMATICS AND JA COBIANS6*10
Inverse Klnematlcs
Li
=
F(X,-,)
F o r i =
1 , .
. .
, 6
Li = BiTj =
OTj -
OBi
where
OBi
the norm of m) s given by the geometry of the base and
where
j
=
i
+
1)/2 if
i
is odd
if i
is even
i t2
and
G T J ~
s given by the geometry of the platform.
-
7/23/2019 Dynamic analysis and control of a Stewart Platform kinematics, dynamics
25/27
Lebret, Liu, and Lewis: Stewart Platform Dynam ics Analysis
653
Jacoblans
E
L
j
with
where
where
1)/2 if i is odd
if i is even
and
platform and if
u =
v1 -v3 V2
-u2] then S u) =
[
i2
.v3
And,
13
is the identity
matrix of order 3.
Explicit expressions for
J1
and
Jz
are given in Liu et
d.Io
-
7/23/2019 Dynamic analysis and control of a Stewart Platform kinematics, dynamics
26/27
654
Journal of Robotic
Systems-1 993
APPENDIX
B:
UPPER PLATFORM DYNA MICS TERMS
M
=
with
Gup
= [O
0 mup 0 0 OI
References
1 . D. Stewart, A platform with six degrees of freedom, Proc. of the Institute for
Mechanical Engineering, London,
1%5,
Vol. 180, pp.
371-386.
-
7/23/2019 Dynamic analysis and control of a Stewart Platform kinematics, dynamics
27/27
Lebret, Liu, and Lewis: Stewart Platfor m Dynam ics Analysis 655
2 .
3 .
4 .
5 .
6 .
7 .
8 .
9 .
10.
I I .
12.
13.
14.
15.
16.
17.
K. M. Lee, and D. K. Shah, Kinematics analysis of a three-degrees-of-freedom
in-parallel actuated manipulator, IEEE
J
of Robotics and Automation,
4,
354-
360 (1988).
E. F. Fitch er, A S tewa rt platform-based manipulator: G enera l theory an d practi-
cal construction, Int. J of Robotics Research, 157-182 (1986)
K. J . Waldron, M. Raghavan, and
B.
Roth, Kinematics of a hybrid series-parallel
manipulation systems, J of Dynamic S ystem s, Measurement, and Con trol,
111,
P. Nanua, K . J. Waldron, and V. M urthy, D irect kinematics solution of a Stewart
platform,
IEEE Trans. on Robotics and Automation, 6, 438-444 (1990).
K. Liu, M. Fitzgerald, and
F.
L. Lewis, (1991 a) Some Issue s about Modeling of
the Stewart Platform Manipulator, Proc. Second Int. Symposium on Implicit and
Robust Systems, Warsaw, Poland, pp.
131-135.
J. P. M erlet, Les Robots Paralleles, Herm es, 1990.
C. Reboulet and T. Berthomieu, Dynamic models of a six degree of freedom
parallel manipulators,
Proc.
of
the Con5 K A R 91,
Pise, Italy, 1153-1 157 (1991).
C. C.
Nguyen and
F.
J.
Poo ran, Dynam ic analysis of a
6
DOF
CKCM robot end-
effector for dual-arm telerobot systems,
Robotics and Autonomous Systems,
K. Liu, F. L . Lewis, G. Lebr et, and D. T aylor, The singularities and dynam ics of
a Ste war t platform m anipulator,
J of Intelligent Robotic Syste ms.
D .
Koditschek, Natural motion for robot arms,
Proc. of the 23rd Conf,
on
Decision and Control, Las Vegas, NV, 733-735 (1984).
21 1-221 (1989).
377-394 (1989).
M. Spong, and M. Vidyasagar; Robot Dynamics and Control, Wiley, New York,
1989.
J. J. Slotine and W. Li, Adaptive manipulator control: a case study, IEEE
Trans. on Automatic Control 33,
995-1003 (1988).
Y. L. Gu and N. K. Loh, A dynamic modeling and control by utilizing an
imaginary robot,
IEEE J . of
Robotics and Automation,
532-540 (1988).
K. Liu, M. Fitzgerald, D. Dawson, and F. L. Lewis, Modeling and control of a
Stewart platform manipulator,
Proc.
of
the Symp. of Control of Systems with
Inexact Dynamic Models, Atlanta, GA, 1991, pp. 83-89.
F. L. L ewis , C. T. Abdallah, and D. M. D aws on, Control of Robot Manipulators,
New York: Macmillan, 1993.
J .
J. Craig, Introduction to Robotics, Addison-Wesley, Reading, MA, 1989.