2. 318 J. WANG AND C.M. GOSSELIN
be in “static” equilibrium and the principle of virtual work is applied to derive the
input force or torque [16]. Since constraint forces and moments do not need to
be computed, this approach leads to faster computational algorithms, which is an
important advantage for the purposes of control of a manipulator.
2. Illustration of the Approach
The well known planar four-bar linkage is represented in Figure 1. It consists of
three movable links. The links of length l1, l2 and l3 are respectively the input link,
the coupler link and the output link and their orientation is described respectively
by angles θ, α and φ. If φ, ˙φ and ¨φ are known, the solution of the inverse dynamic
problem consists in finding the torque τ that is required to actuate the input link to
produce the specified trajectory. In this section, the dynamic analysis of this one-
degree-of-freedom mechanism using the approach of virtual work is performed in
order to illustrate the application of the approach.
2.1. COMPUTATION OF THE INERTIAL FORCES AND MOMENTS OF EACH
LINK
Following d’Alembert’s principle [17], the inertial force and moment on a body
are defined as the force and moment exerted at the center of mass of the body and
whose magnitude is given respectively by the mass of the link times the acceler-
ation of the center of mass and the inertial tensor of the link times the angular
acceleration of the body. These forces and moments are applied in a direction
opposite to the direction of the linear and angular accelerations. As it is well known,
introducing these virtual forces and moments in the system allows one to consider
it as if it were in “static” equilibrium. To this end, the acceleration of the center of
mass and the angular accelerations must first be computed.
2.1.1. Inverse Kinematics
From the geometry of the mechanism, one can write
l1 cos θ + l2 cos α = x0 + l3 cos φ, (1)
l1 sin θ + l2 sin α = y0 + l3 sin φ. (2)
Eliminating angle α from Equations (1) and (2), one obtains
A cos θ + B sin θ = C, (3)
where
A = x0 + l3 cos φ, B = y0 + l3 sin φ,
C = [(x0 + l3 cos φ)2
+ (y0 + l3 sin φ)2
+ l2
1 − l2
2]/(2l1).
3. DYNAMIC ANALYSIS OF PARALLEL MANIPULATORS 319
The solution of Equation (3) then leads to
sin θ =
BC + KA
√
A2 + B2
,
cos θ =
AC − KB
√
A2 + B2
,
where K = ±1 is the branch index, and
= A2
+ B2
− C2
. (4)
Then, from Equations (1) and (2) one can obtain
sin α = (x0 + l3 cos φ − l1 cos θ)/l2,
cos α = (y0 + l3 sin φ − l1 sin θ)/l2.
2.1.2. Velocity Analysis
Differentiating Equations (1) and (2) with respect to time, one has
D˙t = e, (5)
where
D =
−l1 sin θ −l2 sin α
l1 cos θ l2 cos α
, e =
−l3
˙φ sin φ
l3
˙φ cos φ
, ˙t =
˙θ
˙α
. (6)
From Equation (5) one obtains
˙t = D−1
e. (7)
2.1.3. Acceleration Analysis
Differentiating Equation (5) with respect to time, one then obtains
D¨t = h, (8)
where
¨t =
¨θ
¨α
, h = ˙e − ˙Dt (9)
and the solution of Equation (8) leads to
¨t = D−1
h. (10)
4. 320 J. WANG AND C.M. GOSSELIN
r
C
C
l l
lC
m
m
1
1
2
2
1
3
3
3
2
0 0
(x , y )
x
y
O
3
A
B
O’
r
r
1
θ
2
m
α
φ
Figure 1. Geometric representation of the four-bar linkage.
Having obtained the angular velocity and acceleration of each link, one can
easily compute the acceleration of the centers of mass as
a1 = ¨θEr1 − ˙θ2
r1, (11)
a2 = ¨θEl1 − ˙θ2
l1 + ¨αEr2 − ˙α2
r2, (12)
a3 = ¨φEr3 − ˙φ2
r3, (13)
where ri and ai (i = 1, 2, 3) are respectively the position vector and the accel-
eration of the center of mass of the ith link, E is a rotation matrix written as
E =
0 −1
1 0
, l1 is the position vector from O to A, as represented in Figure 1,
and
r1 =
r1 cos θ
r1 sin θ
, r2 =
r2 cos α
r2 sin α
,
r3 =
r3 cos φ
r3 sin φ
, l1 =
l1 cos θ
l1 sin θ
. (14)
The orientation matrix of the ith (i = 1, 2, 3) moving link can be written as
Q1 =
cos θ − sin θ 0
sin θ cos θ 0
0 0 1
, Q2 =
cos α − sin α 0
sin α cos α 0
0 0 1
,
Q3 =
cos φ − sin φ 0
sin φ cos φ 0
0 0 1
. (15)
5. DYNAMIC ANALYSIS OF PARALLEL MANIPULATORS 321
2 C
0 0(x , y )
x
y
O
3
τ
m1
C2
C1
m2
m3
w
w
w
1
3f1
2f
f3
Figure 2. The inertial force and moment and the gravity forces exerted on each link.
Therefore, the forces and moments acting at the center of mass of each mov-
ing link include the inertial force and moment and the gravity, as represented in
Figure 2. They can be written as
fi = −miai + wi, i = 1, 2, 3
mi = −I0i ˙ωi − ωi × (I0iωi), i = 1, 2, 3,
where
I0i = QiIiQT
i , ω1 =
0
0
˙θ
, ω2 =
0
0
˙α
, ω3 =
0
0
˙φ
, (16)
and where wi and Ii (i = 1, 2, 3) are respectively the weight and the inertia tensor
of ith link about its center of mass. Vectors mi (i = 1, 2, 3) are the inertial torques
acting at the center of mass of the links.
2.2. COMPUTATION OF THE VIRTUAL DISPLACEMENTS OF EACH LINK
Differentiating Equations (1) and (2), one obtains
Aδx = b, (17)
where
A =
l2 sin α −l3 sin φ
−l2 cos α l3 cos φ
, b =
−l1δθ sin θ
l1δθ cos θ
, δx =
δα
δφ
, (18)
6. 322 J. WANG AND C.M. GOSSELIN
where δα and δφ are the virtual angular displacements of the links of length l2 and
l3 caused by the virtual angular displacement δθ of the input link of length l1.
The virtual linear displacement of the center of mass of each link is then com-
puted as follows
δ1 = δθEr1,
δ2 = δθEl1 + δαEr2,
δ3 = δφEr3.
2.3. COMPUTATION OF THE GENERALIZED INPUT FORCES OR TORQUES
By application of the principle of the virtual work, one can finally obtain the gener-
alized input force, namely, the torque τ to actuate the four-bar linkage, i.e., letting
δθ = 1 one has
τ = m1 + m2δα + m3δφ +
3
i=1
(fiδi). (19)
The simple example presented above has illustrated the general application of the
principle of virtual work to the solution of inverse dynamic problems. Now, a
general formulation will be proposed for the application of this principle to the
dynamic analysis of parallel manipulators, which is the main purpose of this paper.
3. Spatial Six-Degree-of-Freedom Parallel Manipulator
The formulation proposed here will now be derived for a six-degree-of-freedom
Gough–Stewart platform. However, it should be kept in mind that this formulation
can be applied to any type of parallel mechanism.
The six-degree-of-freedom manipulator is represented in Figure 3. It consists
of a fixed base and a moving platform connected by six extensible legs. Each
extensible leg consists of two links and the two links are connected by a prismatic
joint. The moving platform is connected to the legs by spherical joints while the
lower end of the extensible legs is connected to the base through Hooke joints. By
varying the length of the extensible legs, the moving platform can be positioned
and oriented arbitrarily with respect to the base of the manipulator.
The base coordinate frame, designated as the Oxyz frame is attached to the base
of the platform with its Z-axis pointing vertically upward. Similarly, the moving
coordinate frame O x y z is attached to the moving platform. The orientation of
the moving frame with respect to the fixed frame is described by the rotation matrix
Q. The center of the ith Hooke joint is noted Oi while the center of the ith spherical
joint is noted Pi.
7. DYNAMIC ANALYSIS OF PARALLEL MANIPULATORS 323
Figure 3. Spatial six-degree-of-freedom parallel mechanism with prismatic actuators
(Gough–Stewart platform).
If the coordinates of point Pi in the moving reference frame are noted (ai, bi, ci)
and if the coordinates of point Oi in the fixed frame are noted (xio, yio, zio), then
one has
pi =
xi
yi
zi
, pi =
ai
bi
ci
, for i = 1, . . . , 6, p =
x
y
z
, (20)
where pi is the position vector of point Pi expressed in the fixed coordinate frame –
and whose coordinates are defined as (xi, yi, zi) – pi is the position vector of point
Pi expressed in the moving coordinate frame, and p is the position vector of point
O expressed in the fixed frame. One can then write
pi = p + Qp i, i = 1, . . . , 6, (21)
where Q is the rotation matrix corresponding to the orientation of the platform of
the manipulator with respect to the base coordinate frame. This rotation matrix can
be written, for instance, as a function of three Euler angles. With the Euler angle
convention used in the present work, this matrix is written as
Q =
cφcθ cψ − sφsψ −cφcθ sψ − sφcψ cφsθ
sφcθ cψ + cφsψ −sφcθ sψ + cφcψ sφsθ
−sθ cψ sθ sψ cθ
, (22)
where sx denotes the sine of angle x while cx denotes the cosine of angle x.
8. 324 J. WANG AND C.M. GOSSELIN
α i
βi
i
O
Oi
Pi
rio
ρi
x
y
z
x
y
z
i
i
Figure 4. Vector ρi in spherical coordinates.
3.1. INVERSE KINEMATICS
The inverse kinematic problem is defined here as the determination of the position
and oriention of each link with respect to the base coordinate frame from the given
six independent Cartesian coordinates of the platform x, y, z, φ, θ and ψ. This
problem is rather straightforward and has been addressed by many authors.
One can write pi in terms of the ith leg’s coordinates which are represented in
Figure 4.
pi = ri0 + ρi, i = 1, . . . , 6 (23)
where ri0 and ρi are the vectors from O to Oi and from Oi to Pi respectively, i.e.,
ρi =
ρi cos αi sin βi
ρi sin αi sin βi
ρi cos βi
, ri0 =
xi0
yi0
zi0
, i = 1, . . . , 6. (24)
Since xi, yi and zi have been obtained from Equation (21), Equation (23) consti-
tutes a system of three equations in three unknowns ρi, αi and βi, which can be
easily solved as
ρi = (xi − xi0)2 + (yi − yi0)2 + (zi − zi0)2,
cos βi = (zi − zi0)/ρi,
sin βi = 1 − cos2 βi, (0 ≤ βi ≤ π),
cos αi = (xi − xi0)/(ρi sin βi),
sin αi = (yi − yi0)/(ρi sin βi).
9. DYNAMIC ANALYSIS OF PARALLEL MANIPULATORS 325
Once ρi, αi and βi are known, the position and orientation of the two links of ith
leg are completely determined.
3.2. VELOCITY ANALYSIS
In this section, the linear and angular velocities of all moving links will be com-
puted from the given independent Cartesian velocities of the platform: ˙x, ˙y, ˙z, ωx,
ωy and ωz, where the latter three scalar quantities are the components of the angular
velocity vector of the platform, ω.
One can write ˙pi in terms of the angular velocity vector of the ith leg noted ωi,
i.e.,
˙pi = ˙ρir + ωi × ρi, i = 1, . . . , 6, (25)
where
˙ρir =
˙ρi cos αi sin βi
˙ρi sin αi sin βi
˙ρi cos βi
, ρi =
ρi cos αi sin βi
ρi sin αi sin βi
ρi cos βi
,
ωi =
− ˙βi sin αi
˙βi cos αi
˙αi
. (26)
Equation (25) can be expressed in matrix form as
Cipλip = ˙pi, i = 1, . . . , 6, (27)
where
Cip =
cos αi sin βi −ρi sin αi sin βi ρi cos αi cos βi
sin αi sin βi −ρi cos αi sin βi ρi sin αi cos βi
cos βi 0 −ρi sin βi
,
λip =
˙ρi
˙αi
˙βi
, (28)
and Equation (27) is easily solved for λip which leads to the determination of ˙ρi, ˙αi
and ˙βi. Once these quantities are known, the computation of the velocities of the
bodies of ith leg is straightforward.
3.3. ACCELERATION ANALYSIS
The linear and angular accelerations of each of the moving bodies will now be
determined from the given Cartesian accelerations of the platform, i.e., ¨x, ¨y, ¨z,
˙ωx, ˙ωy and ˙ωz, where the latter three scalar quantities are the components of the
vector of angular acceleration of the platform, ˙ω.
10. 326 J. WANG AND C.M. GOSSELIN
Differentiating Equation (25) with respect to time, one obtains
¨pi = ¨ρir + ˙ωi × ρi + ωi × (˙ρir + ωi × ρi), i = 1, . . . , 6, (29)
where
¨ρir =
¨ρi cos αi sin βi
¨ρi sin αi sin βi
¨ρi cos αi
, ˙ωi =
− ¨βi sin αi − ˙βi ˙αi cos αi
¨βi cos αi − ˙βi ˙αi sin αi
¨αi
. (30)
Equation (29) can be rewritten in matrix form as
Cip
˙λip = hi, i = 1, . . . , 6, (31)
where Cip is given in Equation (28) and where
˙λip = [ ¨ρi ¨αi
¨βi ]T
,
hi =
¨xi − 2 ˙ρi ˙βicαi cβi + 2 ˙ρi ˙αisαi sβi + 2ρi ˙αi ˙βisαi cβi + ρi ˙α2
i cαi sβi + ρi ˙β2
i cαi sβi
¨yi − 2 ˙ρi ˙βisαi cβi − 2 ˙ρi ˙αicαi sβi − 2ρi ˙αi ˙βicαi cβi + ρi ˙α2
i sαi sβi + ρi ˙β2
i sαi sβi
¨zi + cβi + 2 ˙ρi ˙βisβi + ρi ˙β2
i cβi
,
where sx denotes the sine of angle x while cx denotes the cosine of angle x.
Equation (31) is readily solved for ˙λip. Once the acceleration components are
known, the accelerations of the leg bodies are easily determined.
3.4. GENERALIZED INPUT FORCES
The generalized input forces will now be determined by first including the iner-
tial forces and moments in the system and considering it as if it were in “static”
equilibrium. The principle of virtual work will be applied.
3.4.1. Computation of the Force and Torque Acting on the Center of Mass of
Each Link
According to d’Alembert’s principle, the force acting on the center of mass of each
link consists of two parts: the inertial force and the gravity force. Similarly, the
moment acting on each link is the inertial moment.
In order to compute inertial forces, one must first determine the acceleration of
the center of mass of each link.
One can write
aiu = ¨pi + ˙ωi × Qiriu + ωi × (ωi × Qiriu), i = 1, . . . , 6, (32)
ail = ˙ωi × Qiril + ωi × (ωi × Qiril), i = 1, . . . , 6, (33)
where aiu and ail are respectively the acceleration of the center of mass of the upper
and lower links of the ith leg. They are expressed in the fixed coordinate system.
11. DYNAMIC ANALYSIS OF PARALLEL MANIPULATORS 327
Vector riu and ril are the position vectors of the center of mass of the upper and
lower links of the ith leg in the local frame, and one would generally have
riu =
0
0
riu
, ril =
0
0
ril
. (34)
Moreover, matrix Qi is the rotation matrix from the fixed frame to the local frame
attached to the ith leg.
The acceleration of the center of mass of the platform can be computed as
follows
ap = ¨p + ˙ω × Qrp + ω × (ω × Qrp), (35)
where ap is the acceleration of the center of mass of the platform and rp is the po-
sition vector of the center of mass of the platform, expressed in the frame attached
to the platform.
Then, the force and moment acting on the center of mass of each link can be
directly computed as follows
fiu = −miuaiu + wiu, i = 1, . . . , 6, (36)
fil = −milail + wil, i = 1, . . . , 6, (37)
miu = −I0iu ˙ωi − ωi × (I0iuωi), i = 1, . . . , 6, (38)
mil = −I0il ˙ωi − ωi × (I0ilωi), i = 1, . . . , 6, (39)
where
I0iu = QiIiuQT
i , I0il = QiIilQT
i , (40)
and where fiu, miu, fil and mil denote the force acting on the upper link, the mo-
ment acting on the upper link, the force acting on the lower link and the moment
acting on the lower link of the ith leg. Iiu and Iil are the inertia tensor computed in
body reference frame of the upper and lower links of the ith leg respectively and
miu and mil are their masses. Vectors wiu and wil are the weight vectors, i.e.,
wiu =
0
0
−miug
, wil =
0
0
−milg
. (41)
Finally, one has
fp = −mpap + wp, (42)
mp = −I0p ˙ωp − ωp × (I0pωp), (43)
where
I0p = QIpQT
, (44)
12. 328 J. WANG AND C.M. GOSSELIN
6u
o
o
o
1
2
4
3
x’
z’
y’
3
2
o4
2
1
3
4
1
O’
platformP
P P
P
P
6
1u
2u
3u
4u1l
2l
3l
4l
p
p
1u
2u
2l
1l
4l
4u
3u
P
5u
5u
5l
5l
6
6
5
7
6u
6l 6l
x
y
z
m
m
m
m
m
m
m
m
m
m
m
m
3l
O
f
f
f
f
f
f
f
f
f
f
f
f
m
f
Figure 5. Inertial forces and moments on each of the links of the system.
and where fp and mp denote the force and moment acting on the platform and
where Ip, mp and wp are the inertia tensor computed in body reference frame, the
mass and the weight vector of the platform, respectively.
The inertial forces and moments acting on the center of mass of each link of the
manipulator are represented schematically in Figure 5.
3.4.2. Computation of the Virtual Displacements of the Links
From Equation (23) one has
ρi = pi − ri0, i = 1, . . . , 6. (45)
Taking the square of the norm of Equation (45) leads to
ρ2
i = (xi − xio)2
+ (yi − yio)2
+ (zi − zio)2
, i = 1, . . . , 6. (46)
Differentiating both sides of Equation (46) with respect to time, one then obtains
ρi ˙ρi = (xi − xio)˙xi + (yi − yio) ˙yi + (zi − zio)˙zi, i = 1, . . . , 6, (47)
where ˙xi, ˙yi and ˙zi are the three components of the velocity vector ˙pi of point Pi.
They can be computed using the following equation:
˙pi = ˙p + ω × Qpi, i = 1, . . . , 6, (48)
where ˙p and ω are respectively the velocity of point O and the angular velocity of
the platform, i.e.,
˙p =
˙x
˙y
˙z
, ω =
ωx
ωy
ωz
. (49)
13. DYNAMIC ANALYSIS OF PARALLEL MANIPULATORS 329
Substituting Equation (48) into Equation (47) and writing it in matrix form, one
then obtains
B˙ρ = A˙x, (50)
where
˙ρ = [ ˙ρ1 ˙ρ2 ˙ρ3 ˙ρ4 ˙ρ5 ˙ρ6 ]T
,
˙x = [ ˙x ˙y ˙z ωx ωy ωz ]T
,
and where A and B are Jacobian matrices written as
B =
ρ1 0 0 0 0 0
0 ρ2 0 0 0 0
0 0 ρ3 0 0 0
0 0 0 ρ4 0 0
0 0 0 0 ρ5 0
0 0 0 0 0 ρ6
. (51)
and
A =
ρ1x ρ1y ρ1z (b1ρ1z − c1ρ1y) (c1ρ1x − a1ρ1z) (a1ρ1y − b1ρ1x)
ρ2x ρ2y ρ2z (b2ρ2z − c2ρ2y) (c2ρ2x − a2ρ2z) (a2ρ2y − b2ρ2x)
ρ3x ρ3y ρ3z (b3ρ3z − c3ρ3y) (c3ρ3x − a3ρ3z) (a3ρ3y − b3ρ3x)
ρ4x ρ4y ρ4z (b4ρ4z − c4ρ4y) (c4ρ4x − a4ρ4z) (a4ρ4y − b4ρ4x)
ρ5x ρ5y ρ5z (b5ρ5z − c5ρ5y) (c5ρ5x − a5ρ5z) (a5ρ5y − b5ρ5x)
ρ6x ρ6y ρ6z (b6ρ6z − c6ρ6y) (c6ρ6x − a6ρ6z) (a6ρ6y − b6ρ6x)
, (52)
where
ρix = xi − xio,
ρiy = yi − yio,
ρiz = zi − zio,
ai = q11ai + q12bi + q13ci,
bi = q21ai + q22bi + q23ci,
ci = q31ai + q32bi + q33ci,
i = 1, . . . , 6,
in which qij (i, j = 1, 2, 3) is the ith row and jth column element of matrix Q.
Let δα
j
i and δβ
j
i be the virtual angular displacements of the ith leg associated
with jth actuated joint corresponding to angles αi and βi (i, j = 1, . . . , 6), let δxj
,
δyj
, δzj
and δϕj
x, δϕj
y, δϕj
z be the virtual displacements of point O and the virtual
angular displacements of the platform associated with jth actuated joint and let
δρj
be the virtual displacement of the jth actuated joint.
14. 330 J. WANG AND C.M. GOSSELIN
Using Equation (50), one can compute the linear and angular virtual displace-
ments of the platform associated to the virtual displacement of the jth actuated
joint, i.e.,
δxj
= A−1
Bδρj
, j = 1, . . . , 6, (53)
where
δxj
= [ δxj
δyj
δzj
δϕ
j
x δϕ
j
y δϕ
j
z ] , j = 1, . . . , 6,
δρ1
= [ 1 0 0 0 0 0 ]T
,
δρ2
= [ 0 1 0 0 0 0 ]T
,
δρ3
= [ 0 0 1 0 0 0 ]T
,
δρ4
= [ 0 0 0 1 0 0 ]T
,
δρ5
= [ 0 0 0 0 1 0 ]T
,
δρ6
= [ 0 0 0 0 0 1 ]T
.
Having obtained the virtual displacements of the platform of the manipulator,
the virtual displacements of ith leg associated with the jth actuator can be easily
obtained from Equation (27), i.e.,
δλ
j
ip = C−1
ip δp
j
i , i, j = 1, . . . , 6, (54)
where
δλ
j
ip = [ δρj
δα
j
i δβ
j
i ] , i, j = 1, . . . , 6, (55)
and δp
j
i is the virtual displacement of point Pi associated with a unit virtual dis-
placement of the jth actuator. This virtual displacement can be computed from the
virtual displacements of the platform, i.e.,
δp
j
i = δpj
+ δϕj
× Qpi , i, j = 1, . . . , 6, (56)
where
δpj
=
δxj
δyj
δzj
, δϕj
=
δϕ
j
x
δϕ
j
y
δϕ
j
z
. (57)
Once the virtual linear and angular displacements of each link of the manipula-
tor are known, the virtual displacements of the center of mass of each link can be
computed as follows
δ
j
iu = δp
j
i + δϕ
j
i × Qiriu, i, j = 1, . . . , 6,
δ
j
il = δϕ
j
i × Qiril, i, j = 1, . . . , 6,
δj
p = δpj
+ δϕj
× Qrp, i = 1, . . . , 6,
15. DYNAMIC ANALYSIS OF PARALLEL MANIPULATORS 331
where δ
j
iu, δ
j
il and δj
p are the virtual displacements of the center of mass of the links
of the ith leg associated with a virtual displacement of the jth actuator, and where
δϕ
j
i =
−δβ
j
i sin α
j
i
δβ
j
i cos α
j
i
δα
j
i
, i, j = 1, . . . , 6. (58)
3.4.3. Computation of Actuated Force/Torque
Using the principle of virtual work and letting τi (i = 1, . . . , 6) be the actuating
force of ith actuated joint, one then has
τj = fpδj
p + mpδϕj
+
6
i=1
[fiuδ
j
iu + filδ
j
il + (miu + mil)δϕ
j
i ], j = 1, . . . , 6
which thereby completes the procedure.
4. Example
In this section, an example is given in order to illustrate the results. The prescribed
trajectory is one in which the platform of the manipulator translates along a simple
sine trajectory while maintaining a fixed orientation.
The parameters used in this example are given as
xo1 = −2.120, yo1 = 1.374, xo2 = −2.380, yo2 = 1.224,
xo3 = −2.380, yo3 = −1.224, xo4 = −2.120, yo4 = −1.374,
xo5 = 0.0, yo5 = 0.15, xo6 = 0.0, yo6 = −0.15,
zoi = 0.0, (i = 1, . . . , 6),
a1 = 0.170, b1 = 0.595, c1 = −0.8, a2 = −0.6, b2 = 0.15,
c2 = −0.8, a3 = −0.6, b3 = −0.15, c3 = −0.8, a4 = 0.170,
b4 = −0.595, c4 = −0.8, a5 = 0.430, b5 = −0.845, c5 = −0.8,
a6 = 0.430, b6 = 0.445, c6 = −0.8,
l5 = 1.5, ρi max = 4.5, ρi min = 0.5, (i = 1, . . . , 6),
mp = 1.5, miu = mil = 0.1, riu = ril = 0.5, (i = 1, . . . , 6), rp = 0,
Iiu = Iil = I6 =
1/160 0 0
0 1/160 0
0 0 1/1600
, (i = 1, . . . , 6),
Ip =
0.08 0 0
0 0.08 0
0 0 0.08
,
16. 332 J. WANG AND C.M. GOSSELIN
çघNङ
!tघradङ
ç2
ç1
1 2 3 4 5 6
6
8
10
12
Figure 6. Input force at actuated joints 1 and 2.
çघNङ
!tघradङ
ç3
ç4
1 2 3 4 5 6
6.5
7.5
8
8.5
Figure 7. Input force at actuated joints 3 and 4.
where the lengths are given in meters, the masses in kilograms and the inertias in
kilograms meter square.
The specified trajectory can be expressed as
x = −1.5 + 0.2 sin ωt, y = 0.2 sin ωt, z = 1.0 + 0.2 sin ωt,
φ = 0, θ = 0, ψ = 0,
where
ω = 3.0, (0 ≤ ωt ≤ 2π).
The generalized input forces obtained at the six actuated joints are represented
in Figures 6–8.
This example has been verified by the classical Newton–Euler approach. The
two approaches lead to identical results and the approach based on the principle
of virtual work leads to a faster algorithm which is about 30% faster than the one
obtained using the Newton–Euler approach.
17. DYNAMIC ANALYSIS OF PARALLEL MANIPULATORS 333
çघNङ
!tघradङ
ç5
ç6
1 2 3 4 5 6
6
7
8
9
10
11
12
Figure 8. Input force at actuated joints 5 and 6.
5. Conclusion
A new approach for the dynamic analysis of parallel manipulators has been pro-
posed in this paper. This approach is based on the well known principle of virtual
work. The principle of virtual work has first been recalled and illustrated through
the dynamic analysis of the four-bar linkage. Then, the dynamic analysis of spa-
tial six-degree-of-freedom parallel manipulators with prismatic actuators has been
performed. The procedure described here leads to efficient algorithms and can be
applied to any type of parallel mechanism.
Acknowledgment
The authors would like to acknowledge the financial support of the Natural Sci-
ences and Engineering Research Council of Canada (NSERC) as well as the Fonds
pour la Formation de Chercheurs et l’Aide à la Recherche du Québec (FCAR).
References
1. Angeles, J., Rational Kinematics, Springer Tracts in Natural Philosophy, Vol. 34, Springer-
Verlag, Berlin/New York, 1988, 65–66.
2. Blajer, W., Schiehlen, W. and Schirm, W., ‘Dynamic analysis of constrained multibody systems
using inverse kinematics’, Mechanism and Machine Theory 28(3), 1993, 397–405.
3. Craver, W.M., ‘Structural analysis and design of a three-degree-of-freedom robotic shoulder
module’, Master Thesis, The University of Texas at Austin, 1989.
4. Do, W.Q.D. and Yang, D.C.H., ‘Inverse dynamic analysis and simulation of a platform type of
robot’, Journal of Robotic Systems 5(3), 1988, 209–227.
5. Fichter, E.F., ‘A Stewart platform-based manipulator: general theory and practical construc-
tion’, The International Journal of Robotics Research 5(2), 1986, 157–182.
6. Gosselin, C., ‘Determination of the workspace of 6-DOF parallel manipulators’, ASME Journal
of Mechanical Design 112(3), 1990, 331–336.
18. 334 J. WANG AND C.M. GOSSELIN
7. Gosselin, C., ‘Parallel computational algorithms for the kinematics and dynamics of planar and
spatial parallel manipulators’, ASME Journal of Dynamic Systems, Measurement and Control,
118(1), 1996, 22–28.
8. Gosselin, C. and Angeles, J., 1988, ‘The optimum kinematic design of a planar three-degree-of-
freedom parallel manipulator’, ASME Journal of Mechanisms, Transmissions, and Automation
in Design 110(1), 1988, 35–41.
9. Gosselin, C. and Hamel, J.-F., ‘The agile eye: A high-performance three-degree-of-freedom
camera-orienting device’, in Proceedings of the IEEE International Conference on Robotics
and Automation, San Diego, E. Straub and R. Spencer Sipple (eds), IEEE, New York, 1994,
781–786.
10. Guglielmetti, P. and Longchamp, R., ‘A closed-form inverse dynamics model of the Delta
parallel robot’, in 4th IFAC Symposium on Robot Control, Capri, 1994, 51–56.
11. Lee, K.M. and Shah, D.K., ‘Dynamic analysis of a three-degree-of-freedom in-parallel actuated
manipulator’, IEEE Journal of Robotics and Automation 4(3), 1988, 361–367.
12. Luh, J.Y.S. and Zheng, Y.F., ‘Computation of input generalized forces for robots with closed
kinematic chain mechanisms’, IEEE Journal of Robotics and Automation 1(2), 1985, 95–103.
13. Merlet, J.-P., ‘Force-feedback control of parallel manipulators’, in Proceedings of the IEEE
International Conference on Robotics and Automation, Vol. 3, T. Pavlidis (ed.), IEEE, New
York, 1988, 1484–1489.
14. Stewart, D., ‘A platform with six degrees of freedom’, Proceedings of the Institution of
Mechanical Engineers 180(5), 1965, 371–378.
15. Sugimoto, K., ‘Kinematic and dynamic analysis of parallel manipulators by means of motor
algebra’, Journal of Mechanisms, Transmissions, and Automation in Design 109(1), 1987, 3–7.
16. Wang, J. and Gosselin, C., ‘Dynamic analysis of spatial four-degree-of-freedom parallel ma-
nipulators’, in Proceedings of the 1997 ASME Design Automation Conference, Sacramento,
CA, B. Ravani (ed.), ASME, New York, 1997.
17. Wells, D.A., Theory and Problems of Lagrangian Dynamics, McGraw-Hill, New York, 1967.
18. Wittenburg, J., Dynamics of Systems of Rigid Bodies, B.G. Teubner, Stuttgart, 1977, 40–413.